Drop the icu version number from the name of icu data file on Windows.
[chromium-blink-merge.git] / chrome / installer / mini_installer.gyp
blobf58911d8f999ca7551b615209ab58f5414047ae8
2   'variables': {
3     'version_py': '../../chrome/tools/build/version.py',
4     'version_path': '../../chrome/VERSION',
5     'lastchange_path': '<(SHARED_INTERMEDIATE_DIR)/build/LASTCHANGE',
6     # 'branding_dir' is set in the 'conditions' section at the bottom.
7     'msvs_use_common_release': 0,
8     'msvs_use_common_linker_extras': 0,
9   },
10   'conditions': [
11     ['OS=="win"', {
12       'target_defaults': {
13         'dependencies': [
14           '../chrome.gyp:chrome',
15           '../chrome.gyp:chrome_nacl_win64',
16           '../chrome.gyp:chrome_dll',
17           '../chrome.gyp:default_extensions',
18           '../chrome.gyp:setup',
19         ],
20         'include_dirs': [
21           '../..',
22           '<(PRODUCT_DIR)',
23           '<(INTERMEDIATE_DIR)',
24           '<(SHARED_INTERMEDIATE_DIR)/chrome',
25         ],
26         'sources': [
27           'mini_installer/appid.h',
28           'mini_installer/mini_installer.cc',
29           'mini_installer/mini_installer.h',
30           'mini_installer/mini_installer.ico',
31           'mini_installer/mini_installer.rc',
32           'mini_installer/mini_installer_exe_version.rc.version',
33           'mini_installer/mini_installer_resource.h',
34           'mini_installer/pe_resource.cc',
35           'mini_installer/pe_resource.h',
36         ],
37         'msvs_settings': {
38           'VCCLCompilerTool': {
39             'EnableIntrinsicFunctions': 'true',
40             'BufferSecurityCheck': 'false',
41             'BasicRuntimeChecks': '0',
42             'ExceptionHandling': '0',
43           },
44           'VCLinkerTool': {
45             'RandomizedBaseAddress': '1',
46             'DataExecutionPrevention': '0',
47             'AdditionalLibraryDirectories': [
48               '<(DEPTH)/third_party/platformsdk_win7/files/Lib',
49               '<(PRODUCT_DIR)/lib'
50             ],
51             'DelayLoadDLLs': [],
52             'EntryPointSymbol': 'MainEntryPoint',
53             'GenerateMapFile': 'true',
54             'IgnoreAllDefaultLibraries': 'true',
55             'OptimizeForWindows98': '1',
56             'SubSystem': '2',     # Set /SUBSYSTEM:WINDOWS
57             'conditions': [
58               ['MSVS_VERSION=="2010"', {
59                 'AdditionalDependencies': [
60                   # These two object files are included in Visual Studio 2008
61                   # but not 2010.
62                   # TODO(bradnelson):
63                   # http://code.google.com/p/chromium/issues/detail?id=72885
64                   '"$(VCInstallDir)..\\..\\Microsoft Visual Studio 9.0\\VC\\'
65                       'crt\\src\\intel\\mt_lib\\memset.obj"',
66                   '"$(VCInstallDir)..\\..\\Microsoft Visual Studio 9.0\\VC\\'
67                       'crt\\src\\intel\\mt_lib\\P4_memset.obj"',
68                   'shlwapi.lib',
69                   'setupapi.lib',
70                 ],
71               },{
72                 'AdditionalDependencies': [
73                   '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\memset.obj"',
74                   '"$(VCInstallDir)crt\\src\\intel\\mt_lib\\P4_memset.obj"',
75                   'shlwapi.lib',
76                   'setupapi.lib',
77                 ],
78               }],
79             ],
80           },
81           'VCManifestTool': {
82             'AdditionalManifestFiles': [
83               '$(ProjectDir)\\mini_installer\\mini_installer.exe.manifest',
84             ],
85           },
86         },
87         'configurations': {
88           'Debug_Base': {
89             'msvs_settings': {
90               'VCCLCompilerTool': {
91                 'BasicRuntimeChecks': '0',
92                 'BufferSecurityCheck': 'false',
93                 'ExceptionHandling': '0',
94               },
95               'VCLinkerTool': {
96                 'SubSystem': '2',     # Set /SUBSYSTEM:WINDOWS
97                 'AdditionalOptions': [
98                   '/safeseh:no',
99                   '/dynamicbase:no',
100                   '/ignore:4199',
101                   '/ignore:4221',
102                   '/nxcompat',
103                 ],
104               },
105             },
106           },
107           'Release_Base': {
108             'includes': ['../../build/internal/release_defaults.gypi'],
109             'msvs_settings': {
110               'VCCLCompilerTool': {
111                 'EnableIntrinsicFunctions': 'true',
112                 'BasicRuntimeChecks': '0',
113                 'BufferSecurityCheck': 'false',
114                 'ExceptionHandling': '0',
115               },
116               'VCLinkerTool': {
117                 'SubSystem': '2',     # Set /SUBSYSTEM:WINDOWS
118                 'AdditionalOptions': [
119                   '/SAFESEH:NO',
120                   '/NXCOMPAT',
121                   '/DYNAMICBASE:NO',
122                   '/FIXED',
123                 ],
124               },
125             },
126           },
127         },
128         'rules': [
129           {
130             'rule_name': 'mini_installer_version',
131             'extension': 'version',
132             'variables': {
133               'template_input_path': 'mini_installer/mini_installer_exe_version.rc.version',
134             },
135             'inputs': [
136               '<(template_input_path)',
137               '<(version_path)',
138               '<(lastchange_path)',
139               '<(branding_dir)/BRANDING',
140             ],
141             'outputs': [
142               '<(INTERMEDIATE_DIR)/mini_installer_exe_version.rc',
143             ],
144             'action': [
145               'python', '<(version_py)',
146               '-f', '<(version_path)',
147               '-f', '<(lastchange_path)',
148               '-f', '<(branding_dir)/BRANDING',
149               '<(template_input_path)',
150               '<@(_outputs)',
151             ],
152             'process_outputs_as_sources': 1,
153             'message': 'Generating version information'
154           },
155         ],
156         # TODO(mark):  <(branding_dir) should be defined by the
157         # global condition block at the bottom of the file, but
158         # this doesn't work due to the following issue:
159         #
160         #   http://code.google.com/p/gyp/issues/detail?id=22
161         #
162         # Remove this block once the above issue is fixed.
163         'conditions': [
164           [ 'branding == "Chrome"', {
165             'variables': {
166                'branding_dir': '../app/theme/google_chrome',
167             },
168           }, { # else branding!="Chrome"
169             'variables': {
170                'branding_dir': '../app/theme/chromium',
171             },
172           }],
173         ],
174       },
175       'targets': [
176         {
177           'target_name': 'mini_installer',
178           'type': 'executable',
179           'msvs_guid': '24A5AC7C-280B-4899-9153-6BA570A081E7',
180           'sources': [
181             'mini_installer/chrome.release',
182             'mini_installer/chrome_appid.cc',
183           ],
184           'rules': [
185             {
186               'rule_name': 'installer_archive',
187               'extension': 'release',
188               'variables': {
189                 'create_installer_archive_py_path':
190                   '../tools/build/win/create_installer_archive.py',
191               },
192               'inputs': [
193                 '<(create_installer_archive_py_path)',
194                 '<(PRODUCT_DIR)/chrome.exe',
195                 '<(PRODUCT_DIR)/chrome.dll',
196                 '<(PRODUCT_DIR)/nacl64.exe',
197                 '<(PRODUCT_DIR)/nacl64.dll',
198                 '<(PRODUCT_DIR)/ppGoogleNaClPluginChrome.dll',
199                 '<(PRODUCT_DIR)/locales/en-US.dll',
200                 '<(PRODUCT_DIR)/icudt.dll',
201               ],
202               'outputs': [
203                 'xxx.out',
204                 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).7z',
205                 '<(PRODUCT_DIR)/<(RULE_INPUT_NAME).packed.7z',
206                 '<(PRODUCT_DIR)/setup.ex_',
207                 '<(PRODUCT_DIR)/packed_files.txt',
208               ],
209               'action': [
210                 'python',
211                 '<(create_installer_archive_py_path)',
212                 '--output_dir=<(PRODUCT_DIR)',
213                 '--input_file=<(RULE_INPUT_PATH)',
214                 # TODO(sgk):  may just use environment variables
215                 #'--distribution=$(CHROMIUM_BUILD)',
216                 '--distribution=_google_chrome',
217                 # Optional arguments to generate diff installer
218                 #'--last_chrome_installer=C:/Temp/base',
219                 #'--setup_exe_format=DIFF',
220                 #'--diff_algorithm=COURGETTE',
221               ],
222               'message': 'Create installer archive'
223             },
224           ],
225         },
226       ],
227     }],
228     [ 'branding == "Chrome"', {
229       'variables': {
230          'branding_dir': '../app/theme/google_chrome',
231       },
232     }, { # else branding!="Chrome"
233       'variables': {
234          'branding_dir': '../app/theme/chromium',
235       },
236     }],
237   ],
240 # Local Variables:
241 # tab-width:2
242 # indent-tabs-mode:nil
243 # End:
244 # vim: set expandtab tabstop=2 shiftwidth=2: