Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(98)

Side by Side Diff: build/config/win/manifest.gni

Issue 1265263002: Use new GN features in the build. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 # HOW MANIFESTS WORK IN THE GN BUILD 5 # HOW MANIFESTS WORK IN THE GN BUILD
6 # 6 #
7 # Use the windows_manifest template to declare a manifest generation step. 7 # Use the windows_manifest template to declare a manifest generation step.
8 # This will combine all listed .manifest files and generate a resource file 8 # This will combine all listed .manifest files and generate a resource file
9 # referencing the resulting manifest. To link this manifest, just depend on 9 # referencing the resulting manifest. To link this manifest, just depend on
10 # the manifest target from your executable or shared library. 10 # the manifest target from your executable or shared library.
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 _environment_file, 106 _environment_file,
107 "mt.exe", 107 "mt.exe",
108 "-nologo", 108 "-nologo",
109 "-manifest", 109 "-manifest",
110 ] 110 ]
111 args += rebase_path(invoker.sources, root_build_dir) 111 args += rebase_path(invoker.sources, root_build_dir)
112 args += [ "-out:" + rebase_path(output_manifest, root_build_dir) ] 112 args += [ "-out:" + rebase_path(output_manifest, root_build_dir) ]
113 113
114 # Apply any dependencies from the invoker to this target, since those 114 # Apply any dependencies from the invoker to this target, since those
115 # dependencies may have created the input manifest files. 115 # dependencies may have created the input manifest files.
116 if (defined(invoker.deps)) { 116 forward_variables_from(invoker, [ "deps" ])
117 deps = invoker.deps
118 }
119 } 117 }
120 118
121 # Make the .rc file that references the final manifest file. The manifest 119 # Make the .rc file that references the final manifest file. The manifest
122 # generation doesn't need to be a dependency because it's not actually 120 # generation doesn't need to be a dependency because it's not actually
123 # needed until the .rc is compiled. 121 # needed until the .rc is compiled.
124 # 122 #
125 # This could easily be combined into one step, but this current separation 123 # This could easily be combined into one step, but this current separation
126 # of .manifest and .rc matches GYP and allows us to re-use gyp-win-tool. 124 # of .manifest and .rc matches GYP and allows us to re-use gyp-win-tool.
127 action(rc_action_name) { 125 action(rc_action_name) {
128 visibility = [ ":$source_set_name" ] 126 visibility = [ ":$source_set_name" ]
(...skipping 19 matching lines...) Expand all
148 "manifest-to-rc", 146 "manifest-to-rc",
149 "$_environment_file", 147 "$_environment_file",
150 rebase_path(output_manifest), 148 rebase_path(output_manifest),
151 rebase_path(rcfile, root_build_dir), 149 rebase_path(rcfile, root_build_dir),
152 manifest_resource_id, 150 manifest_resource_id,
153 ] 151 ]
154 } 152 }
155 153
156 # This source set only exists to compile and link the resource file. 154 # This source set only exists to compile and link the resource file.
157 source_set(source_set_name) { 155 source_set(source_set_name) {
158 if (defined(invoker.visibility)) { 156 forward_variables_from(invoker, [ "visibility" ])
159 visibility = invoker.visibility
160 }
161 sources = [ 157 sources = [
162 rcfile, 158 rcfile,
163 ] 159 ]
164 deps = [ 160 deps = [
165 ":$manifest_action_name", 161 ":$manifest_action_name",
166 ":$rc_action_name", 162 ":$rc_action_name",
167 ] 163 ]
168 } 164 }
169 } 165 }
170 } else { 166 } else {
171 # Make a no-op group on non-Windows platforms so windows_manifest 167 # Make a no-op group on non-Windows platforms so windows_manifest
172 # instantiations don't need to be inside windows blocks. 168 # instantiations don't need to be inside windows blocks.
173 template("windows_manifest") { 169 template("windows_manifest") {
174 group(target_name) { 170 group(target_name) {
175 # Prevent unused variable warnings on non-Windows platforms. 171 # Prevent unused variable warnings on non-Windows platforms.
176 assert(invoker.type == "exe" || invoker.type == "dll") 172 assert(invoker.type == "exe" || invoker.type == "dll")
177 assert(invoker.sources != "") 173 assert(invoker.sources != "")
178 assert(!defined(invoker.deps) || invoker.deps != "") 174 assert(!defined(invoker.deps) || invoker.deps != "")
179 assert(!defined(invoker.visibility) || invoker.visibility != "") 175 assert(!defined(invoker.visibility) || invoker.visibility != "")
180 } 176 }
181 } 177 }
182 } 178 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698