1*333d2b36SAndroid Build Coastguard Workerpackage { 2*333d2b36SAndroid Build Coastguard Worker default_applicable_licenses: ["Android-Apache-2.0"], 3*333d2b36SAndroid Build Coastguard Worker default_visibility: [ 4*333d2b36SAndroid Build Coastguard Worker "//build/soong:__subpackages__", 5*333d2b36SAndroid Build Coastguard Worker ], 6*333d2b36SAndroid Build Coastguard Worker default_team: "trendy_team_build", 7*333d2b36SAndroid Build Coastguard Worker} 8*333d2b36SAndroid Build Coastguard Worker 9*333d2b36SAndroid Build Coastguard Workersubdirs = [ 10*333d2b36SAndroid Build Coastguard Worker "androidmk", 11*333d2b36SAndroid Build Coastguard Worker "bpfix", 12*333d2b36SAndroid Build Coastguard Worker "cmd/*", 13*333d2b36SAndroid Build Coastguard Worker "fs", 14*333d2b36SAndroid Build Coastguard Worker "finder", 15*333d2b36SAndroid Build Coastguard Worker "jar", 16*333d2b36SAndroid Build Coastguard Worker "zip", 17*333d2b36SAndroid Build Coastguard Worker "third_party/zip", 18*333d2b36SAndroid Build Coastguard Worker "ui/*", 19*333d2b36SAndroid Build Coastguard Worker] 20*333d2b36SAndroid Build Coastguard Worker 21*333d2b36SAndroid Build Coastguard Workerbootstrap_go_package { 22*333d2b36SAndroid Build Coastguard Worker name: "soong", 23*333d2b36SAndroid Build Coastguard Worker pkgPath: "android/soong", 24*333d2b36SAndroid Build Coastguard Worker deps: [ 25*333d2b36SAndroid Build Coastguard Worker "blueprint", 26*333d2b36SAndroid Build Coastguard Worker ], 27*333d2b36SAndroid Build Coastguard Worker srcs: [ 28*333d2b36SAndroid Build Coastguard Worker "doc.go", 29*333d2b36SAndroid Build Coastguard Worker ], 30*333d2b36SAndroid Build Coastguard Worker // Used by plugins, though probably shouldn't be. 31*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 32*333d2b36SAndroid Build Coastguard Worker} 33*333d2b36SAndroid Build Coastguard Worker 34*333d2b36SAndroid Build Coastguard Worker// 35*333d2b36SAndroid Build Coastguard Worker// Defaults to enable various configurations of host bionic 36*333d2b36SAndroid Build Coastguard Worker// 37*333d2b36SAndroid Build Coastguard Worker 38*333d2b36SAndroid Build Coastguard Workercc_defaults { 39*333d2b36SAndroid Build Coastguard Worker name: "linux_bionic_supported", 40*333d2b36SAndroid Build Coastguard Worker host_supported: true, 41*333d2b36SAndroid Build Coastguard Worker target: { 42*333d2b36SAndroid Build Coastguard Worker host: { 43*333d2b36SAndroid Build Coastguard Worker enabled: false, 44*333d2b36SAndroid Build Coastguard Worker }, 45*333d2b36SAndroid Build Coastguard Worker linux_bionic: { 46*333d2b36SAndroid Build Coastguard Worker enabled: true, 47*333d2b36SAndroid Build Coastguard Worker }, 48*333d2b36SAndroid Build Coastguard Worker }, 49*333d2b36SAndroid Build Coastguard Worker defaults_visibility: ["//visibility:public"], 50*333d2b36SAndroid Build Coastguard Worker} 51*333d2b36SAndroid Build Coastguard Worker 52*333d2b36SAndroid Build Coastguard Worker// 53*333d2b36SAndroid Build Coastguard Worker// C static libraries extracted from the gcc toolchain 54*333d2b36SAndroid Build Coastguard Worker// 55*333d2b36SAndroid Build Coastguard Worker 56*333d2b36SAndroid Build Coastguard Workerkernel_headers { 57*333d2b36SAndroid Build Coastguard Worker name: "device_kernel_headers", 58*333d2b36SAndroid Build Coastguard Worker vendor: true, 59*333d2b36SAndroid Build Coastguard Worker recovery_available: true, 60*333d2b36SAndroid Build Coastguard Worker min_sdk_version: "apex_inherit", 61*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 62*333d2b36SAndroid Build Coastguard Worker} 63*333d2b36SAndroid Build Coastguard Worker 64*333d2b36SAndroid Build Coastguard Workercc_genrule { 65*333d2b36SAndroid Build Coastguard Worker name: "host_bionic_linker_asm", 66*333d2b36SAndroid Build Coastguard Worker host_supported: true, 67*333d2b36SAndroid Build Coastguard Worker device_supported: false, 68*333d2b36SAndroid Build Coastguard Worker target: { 69*333d2b36SAndroid Build Coastguard Worker linux_bionic: { 70*333d2b36SAndroid Build Coastguard Worker enabled: true, 71*333d2b36SAndroid Build Coastguard Worker }, 72*333d2b36SAndroid Build Coastguard Worker linux_musl: { 73*333d2b36SAndroid Build Coastguard Worker enabled: false, 74*333d2b36SAndroid Build Coastguard Worker }, 75*333d2b36SAndroid Build Coastguard Worker linux_glibc: { 76*333d2b36SAndroid Build Coastguard Worker enabled: false, 77*333d2b36SAndroid Build Coastguard Worker }, 78*333d2b36SAndroid Build Coastguard Worker darwin: { 79*333d2b36SAndroid Build Coastguard Worker enabled: false, 80*333d2b36SAndroid Build Coastguard Worker }, 81*333d2b36SAndroid Build Coastguard Worker }, 82*333d2b36SAndroid Build Coastguard Worker tools: ["extract_linker"], 83*333d2b36SAndroid Build Coastguard Worker cmd: "$(location) -s $(out) $(in)", 84*333d2b36SAndroid Build Coastguard Worker srcs: [":linker"], 85*333d2b36SAndroid Build Coastguard Worker out: ["linker.s"], 86*333d2b36SAndroid Build Coastguard Worker visibility: ["//bionic/libc"], 87*333d2b36SAndroid Build Coastguard Worker} 88*333d2b36SAndroid Build Coastguard Worker 89*333d2b36SAndroid Build Coastguard Workercc_genrule { 90*333d2b36SAndroid Build Coastguard Worker name: "host_bionic_linker_script", 91*333d2b36SAndroid Build Coastguard Worker host_supported: true, 92*333d2b36SAndroid Build Coastguard Worker device_supported: false, 93*333d2b36SAndroid Build Coastguard Worker target: { 94*333d2b36SAndroid Build Coastguard Worker linux_bionic: { 95*333d2b36SAndroid Build Coastguard Worker enabled: true, 96*333d2b36SAndroid Build Coastguard Worker }, 97*333d2b36SAndroid Build Coastguard Worker linux_musl: { 98*333d2b36SAndroid Build Coastguard Worker enabled: false, 99*333d2b36SAndroid Build Coastguard Worker }, 100*333d2b36SAndroid Build Coastguard Worker linux_glibc: { 101*333d2b36SAndroid Build Coastguard Worker enabled: false, 102*333d2b36SAndroid Build Coastguard Worker }, 103*333d2b36SAndroid Build Coastguard Worker darwin: { 104*333d2b36SAndroid Build Coastguard Worker enabled: false, 105*333d2b36SAndroid Build Coastguard Worker }, 106*333d2b36SAndroid Build Coastguard Worker }, 107*333d2b36SAndroid Build Coastguard Worker tools: ["extract_linker"], 108*333d2b36SAndroid Build Coastguard Worker cmd: "$(location) -T $(out) $(in)", 109*333d2b36SAndroid Build Coastguard Worker srcs: [":linker"], 110*333d2b36SAndroid Build Coastguard Worker out: ["linker.script"], 111*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 112*333d2b36SAndroid Build Coastguard Worker} 113*333d2b36SAndroid Build Coastguard Worker 114*333d2b36SAndroid Build Coastguard Worker// Instantiate the dex_bootjars singleton module. 115*333d2b36SAndroid Build Coastguard Workerdex_bootjars { 116*333d2b36SAndroid Build Coastguard Worker name: "dex_bootjars", 117*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 118*333d2b36SAndroid Build Coastguard Worker} 119*333d2b36SAndroid Build Coastguard Worker 120*333d2b36SAndroid Build Coastguard Workerart_boot_images { 121*333d2b36SAndroid Build Coastguard Worker name: "art_boot_images", 122*333d2b36SAndroid Build Coastguard Worker visibility: ["//art:__subpackages__"], 123*333d2b36SAndroid Build Coastguard Worker} 124*333d2b36SAndroid Build Coastguard Worker 125*333d2b36SAndroid Build Coastguard Worker// Pseudo-test that's run on checkbuilds to ensure that get_clang_version can 126*333d2b36SAndroid Build Coastguard Worker// parse cc/config/global.go. 127*333d2b36SAndroid Build Coastguard Workergenrule { 128*333d2b36SAndroid Build Coastguard Worker name: "get_clang_version_test", 129*333d2b36SAndroid Build Coastguard Worker cmd: "$(location get_clang_version) > $(out)", 130*333d2b36SAndroid Build Coastguard Worker tools: ["get_clang_version"], 131*333d2b36SAndroid Build Coastguard Worker srcs: ["cc/config/global.go"], 132*333d2b36SAndroid Build Coastguard Worker out: ["clang-prebuilts-version.txt"], 133*333d2b36SAndroid Build Coastguard Worker} 134*333d2b36SAndroid Build Coastguard Worker 135*333d2b36SAndroid Build Coastguard Workerdexpreopt_systemserver_check { 136*333d2b36SAndroid Build Coastguard Worker name: "dexpreopt_systemserver_check", 137*333d2b36SAndroid Build Coastguard Worker} 138*333d2b36SAndroid Build Coastguard Worker 139*333d2b36SAndroid Build Coastguard Worker// container for apex_contributions selected using build flags 140*333d2b36SAndroid Build Coastguard Workerall_apex_contributions { 141*333d2b36SAndroid Build Coastguard Worker name: "all_apex_contributions", 142*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 143*333d2b36SAndroid Build Coastguard Worker} 144*333d2b36SAndroid Build Coastguard Worker 145*333d2b36SAndroid Build Coastguard Worker// Defaults to share configs between "baremetal" Soong modules, currently only 146*333d2b36SAndroid Build Coastguard Worker// used for code running in kernel context within Android Virtualization 147*333d2b36SAndroid Build Coastguard Worker// Framework guests. 148*333d2b36SAndroid Build Coastguard Workercc_defaults { 149*333d2b36SAndroid Build Coastguard Worker name: "cc_baremetal_defaults", 150*333d2b36SAndroid Build Coastguard Worker arch: { 151*333d2b36SAndroid Build Coastguard Worker arm64: { 152*333d2b36SAndroid Build Coastguard Worker cflags: [ 153*333d2b36SAndroid Build Coastguard Worker // Prevent the compiler from optimizing code using SVE, as the 154*333d2b36SAndroid Build Coastguard Worker // baremetal environment might not have configured the hardware. 155*333d2b36SAndroid Build Coastguard Worker "-Xclang -target-feature", 156*333d2b36SAndroid Build Coastguard Worker "-Xclang -sve", 157*333d2b36SAndroid Build Coastguard Worker ], 158*333d2b36SAndroid Build Coastguard Worker }, 159*333d2b36SAndroid Build Coastguard Worker }, 160*333d2b36SAndroid Build Coastguard Worker defaults_visibility: ["//visibility:public"], 161*333d2b36SAndroid Build Coastguard Worker} 162*333d2b36SAndroid Build Coastguard Worker 163*333d2b36SAndroid Build Coastguard Workerproduct_config { 164*333d2b36SAndroid Build Coastguard Worker name: "product_config", 165*333d2b36SAndroid Build Coastguard Worker visibility: [ 166*333d2b36SAndroid Build Coastguard Worker "//build/make/target/product/generic", 167*333d2b36SAndroid Build Coastguard Worker "//build/soong/fsgen", 168*333d2b36SAndroid Build Coastguard Worker ], 169*333d2b36SAndroid Build Coastguard Worker} 170*333d2b36SAndroid Build Coastguard Worker 171*333d2b36SAndroid Build Coastguard Workerbuild_prop { 172*333d2b36SAndroid Build Coastguard Worker name: "system-build.prop", 173*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 174*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 175*333d2b36SAndroid Build Coastguard Worker footer_files: [ 176*333d2b36SAndroid Build Coastguard Worker ":applied_backported_fixes", 177*333d2b36SAndroid Build Coastguard Worker ], 178*333d2b36SAndroid Build Coastguard Worker // Currently, only microdroid, Ravenwood, and cf system image can refer to system-build.prop 179*333d2b36SAndroid Build Coastguard Worker visibility: [ 180*333d2b36SAndroid Build Coastguard Worker "//build/make/target/product/generic", 181*333d2b36SAndroid Build Coastguard Worker "//build/make/target/product/gsi", 182*333d2b36SAndroid Build Coastguard Worker "//packages/modules/Virtualization/build/microdroid", 183*333d2b36SAndroid Build Coastguard Worker "//frameworks/base/ravenwood", 184*333d2b36SAndroid Build Coastguard Worker ], 185*333d2b36SAndroid Build Coastguard Worker} 186*333d2b36SAndroid Build Coastguard Worker 187*333d2b36SAndroid Build Coastguard Workerbuild_prop { 188*333d2b36SAndroid Build Coastguard Worker name: "system_ext-build.prop", 189*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 190*333d2b36SAndroid Build Coastguard Worker system_ext_specific: true, 191*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 192*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // system_ext/etc/build.prop 193*333d2b36SAndroid Build Coastguard Worker visibility: ["//build/make/target/product/gsi"], 194*333d2b36SAndroid Build Coastguard Worker} 195*333d2b36SAndroid Build Coastguard Worker 196*333d2b36SAndroid Build Coastguard Workerbuild_prop { 197*333d2b36SAndroid Build Coastguard Worker name: "product-build.prop", 198*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 199*333d2b36SAndroid Build Coastguard Worker product_specific: true, 200*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 201*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // product/etc/build.prop 202*333d2b36SAndroid Build Coastguard Worker visibility: ["//build/make/target/product/gsi"], 203*333d2b36SAndroid Build Coastguard Worker} 204*333d2b36SAndroid Build Coastguard Worker 205*333d2b36SAndroid Build Coastguard Workerbuild_prop { 206*333d2b36SAndroid Build Coastguard Worker name: "odm-build.prop", 207*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 208*333d2b36SAndroid Build Coastguard Worker device_specific: true, 209*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 210*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // odm/etc/build.prop 211*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 212*333d2b36SAndroid Build Coastguard Worker} 213*333d2b36SAndroid Build Coastguard Worker 214*333d2b36SAndroid Build Coastguard Workerbuild_prop { 215*333d2b36SAndroid Build Coastguard Worker name: "system_dlkm-build.prop", 216*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 217*333d2b36SAndroid Build Coastguard Worker system_dlkm_specific: true, 218*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 219*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // system_dlkm/etc/build.prop 220*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 221*333d2b36SAndroid Build Coastguard Worker} 222*333d2b36SAndroid Build Coastguard Worker 223*333d2b36SAndroid Build Coastguard Workerbuild_prop { 224*333d2b36SAndroid Build Coastguard Worker name: "vendor_dlkm-build.prop", 225*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 226*333d2b36SAndroid Build Coastguard Worker vendor_dlkm_specific: true, 227*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 228*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // vendor_dlkm/etc/build.prop 229*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 230*333d2b36SAndroid Build Coastguard Worker} 231*333d2b36SAndroid Build Coastguard Worker 232*333d2b36SAndroid Build Coastguard Workerbuild_prop { 233*333d2b36SAndroid Build Coastguard Worker name: "odm_dlkm-build.prop", 234*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 235*333d2b36SAndroid Build Coastguard Worker odm_dlkm_specific: true, 236*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 237*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc", // odm_dlkm/etc/build.prop 238*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 239*333d2b36SAndroid Build Coastguard Worker} 240*333d2b36SAndroid Build Coastguard Worker 241*333d2b36SAndroid Build Coastguard Workerbuild_prop { 242*333d2b36SAndroid Build Coastguard Worker name: "ramdisk-build.prop", 243*333d2b36SAndroid Build Coastguard Worker stem: "build.prop", 244*333d2b36SAndroid Build Coastguard Worker ramdisk: true, 245*333d2b36SAndroid Build Coastguard Worker product_config: ":product_config", 246*333d2b36SAndroid Build Coastguard Worker relative_install_path: "etc/ramdisk", // ramdisk/system/etc/ramdisk/build.prop 247*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 248*333d2b36SAndroid Build Coastguard Worker} 249