summaryrefslogtreecommitdiff
path: root/pdfium.gyp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-10-09 12:45:15 -0700
committerTom Sepez <tsepez@chromium.org>2015-10-09 12:45:15 -0700
commitf1c713663192368d26031a4caed1f9705f4510af (patch)
treed7078da243fe29c2ac9160ab21725bee3a349a7b /pdfium.gyp
parentc9952e66c588aad6a5996796fb0c96b202e6de0a (diff)
downloadpdfium-f1c713663192368d26031a4caed1f9705f4510af.tar.xz
Allow compiling PDFium without V8.
Original patch from issue 1391843004 at patchset 1 (http://crrev.com/1391843004#ps1) Introduce a pdf_enable_v8 GYP variable, which controls a corresponding PDF_ENABLE_V8 #define, and bring in the real JS library when set. Otherwise, link against a stub JS runtime. BUG=pdfium:211 R=dml@google.com, jochen@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1395733006 .
Diffstat (limited to 'pdfium.gyp')
-rw-r--r--pdfium.gyp158
1 files changed, 82 insertions, 76 deletions
diff --git a/pdfium.gyp b/pdfium.gyp
index a728cea89e..6ea3f4ab07 100644
--- a/pdfium.gyp
+++ b/pdfium.gyp
@@ -1,6 +1,7 @@
{
'variables': {
'pdf_use_skia%': 0,
+ 'pdf_enable_v8%': 1,
'conditions': [
['OS=="linux"', {
'bundle_freetype%': 0,
@@ -23,6 +24,9 @@
['pdf_use_skia==1', {
'defines': ['_SKIA_SUPPORT_'],
}],
+ ['pdf_enable_v8==1', {
+ 'defines': ['PDF_ENABLE_V8'],
+ }],
['OS=="linux"', {
'conditions': [
['target_arch=="x64"', {
@@ -56,7 +60,6 @@
'fxedit',
'fxge',
'javascript',
- 'jsapi',
'pdfwindow',
],
'ldflags': [ '-L<(PRODUCT_DIR)',],
@@ -612,80 +615,73 @@
{
'target_name': 'javascript',
'type': 'static_library',
- 'include_dirs': [
- '<(DEPTH)/v8',
- '<(DEPTH)/v8/include',
- ],
- 'dependencies': [
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
- ],
- 'export_dependent_settings': [
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
- ],
'ldflags': [ '-L<(PRODUCT_DIR)',],
'sources': [
'fpdfsdk/include/javascript/IJavaScript.h',
- 'fpdfsdk/src/javascript/app.cpp',
- 'fpdfsdk/src/javascript/color.cpp',
- 'fpdfsdk/src/javascript/console.cpp',
- 'fpdfsdk/src/javascript/Consts.cpp',
- 'fpdfsdk/src/javascript/Consts.h',
- 'fpdfsdk/src/javascript/Document.cpp',
- 'fpdfsdk/src/javascript/Document.h',
- 'fpdfsdk/src/javascript/Field.cpp',
- 'fpdfsdk/src/javascript/Field.h',
- 'fpdfsdk/src/javascript/Icon.cpp',
- 'fpdfsdk/src/javascript/Icon.h',
- 'fpdfsdk/src/javascript/JS_Context.cpp',
- 'fpdfsdk/src/javascript/JS_Context.h',
- 'fpdfsdk/src/javascript/JS_Define.h',
- 'fpdfsdk/src/javascript/JS_EventHandler.cpp',
- 'fpdfsdk/src/javascript/JS_EventHandler.h',
- 'fpdfsdk/src/javascript/JS_GlobalData.cpp',
- 'fpdfsdk/src/javascript/JS_GlobalData.h',
- 'fpdfsdk/src/javascript/JS_Object.cpp',
- 'fpdfsdk/src/javascript/JS_Object.h',
- 'fpdfsdk/src/javascript/JS_Runtime.cpp',
- 'fpdfsdk/src/javascript/JS_Runtime.h',
- 'fpdfsdk/src/javascript/JS_Value.cpp',
- 'fpdfsdk/src/javascript/JS_Value.h',
- 'fpdfsdk/src/javascript/PublicMethods.cpp',
- 'fpdfsdk/src/javascript/PublicMethods.h',
- 'fpdfsdk/src/javascript/app.cpp',
- 'fpdfsdk/src/javascript/app.h',
- 'fpdfsdk/src/javascript/color.cpp',
- 'fpdfsdk/src/javascript/color.h',
- 'fpdfsdk/src/javascript/console.cpp',
- 'fpdfsdk/src/javascript/console.h',
- 'fpdfsdk/src/javascript/event.cpp',
- 'fpdfsdk/src/javascript/event.h',
- 'fpdfsdk/src/javascript/global.cpp',
- 'fpdfsdk/src/javascript/global.h',
- 'fpdfsdk/src/javascript/report.cpp',
- 'fpdfsdk/src/javascript/report.h',
- 'fpdfsdk/src/javascript/resource.cpp',
- 'fpdfsdk/src/javascript/resource.h',
- 'fpdfsdk/src/javascript/util.cpp',
- 'fpdfsdk/src/javascript/util.h',
- ],
- },
- {
- 'target_name': 'jsapi',
- 'type': 'static_library',
- 'dependencies': [
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
- ],
- 'export_dependent_settings': [
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
- ],
- 'include_dirs': [
- '<(DEPTH)/v8',
- '<(DEPTH)/v8/include',
+ 'fpdfsdk/src/javascript/JS_Runtime_Stub.cpp',
],
- 'ldflags': [ '-L<(PRODUCT_DIR)',],
- 'sources': [
- 'fpdfsdk/include/jsapi/fxjs_v8.h',
- 'fpdfsdk/src/jsapi/fxjs_v8.cpp',
+ 'conditions': [
+ ['pdf_enable_v8==1', {
+ 'include_dirs': [
+ '<(DEPTH)/v8',
+ '<(DEPTH)/v8/include',
+ ],
+ 'dependencies': [
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'export_dependent_settings': [
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ ],
+ 'sources!': [
+ 'fpdfsdk/src/javascript/JS_Runtime_Stub.cpp',
+ ],
+ 'sources': [
+ 'fpdfsdk/src/javascript/Consts.cpp',
+ 'fpdfsdk/src/javascript/Consts.h',
+ 'fpdfsdk/src/javascript/Document.cpp',
+ 'fpdfsdk/src/javascript/Document.h',
+ 'fpdfsdk/src/javascript/Field.cpp',
+ 'fpdfsdk/src/javascript/Field.h',
+ 'fpdfsdk/src/javascript/Icon.cpp',
+ 'fpdfsdk/src/javascript/Icon.h',
+ 'fpdfsdk/src/javascript/JS_Context.cpp',
+ 'fpdfsdk/src/javascript/JS_Context.h',
+ 'fpdfsdk/src/javascript/JS_Define.h',
+ 'fpdfsdk/src/javascript/JS_EventHandler.cpp',
+ 'fpdfsdk/src/javascript/JS_EventHandler.h',
+ 'fpdfsdk/src/javascript/JS_GlobalData.cpp',
+ 'fpdfsdk/src/javascript/JS_GlobalData.h',
+ 'fpdfsdk/src/javascript/JS_Object.cpp',
+ 'fpdfsdk/src/javascript/JS_Object.h',
+ 'fpdfsdk/src/javascript/JS_Runtime.cpp',
+ 'fpdfsdk/src/javascript/JS_Runtime.h',
+ 'fpdfsdk/src/javascript/JS_Value.cpp',
+ 'fpdfsdk/src/javascript/JS_Value.h',
+ 'fpdfsdk/src/javascript/PublicMethods.cpp',
+ 'fpdfsdk/src/javascript/PublicMethods.h',
+ 'fpdfsdk/src/javascript/app.cpp',
+ 'fpdfsdk/src/javascript/app.cpp',
+ 'fpdfsdk/src/javascript/app.h',
+ 'fpdfsdk/src/javascript/color.cpp',
+ 'fpdfsdk/src/javascript/color.cpp',
+ 'fpdfsdk/src/javascript/color.h',
+ 'fpdfsdk/src/javascript/console.cpp',
+ 'fpdfsdk/src/javascript/console.cpp',
+ 'fpdfsdk/src/javascript/console.h',
+ 'fpdfsdk/src/javascript/event.cpp',
+ 'fpdfsdk/src/javascript/event.h',
+ 'fpdfsdk/src/javascript/global.cpp',
+ 'fpdfsdk/src/javascript/global.h',
+ 'fpdfsdk/src/javascript/report.cpp',
+ 'fpdfsdk/src/javascript/report.h',
+ 'fpdfsdk/src/javascript/resource.cpp',
+ 'fpdfsdk/src/javascript/resource.h',
+ 'fpdfsdk/src/javascript/util.cpp',
+ 'fpdfsdk/src/javascript/util.h',
+ 'fpdfsdk/include/jsapi/fxjs_v8.h',
+ 'fpdfsdk/src/jsapi/fxjs_v8.cpp',
+ ],
+ }],
],
},
{
@@ -747,14 +743,10 @@
'dependencies': [
'<(DEPTH)/testing/gmock.gyp:gmock',
'<(DEPTH)/testing/gtest.gyp:gtest',
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
- '<(DEPTH)/v8/tools/gyp/v8.gyp:v8_libplatform',
'pdfium',
],
'include_dirs': [
'<(DEPTH)',
- '<(DEPTH)/v8',
- '<(DEPTH)/v8/include',
],
'sources': [
'core/src/fpdfapi/fpdf_parser/fpdf_parser_decode_embeddertest.cpp',
@@ -766,7 +758,6 @@
'fpdfsdk/src/fpdfview_c_api_test.c',
'fpdfsdk/src/fpdfview_c_api_test.h',
'fpdfsdk/src/fpdfview_embeddertest.cpp',
- 'fpdfsdk/src/jsapi/fxjs_v8_embeddertest.cpp',
'testing/embedder_test.cpp',
'testing/embedder_test.h',
'testing/embedder_test_mock_delegate.h',
@@ -774,6 +765,21 @@
'testing/fx_string_testhelpers.cpp',
'testing/fx_string_testhelpers.h',
],
+ 'conditions': [
+ ['pdf_enable_v8==1', {
+ 'include_dirs': [
+ '<(DEPTH)/v8',
+ '<(DEPTH)/v8/include',
+ ],
+ 'dependencies': [
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8',
+ '<(DEPTH)/v8/tools/gyp/v8.gyp:v8_libplatform',
+ ],
+ 'sources': [
+ 'fpdfsdk/src/jsapi/fxjs_v8_embeddertest.cpp',
+ ],
+ }],
+ ],
},
],
}