platform_build_soong/cc
Jiyong Park b35a819834 __ANDROID_API__ tracks min_sdk_version
Previously, for cc_* modules, __ANDROID_API__ tracked the sdk_version
property. This however has caused a few number of problems:

1. It's confusing. __ANDROID_API__ has meant minSdkVersion. Therefore
the sdk_version property should mean minSdkVersion (since the macro
tracks the property). However, the introduction of the new
min_sdk_version property (which is currently for APEX) made this very
confusing. Also, this is not consistent with the java_* modules where
sdk_version means compileSdkVersion.

2. This is preventing go/android-future-symbols. The plan is to make the
APIs that are above the minSdkVersion available as weak symbols.
Previously those APIs had to be accessed via dlsym because they are
hidden behind the __ANDROID_API__ macro at build-time. To use make the
APIs visible at build-time, the module authors had to __ANDROID_API__
beyond their minSdkVersion. This is against the definition of
__ANDROID_API__.

To solve above problems, __ANDROID_API__ now correctly tracks
min_sdk_version. In addition, min_sdk_version now defaults to
sdk_version. Therefore, most of the modules that don't set
min_sdk_version aren't affected by this change.

Bug: 163288375
Test: m
Change-Id: I645e6bb1234c27ae0a69b7b87a59206cfd350744
2021-01-13 03:12:24 +09:00
..
config Create authsecret aidl interface 2021-01-12 06:01:15 +00:00
libbuildversion Set apex_available property 2020-04-28 21:08:58 +09:00
ndk_api_coverage_parser Fix non-determinism in tests. 2020-07-16 13:23:33 -07:00
ndkstubgen Add type information to symbolfile and ndkstubgen. 2020-09-24 14:03:31 -07:00
symbolfile Add type information to symbolfile and ndkstubgen. 2020-09-24 14:03:31 -07:00
Android.bp Add some comments for VNDK / vendor snapshots 2020-12-10 21:12:39 +09:00
androidmk.go Support for recovery snapshot. 2020-12-23 10:34:44 -08:00
api_level.go Replace stringly-typed API levels. 2020-09-18 12:41:28 -07:00
binary.go Remove unnecessary snake case variables. 2020-12-22 12:38:35 -08:00
binary_sdk_member.go Create fewer empty version variants 2020-10-05 18:57:21 -07:00
builder.go Merge "Soong: add missing header-abi-dumper inputs" 2020-12-09 07:26:36 +00:00
cc.go __ANDROID_API__ tracks min_sdk_version 2021-01-13 03:12:24 +09:00
cc_test.go Support "memtag_heap" sanitizer. 2021-01-11 21:50:39 +00:00
ccdeps.go Add soong cc and java deps to general-tests dist 2020-07-06 16:19:56 -07:00
cflag_artifacts.go Pass pctx and ctx to NewRuleBuilder 2020-12-01 16:22:16 -08:00
check.go Remove unnecessary snake case variables. 2020-12-22 12:38:35 -08:00
cmakelists.go Remove unnecessary snake case variables. 2020-12-22 12:38:35 -08:00
compdb.go Sandbox soong_build by changing to root directory 2020-01-11 01:11:46 +00:00
compiler.go __ANDROID_API__ tracks min_sdk_version 2021-01-13 03:12:24 +09:00
compiler_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
coverage.go [coverage] Wrap calls to open 2020-12-10 21:45:34 +00:00
fuzz.go Merge "add options for LibFuzzer, HWASan, and ASan to fuzz_config" 2021-01-08 17:06:28 +00:00
gen.go Pass pctx and ctx to NewRuleBuilder 2020-12-01 16:22:16 -08:00
gen_test.go Reland: Rewrite sbox to use a textproto manifest 2020-11-20 15:45:04 -08:00
genrule.go Merge "Support for recovery snapshot." 2021-01-06 21:17:54 +00:00
genrule_test.go Move genrule on top of RuleBuilder 2020-11-17 11:23:45 -08:00
image.go Refactor CC to prep for Rust sanitizable modules. 2021-01-08 08:53:46 -05:00
installer.go Only output make targets for uninstallable static libs in the APEX 2020-08-06 22:52:58 +01:00
kernel_headers.go Start using Providers instead of direct module access 2020-10-12 16:55:47 -07:00
library.go Fix llndk_library init 2021-01-06 17:50:48 -08:00
library_headers.go Disable all host OS variants except those explicitly included. 2020-08-03 21:06:50 +01:00
library_headers_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
library_sdk_member.go Define product_available property 2020-11-08 23:53:22 +00:00
library_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
linkable.go Refactor CC to prep for Rust sanitizable modules. 2021-01-08 08:53:46 -05:00
linker.go 'vendor_available: *' will not create product variant 2020-12-23 18:14:30 +09:00
llndk_library.go Do not read 'vendor_available: false' 2021-01-07 17:58:55 +09:00
lto.go Global ThinLTO: opt out vndk binaries as a workaround 2020-10-09 22:08:11 +08:00
makevars.go Support for recovery snapshot. 2020-12-23 10:34:44 -08:00
ndk_headers.go Remove unused mips workarounds. 2020-03-06 18:15:44 -08:00
ndk_library.go Store ndkKnownLibs in the config 2020-11-17 10:50:19 -08:00
ndk_prebuilt.go Start using Providers instead of direct module access 2020-10-12 16:55:47 -07:00
ndk_sysroot.go Move stubs related methods out of LinkableInterface 2020-10-29 14:17:54 -07:00
object.go Improve commenting for cc/builer.go, and kill dead code 2020-12-01 18:28:38 -05:00
object_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
OWNERS Refactor OWNERS files in platform/build/soong. 2020-10-08 16:14:32 -07:00
pgo.go Remove unnecessary snake case variables. 2020-12-22 12:38:35 -08:00
prebuilt.go Merge "versioning macro is exported from prebuilt stubs as well" 2020-12-16 01:31:10 +00:00
prebuilt_test.go Refactor 'in_make' to mean Kati is not skipped. 2020-11-23 00:29:18 -05:00
proto.go Pass pctx and ctx to NewRuleBuilder 2020-12-01 16:22:16 -08:00
proto_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
pylintrc Fix pylint issues in gen_stub_libs. 2020-07-16 13:21:43 -07:00
rs.go Remove obsolete PDK build functionality 2020-08-11 01:11:44 +00:00
sabi.go Don't rewrite LLNDK dependencies with .llndk suffix 2020-12-21 17:53:30 -08:00
sanitize.go Support "memtag_heap" sanitizer. 2021-01-11 21:50:39 +00:00
sdk.go Don't make SplitPerApiLevel imply UseSdk 2020-10-02 13:00:19 -07:00
sdk_test.go Revert "Make lots of tests run in parallel" 2020-10-09 18:34:24 -07:00
snapshot_prebuilt.go Refactor CC to prep for Rust sanitizable modules. 2021-01-08 08:53:46 -05:00
snapshot_utils.go Remove redundant snapshot functions 2021-01-07 05:15:50 +00:00
stl.go Replace stringly-typed API levels. 2020-09-18 12:41:28 -07:00
strip.go Allow stripping host modules 2020-12-04 09:43:49 -08:00
stub_library.go Generate system stub library list at build time 2020-12-01 14:09:03 +09:00
sysprop.go Add comments about sysprop_library 2020-11-24 14:13:31 +09:00
test.go Support "memtag_heap" sanitizer. 2021-01-11 21:50:39 +00:00
test_data_test.go Pass Config to NewTestContext instead of ctx.Register 2020-11-12 10:07:49 -08:00
testing.go Support "memtag_heap" sanitizer. 2021-01-11 21:50:39 +00:00
tidy.go Allow globally disabling some clang-tidy checks. 2020-08-18 13:28:03 -07:00
toolchain_library.go Improve commenting for cc/builer.go, and kill dead code 2020-12-01 18:28:38 -05:00
util.go Add some comments for VNDK / vendor snapshots 2020-12-10 21:12:39 +09:00
vendor_public_library.go cc: export Stripper struct 2020-08-27 10:13:42 +02:00
vendor_snapshot.go Refactor CC to prep for Rust sanitizable modules. 2021-01-08 08:53:46 -05:00
vndk.go Refactor CC to prep for Rust sanitizable modules. 2021-01-08 08:53:46 -05:00
vndk_prebuilt.go Call ctx.InstallFile for uninstallable cc modules 2020-12-17 10:02:18 -08:00