1*c8dee2aaSAndroid Build Coastguard Workerload("//bazel:flags.bzl", "selects") 2*c8dee2aaSAndroid Build Coastguard Worker 3*c8dee2aaSAndroid Build Coastguard Workerpackage( 4*c8dee2aaSAndroid Build Coastguard Worker default_applicable_licenses = ["//:license"], 5*c8dee2aaSAndroid Build Coastguard Worker) 6*c8dee2aaSAndroid Build Coastguard Worker 7*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"]) 8*c8dee2aaSAndroid Build Coastguard Worker 9*c8dee2aaSAndroid Build Coastguard Worker# @platforms is found at https://github.com/bazelbuild/platforms 10*c8dee2aaSAndroid Build Coastguard Worker 11*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 12*c8dee2aaSAndroid Build Coastguard Worker name = "linux_x64", 13*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 14*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:x86_64", 15*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:linux", 16*c8dee2aaSAndroid Build Coastguard Worker ], 17*c8dee2aaSAndroid Build Coastguard Worker) 18*c8dee2aaSAndroid Build Coastguard Worker 19*c8dee2aaSAndroid Build Coastguard Worker# Apple devices with intel processors released before the shift to the M1 chip 20*c8dee2aaSAndroid Build Coastguard Worker# will use this config setting. 21*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 22*c8dee2aaSAndroid Build Coastguard Worker name = "mac_x64", 23*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 24*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:x86_64", 25*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:macos", 26*c8dee2aaSAndroid Build Coastguard Worker ], 27*c8dee2aaSAndroid Build Coastguard Worker) 28*c8dee2aaSAndroid Build Coastguard Worker 29*c8dee2aaSAndroid Build Coastguard Worker# M1 Macs (and later) will use this setting. 30*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 31*c8dee2aaSAndroid Build Coastguard Worker name = "mac_arm64", 32*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 33*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:arm64", 34*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:macos", 35*c8dee2aaSAndroid Build Coastguard Worker ], 36*c8dee2aaSAndroid Build Coastguard Worker) 37*c8dee2aaSAndroid Build Coastguard Worker 38*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 39*c8dee2aaSAndroid Build Coastguard Worker name = "windows_x64", 40*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 41*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:x86_64", 42*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:windows", 43*c8dee2aaSAndroid Build Coastguard Worker ], 44*c8dee2aaSAndroid Build Coastguard Worker) 45*c8dee2aaSAndroid Build Coastguard Worker 46*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 47*c8dee2aaSAndroid Build Coastguard Worker name = "linux_arm64", 48*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 49*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:arm64", 50*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:linux", 51*c8dee2aaSAndroid Build Coastguard Worker ], 52*c8dee2aaSAndroid Build Coastguard Worker) 53*c8dee2aaSAndroid Build Coastguard Worker 54*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 55*c8dee2aaSAndroid Build Coastguard Worker name = "debug_build", 56*c8dee2aaSAndroid Build Coastguard Worker values = {"compilation_mode": "dbg"}, 57*c8dee2aaSAndroid Build Coastguard Worker) 58*c8dee2aaSAndroid Build Coastguard Worker 59*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 60*c8dee2aaSAndroid Build Coastguard Worker name = "fast_build", 61*c8dee2aaSAndroid Build Coastguard Worker values = {"compilation_mode": "fastbuild"}, 62*c8dee2aaSAndroid Build Coastguard Worker) 63*c8dee2aaSAndroid Build Coastguard Worker 64*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 65*c8dee2aaSAndroid Build Coastguard Worker name = "release_build", 66*c8dee2aaSAndroid Build Coastguard Worker values = {"compilation_mode": "opt"}, 67*c8dee2aaSAndroid Build Coastguard Worker) 68*c8dee2aaSAndroid Build Coastguard Worker 69*c8dee2aaSAndroid Build Coastguard Workerconstraint_value( 70*c8dee2aaSAndroid Build Coastguard Worker name = "fuchsia", 71*c8dee2aaSAndroid Build Coastguard Worker constraint_setting = "@platforms//os:os", 72*c8dee2aaSAndroid Build Coastguard Worker) 73*c8dee2aaSAndroid Build Coastguard Worker 74*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 75*c8dee2aaSAndroid Build Coastguard Worker name = "fuchsia_arm64", 76*c8dee2aaSAndroid Build Coastguard Worker constraint_values = [ 77*c8dee2aaSAndroid Build Coastguard Worker "@platforms//cpu:arm64", 78*c8dee2aaSAndroid Build Coastguard Worker ":fuchsia", 79*c8dee2aaSAndroid Build Coastguard Worker ], 80*c8dee2aaSAndroid Build Coastguard Worker) 81*c8dee2aaSAndroid Build Coastguard Worker 82*c8dee2aaSAndroid Build Coastguard Worker# We define this here because the emscripten toolchain calls the cpu wasm, whereas the 83*c8dee2aaSAndroid Build Coastguard Worker# bazelbuild/platforms call it wasm32. https://github.com/emscripten-core/emsdk/issues/919 84*c8dee2aaSAndroid Build Coastguard Workerconfig_setting( 85*c8dee2aaSAndroid Build Coastguard Worker name = "cpu_wasm", 86*c8dee2aaSAndroid Build Coastguard Worker values = { 87*c8dee2aaSAndroid Build Coastguard Worker "cpu": "wasm", 88*c8dee2aaSAndroid Build Coastguard Worker }, 89*c8dee2aaSAndroid Build Coastguard Worker) 90*c8dee2aaSAndroid Build Coastguard Worker 91*c8dee2aaSAndroid Build Coastguard Workerselects.config_setting_group( 92*c8dee2aaSAndroid Build Coastguard Worker name = "release_build_mac", 93*c8dee2aaSAndroid Build Coastguard Worker match_all = [ 94*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:macos", 95*c8dee2aaSAndroid Build Coastguard Worker ":release_build", 96*c8dee2aaSAndroid Build Coastguard Worker ], 97*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 98*c8dee2aaSAndroid Build Coastguard Worker) 99*c8dee2aaSAndroid Build Coastguard Worker 100*c8dee2aaSAndroid Build Coastguard Workerselects.config_setting_group( 101*c8dee2aaSAndroid Build Coastguard Worker name = "release_build_linux", 102*c8dee2aaSAndroid Build Coastguard Worker match_all = [ 103*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:linux", 104*c8dee2aaSAndroid Build Coastguard Worker ":release_build", 105*c8dee2aaSAndroid Build Coastguard Worker ], 106*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 107*c8dee2aaSAndroid Build Coastguard Worker) 108*c8dee2aaSAndroid Build Coastguard Worker 109*c8dee2aaSAndroid Build Coastguard Workerselects.config_setting_group( 110*c8dee2aaSAndroid Build Coastguard Worker name = "fast_build_mac", 111*c8dee2aaSAndroid Build Coastguard Worker match_all = [ 112*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:macos", 113*c8dee2aaSAndroid Build Coastguard Worker ":fast_build", 114*c8dee2aaSAndroid Build Coastguard Worker ], 115*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 116*c8dee2aaSAndroid Build Coastguard Worker) 117*c8dee2aaSAndroid Build Coastguard Worker 118*c8dee2aaSAndroid Build Coastguard Workerselects.config_setting_group( 119*c8dee2aaSAndroid Build Coastguard Worker name = "fast_build_linux", 120*c8dee2aaSAndroid Build Coastguard Worker match_all = [ 121*c8dee2aaSAndroid Build Coastguard Worker "@platforms//os:linux", 122*c8dee2aaSAndroid Build Coastguard Worker ":fast_build", 123*c8dee2aaSAndroid Build Coastguard Worker ], 124*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 125*c8dee2aaSAndroid Build Coastguard Worker) 126