Commit Graph

3179 Commits

Author SHA1 Message Date
Dan Albert
22bf105b01 Merge "Link libc++demangle with libc++ for the device." am: 6f65a20103 am: d0f9222559 am: e76715a1fa am: 15da1fe48a
am: dd45ceaaf8

Change-Id: I2bb20699bb89fa63a9dec056a1aebbdefd461a31
2019-08-21 18:40:52 -07:00
Dan Albert
d0f9222559 Merge "Link libc++demangle with libc++ for the device."
am: 6f65a20103

Change-Id: I55cebb647f923d19cc98bcb895fc3e6557c69ca1
2019-08-21 17:24:13 -07:00
Treehugger Robot
6f65a20103 Merge "Link libc++demangle with libc++ for the device." 2019-08-21 23:54:48 +00:00
Yi Kong
32cd62cb70 Merge "Disable new pass manager for ASAN build" am: 5724333e22 am: 55d2d90ea4 am: 66747571f7 am: efc87ed478
am: 690b8e5663

Change-Id: I91754a11b3a59d7635384413b3623dc9874d7cd4
2019-08-21 15:36:46 -07:00
Yi Kong
55d2d90ea4 Merge "Disable new pass manager for ASAN build"
am: 5724333e22

Change-Id: I670af9bab9dca4284420cda4bca5ed5884e7d6a6
2019-08-21 14:47:29 -07:00
Yi Kong
20233a43db Disable new pass manager for ASAN build
ASAN build has some weird issues with the new pass manager, keep using
the legacy pass manager for now.

Test: presubmit
Bug: 139747256
Change-Id: I345afbf6bc4043f274a4e7545a895b59c65641b0
2019-08-21 20:38:51 +00:00
Tom Cherry
c1d9880ecc Merge "Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags"
am: 3440835748

Change-Id: Ie9294d87679938ba5453321fa9ce6d7acf45d33f
2019-08-19 13:20:31 -07:00
Tom Cherry
3440835748 Merge "Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags" 2019-08-19 16:39:57 +00:00
Hsin-Yi Chen
3abff0138a Merge "Add tags to the list of lsdump paths" am: eef3366ab3 am: d5c7188d45 am: 02b4c8a5c7 am: e623cbc7de
am: 805b208a01

Change-Id: I53419ee8f16978241e470a511e50bc53009f465c
2019-08-14 20:23:46 -07:00
Hsin-Yi Chen
02b4c8a5c7 Merge "Add tags to the list of lsdump paths" am: eef3366ab3
am: d5c7188d45

Change-Id: Ia6af125f7dc2d5f8504c04198342b6b13ab1776d
2019-08-14 19:54:15 -07:00
Hsin-Yi Chen
d5c7188d45 Merge "Add tags to the list of lsdump paths"
am: eef3366ab3

Change-Id: Ia08611a0c926ccebfcdbfade31b09878712b82e9
2019-08-14 19:44:45 -07:00
Hsin-Yi Chen
eef3366ab3 Merge "Add tags to the list of lsdump paths" 2019-08-15 02:20:30 +00:00
Jiyong Park
5ac972c6e6 Merge "Build native coverage variant of APEXes when needed" am: dcea882ef9 am: e29e7a870a am: 3b0b0ce5a5 am: 9a504cdc97
am: d22009b7fb

Change-Id: If7066f5250269ba969bc3ec7b2a581d44f1979bc
2019-08-14 18:35:16 -07:00
Jiyong Park
3b0b0ce5a5 Merge "Build native coverage variant of APEXes when needed" am: dcea882ef9
am: e29e7a870a

Change-Id: If1f64d9e0e99e37c0936cd39fda34d3344ac82da
2019-08-14 17:54:37 -07:00
Jiyong Park
e29e7a870a Merge "Build native coverage variant of APEXes when needed"
am: dcea882ef9

Change-Id: I930078d27e6365f55de7fb77ae58fb538e1aa4f3
2019-08-14 17:43:36 -07:00
Treehugger Robot
dcea882ef9 Merge "Build native coverage variant of APEXes when needed" 2019-08-15 00:08:59 +00:00
TreeHugger Robot
4e4a3f081f Merge "Implement sysprop_library API stability check" 2019-08-13 16:16:39 +00:00
Jiyong Park
ee9a98d88e Build native coverage variant of APEXes when needed
When the native coverage is enabled, APEXes (and files there) are built
for native coverage as well.

