blob: 1bdc5528b1e28f0f7c70cc98aec15b4cfbe388e5 [file] [log] [blame]
Torne (Richard Coles)58218062012-11-14 11:43:16 +00001# 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 'target_defaults': {
6 'variables': {
7 'chromium_code': 1,
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +00008 'enable_wexit_time_destructors': 1,
Torne (Richard Coles)58218062012-11-14 11:43:16 +00009 },
10 'include_dirs': [
11 '<(DEPTH)',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000012 # To allow including "version.h"
13 '<(SHARED_INTERMEDIATE_DIR)',
14 ],
15 'defines' : [
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010016 'COMPILE_CONTENT_STATICALLY',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000017 'SECURITY_WIN32',
18 'STRICT',
19 '_ATL_APARTMENT_THREADED',
20 '_ATL_CSTRING_EXPLICIT_CONSTRUCTORS',
21 '_ATL_NO_COM_SUPPORT',
22 '_ATL_NO_AUTOMATIC_NAMESPACE',
23 '_ATL_NO_EXCEPTIONS',
24 ],
25 'conditions': [
26 ['OS=="win"', {
27 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
28 'msvs_disabled_warnings': [ 4267, ],
29 }],
Torne (Richard Coles)58218062012-11-14 11:43:16 +000030 ],
31 },
32 'targets': [
33 {
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010034 'target_name': 'service_resources',
35 'type': 'none',
36 'variables': {
37 'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/cloud_print',
38 },
39 'actions': [
40 {
41 'action_name': 'service_resources',
42 'variables': {
43 'grit_grd_file': 'win/service_resources.grd',
44 },
45 'includes': [ '../../build/grit_action.gypi' ],
46 },
47 ],
48 'includes': [ '../../build/grit_target.gypi' ],
49 },
50 {
Torne (Richard Coles)58218062012-11-14 11:43:16 +000051 'target_name': 'cloud_print_service_lib',
52 'type': 'static_library',
53 'dependencies': [
54 '<(DEPTH)/base/base.gyp:base',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010055 '<(DEPTH)/base/base.gyp:base_static',
56 '<(DEPTH)/base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010057 '<(DEPTH)/google_apis/google_apis.gyp:google_apis',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000058 '<(DEPTH)/ipc/ipc.gyp:ipc',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000059 '<(DEPTH)/net/net.gyp:net',
60 '<(DEPTH)/printing/printing.gyp:printing',
Torne (Richard Coles)868fa2f2013-06-11 10:57:03 +010061 '<(DEPTH)/url/url.gyp:url_lib',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010062 'service_resources',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000063 ],
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000064 'conditions': [
65 ['OS=="win"', {
66 'dependencies': [
67 '<(DEPTH)/chrome/chrome.gyp:chrome_version_header',
68 '<(DEPTH)/chrome/chrome.gyp:launcher_support',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010069 '<(DEPTH)/chrome/common_constants.gyp:common_constants',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000070 ],
71 }],
72 ],
Torne (Richard Coles)58218062012-11-14 11:43:16 +000073 'sources': [
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010074 '<(DEPTH)/content/public/common/content_switches.h',
75 '<(DEPTH)/content/public/common/content_switches.cc',
76 '<(DEPTH)/cloud_print/common/win/cloud_print_utils.cc',
77 '<(DEPTH)/cloud_print/common/win/cloud_print_utils.h',
78 'service_constants.cc',
79 'service_constants.h',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000080 'service_state.cc',
81 'service_state.h',
82 'service_switches.cc',
83 'service_switches.h',
84 'win/chrome_launcher.cc',
85 'win/chrome_launcher.h',
86 'win/local_security_policy.cc',
87 'win/local_security_policy.h',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000088 'win/service_controller.cc',
89 'win/service_controller.h',
90 'win/service_listener.cc',
91 'win/service_listener.h',
92 'win/service_utils.cc',
93 'win/service_utils.h',
94 'win/setup_listener.cc',
95 'win/setup_listener.h',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000096 ],
97 },
98 {
99 'target_name': 'cloud_print_service',
100 'type': 'executable',
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000101 'sources': [
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +0000102 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_exe_version.rc',
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000103 'win/cloud_print_service.cc',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100104 ],
105 'includes': [
106 'win/service_resources.gypi'
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000107 ],
108 'dependencies': [
109 'cloud_print_service_lib',
110 ],
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000111 'msvs_settings': {
112 'VCLinkerTool': {
113 'SubSystem': '1', # Set /SUBSYSTEM:CONSOLE
114 'UACExecutionLevel': '2', # /level='requireAdministrator'
115 'AdditionalDependencies': [
116 'secur32.lib',
117 ],
118 },
119 },
120 },
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100121 {
122 'target_name': 'cloud_print_service_config',
123 'type': 'executable',
124 'sources': [
125 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_config_exe_version.rc',
126 'win/cloud_print_service_config.cc',
127 ],
128 'includes': [
129 'win/service_resources.gypi'
130 ],
131 'dependencies': [
132 '<(DEPTH)/cloud_print/common/common.gyp:cloud_print_install_lib',
133 'cloud_print_service_lib',
134 ],
135 'msvs_settings': {
136 'VCLinkerTool': {
137 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
138 'UACExecutionLevel': '2', # /level='requireAdministrator'
139 'AdditionalDependencies': [
140 'secur32.lib',
141 ],
142 'AdditionalOptions': [ # Enable Vista+ look.
143 "\"/manifestdependency:type='win32' "
144 "name='Microsoft.Windows.Common-Controls' "
145 "version='6.0.0.0' "
146 "processorArchitecture='*' "
147 "publicKeyToken='6595b64144ccf1df' language='*'\"",
148 ],
149 },
150 },
151 },
152 {
153 'target_name': 'cloud_print_service_setup',
154 'type': 'executable',
155 'sources': [
156 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_setup_exe_version.rc',
157 'win/installer.cc',
158 'win/installer.h',
159 ],
160 'includes': [
161 'win/service_resources.gypi'
162 ],
163 'dependencies': [
164 '<(DEPTH)/cloud_print/common/common.gyp:cloud_print_install_lib',
165 'cloud_print_service_lib',
166 ],
167 'msvs_settings': {
168 'VCLinkerTool': {
169 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
170 'UACExecutionLevel': '2', # /level='requireAdministrator'
171 'AdditionalDependencies': [
172 'secur32.lib',
173 ],
174 },
175 },
176 },
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000177 ],
178}