Index: pdf/pdf.gyp |
diff --git a/pdf/pdf.gyp b/pdf/pdf.gyp |
index d49a0f1c62618e66ae59304583578b1f31e471ac..022592153f048f8c38e101102d434f1adf5c9e45 100644 |
--- a/pdf/pdf.gyp |
+++ b/pdf/pdf.gyp |
@@ -3,17 +3,27 @@ |
'chromium_code': 1, |
'pdf_engine%': 0, # 0 PDFium |
}, |
+ 'target_defaults': { |
+ 'cflags': [ |
+ '-fPIC', |
+ ], |
+ }, |
'targets': [ |
{ |
'target_name': 'pdf', |
- 'type': 'static_library', |
+ 'type': 'loadable_module', |
+ 'msvs_guid': '647863C0-C7A3-469A-B1ED-AD7283C34BED', |
'dependencies': [ |
'../base/base.gyp:base', |
- '../components/components.gyp:ui_zoom', |
- '../content/content.gyp:content_common', |
'../net/net.gyp:net', |
- '../ppapi/ppapi.gyp:ppapi_internal_module', |
+ '../ppapi/ppapi.gyp:ppapi_cpp', |
'../third_party/pdfium/pdfium.gyp:pdfium', |
+ ], |
+ 'xcode_settings': { |
+ 'INFOPLIST_FILE': 'Info.plist', |
+ }, |
+ 'mac_framework_dirs': [ |
+ '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Frameworks', |
], |
'ldflags': [ '-L<(PRODUCT_DIR)',], |
'sources': [ |
@@ -45,6 +55,7 @@ |
'paint_manager.h', |
'pdf.cc', |
'pdf.h', |
+ 'pdf.rc', |
'progress_control.cc', |
'progress_control.h', |
'pdf_engine.h', |
@@ -54,6 +65,8 @@ |
'resource_consts.h', |
'thumbnail_control.cc', |
'thumbnail_control.h', |
+ '../components/ui/zoom/page_zoom_constants.cc', |
+ '../content/common/page_zoom.cc', |
], |
'conditions': [ |
['pdf_engine==0', { |
@@ -73,11 +86,117 @@ |
'pdfium/pdfium_range.h', |
], |
}], |
+ ['OS!="win"', { |
+ 'sources!': [ |
+ 'pdf.rc', |
+ ], |
+ }], |
+ ['OS=="mac"', { |
+ 'mac_bundle': 1, |
+ 'product_name': 'PDF', |
+ 'product_extension': 'plugin', |
+ # Strip the shipping binary of symbols so "Foxit" doesn't appear in |
+ # the binary. Symbols are stored in a separate .dSYM. |
+ 'variables': { |
+ 'mac_real_dsym': 1, |
+ }, |
+ 'sources+': [ |
+ 'Info.plist' |
+ ], |
+ }], |
['OS=="win"', { |
+ 'defines': [ |
+ 'COMPILE_CONTENT_STATICALLY', |
+ ], |
# TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
'msvs_disabled_warnings': [ 4267, ], |
}], |
+ ['OS=="linux"', { |
+ 'configurations': { |
+ 'Release_Base': { |
+ #'cflags': [ '-fno-weak',], # get rid of symbols that strip doesn't remove. |
+ # Don't do this for now since official builder will take care of it. That |
+ # way symbols can still be uploaded to the crash server. |
+ #'ldflags': [ '-s',], # strip local symbols from binary. |
+ }, |
+ }, |
+ }], |
], |
}, |
], |
+ 'conditions': [ |
+ # CrOS has a separate step to do this. |
+ ['OS=="linux" and chromeos==0', |
+ { 'targets': [ |
+ { |
+ 'target_name': 'pdf_linux_symbols', |
+ 'type': 'none', |
+ 'conditions': [ |
+ ['linux_dump_symbols==1', { |
+ 'actions': [ |
+ { |
+ 'action_name': 'dump_symbols', |
+ 'inputs': [ |
+ '<(DEPTH)/build/linux/dump_app_syms', |
+ '<(PRODUCT_DIR)/dump_syms', |
+ '<(PRODUCT_DIR)/libpdf.so', |
+ ], |
+ 'outputs': [ |
+ '<(PRODUCT_DIR)/libpdf.so.breakpad.<(target_arch)', |
+ ], |
+ 'action': ['<(DEPTH)/build/linux/dump_app_syms', |
+ '<(PRODUCT_DIR)/dump_syms', |
+ '<(linux_strip_binary)', |
+ '<(PRODUCT_DIR)/libpdf.so', |
+ '<@(_outputs)'], |
+ 'message': 'Dumping breakpad symbols to <(_outputs)', |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ 'dependencies': [ |
+ 'pdf', |
+ '../breakpad/breakpad.gyp:dump_syms', |
+ ], |
+ }], |
+ ], |
+ }, |
+ ], |
+ },], # OS=="linux" and chromeos==0 |
+ ['OS=="win" and fastbuild==0 and target_arch=="ia32" and syzyasan==1', { |
+ 'variables': { |
+ 'dest_dir': '<(PRODUCT_DIR)/syzygy', |
+ }, |
+ 'targets': [ |
+ { |
+ 'target_name': 'pdf_syzyasan', |
+ 'type': 'none', |
+ 'sources' : [], |
+ 'dependencies': [ |
+ 'pdf', |
+ ], |
+ # Instrument PDFium with SyzyAsan. |
+ 'actions': [ |
+ { |
+ 'action_name': 'Instrument PDFium with SyzyAsan', |
+ 'inputs': [ |
+ '<(PRODUCT_DIR)/pdf.dll', |
+ ], |
+ 'outputs': [ |
+ '<(dest_dir)/pdf.dll', |
+ '<(dest_dir)/pdf.dll.pdb', |
+ ], |
+ 'action': [ |
+ 'python', |
+ '<(DEPTH)/chrome/tools/build/win/syzygy/instrument.py', |
+ '--mode', 'asan', |
+ '--input_executable', '<(PRODUCT_DIR)/pdf.dll', |
+ '--input_symbol', '<(PRODUCT_DIR)/pdf.dll.pdb', |
+ '--destination_dir', '<(dest_dir)', |
+ ], |
+ }, |
+ ], |
+ }, |
+ ], |
+ }], # OS=="win" and fastbuild==0 and target_arch=="ia32" and syzyasan==1 |
+ ], |
} |