From 61f2f4812e28caa0c62c2e6899ed490fc8ad9e19 Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Tue, 19 Sep 2017 15:03:15 -0700 Subject: Isolate lcms2 usage to a few files. Then set up the right dependencies for them. BUG=chromium:765914 Change-Id: I036cd888c741927d5efe0d020c6676f169e7cbb1 Reviewed-on: https://pdfium-review.googlesource.com/14410 Commit-Queue: dsinclair Reviewed-by: dsinclair --- BUILD.gn | 1 + core/fpdfapi/page/cpdf_colorspace.cpp | 1 + core/fpdfapi/page/cpdf_iccprofile.cpp | 1 + core/fpdfapi/page/cpdf_iccprofile.h | 2 +- core/fxcodec/codec/fx_codec_jpx_opj.cpp | 6 ------ testing/libfuzzer/BUILD.gn | 6 ++++++ 6 files changed, 10 insertions(+), 7 deletions(-) diff --git a/BUILD.gn b/BUILD.gn index 0d3e67bffa..9c8d221552 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -672,6 +672,7 @@ static_library("fpdfapi") { configs += [ ":pdfium_core_config" ] deps = [ ":fxcrt", + "third_party:lcms2", ] } diff --git a/core/fpdfapi/page/cpdf_colorspace.cpp b/core/fpdfapi/page/cpdf_colorspace.cpp index c37b5a4177..3e2b885ee5 100644 --- a/core/fpdfapi/page/cpdf_colorspace.cpp +++ b/core/fpdfapi/page/cpdf_colorspace.cpp @@ -28,6 +28,7 @@ #include "core/fpdfapi/parser/cpdf_stream_acc.h" #include "core/fpdfapi/parser/cpdf_string.h" #include "core/fpdfdoc/cpdf_action.h" +#include "core/fxcodec/codec/ccodec_iccmodule.h" #include "core/fxcodec/fx_codec.h" #include "core/fxcrt/cfx_fixedbufgrow.h" #include "core/fxcrt/cfx_maybe_owned.h" diff --git a/core/fpdfapi/page/cpdf_iccprofile.cpp b/core/fpdfapi/page/cpdf_iccprofile.cpp index 0fa4be4b5a..144f530a2c 100644 --- a/core/fpdfapi/page/cpdf_iccprofile.cpp +++ b/core/fpdfapi/page/cpdf_iccprofile.cpp @@ -8,6 +8,7 @@ #include "core/fpdfapi/cpdf_modulemgr.h" #include "core/fpdfapi/parser/cpdf_stream.h" +#include "core/fxcodec/codec/ccodec_iccmodule.h" namespace { diff --git a/core/fpdfapi/page/cpdf_iccprofile.h b/core/fpdfapi/page/cpdf_iccprofile.h index 156fb595dc..0226a5678d 100644 --- a/core/fpdfapi/page/cpdf_iccprofile.h +++ b/core/fpdfapi/page/cpdf_iccprofile.h @@ -9,10 +9,10 @@ #include -#include "core/fxcodec/codec/ccodec_iccmodule.h" #include "core/fxcrt/cfx_retain_ptr.h" #include "core/fxcrt/cfx_unowned_ptr.h" +class CLcmsCmm; class CPDF_Stream; class CPDF_IccProfile : public CFX_Retainable { diff --git a/core/fxcodec/codec/fx_codec_jpx_opj.cpp b/core/fxcodec/codec/fx_codec_jpx_opj.cpp index b50c01227f..89c512390d 100644 --- a/core/fxcodec/codec/fx_codec_jpx_opj.cpp +++ b/core/fxcodec/codec/fx_codec_jpx_opj.cpp @@ -19,12 +19,6 @@ #include "third_party/libopenjpeg20/openjpeg.h" #include "third_party/libopenjpeg20/opj_malloc.h" -#if defined(USE_SYSTEM_LCMS2) -#include -#else -#include "third_party/lcms/include/lcms2.h" -#endif - namespace { void fx_ignore_callback(const char* msg, void* client_data) {} diff --git a/testing/libfuzzer/BUILD.gn b/testing/libfuzzer/BUILD.gn index 6e61827fb4..2952444421 100644 --- a/testing/libfuzzer/BUILD.gn +++ b/testing/libfuzzer/BUILD.gn @@ -57,6 +57,9 @@ template("pdfium_fuzzer") { deps = [ "../..:pdfium", ] + if (defined(invoker.deps)) { + deps += invoker.deps + } testonly = true configs -= [ "//build/config/compiler:chromium_code" ] configs += [ @@ -152,6 +155,9 @@ pdfium_fuzzer("pdf_codec_fax_fuzzer") { } pdfium_fuzzer("pdf_codec_icc_fuzzer") { + deps = [ + "../../third_party/:lcms2", + ] sources = [ "pdf_codec_icc_fuzzer.cc", ] -- cgit v1.2.3