blob: 04d612dc4a6bc21943ee4edbd98cbf17e5e955be [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',
Ben Murdoch0529e5d2014-04-24 10:50:13 +010057 '<(DEPTH)/components/components.gyp:cloud_devices_common',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010058 '<(DEPTH)/google_apis/google_apis.gyp:google_apis',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000059 '<(DEPTH)/ipc/ipc.gyp:ipc',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000060 '<(DEPTH)/net/net.gyp:net',
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 }],
Torne (Richard Coles)f2477e02013-11-28 11:55:43 +000072 ['enable_printing!=0', {
73 'dependencies': [
74 '<(DEPTH)/printing/printing.gyp:printing',
75 ],
76 }],
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000077 ],
Torne (Richard Coles)58218062012-11-14 11:43:16 +000078 'sources': [
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +010079 '<(DEPTH)/content/public/common/content_switches.h',
80 '<(DEPTH)/content/public/common/content_switches.cc',
81 '<(DEPTH)/cloud_print/common/win/cloud_print_utils.cc',
82 '<(DEPTH)/cloud_print/common/win/cloud_print_utils.h',
83 'service_constants.cc',
84 'service_constants.h',
Torne (Richard Coles)58218062012-11-14 11:43:16 +000085 'service_state.cc',
86 'service_state.h',
87 'service_switches.cc',
88 'service_switches.h',
89 'win/chrome_launcher.cc',
90 'win/chrome_launcher.h',
91 'win/local_security_policy.cc',
92 'win/local_security_policy.h',
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +000093 'win/service_controller.cc',
94 'win/service_controller.h',
95 'win/service_listener.cc',
96 'win/service_listener.h',
97 'win/service_utils.cc',
98 'win/service_utils.h',
99 'win/setup_listener.cc',
100 'win/setup_listener.h',
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000101 ],
102 },
103 {
104 'target_name': 'cloud_print_service',
105 'type': 'executable',
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000106 'sources': [
Torne (Richard Coles)2a99a7e2013-03-28 15:31:22 +0000107 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_exe_version.rc',
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000108 'win/cloud_print_service.cc',
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100109 ],
110 'includes': [
111 'win/service_resources.gypi'
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000112 ],
113 'dependencies': [
114 'cloud_print_service_lib',
115 ],
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000116 'msvs_settings': {
117 'VCLinkerTool': {
118 'SubSystem': '1', # Set /SUBSYSTEM:CONSOLE
119 'UACExecutionLevel': '2', # /level='requireAdministrator'
120 'AdditionalDependencies': [
121 'secur32.lib',
122 ],
123 },
124 },
125 },
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100126 {
127 'target_name': 'cloud_print_service_config',
128 'type': 'executable',
129 'sources': [
130 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_config_exe_version.rc',
131 'win/cloud_print_service_config.cc',
132 ],
133 'includes': [
134 'win/service_resources.gypi'
135 ],
136 'dependencies': [
137 '<(DEPTH)/cloud_print/common/common.gyp:cloud_print_install_lib',
138 'cloud_print_service_lib',
139 ],
140 'msvs_settings': {
Torne (Richard Coles)5d1f7b12014-02-21 12:16:55 +0000141 'VCManifestTool': {
142 'AdditionalManifestFiles': [
143 'common-controls.manifest',
144 ],
145 },
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100146 'VCLinkerTool': {
147 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
148 'UACExecutionLevel': '2', # /level='requireAdministrator'
149 'AdditionalDependencies': [
150 'secur32.lib',
151 ],
Torne (Richard Coles)c2e0dbd2013-05-09 18:35:53 +0100152 },
153 },
154 },
155 {
156 'target_name': 'cloud_print_service_setup',
157 'type': 'executable',
158 'sources': [
159 '<(SHARED_INTERMEDIATE_DIR)/cloud_print/cloud_print_service_setup_exe_version.rc',
160 'win/installer.cc',
161 'win/installer.h',
162 ],
163 'includes': [
164 'win/service_resources.gypi'
165 ],
166 'dependencies': [
167 '<(DEPTH)/cloud_print/common/common.gyp:cloud_print_install_lib',
168 'cloud_print_service_lib',
169 ],
170 'msvs_settings': {
171 'VCLinkerTool': {
172 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
173 'UACExecutionLevel': '2', # /level='requireAdministrator'
174 'AdditionalDependencies': [
175 'secur32.lib',
176 ],
177 },
178 },
179 },
Torne (Richard Coles)58218062012-11-14 11:43:16 +0000180 ],
181}