Don't return writable file entries from sensitive directories.
[chromium-blink-merge.git] / courgette / courgette.gyp
blob1d6c03049695ee5e16242d0f0674cdd802a2c28c
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'variables': {
7     'chromium_code': 1,
8     'courgette_lib_sources': [
9       'adjustment_method.cc',
10       'adjustment_method_2.cc',
11       'adjustment_method.h',
12       'assembly_program.cc',
13       'assembly_program.h',
14       'third_party/bsdiff.h',
15       'third_party/bsdiff_apply.cc',
16       'third_party/bsdiff_create.cc',
17       'third_party/paged_array.h',
18       'courgette.h',
19       'crc.cc',
20       'crc.h',
21       'difference_estimator.cc',
22       'difference_estimator.h',
23       'disassembler.cc',
24       'disassembler.h',
25       'disassembler_elf_32_x86.cc',
26       'disassembler_elf_32_x86.h',
27       'disassembler_win32_x86.cc',
28       'disassembler_win32_x86.h',
29       'encoded_program.cc',
30       'encoded_program.h',
31       'ensemble.cc',
32       'ensemble.h',
33       'ensemble_apply.cc',
34       'ensemble_create.cc',
35       'memory_allocator.cc',
36       'memory_allocator.h',
37       'region.h',
38       'simple_delta.cc',
39       'simple_delta.h',
40       'streams.cc',
41       'streams.h',
42       'types_elf.h',
43       'types_win_pe.h',
44       'patch_generator_x86_32.h',
45       'patcher_x86_32.h',
46     ],
47   },
48   'targets': [
49     {
50       'target_name': 'courgette_lib',
51       'type': 'static_library',
52       'dependencies': [
53         '../base/base.gyp:base',
54         '../third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk',
55       ],
56       'sources': [
57         '<@(courgette_lib_sources)'
58       ],
59     },
60     {
61       'target_name': 'courgette',
62       'type': 'executable',
63       'sources': [
64         'courgette_tool.cc',
65       ],
66       'dependencies': [
67         'courgette_lib',
68         '../base/base.gyp:base',
69       ],
70       'msvs_settings': {
71         'VCLinkerTool': {
72           'LargeAddressAware': 2,
73         },
74       },
75     },
76     {
77       'target_name': 'courgette_minimal_tool',
78       'type': 'executable',
79       'sources': [
80         'courgette_minimal_tool.cc',
81       ],
82       'dependencies': [
83         'courgette_lib',
84         '../base/base.gyp:base',
85       ],
86     },
87     {
88       'target_name': 'courgette_unittests',
89       'type': 'executable',
90       'sources': [
91         'adjustment_method_unittest.cc',
92         'bsdiff_memory_unittest.cc',
93         'base_test_unittest.cc',
94         'base_test_unittest.h',
95         'difference_estimator_unittest.cc',
96         'disassembler_elf_32_x86_unittest.cc',
97         'disassembler_win32_x86_unittest.cc',
98         'encoded_program_unittest.cc',
99         'encode_decode_unittest.cc',
100         'ensemble_unittest.cc',
101         'run_all_unittests.cc',
102         'streams_unittest.cc',
103         'versioning_unittest.cc',
104         'third_party/paged_array_unittest.cc'
105       ],
106       'dependencies': [
107         'courgette_lib',
108         '../base/base.gyp:base',
109         '../base/base.gyp:base_i18n',
110         '../base/base.gyp:test_support_base',
111         '../testing/gtest.gyp:gtest',
112       ],
113       'conditions': [
114         [ 'os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
115           'conditions': [
116             ['linux_use_tcmalloc==1', {
117               'dependencies': [
118                 '../base/allocator/allocator.gyp:allocator',
119               ],
120             }],
121           ],
122         }],
123         [ 'toolkit_uses_gtk == 1', {
124           'dependencies': [
125             # Workaround for gyp bug 69.
126             # Needed to handle the #include chain:
127             #   base/test_suite.h
128             #   gtk/gtk.h
129             '../build/linux/system.gyp:gtk',
130           ],
131         }],
132       ],
133       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
134       'msvs_disabled_warnings': [4267, ],
135     },
136     {
137       'target_name': 'courgette_fuzz',
138       'type': 'executable',
139       'sources': [
140         'base_test_unittest.cc',
141         'base_test_unittest.h',
142         'encoded_program_fuzz_unittest.cc',
143        ],
144       'dependencies': [
145         'courgette_lib',
146         '../base/base.gyp:base',
147         '../base/base.gyp:base_i18n',
148         '../base/base.gyp:test_support_base',
149         '../testing/gtest.gyp:gtest',
150       ],
151       'conditions': [
152         [ 'toolkit_uses_gtk == 1', {
153           'dependencies': [
154             # Workaround for gyp bug 69.
155             # Needed to handle the #include chain:
156             #   base/test_suite.h
157             #   gtk/gtk.h
158             '../build/linux/system.gyp:gtk',
159           ],
160         }],
161       ],
162     },
163   ],
164   'conditions': [
165     ['OS=="win" and target_arch=="ia32"', {
166       'targets': [
167         {
168           'target_name': 'courgette_lib64',
169           'type': 'static_library',
170           'dependencies': [
171             '../base/base.gyp:base_nacl_win64',
172             '../third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk64',
173           ],
174           'sources': [
175             '<@(courgette_lib_sources)',
176           ],
177           'configurations': {
178             'Common_Base': {
179               'msvs_target_platform': 'x64',
180             },
181           },
182         },
183         {
184           'target_name': 'courgette64',
185           'type': 'executable',
186           'sources': [
187             'courgette_tool.cc',
188           ],
189           'dependencies': [
190             'courgette_lib64',
191             '../base/base.gyp:base_nacl_win64',
192           ],
193           'configurations': {
194             'Common_Base': {
195               'msvs_target_platform': 'x64',
196             },
197           },
198         },
199       ],
200     }],
201   ],