libc_header is available to any apex but only visible to certain places

The header library is used by some libraries, such as libunwind_llvm,
which are automatically added as dependencies when stl is set to
libc++_static. Since such dependencies are not specificy to any APEX,
let's mark the header library be available (can be directly or
indirectly be part of an APEX) to any APEX. At the same time, limit the
visibility of the header library so that its uses are strictly limited
to the certain places that we acknowledge. (the places would be reduced
further when we will be successful in dropping the dependency to
libc_headers.)

Bug: 152668052
Test: m
Change-Id: I85ee900947df2c9ce076e2f3aa3145645da77d2b
This commit is contained in:
Jiyong Park 2020-03-30 18:36:07 +09:00
parent e7221986c8
commit ad9946c09a

View file

@ -1777,9 +1777,15 @@ cc_library_headers {
native_bridge_supported: true,
apex_available: [
"//apex_available:platform",
"com.android.runtime",
"com.android.art.debug",
"com.android.art.release",
"//apex_available:anyapex",
],
visibility: [
":__subpackages__", // visible to bionic
// ... and only to these places (b/152668052)
"//external/gwp_asan",
"//external/libunwind_llvm",
"//system/core/property_service/libpropertyinfoparser",
"//system/extras/toolchain-extras",
],
no_libcrt: true,