1*6777b538SAndroid Build Coastguard Worker# Copyright 2020 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Workerimport("//build/config/chromeos/args.gni") 6*6777b538SAndroid Build Coastguard Worker 7*6777b538SAndroid Build Coastguard Workerdeclare_args() { 8*6777b538SAndroid Build Coastguard Worker # Deprecated, use is_chromeos_lacros. 9*6777b538SAndroid Build Coastguard Worker # 10*6777b538SAndroid Build Coastguard Worker # This controls UI configuration for Chrome. 11*6777b538SAndroid Build Coastguard Worker # If this flag is set, we assume Chrome runs on Chrome OS devices, using 12*6777b538SAndroid Build Coastguard Worker # Wayland (instead of X11). 13*6777b538SAndroid Build Coastguard Worker # 14*6777b538SAndroid Build Coastguard Worker # TODO(crbug.com/1052397): 15*6777b538SAndroid Build Coastguard Worker # Define chromeos_product instead, which takes either "browser" or "ash". 16*6777b538SAndroid Build Coastguard Worker # Re-define the following variables as: 17*6777b538SAndroid Build Coastguard Worker # is_chromeos_lacros = chromeos_product == "browser" 18*6777b538SAndroid Build Coastguard Worker # is_chromeos_ash = chromeos_product == "ash" 19*6777b538SAndroid Build Coastguard Worker chromeos_is_browser_only = false 20*6777b538SAndroid Build Coastguard Worker 21*6777b538SAndroid Build Coastguard Worker # Setting this to true when building linux Lacros-chrome will cause it to 22*6777b538SAndroid Build Coastguard Worker # *also* build linux ash-chrome in a subdirectory using an alternate 23*6777b538SAndroid Build Coastguard Worker # toolchain. 24*6777b538SAndroid Build Coastguard Worker # Don't set this unless you're sure you want it, because it'll double 25*6777b538SAndroid Build Coastguard Worker # your build time. 26*6777b538SAndroid Build Coastguard Worker also_build_ash_chrome = false 27*6777b538SAndroid Build Coastguard Worker 28*6777b538SAndroid Build Coastguard Worker # Setting this to true when building linux ash-chrome will cause it to 29*6777b538SAndroid Build Coastguard Worker # *also* build linux Lacros-chrome in a subdirectory using an alternate toolchain. 30*6777b538SAndroid Build Coastguard Worker also_build_lacros_chrome = false 31*6777b538SAndroid Build Coastguard Worker 32*6777b538SAndroid Build Coastguard Worker # Setting this when building ash-chrome will cause it to 33*6777b538SAndroid Build Coastguard Worker # *also* build Lacros-chrome in a subdirectory using an alternate toolchain. 34*6777b538SAndroid Build Coastguard Worker # You can set this to either "amd64" or "arm". 35*6777b538SAndroid Build Coastguard Worker also_build_lacros_chrome_for_architecture = "" 36*6777b538SAndroid Build Coastguard Worker} 37*6777b538SAndroid Build Coastguard Worker 38*6777b538SAndroid Build Coastguard Worker# is_chromeos_{ash,lacros} is used to specify that it is specific to either 39*6777b538SAndroid Build Coastguard Worker# ash or lacros chrome for chromeos. For platform specific logic that 40*6777b538SAndroid Build Coastguard Worker# applies to both, use is_chromeos instead. 41*6777b538SAndroid Build Coastguard Worker# .gn files are evaluated multiple times for each toolchain. 42*6777b538SAndroid Build Coastguard Worker# is_chromeos_{ash,lacros} should be set true only for builds with target 43*6777b538SAndroid Build Coastguard Worker# toolchains. 44*6777b538SAndroid Build Coastguard Workeris_chromeos_ash = is_chromeos && !chromeos_is_browser_only 45*6777b538SAndroid Build Coastguard Workeris_chromeos_lacros = is_chromeos && chromeos_is_browser_only 46*6777b538SAndroid Build Coastguard Worker 47*6777b538SAndroid Build Coastguard Worker# also_build_ash_chrome and also_build_lacros_chrome cannot be both true. 48*6777b538SAndroid Build Coastguard Workerassert(!(also_build_ash_chrome && also_build_lacros_chrome)) 49*6777b538SAndroid Build Coastguard Worker 50*6777b538SAndroid Build Coastguard Worker# Can't set both also_build_lacros_chrome and 51*6777b538SAndroid Build Coastguard Worker# also_build_lacros_chrome_for_architecture. 52*6777b538SAndroid Build Coastguard Workerassert(!(also_build_lacros_chrome == true && 53*6777b538SAndroid Build Coastguard Worker also_build_lacros_chrome_for_architecture != "")) 54*6777b538SAndroid Build Coastguard Worker 55*6777b538SAndroid Build Coastguard Worker# also_build_lacros_chrome_for_architecture is for device only. 56*6777b538SAndroid Build Coastguard Workerassert(is_chromeos_device || also_build_lacros_chrome_for_architecture == "") 57*6777b538SAndroid Build Coastguard Worker 58*6777b538SAndroid Build Coastguard Worker# also_build_lacros_chrome_for_architecture is for ash build only. 59*6777b538SAndroid Build Coastguard Workerassert(!chromeos_is_browser_only || 60*6777b538SAndroid Build Coastguard Worker also_build_lacros_chrome_for_architecture == "") 61