Temporarily re-enabling SizeAfterPrefChange test with traces (this time for Linux...
[chromium-blink-merge.git] / pdf / pdf.gyp
blob8410da915bb7dbfa6a93975895c8b1e7741cbb93
2   'variables': {
3     'chromium_code': 1,
4     'pdf_engine%': 0,  # 0 PDFium
5   },
6   'target_defaults': {
7     'cflags': [
8       '-fPIC',
9     ],
10   },
11   'targets': [
12     {
13       'target_name': 'pdf',
14       'type': 'loadable_module',
15       'msvs_guid': '647863C0-C7A3-469A-B1ED-AD7283C34BED',
16       'dependencies': [
17         '../base/base.gyp:base',
18         '../net/net.gyp:net',
19         '../ppapi/ppapi.gyp:ppapi_cpp',
20         '../third_party/pdfium/pdfium.gyp:fpdfsdk',
21       ],
22       'xcode_settings': {
23         'INFOPLIST_FILE': 'Info.plist',
24       },
25       'mac_framework_dirs': [
26         '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Frameworks',
27       ],
28       'ldflags': [ '-L<(PRODUCT_DIR)',],
29       'sources': [
30         'button.h',
31         'button.cc',
32         'chunk_stream.h',
33         'chunk_stream.cc',
34         'control.h',
35         'control.cc',
36         'document_loader.h',
37         'document_loader.cc',
38         'draw_utils.cc',
39         'draw_utils.h',
40         'fading_control.cc',
41         'fading_control.h',
42         'fading_controls.cc',
43         'fading_controls.h',
44         'instance.cc',
45         'instance.h',
46         'number_image_generator.cc',
47         'number_image_generator.h',
48         'out_of_process_instance.cc',
49         'out_of_process_instance.h',
50         'page_indicator.cc',
51         'page_indicator.h',
52         'paint_aggregator.cc',
53         'paint_aggregator.h',
54         'paint_manager.cc',
55         'paint_manager.h',
56         'pdf.cc',
57         'pdf.h',
58         'pdf.rc',
59         'progress_control.cc',
60         'progress_control.h',
61         'pdf_engine.h',
62         'preview_mode_client.cc',
63         'preview_mode_client.h',
64         'resource.h',
65         'resource_consts.h',
66         'thumbnail_control.cc',
67         'thumbnail_control.h',
68         '../chrome/browser/chrome_page_zoom_constants.cc',
69         '../content/common/page_zoom.cc',
70       ],
71       'conditions': [
72         ['pdf_engine==0', {
73           'sources': [
74             'pdfium/pdfium_assert_matching_enums.cc',
75             'pdfium/pdfium_engine.cc',
76             'pdfium/pdfium_engine.h',
77             'pdfium/pdfium_mem_buffer_file_read.cc',
78             'pdfium/pdfium_mem_buffer_file_read.h',
79             'pdfium/pdfium_mem_buffer_file_write.cc',
80             'pdfium/pdfium_mem_buffer_file_write.h',
81             'pdfium/pdfium_page.cc',
82             'pdfium/pdfium_page.h',
83             'pdfium/pdfium_range.cc',
84             'pdfium/pdfium_range.h',
85           ],
86         }],
87         ['OS!="win"', {
88           'sources!': [
89             'pdf.rc',
90           ],
91         }],
92         ['OS=="mac"', {
93           'mac_bundle': 1,
94           'product_name': 'PDF',
95           'product_extension': 'plugin',
96           # Strip the shipping binary of symbols so "Foxit" doesn't appear in
97           # the binary.  Symbols are stored in a separate .dSYM.
98           'variables': {
99             'mac_real_dsym': 1,
100           },
101           'sources+': [
102             'Info.plist'
103           ],
104         }],
105         ['OS=="win"', {
106           'defines': [
107             'COMPILE_CONTENT_STATICALLY',
108           ],
109           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
110           'msvs_disabled_warnings': [ 4267, ],
111         }],
112         ['OS=="linux"', {
113           'configurations': {
114             'Release_Base': {
115               #'cflags': [ '-fno-weak',],  # get rid of symbols that strip doesn't remove.
116               # Don't do this for now since official builder will take care of it.  That
117               # way symbols can still be uploaded to the crash server.
118               #'ldflags': [ '-s',],  # strip local symbols from binary.
119             },
120           },
121           # Use a custom version script to prevent leaking the vendor name in
122           # visible symbols.
123           'ldflags': [
124             '-Wl,--version-script=<!(cd <(DEPTH) && pwd -P)/pdf/libpdf.map'
125           ],
126         }],
127       ],
128     },
129   ],
130   'conditions': [
131     # CrOS has a separate step to do this.
132     ['OS=="linux" and chromeos==0',
133       { 'targets': [
134         {
135           'target_name': 'pdf_linux_symbols',
136           'type': 'none',
137           'conditions': [
138             ['linux_dump_symbols==1', {
139               'actions': [
140                 {
141                   'action_name': 'dump_symbols',
142                   'inputs': [
143                     '<(DEPTH)/build/linux/dump_app_syms',
144                     '<(PRODUCT_DIR)/dump_syms',
145                     '<(PRODUCT_DIR)/libpdf.so',
146                   ],
147                   'outputs': [
148                     '<(PRODUCT_DIR)/libpdf.so.breakpad.<(target_arch)',
149                   ],
150                   'action': ['<(DEPTH)/build/linux/dump_app_syms',
151                              '<(PRODUCT_DIR)/dump_syms',
152                              '<(linux_strip_binary)',
153                              '<(PRODUCT_DIR)/libpdf.so',
154                              '<@(_outputs)'],
155                   'message': 'Dumping breakpad symbols to <(_outputs)',
156                   'process_outputs_as_sources': 1,
157                 },
158               ],
159               'dependencies': [
160                 'pdf',
161                 '../breakpad/breakpad.gyp:dump_syms',
162               ],
163             }],
164           ],
165         },
166       ],
167     },],  # OS=="linux" and chromeos==0
168   ],