| # Copyright 2020 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/chromeos/args.gni") |
| |
| declare_args() { |
| # Deprecated, use is_chromeos_lacros. |
| # |
| # This controls UI configuration for Chrome. |
| # If this flag is set, we assume Chrome runs on Chrome OS devices, using |
| # Wayland (instead of X11). |
| # |
| # TODO(crbug.com/1052397): |
| # Define chromeos_product instead, which takes either "browser" or "ash". |
| # Re-define the following variables as: |
| # is_chromeos_lacros = chromeos_product == "browser" |
| # is_chromeos_ash = chromeos_product == "ash" |
| chromeos_is_browser_only = false |
| |
| # Setting this to true when building linux Lacros-chrome will cause it to |
| # *also* build linux ash-chrome in a subdirectory using an alternate |
| # toolchain. |
| # Don't set this unless you're sure you want it, because it'll double |
| # your build time. |
| also_build_ash_chrome = false |
| |
| # Setting this to true when building linux ash-chrome will cause it to |
| # *also* build linux Lacros-chrome in a subdirectory using an alternate toolchain. |
| also_build_lacros_chrome = false |
| |
| # Setting this when building ash-chrome will cause it to |
| # *also* build Lacros-chrome in a subdirectory using an alternate toolchain. |
| # You can set this to either "amd64" or "arm". |
| also_build_lacros_chrome_for_architecture = "" |
| } |
| |
| # is_chromeos_{ash,lacros} is used to specify that it is specific to either |
| # ash or lacros chrome for chromeos. For platform specific logic that |
| # applies to both, use is_chromeos instead. |
| # .gn files are evaluated multiple times for each toolchain. |
| # is_chromeos_{ash,lacros} should be set true only for builds with target |
| # toolchains. |
| is_chromeos_ash = is_chromeos && !chromeos_is_browser_only |
| is_chromeos_lacros = is_chromeos && chromeos_is_browser_only |
| |
| # also_build_ash_chrome and also_build_lacros_chrome cannot be both true. |
| assert(!(also_build_ash_chrome && also_build_lacros_chrome)) |
| |
| # Can't set both also_build_lacros_chrome and |
| # also_build_lacros_chrome_for_architecture. |
| assert(!(also_build_lacros_chrome == true && |
| also_build_lacros_chrome_for_architecture != "")) |
| |
| # also_build_lacros_chrome_for_architecture is for device only. |
| assert(is_chromeos_device || also_build_lacros_chrome_for_architecture == "") |
| |
| # also_build_lacros_chrome_for_architecture is for ash build only. |
| assert(!chromeos_is_browser_only || |
| also_build_lacros_chrome_for_architecture == "") |