Adds Soong support for -fsanitze-minimal-runtime when using
the integer overflow sanitizers. This makes the crashes due to these
sanitizers less mysterious.
Bug: 64091660
Test: Compiled and checked the generated compiler commands
Test: Checked program that overflows for the abort reason
Change-Id: Ieeceaf6c35c8371592952d3b8b977aefc11601c5
Vendor binaries cannot directly link with vndk libraries which are not vendor
available. We don't need them to be abi stable.
Bug: 66301104
Test: cd external/cblas; touch src/cblas_cher.c; mm -j64 does not
produce an lsdump for libblas, since it isn't vendor available,
even though it is vndk_enabled: true.
Change-Id: Ib2e1eaa06c4dc2e05623bd7b9aa3a83010f76bd1
Merged-In: Ib2e1eaa06c4dc2e05623bd7b9aa3a83010f76bd1
(cherry picked from commit 22963cda0e)
If Kati ever wrote a line over 64k characters, the scanner in soong_ui
would error, and Kati would hang trying to write into the pipe. Now if
the Scanner errors out, fall back to copying directly from the pipe to
the output.
Test: Add $(warning $(shell find frameworks)), does not hang
Change-Id: I86412ad2f53f2fe3cbda901ee673abb904d56d3c
Vendor binaries cannot directly link with vndk libraries which are not vendor
available. We don't need them to be abi stable.
Bug: 66301104
Test: cd external/cblas; touch src/cblas_cher.c; mm -j64 does not
produce an lsdump for libblas, since it isn't vendor available,
even though it is vndk_enabled: true.
Change-Id: Ib2e1eaa06c4dc2e05623bd7b9aa3a83010f76bd1
Dependencies on sdk_vcurrent, etc. should only be added to java
modules that are building for the device.
Test: aosp-build-tools build
Change-Id: I01abba94fed8b470085529092263f4634dec229c
Bug: http://b/73127367
Bug: http://b/68659946
These new prebuilts have fixes for the bugs mentioned above.
Test: Build and verify that issues in both bugs above are fixed.
Change-Id: I410a43b70920d509118f8e6fdb012ef6b078d657
Merged-In: I410a43b70920d509118f8e6fdb012ef6b078d657
(cherry picked from commit 4a825ee14a)
Lack of bootclasspath causes lack of libcore classes when compiling
code that would run on a device.
Bug: 73281388
Test: make hidl-doc
Change-Id: I2172740c4e318a7e24d0a40d967ccc91b7226338
Allow native modules to specify use_version_lib, which will make
an android::build::GetBuildNumber() function available. For host
builds, the function will return the build number at the time that
the module was linked. For device modules it will return the
value of the ro.build.version.incremental property.
Bug: 71719137
Test: build_version_test
Test: m build_version_test && touch build/make/core/Makefile build/soong/cc/libbuildversion/tests/build_version_test.cpp && m build_version_test shows different build numbers for binary and library tests.
Change-Id: I6f7d40b7574bb8206866c4e39bad9c710c796e32
Parse the machine-specific symbol tables into a custom symbol table
object and use a single function to find the offset and size of the
symbol in the custom table. Make the functions to convert a
machine-specific symbol table into the custom table also take mocks,
and provide functions to dump mocks from real files. Add tests
that take the mocks and verify they produce the right offset and
size.
Test: cmd/symbol_inject/*_test.go
Change-Id: I25654032b5017dd13a9a1fe29f8b8826ce5bc82b
asan variants can sometimes have extra exported symbols (this is a vndk
extension violation). Since asan variants are only used for testing,
don't do abi diffs for them.
Bug: 66301104
Test: Without the change, libc++.so.lsdump exists for the asan variant;
with the change, it does not.
Test: make -j64.
Change-Id: I61a4c7a3e9aa0028a54ad0ca8715e8c77aebad94