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

Side by Side Diff: chrome/BUILD.gn

Issue 2841443005: [Bindings] Create and use V8 context snapshots (Closed)
Patch Set: Fix some behaviors Created 3 years, 7 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 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 import("//build/config/chrome_build.gni") 5 import("//build/config/chrome_build.gni")
6 import("//build/config/compiler/compiler.gni") 6 import("//build/config/compiler/compiler.gni")
7 import("//build/config/compiler/pgo/pgo.gni") 7 import("//build/config/compiler/pgo/pgo.gni")
8 import("//build/config/features.gni") 8 import("//build/config/features.gni")
9 import("//build/config/locales.gni") 9 import("//build/config/locales.gni")
10 import("//build/config/sanitizers/sanitizers.gni") 10 import("//build/config/sanitizers/sanitizers.gni")
11 import("//build/config/ui.gni") 11 import("//build/config/ui.gni")
12 import("//build/config/win/console_app.gni") 12 import("//build/config/win/console_app.gni")
13 import("//build/config/win/manifest.gni") 13 import("//build/config/win/manifest.gni")
14 import("//build/toolchain/toolchain.gni") 14 import("//build/toolchain/toolchain.gni")
15 import("//chrome/chrome_paks.gni") 15 import("//chrome/chrome_paks.gni")
16 import("//chrome/common/features.gni") 16 import("//chrome/common/features.gni")
17 import("//chrome/process_version_rc_template.gni") 17 import("//chrome/process_version_rc_template.gni")
18 import("//extensions/features/features.gni") 18 import("//extensions/features/features.gni")
19 import("//ppapi/features/features.gni") 19 import("//ppapi/features/features.gni")
20 import("//third_party/WebKit/public/public_features.gni") 20 import("//third_party/WebKit/public/public_features.gni")
21 import("//third_party/widevine/cdm/widevine.gni") 21 import("//third_party/widevine/cdm/widevine.gni")
22 import("//tools/resources/generate_resource_whitelist.gni") 22 import("//tools/resources/generate_resource_whitelist.gni")
23 import("//v8/gni/v8.gni") 23 import("//v8/gni/v8.gni")
24 import("//v8/snapshot_toolchain.gni")
24 25
25 if (is_android) { 26 if (is_android) {
26 import("//build/config/android/rules.gni") 27 import("//build/config/android/rules.gni")
27 } else if (is_mac) { 28 } else if (is_mac) {
28 import("//build/compiled_action.gni") 29 import("//build/compiled_action.gni")
29 import("//build/config/mac/rules.gni") 30 import("//build/config/mac/rules.gni")
30 import("//build/config/mac/symbols.gni") 31 import("//build/config/mac/symbols.gni")
31 import("//build/mac/tweak_info_plist.gni") 32 import("//build/mac/tweak_info_plist.gni")
32 import("//build/util/branding.gni") 33 import("//build/util/branding.gni")
33 import("//build/util/version.gni") 34 import("//build/util/version.gni")
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 # This should not pull in installer strings. This is will bloat the binary 108 # This should not pull in installer strings. This is will bloat the binary
108 # for no reason and is easy to mess up. See the comment at the top of 109 # for no reason and is easy to mess up. See the comment at the top of
109 # //chrome/installer/util/BUILD.gn. 110 # //chrome/installer/util/BUILD.gn.
110 assert_no_deps = [ "//chrome/installer/util:strings" ] 111 assert_no_deps = [ "//chrome/installer/util:strings" ]
111 } 112 }
112 113
113 if (!is_android && !is_mac) { 114 if (!is_android && !is_mac) {
114 group("chrome") { 115 group("chrome") {
115 public_deps = [ 116 public_deps = [
116 ":chrome_initial", 117 ":chrome_initial",
118 "//gin:run_gin_blink_snapshot($v8_snapshot_toolchain)",
117 ] 119 ]
118 data_deps = [ 120 data_deps = [
119 ":chrome_initial", 121 ":chrome_initial",
120 ] 122 ]
123 data = [
124 "$root_out_dir/context_blob.bin",
125 ]
121 if (is_win) { 126 if (is_win) {
122 public_deps += [ ":reorder_imports" ] 127 public_deps += [ ":reorder_imports" ]
123 } 128 }
124 if (use_aura && (is_win || is_linux)) { 129 if (use_aura && (is_win || is_linux)) {
125 data_deps += [ "//chrome/app:service_manifests" ] 130 data_deps += [ "//chrome/app:service_manifests" ]
126 } 131 }
127 } 132 }
128 133
129 executable("chrome_initial") { 134 executable("chrome_initial") {
130 if (is_win) { 135 if (is_win) {
(...skipping 652 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 if (using_sanitizer) { 788 if (using_sanitizer) {
784 # crashpad_handler requires the ASan runtime at its @executable_path. 789 # crashpad_handler requires the ASan runtime at its @executable_path.
785 sources += [ "$root_out_dir/libclang_rt.asan_osx_dynamic.dylib" ] 790 sources += [ "$root_out_dir/libclang_rt.asan_osx_dynamic.dylib" ]
786 public_deps += [ "//build/config/sanitizers:copy_asan_runtime" ] 791 public_deps += [ "//build/config/sanitizers:copy_asan_runtime" ]
787 } 792 }
788 } 793 }
789 794
790 bundle_data("chrome_framework_resources") { 795 bundle_data("chrome_framework_resources") {
791 sources = [ 796 sources = [
792 "$root_out_dir/app_mode_loader.app", 797 "$root_out_dir/app_mode_loader.app",
798 "$root_out_dir/context_blob.bin",
793 799
794 # This image is used to badge the lock icon in the 800 # This image is used to badge the lock icon in the
795 # authentication dialogs, such as those used for installation 801 # authentication dialogs, such as those used for installation
796 # from disk image and Keystone promotion (if so enabled). It 802 # from disk image and Keystone promotion (if so enabled). It
797 # needs to exist as a file on disk and not just something in a 803 # needs to exist as a file on disk and not just something in a
798 # resource bundle because that's the interface that 804 # resource bundle because that's the interface that
799 # Authorization Services uses. Also, Authorization Services 805 # Authorization Services uses. Also, Authorization Services
800 # can't deal with .icns files. 806 # can't deal with .icns files.
801 "app/theme/default_100_percent/$branding_path_component/product_logo_32.pn g", 807 "app/theme/default_100_percent/$branding_path_component/product_logo_32.pn g",
802 "browser/mac/install.sh", 808 "browser/mac/install.sh",
803 ] 809 ]
804 810
805 outputs = [ 811 outputs = [
806 "{{bundle_resources_dir}}/{{source_file_part}}", 812 "{{bundle_resources_dir}}/{{source_file_part}}",
807 ] 813 ]
808 814
809 public_deps = [ 815 public_deps = [
810 ":packed_resources", 816 ":packed_resources",
811 "//chrome/app_shim:app_mode_loader", 817 "//chrome/app_shim:app_mode_loader",
818 "//gin:run_gin_blink_snapshot($v8_snapshot_toolchain)",
812 ] 819 ]
813 820
814 if (is_chrome_branded) { 821 if (is_chrome_branded) {
815 sources += [ 822 sources += [
816 "browser/mac/keystone_promote_postflight.sh", 823 "browser/mac/keystone_promote_postflight.sh",
817 "browser/mac/keystone_promote_preflight.sh", 824 "browser/mac/keystone_promote_preflight.sh",
818 ] 825 ]
819 } 826 }
820 827
821 if (icu_use_data_file) { 828 if (icu_use_data_file) {
(...skipping 938 matching lines...) Expand 10 before | Expand all | Expand 10 after
1760 "//chrome/app/theme/$branding_path_component/product_logo_48.png", 1767 "//chrome/app/theme/$branding_path_component/product_logo_48.png",
1761 "//chrome/tools/build/linux/chrome-wrapper", 1768 "//chrome/tools/build/linux/chrome-wrapper",
1762 "//third_party/xdg-utils/scripts/xdg-mime", 1769 "//third_party/xdg-utils/scripts/xdg-mime",
1763 "//third_party/xdg-utils/scripts/xdg-settings", 1770 "//third_party/xdg-utils/scripts/xdg-settings",
1764 ] 1771 ]
1765 outputs = [ 1772 outputs = [
1766 "$root_out_dir/{{source_file_part}}", 1773 "$root_out_dir/{{source_file_part}}",
1767 ] 1774 ]
1768 } 1775 }
1769 } 1776 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698