summaryrefslogtreecommitdiffstats
path: root/chrome/app/version_assembly
diff options
context:
space:
mode:
authorbrettw <brettw@chromium.org>2015-07-21 21:26:49 -0700
committerCommit bot <commit-bot@chromium.org>2015-07-22 04:27:41 +0000
commit983c0562bba1e4d93bb7ee489f56bcbd61fc55f9 (patch)
tree34dc4d88c58d0ff04997f39850fe7062ce0c09b9 /chrome/app/version_assembly
parent0355eead6c2048131771feb493187f6f80155cf6 (diff)
downloadchromium_src-983c0562bba1e4d93bb7ee489f56bcbd61fc55f9.zip
chromium_src-983c0562bba1e4d93bb7ee489f56bcbd61fc55f9.tar.gz
chromium_src-983c0562bba1e4d93bb7ee489f56bcbd61fc55f9.tar.bz2
Hook up chrome.exe manifest in the Windows GN build.
This generates a proper version manifest for chrome.exe and also for the version assembly. This adds a new way to get the chrome version info programatically at GN time. Although this adds another exec_script call, it removes four such calls in remoting so there is a net speed increase. BUG= Review URL: https://codereview.chromium.org/1250853007 Cr-Commit-Position: refs/heads/master@{#339833}
Diffstat (limited to 'chrome/app/version_assembly')
-rw-r--r--chrome/app/version_assembly/BUILD.gn41
1 files changed, 41 insertions, 0 deletions
diff --git a/chrome/app/version_assembly/BUILD.gn b/chrome/app/version_assembly/BUILD.gn
new file mode 100644
index 0000000..5e38ca9
--- /dev/null
+++ b/chrome/app/version_assembly/BUILD.gn
@@ -0,0 +1,41 @@
+# Copyright 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import("//build/config/win/manifest.gni")
+import("//build/util/version.gni")
+import("//chrome/version.gni")
+
+version_assembly_output_file = "$target_gen_dir/version_assembly.manifest"
+
+# Generates a manifest file with the current build's version information.
+process_version("chrome_exe_version_manifest") {
+ visibility = [ ":*" ]
+ template_file = "chrome_exe_manifest.template"
+ output = version_assembly_output_file
+}
+
+# Generates the manifest for chrome.exe. This is the normal manifest stuff plus
+# the version information.
+windows_manifest("chrome_exe_manifest") {
+ sources = [
+ as_invoker_manifest,
+ common_controls_manifest,
+ default_compatibility_manifest,
+ version_assembly_output_file,
+ ]
+
+ type = "exe"
+
+ deps = [
+ ":chrome_exe_version_manifest",
+ ]
+}
+
+# Generates the manifest for the version assembly, which is the versioned
+# directory where Chrome finds chrome.dll.
+process_version("version_assembly_manifest") {
+ template_file = "version_assembly_manifest.template"
+ output = "$root_build_dir/$chrome_version_full.manifest"
+ process_only = true
+}