- add sources.
[platform/framework/web/crosswalk.git] / src / chrome_frame / chrome_frame_launcher.gyp
1 # Copyright (c) 2012 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.
4
5 {
6   'variables': {
7     'chromium_code': 1,
8
9     # Keep the archive builder happy.
10     'chrome_personalization%': 1,
11     'use_syncapi_stub%': 0,
12
13     'variables': {
14       'version_py_path': '../tools/build/version.py',
15       'version_path': 'VERSION',
16     },
17     'version_py_path': '<(version_py_path) -f',
18     'version_path': '<(version_path)',
19
20     'conditions': [
21       ['OS=="win"', {
22         'python': [
23           '<(DEPTH)\\third_party\\python_26\\setup_env.bat && python'
24         ],
25       }, { # OS != win
26         'python': [
27           'python'
28         ],
29       }],
30     ],
31   },
32   'includes': [
33     '../chrome/version.gypi',
34   ],
35   'target_defaults': {
36     'include_dirs': [
37       # all our own includes are relative to src/
38       '..',
39     ],
40     'configurations': {
41       'Release_Base': {
42         # Set flags to unconditionally optimize chrome_frame_launcher.exe
43         # for release builds.
44         'msvs_settings': {
45           'VCLinkerTool': {
46             'LinkTimeCodeGeneration': '1',
47           },
48           'VCCLCompilerTool': {
49             'Optimization': '3',
50             'InlineFunctionExpansion': '2',
51             'EnableIntrinsicFunctions': 'true',
52             'FavorSizeOrSpeed': '2',
53             'OmitFramePointers': 'true',
54             'EnableFiberSafeOptimizations': 'true',
55             'WholeProgramOptimization': 'true',
56           },
57           'VCLibrarianTool': {
58             'AdditionalOptions': ['/ltcg', '/expectedoutputsize:120000000'],
59           },
60         },
61       },
62     },
63   },
64   'targets': [
65     {
66       'target_name': 'chrome_frame_launcher_version_resources',
67       'type': 'none',
68       'conditions': [
69         ['branding == "Chrome"', {
70           'variables': {
71              'branding_path': '../chrome/app/theme/google_chrome/BRANDING',
72           },
73         }, { # else branding!="Chrome"
74           'variables': {
75              'branding_path': '../chrome/app/theme/chromium/BRANDING',
76           },
77         }],
78       ],
79       'variables': {
80         'output_dir': 'chrome_frame',
81         'template_input_path': 'chrome_frame_version.rc.version',
82         'extra_variable_files_arguments': [ '-f', 'BRANDING' ],
83         'extra_variable_files': [ 'BRANDING' ], # NOTE: matches that above
84       },
85       'direct_dependent_settings': {
86         'include_dirs': [
87           '<(SHARED_INTERMEDIATE_DIR)/<(output_dir)',
88         ],
89       },
90       'sources': [
91         'chrome_frame_helper_dll.ver',
92         'chrome_frame_helper_exe.ver',
93         'chrome_launcher_exe.ver',
94       ],
95       'includes': [
96         '../chrome/version_resource_rules.gypi',
97       ],
98     },
99     {
100       'target_name': 'chrome_launcher',
101       'type': 'executable',
102       'dependencies': [
103         '../breakpad/breakpad.gyp:breakpad_handler',
104         '../chrome/app/policy/cloud_policy_codegen.gyp:policy',
105         '../google_update/google_update.gyp:google_update',
106         'chrome_frame.gyp:chrome_frame_utils',
107         'chrome_frame_launcher_version_resources',
108       ],
109       'sources': [
110         '<(SHARED_INTERMEDIATE_DIR)/chrome_frame/chrome_launcher_exe_version.rc',
111         'chrome_launcher_main.cc',
112         'chrome_launcher.cc',
113         'chrome_launcher.h',
114         'update_launcher.cc',
115         'update_launcher.h'
116       ],
117       'msvs_settings': {
118         'VCLinkerTool': {
119           # Set /SUBSYSTEM:WINDOWS since this is not a command-line program.
120           'SubSystem': '2',
121           'AdditionalDependencies': [
122             'shlwapi.lib',
123           ],
124         },
125       },
126     },
127     {
128       'target_name': 'chrome_frame_helper',
129       'type': 'executable',
130       'dependencies': [
131         '../breakpad/breakpad.gyp:breakpad_handler',
132         'chrome_frame.gyp:chrome_frame_utils',
133         'chrome_frame_helper_dll',
134         'chrome_frame_helper_lib',
135         'chrome_frame_launcher_version_resources',
136       ],
137       'sources': [
138         'chrome_frame_helper_main.cc',
139         '<(SHARED_INTERMEDIATE_DIR)/chrome_frame/chrome_frame_helper_exe_version.rc',
140       ],
141       'msvs_settings': {
142         'VCLinkerTool': {
143           'OutputFile':
144               '$(OutDir)\\$(ProjectName).exe',
145           # Set /SUBSYSTEM:WINDOWS since this is not a command-line program.
146           'SubSystem': '2',
147         },
148       },
149     },
150     {
151       'target_name': 'chrome_frame_helper_dll',
152       'type': 'shared_library',
153       'dependencies': [
154         'chrome_frame.gyp:chrome_tab_idl',
155         'chrome_frame_helper_lib',
156         'chrome_frame_launcher_version_resources',
157       ],
158       'sources': [
159         'bho_loader.cc',
160         'bho_loader.h',
161         'chrome_frame_helper_dll.cc',
162         'chrome_frame_helper_dll.def',
163         '<(SHARED_INTERMEDIATE_DIR)/chrome_frame/chrome_frame_helper_dll_version.rc',
164         '<(SHARED_INTERMEDIATE_DIR)/chrome_frame/chrome_tab.h',
165         'event_hooker.cc',
166         'event_hooker.h',
167         'iids.cc',
168       ],
169       'msvs_settings': {
170         'VCLinkerTool': {
171           'OutputFile': '$(OutDir)\\chrome_frame_helper.dll',
172           # Set /SUBSYSTEM:WINDOWS since this is not a command-line program.
173           'SubSystem': '2',
174         },
175       },
176     },
177     {
178       'target_name': 'chrome_frame_helper_lib',
179       'type': 'static_library',
180       'dependencies': [
181         'chrome_frame.gyp:chrome_tab_idl',
182       ],
183       'sources': [
184         'chrome_frame_helper_util.cc',
185         'chrome_frame_helper_util.h',
186         'registry_watcher.cc',
187         'registry_watcher.h',
188         '<(SHARED_INTERMEDIATE_DIR)/chrome_frame/chrome_tab.h',
189         'iids.cc',
190       ],
191       'msvs_settings': {
192         'VCLinkerTool': {
193           'AdditionalDependencies': [
194             'shlwapi.lib',
195           ],
196         },
197       },
198     },
199   ],
200 }