Traditionally this has come from android/api-level.h, but with the
libc headers unified it must be set by the build system since we don't
have per-API level copies of that header now.
Test: make checkbuild with other libc ndk_library patches
Change-Id: Idf6cbba131f065b048b1b412e992c55e3d17e701
Only projects in LOCAL_CLANG_EXCEPTION_PROJECTS can set LOCAL_CLANG to false.
Add external/gentoo/integration to this white list.
Bug: 30575506
Change-Id: Icd508686bc2eb8b9d400200166df80115af20da1
Test: build and find new warning in build.log
The update-payload-key is used by update_engine_sideload from recovery
to verify an update payload.
Bug: 27178350
Change-Id: I7a0a307ae565e5e9cbf2c9b58fbcc055e87771ce
Any NDK shared libraries not in LOCAL_SYSTEM_SHARED_LIBRARIES weren't
being pulled from the generated libs before since we were only
filtering my_system_shared_libraries and even if we had filtered
my_shared_libraries they would have been rewritten to my_ldlibs.
* Filter my_shared_libraries for NDK generated libs as well.
* Stop rewriting NDK LOCAL_SHARED_LIBRARIES to my_ldlibs. Instead,
rewrite in the opposite direction just like we do for the platform.
* Move shared libs/ldlibs rewriting to before we filter NDK
libraries out of shared libs/system shared libs.
Test: make checkbuild
Bug: http://b/27533932
Change-Id: If1860d9638de77089a46884f406766edaf362216
The update-payload-key is required to verify the contents of the OTA in
recovery while sideloading an update.
Bug: 27178350
TEST=`make` builds a boot.img with the payload key in recovery.
Change-Id: I04616979023b84aa4a1feb6916db2b2725b25c54
* INTERNAL_LOCAL_CLANG_EXCEPTION_PROJECTS is defined later in other config.mk.
Bug: 30575506
Test: build and find new warning in build.log
Change-Id: If5341a856d1792add38c80a15b8deae39f156138
bionic/tests has some test cases compiled with both gcc and clang.
Bug: 30575506
Change-Id: I68576a931021089ecc6b9c9d14ef0b3e3cf05e2d
Test: build and find new warning in build.log
* LOCAL_CLANG_EXCEPTION_PROJECTS is the list of project prefixes.
* New warning message is detected by warn.py as high severity.
Bug: 30575506
Change-Id: I87a38b2ba6bab1d2e5e7a9d5ec9557f0e609727c
Test: build and find new warning in build.log
AUX is a new class, similar to TARGET
While TARGET defines toolchain for Application Processors
AUX is defining toolchains for arbitrary utility cores (DSPs, GPUs,
MCUs, etc). This allows building of non-android sources as part
of Android tree and avoid using prebuilts if source code is avaliable
Bug: 29635686
Change-Id: Ie755ea054b16c3e86369f5fb2ba6eb0b384af77f
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
Use PRIVATE_PREFIX to tell us what is the target class
Bug: 29635686
Change-Id: Ia895e780f741b9cb00c7ee9633055b5363e675a1
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
introduce LOCAL_NO_LIBCOMPILER_RT
embedded targets do not necessarily want to have it
Bug: 29635686
Change-Id: Ieb04f7ea7237ae01a067dedfa2fb13571e9a789c
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
When overriding toolchain with LOCAL_CC, LOCAL_CXX
build system shall not assume that this custom toolchain
is CLANG.
Bug: 29635686
Change-Id: I9712d098216740c4ff20bd2a4749f489af85b50e
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
on some toolchains and architectures building non-PIC
code renders more efficient assembly
Bug: 29635686
Change-Id: I6274f40d24e1bb43f03b45c60b5487abed02b7fc
Signed-off-by: Alexey Polyudov <apolyudov@google.com>
The introduction of java.lang.invoke.MethodType and its supporting
classes, in particular.
bug: 30550796
test: make checkbuild
Change-Id: Id2b84d3bb911f4bc5aef0761d357b1e9121030ab
Anything product specific in here should be caught by an explicit
dependency, or the command line changing. This drastically reduces the
build time after an installclean.
Before this change, we were re-running all dex2oat commands after each
installclean, even if nothing changed.
Change-Id: I9c735fe2c5d82109d56996021502319179e43671
PRODUCT_AAPT_CONFIG and PRODUCT_AAPT_PREF_CONFIG don't affect the
installed file list, they only affect how some files are built. The
changing command line is already noticed by ninja, so we'll only re-run
the necessary commands instead of a full installclean.
Change-Id: Ib918b2edeefc539b7f88cb22a1d751c397973b1d
We supported de-duplicating LOCAL_INIT_RC across multiple architecture
variants in a single module definition, but that didn't work if the
module was defined with two different BUILD_PREBUILT definitions. That's
how we're exporting modules from Soong to Make.
Change-Id: Ifc93b15ef78ea3d8e78005d428a3ec57d7e414e8