| Index: chrome/BUILD.gn
|
| diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
|
| index afe1e986e579d21606e370b2b3cfc57dc44e528c..db96650484a3460a74235f6aaf5c2e3909d15f27 100644
|
| --- a/chrome/BUILD.gn
|
| +++ b/chrome/BUILD.gn
|
| @@ -393,11 +393,13 @@ if (is_win) {
|
|
|
| tweak_info_plist("chrome_app_plist") {
|
| info_plist = "app/app-Info.plist"
|
| + _keystone_arg = "0"
|
| + if (enable_mac_keystone) {
|
| + _keystone_arg = "1"
|
| + }
|
| args = [
|
| "--breakpad=0",
|
| -
|
| - #"--keystone=???", # TODO(rsesek): Keystone.
|
| -
|
| + "--keystone=$_keystone_arg",
|
| "--scm=1",
|
| "--bundle_id=$chrome_mac_bundle_id",
|
| ]
|
| @@ -520,6 +522,11 @@ if (is_win) {
|
| public_deps = [
|
| ":chrome_helper_app",
|
|
|
| + # keystone_registration_framework copies the framework into the framework
|
| + # bundle via a script that performs additional actions, rather than
|
| + # relying on a bundle_data to copy it.
|
| + ":keystone_registration_framework",
|
| +
|
| # verify_chrome_framework_order depends on :chrome_framework and, for
|
| # non-component builds, will ensure the export symbol table is correct.
|
| ":verify_chrome_framework_order",
|
| @@ -631,6 +638,13 @@ if (is_win) {
|
| }
|
| }
|
|
|
| + if (enable_mac_keystone) {
|
| + sources += [
|
| + "browser/mac/keystone_promote_postflight.sh",
|
| + "browser/mac/keystone_promote_preflight.sh",
|
| + ]
|
| + }
|
| +
|
| if (v8_use_external_startup_data) {
|
| sources += [
|
| "$root_out_dir/natives_blob.bin",
|
| @@ -658,6 +672,32 @@ if (is_win) {
|
| }
|
| }
|
|
|
| + if (enable_mac_keystone) {
|
| + action("keystone_registration_framework") {
|
| + script = "//chrome/tools/build/mac/copy_keystone_framework.py"
|
| +
|
| + framework_path = "//third_party/googlemac/Releases/Keystone/KeystoneRegistration.framework"
|
| + output_path = "$root_out_dir/$chrome_framework_name.framework/Frameworks/"
|
| +
|
| + sources = [
|
| + framework_path,
|
| + script,
|
| + ]
|
| +
|
| + args = [
|
| + rebase_path(framework_path, root_out_dir),
|
| + rebase_path(output_path, root_out_dir),
|
| + ]
|
| +
|
| + outputs = [
|
| + "$output_path/KeystoneRegistration.framework",
|
| + ]
|
| + }
|
| + } else {
|
| + group("keystone_registration_framework") {
|
| + }
|
| + }
|
| +
|
| tweak_info_plist("chrome_framework_plist") {
|
| info_plist = "app/framework-Info.plist"
|
| args = [
|
|
|