Bug: 138952487
Test: make -j NATIVE_COVERAGE=true COVERAGE_PATHS='*' com.android.resolv
find out -name "*.gcno" | grep DnsResolver shows files

Test: libnetd_resolv.zip is found under
$(TARGET_OUT)/apex/com.android.resolv/lib directory

Change-Id: I97bcee9bf8ffc0dc71453abbdb613ed56ea2cdb4
2019-08-13 08:55:08 +09:00
Inseob Kim
9d5aadd0f9 Merge "Include headers and props to VNDK snapshot" am: 337698988a am: 4cfa0dffeb am: f716cad758 am: 59b8c25dec
am: aaf8c7c7a5

Change-Id: I9933f030b57f8f2ff7c0983feb1b4c497b355427
2019-08-11 17:10:30 -07:00
Inseob Kim
f716cad758 Merge "Include headers and props to VNDK snapshot" am: 337698988a
am: 4cfa0dffeb

Change-Id: I72da53fd5854405d75d2f0ebe70c094ce9ac36f2
2019-08-11 16:31:13 -07:00
Inseob Kim
4cfa0dffeb Merge "Include headers and props to VNDK snapshot"
am: 337698988a

Change-Id: Ie21ee147be804d07d7089f9bc59ce658f6d3c21e
2019-08-11 16:21:14 -07:00
Treehugger Robot
337698988a Merge "Include headers and props to VNDK snapshot" 2019-08-11 23:04:49 +00:00
Jiyong Park
64edb4236b Merge "Fix sanitizer dep" am: e49256e564 am: 72969547dc am: dbb5da87ed am: 2f56944bca
am: 7fd10963ec

Change-Id: I04199bc935a8d126a62011cf730b43cd18aa5153
2019-08-11 11:23:42 -07:00
Jiyong Park
dbb5da87ed Merge "Fix sanitizer dep" am: e49256e564
am: 72969547dc

Change-Id: Iede7979035dffe4ab0cc0b84b65d7d82d512bd39
2019-08-11 10:55:22 -07:00
Jiyong Park
72969547dc Merge "Fix sanitizer dep"
am: e49256e564

Change-Id: I2199bff441c53410030ccf7f48fc386a7e123c4f
2019-08-11 10:45:55 -07:00
Treehugger Robot
e49256e564 Merge "Fix sanitizer dep" 2019-08-11 17:12:47 +00:00
Dan Willemsen
4741f851d7 Include dependencies for clang-tidy and header-abi-dumper am: 6b4419ccc7 am: baf6fe9182 am: a1f0e99e33 am: bfc34cdd82
am: 647a3bbced

Change-Id: I56984fb688780c287ea73d2e3c1c65bc21650533
2019-08-09 21:21:17 -07:00
Dan Willemsen
a1f0e99e33 Include dependencies for clang-tidy and header-abi-dumper am: 6b4419ccc7
am: baf6fe9182

Change-Id: Idc7acb621b7df2406a00816ba2efb33f94ce0358
2019-08-09 20:47:50 -07:00
Dan Willemsen
baf6fe9182 Include dependencies for clang-tidy and header-abi-dumper
am: 6b4419ccc7

Change-Id: I7afee1a6afbeee466bce437a034739b6528ee2f2
2019-08-09 20:38:50 -07:00
Tom Cherry
e4802329e6 Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags
libclang_rt.builtins has default visiblity set to public and is the
last included static library for all modules.  This means that it is
possible for libraries to pick up libclang_rt.builtins from their
shared library dependencies, instead of libclang_rt.builtins directly.

Particularly, a vendor prebuilt in AOSP was picking up __floatditf()
from libhidlbase.so instead of from libclang_rt.builtins.  A change to
libhidlbase.so that removed the symbol caused thos prebuilt to fail to
link at runtime.

Bug: 138809247
Test: build, boot internal
Test: don't see libclang_rt.builtins symbols in libhidlbase.so

Merged-In: I0348c4860fe02cf88cb89f7ab356bd8c17826d77
Change-Id: I0348c4860fe02cf88cb89f7ab356bd8c17826d77
2019-08-09 21:09:00 +00:00
Dan Willemsen
6b4419ccc7 Include dependencies for clang-tidy and header-abi-dumper
We've been getting these dependencies transitively through the
dependency on the object itself (which is a workaround for the lack of
dep file support in these tools). But for remote builds to work, we need
to know about these dependencies like any other object compilation.

For regular builds, this increases the size of the ninja file by a few
tens of megabytes (~1-2%).

