Create both sanitized and unsanitized variants inside make builds with
sanitizers enabled. Only export the sanitized version to make, and
always install the sanitized version in /data to match the make build.
Change-Id: I5a17bcbddc7a9d871c929c84d3c116228ef3258f
Some more common makevars methods were required in order to remove the
"-isystem" prefixes from the toolchain.IncludeFlags() value. In Make,
the -isystem is prepended at time of use, not in TARGET_C_INCLUDES
itself.
Change-Id: If07e69ddb7357d11c7dd48ab60f503d219f29de8
Add the clang asan runtime libraries to the mips and mips64 toolchain
definitions. Fixes missing symbol build errors on asan_test.
Change-Id: I10c46599af2c7758f4726814920b8881644c6f97
This better matches the order from cc/cc.go, so that any implicit
ordering behaves the same in Make and Soong.
Change-Id: I802d725f037a22c4b2f0ae28258af95efa37ce79
-msoft-float is equivalent to -mfloat-abi=soft, which means we need to
make sure the order is correct if we also specify -mfloat-abi=softfp.
Since the Neon support (with -mfloat-abi=softfp) is in the cpu-specific
ToolchainCflags, move the generic definition into ToolchainCflags as
well.
This wasn't actually causing problems when compiling, since the normal
toolchain.Cflags is before toolchain.ToolchainCflags, but the makevars
code accidentally reversed this. That will be fixed as well, but this
will protect against similar problems in the future.
Change-Id: If6f37c845210105f84769bab45fde5d7fdc2fe09
am: a2abfd6b30
* commit 'a2abfd6b30e80bf39bcc22b4fee91db37f14fa4a':
Add the common directory back to kernel headers.
Change-Id: Id6f2fff3a1d99b03c59916009122bec1b52dcf9c
This was in HOST_CROSS_GLOBAL_LD_DIRS, which is why it didn't get
translated over here, since Soong does not use global linking
directories. It's being moved to HOST_CROSS_GLOBAL_LDFLAGS so that it
can be shared.
Change-Id: Ie20670278a589ae3cf76e09de4079edfa800cf5b
The variable was defined, but it wasn't being exposed to the Toolchain
interface. It was also using -I instead of -isystem.
Change-Id: Iee9862a4b9c50c9497915175a23864b4b2c29c26
x86_64 and mips64 NDK prebuilt libraries are stored in .../usr/lib64,
but arm64 and all the 32-bit ABIs use .../usr/lib. Add a 64 suffix to
the path for all 64-bit ABIs except arm64.
Change-Id: I98e87ff6a7f1aa75adbeb37c5b1e7208b953322f
Static_executable was still using ModifyProperties, and was otherwise
missing things. Fix all of that up, and implement HostStaticBinaries,
which is the equivalent of BUILD_HOST_static in Make. That will default
host binaries to be static, which is useful for building SDK tools to
run with incompatible C libraries.
Change-Id: I2a62181b5d854b310edc8ae7a6bcbd30b89e7463
am: 216a459ccc
* commit '216a459ccc782d9b47e5663b4c3b81f0e03e2739':
Export CONLYFLAGS and CPPFLAGS to Make
Change-Id: Ie8286de619a2a8b369376660613ed8e476389fca
am: 06f453359a
* commit '06f453359a6686e20d00e7ab661e39ce0e0e5bb5':
Export -D__BRILLO__ to make if necessary
Change-Id: I0b5236fe6a32c52e00e50d88b99928a1ad4ef6ad
am: b436fdee65
* commit 'b436fdee65b2ae27576b37f1f13a324bc9c7f51a':
Turn on strict checking for C[PP]FLAGS make vars
Change-Id: If75cd0402c85326307ef6d1657c3f8153f904a38
am: 3772da13fd
* commit '3772da13fd9b4d1f0aec35c73883c1cb5b60fd35':
Don't use -B...gcc.. on Darwin
Change-Id: Iad450b34cc85054b573ec0c2b8537414def9ef52
We don't ship binutils on Darwin, so there is no point in telling clang
to look in that path. (The path being used doesn't even exist). This
matches the Make behavior.
Change-Id: I663047057ff8df8a349483532da8018af13d50d8
am: 1e45ef6823
* commit '1e45ef6823b54965d19da3a33404955d8a9a2e13':
Create empty .a on Darwin when there is no obj file.
Change-Id: I52a972558c7fb94eb31aef8ea9146fd578a9b709
am: 4a94683a60
* commit '4a94683a60ab44c520628f381c9cf63496b3e62e':
Don't use GTEST_OS_LINUX on Darwin
Change-Id: I0fc3ec973a6efc849a1c476c974f9f70af2fa4b8
On Darwin ar would fail if there is no object file to add.
We work around by adding a dummy.o.
Port to Soong of build/ 4aaa1a1fd8e7eb23ac5557cd326d1a48efdb54cd
Change-Id: I68bbebea2726058c25863d7026a645a520d05167
There's a different libgtest to use for NDK libraries built with
different STLs. And we no longer need to add the gtest include path, as
it's exported.
Change-Id: I2f804cf98e074cfd4ea6b70a445e304a8a8bce50