[go: nahoru, domu]

blob: 00bf4d85711466febf3b4164498212907be3888a [file] [log] [blame]
Avi Drissman73a09d12022-09-08 20:33:381# Copyright 2018 The Chromium Authors
Marcin Simonides2f14ea12018-01-23 20:30:032# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Nico Weber897593f2019-07-25 23:17:555import("//build/buildflag_header.gni")
mark a. foltze185ab2fa2023-11-06 21:21:206import("//build/config/cast.gni")
Nico Weber897593f2019-07-25 23:17:557import("//build/config/chrome_build.gni")
Hidehiko Abe9c499c22020-09-03 18:10:338import("//build/config/chromeos/args.gni")
James Cook26d27122020-06-26 19:57:079import("//build/config/chromeos/ui_mode.gni")
Dave Tapuska70065a62023-02-01 21:58:1810import("//build/config/features.gni")
Sven Zhengba9e62b2022-07-11 23:45:5111import("//build/util/process_version.gni")
Michael Achenbachbd038af2022-07-25 11:56:1312import("//build_overrides/build.gni")
Nico Weber897593f2019-07-25 23:17:5513
Sylvain Defresne86bce6f42024-02-13 13:04:3614if (is_ios) {
15 import("//build/config/ios/ios_sdk.gni")
16}
17
Marcin Simonides2f14ea12018-01-23 20:30:0318source_set("buildflag_header_h") {
Nico Weber4782d73682020-01-14 04:52:1719 sources = [ "buildflag.h" ]
Marcin Simonides2f14ea12018-01-23 20:30:0320}
Nico Weber897593f2019-07-25 23:17:5521
22buildflag_header("branding_buildflags") {
23 header = "branding_buildflags.h"
24
Nico Weber0cc71122019-07-29 17:30:4025 if (is_chrome_branded) {
26 flags = [
27 "CHROMIUM_BRANDING=0",
28 "GOOGLE_CHROME_BRANDING=1",
29 ]
30 } else {
31 flags = [
32 "CHROMIUM_BRANDING=1",
33 "GOOGLE_CHROME_BRANDING=0",
34 ]
35 }
Thiago Perrotta02d13472023-08-31 17:03:0936
37 if (is_chrome_for_testing) {
38 assert(!is_chrome_branded,
39 "`is_chrome_for_testing` is incompatible with `is_chrome_branded`")
40
41 flags += [ "CHROME_FOR_TESTING=1" ]
42 } else {
43 flags += [ "CHROME_FOR_TESTING=0" ]
44 }
45
46 # Note: `GOOGLE_CHROME_FOR_TESTING_BRANDING` and `CHROMIUM_BRANDING` are not
47 # mutually exclusive.
48 if (is_chrome_for_testing_branded) {
49 assert(is_chrome_for_testing,
50 "`is_chrome_for_testing_branded` requires `is_chrome_for_testing`")
51
52 flags += [ "GOOGLE_CHROME_FOR_TESTING_BRANDING=1" ]
53 } else {
54 flags += [ "GOOGLE_CHROME_FOR_TESTING_BRANDING=0" ]
55 }
Nico Weber897593f2019-07-25 23:17:5556}
Michael Spang8a063342019-12-06 22:54:3357
Dave Tapuska70065a62023-02-01 21:58:1858buildflag_header("blink_buildflags") {
59 header = "blink_buildflags.h"
60 flags = [ "USE_BLINK=$use_blink" ]
61}
62
Michael Spang8a063342019-12-06 22:54:3363buildflag_header("chromecast_buildflags") {
64 header = "chromecast_buildflags.h"
65
Ryan Keaneaf3ac0f2022-05-02 18:40:0866 flags = [
Ryan Keaneaf3ac0f2022-05-02 18:40:0867 "IS_CASTOS=$is_castos",
Ryan Keane16a25592022-06-02 23:52:5268 "IS_CAST_ANDROID=$is_cast_android",
69 "ENABLE_CAST_RECEIVER=$enable_cast_receiver",
Ryan Keaneaf3ac0f2022-05-02 18:40:0870 ]
Michael Spang8a063342019-12-06 22:54:3371}
James Cook26d27122020-06-26 19:57:0772
Hidehiko Abe7c68f582020-09-03 15:47:2573buildflag_header("chromeos_buildflags") {
74 header = "chromeos_buildflags.h"
James Cook26d27122020-06-26 19:57:0775
Hidehiko Abe9c499c22020-09-03 18:10:3376 flags = [
77 "IS_CHROMEOS_DEVICE=$is_chromeos_device",
Yuta Hijikata2431a912020-10-28 15:49:4878
Yuta Hijikata2431a912020-10-28 15:49:4879 "IS_CHROMEOS_LACROS=$is_chromeos_lacros",
80 "IS_CHROMEOS_ASH=$is_chromeos_ash",
xiangdong kongbe3f6d42021-10-05 03:14:4081 "IS_CHROMEOS_WITH_HW_DETAILS=$is_chromeos_with_hw_details",
Richard Chui57f6b262022-02-15 01:21:3682 "IS_REVEN=$is_reven",
Hidehiko Abe9c499c22020-09-03 18:10:3383 ]
James Cook26d27122020-06-26 19:57:0784}
Sven Zhengba9e62b2022-07-11 23:45:5185
Andrew Grieve5cec6392023-09-06 14:46:0186buildflag_header("robolectric_buildflags") {
87 header = "robolectric_buildflags.h"
88 flags = [ "IS_ROBOLECTRIC=$is_robolectric" ]
89}
90
Sylvain Defresne86bce6f42024-02-13 13:04:3691buildflag_header("ios_buildflags") {
92 header = "ios_buildflags.h"
93 _is_ios_app_extension = is_ios && ios_is_app_extension
94 flags = [ "IS_IOS_APP_EXTENSION=$_is_ios_app_extension" ]
95}
96
Michael Achenbachbd038af2022-07-25 11:56:1397if (build_with_chromium) {
98 group("gold_common_pytype") {
99 testonly = true
Brian Sheedy0bf7f822022-07-21 17:44:43100
Michael Achenbachbd038af2022-07-25 11:56:13101 data = [ "//build/skia_gold_common/" ]
Brian Sheedy0bf7f822022-07-21 17:44:43102
Michael Achenbachbd038af2022-07-25 11:56:13103 data_deps = [ "//testing:pytype_dependencies" ]
104 }
Brian Sheedy0bf7f822022-07-21 17:44:43105}
106
Sven Zhengba9e62b2022-07-11 23:45:51107if (is_chromeos) {
108 process_version("version_metadata") {
109 sources = [ "//chrome/VERSION" ]
110
111 template_file = "metadata.json.in"
112 output = "$root_out_dir/metadata.json"
113 process_only = true
114 }
115}