WITH_TIDY builds were already larger (~40-50%), but are now about 90%
larger than a normal build.

Test: treehugger
Change-Id: Icdb4ca3d4d08d5706593d96d5c627149fa14fed8
2019-08-09 13:03:07 -07:00
Tom Cherry
12263e4e03 Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags
libclang_rt.builtins has default visiblity set to public and is the
last included static library for all modules.  This means that it is
possible for libraries to pick up libclang_rt.builtins from their
shared library dependencies, instead of libclang_rt.builtins directly.

Particularly, a vendor prebuilt in AOSP was picking up __floatditf()
from libhidlbase.so instead of from libclang_rt.builtins.  A change to
libhidlbase.so that removed the symbol caused thos prebuilt to fail to
link at runtime.

Bug: 138809247
Test: build, boot internal
Test: don't see libclang_rt.builtins symbols in libhidlbase.so

Change-Id: I0348c4860fe02cf88cb89f7ab356bd8c17826d77
(cherry picked from commit d000254202)
Merged-In: I0348c4860fe02cf88cb89f7ab356bd8c17826d77
2019-08-08 17:58:41 +00:00
Steven Moreland
4b95ad58ed Merge "-D__ANDROID_NDK__ for SDK builds." am: 08f9262577 am: 043eab7ad3 am: 681b67e8ad am: 584d5b0100
am: 5075531ceb

Change-Id: If3c1587cacf2ef40b4a227caa4f9565870caddc0
2019-08-08 10:37:53 -07:00
Steven Moreland
043eab7ad3 Merge "-D__ANDROID_NDK__ for SDK builds."
am: 08f9262577

Change-Id: I79f4746e3f9096f36b19eb2c0ac0c720a6410c52
2019-08-08 09:56:14 -07:00
Steven Moreland
08f9262577 Merge "-D__ANDROID_NDK__ for SDK builds." 2019-08-08 16:22:53 +00:00
Inseob Kim
ae55303f36 Include headers and props to VNDK snapshot
For all vndk snapshot libraries, header files exported by the libraries
will be included to the snapshot. Android.bp will contain necessary
information to link against/install vndk snapshot libraires:
export_include_dirs, export_system_include_dirs, export_flags, and
relative_install_path.

Bug: 132818174
Test: 1) m nothing && mv out/soong/build.ninja /tmp && m nothing &&
         diff -u -u out/soong/build.ninja /tmp/build.ninja
Test: 2) VNDK_SNAPSHOT_BUILD_ARTIFACTS=true \
           development/vndk/snapshot/build.sh
Test: 3) development/vndk/snasphot/update.py
Test: 4) see contents of Android.bp and include directories
Change-Id: I791ab181545eb483242b04446afd40958bbb2b17
2019-08-08 18:45:59 +09:00
Inseob Kim
093f0eb133 Implement sysprop_library API stability check
sysprop_library now checks the API stability itself, cutting dependency
on java_sdk_library. Under the directory {module_dir}/api,
{module_name}-current.txt and {module_name}-latest.txt hold API
signatures.

When sysprop_library is built, or a user run "m {module_name}-check-api"
command, API check is performed. First, current.txt must have exactly
same signature with built sysprop_library module. Second, current.txt
must be compatible with latest.txt.

Build system emits a handy error message to generate/update those API
files, in case of missing or mismatching. Also, a script file for
freezing API files is introduced.

Bug: 131637873
Test: 1) m && boot blueline
Test: 2) m {sysprop_library} performs API check
Test: 3) manual test for check-api, freezing api
Change-Id: I9d25f5dc64299e666527ca8e23d7233966901c4e
2019-08-08 08:09:01 +09:00
Tom Cherry
15ea55ce35 Merge "Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags" 2019-08-07 22:36:04 +00:00
Steven Moreland
c324729692 -D__ANDROID_NDK__ for SDK builds.
The NDK is built like this. Having it for app builds within the Android
build system allows us to distinguish platform code from app code.

This is specifically to distinguish AIDL interfaces using libbinder_ndk.
'myBinder-ndk_platform' libs will use additional functionality that
'myBinder-ndk' libs won't use (in the future, these may be separate
variants with the same name, see b/121157555).

Bug: 136027762
Test: using this to distinuish code in NDK vs platform code
Change-Id: I4de6f2e066982e7573ffd28cda44407d9e5648e4
2019-08-07 13:06:06 -07:00
Tom Cherry
d000254202 Add -Wl,--exclude-libs=libclang_rt.builtins to ldflags
libclang_rt.builtins has default visiblity set to public and is the
last included static library for all modules.  This means that it is
possible for libraries to pick up libclang_rt.builtins from their
shared library dependencies, instead of libclang_rt.builtins directly.

Particularly, a vendor prebuilt in AOSP was picking up __floatditf()
from libhidlbase.so instead of from libclang_rt.builtins.  A change to
libhidlbase.so that removed the symbol caused thos prebuilt to fail to
link at runtime.

Bug: 138809247
Test: build, boot internal
Test: don't see libclang_rt.builtins symbols in libhidlbase.so

Change-Id: I0348c4860fe02cf88cb89f7ab356bd8c17826d77
2019-08-07 10:40:00 -07:00
Jiyong Park
1d1119f4bd Fix sanitizer dep
This change fixes a problem in sanitizerMutator where a module is linked
with of non-sanitized variant of a lib at build-time, but is linked with
the sanitized variant of the lib at run-time.

This happened because, for each sanitizer type, every shared libs are
split into non-sanitized and sanitized variants, and then either of the
variants are suppressed from Make so that it isn't installed to the
device.

This change fixes the problem by NOT splitting for shared libs; only the
sanitized variant is created if needed. Header libs, static libs and
shared libs for a few sanitizer types (asan/fuzzer) are however split
into two. This is because the static and headers libs become part of the
depending module, and asan/fuzzer require that the depending module and
the dependant module should be compiled for the same sanitizer.

Bug: 138103882
Bug: 138426065
Test: m com.android.runtime.debug
Check that libziparchive exists under both
/system/apex/com.android.runtime/[lib|lib64]

Change-Id: Ia447785c485c0d049e19477b32bc638bfe6f1608
2019-08-08 01:51:26 +09:00
Hsin-Yi Chen
5348964723 Add tags to the list of lsdump paths
This commit adds tags, such as NDK, VNDK-core, and PLATFORM, to
LSDUMP_PATHS. The script updating the reference ABI dumps uses the tags
to determine the directories where the dumps should be created.

Test: make findlsdumps
Bug: 133176785
Change-Id: I8540286238cf0ec55c65e1c4f60cb9c12e5e57a1
2019-08-07 13:40:11 +08:00
Yifan Hong
b3f24a755c Merge "Add cc_*.target.recovery.static_libs" am: fb4ecc42ce am: 101b37b9fc am: edb88ed896 am: b31c2f368c
am: c1dfb577eb

Change-Id: Ic799b03faa0c54d1b4858e57e90cccc5a2a77444
2019-08-06 21:57:56 -07:00
Yifan Hong
101b37b9fc Merge "Add cc_*.target.recovery.static_libs"
am: fb4ecc42ce

Change-Id: I1ba9b00bff32791fcf1c0bb0adcd7b88b127eafa
2019-08-06 21:10:48 -07:00
Treehugger Robot
fb4ecc42ce Merge "Add cc_*.target.recovery.static_libs" 2019-08-07 03:45:17 +00:00
Hsin-Yi Chen
dc37d22a3b Merge "Skip ABI checks for APEX variants of opt-in libraries" am: ff7321b32a am: 36528dc386 am: 2fac665a72 am: 91eaf1d775
am: 90d7d32d72

Change-Id: I35e0f215cc45b616dec1c6855d8c292a5fbdcc02
2019-08-06 20:20:38 -07:00
Hsin-Yi Chen
36528dc386 Merge "Skip ABI checks for APEX variants of opt-in libraries"
am: ff7321b32a

Change-Id: I575b12dec299d080a3bf9b0389517f5d49784b53
2019-08-06 19:36:50 -07:00
Hsin-Yi Chen
ff7321b32a Merge "Skip ABI checks for APEX variants of opt-in libraries" 2019-08-07 02:00:43 +00:00
Stephen Hines
b7403944ce Merge "Add support for AUTO_*_INITIALIZE to build/soong." am: 7f0560d962 am: b28643b33f am: 9e239e9b85 am: d574f6ff1b
am: 4ebe705827

Change-Id: Ic4e11d9f1b98c0f4a5f5760392e24ca93ce21227
2019-08-06 15:21:46 -07:00
Stephen Hines
b28643b33f Merge "Add support for AUTO_*_INITIALIZE to build/soong."
am: 7f0560d962

Change-Id: I2d964d462a29539252b3f76544a096028f48c668
2019-08-06 14:39:36 -07:00