libselinux is LLNDK, not VNDK-core

libselinux has stable C APIs and therefore provides a stub library for
Mainline clients. It is not copied into any Mainline modules and the
only instance of the lib in /system/lib serves all of them.

However for vendors, we still had another copy of libselinux in VNDK
(e.g. in the VNDK APEX that is served via the path /system/lib/vndk).
Since the library is guaranteed to have stable C APIs, there is no
reason to keep the vendor variant of the library in VNDK. Keeping it in
VNDK would be just a waste of storage space.

This change removes libselinux from VNDK and marks it as LLNDK. The
single instance of if in /system/lib serves vendor processes as well as
Mainline modules.

Bug: 151303316
Test: m
Change-Id: Ibb3e125c1bf4ef7873ae8df0795e781f64d743f1
This commit is contained in:
Jiyong Park 2020-03-31 15:26:07 +09:00
parent 8949cc0b79
commit 1ea855ee67

View file

@ -100,11 +100,6 @@ cc_library {
name: "libselinux",
defaults: ["libselinux_defaults"],
vendor_available: true,
vndk: {
enabled: true,
},
double_loadable: true,
recovery_available: true,
host_supported: true,
@ -214,6 +209,12 @@ cc_library {
},
}
llndk_library {
name: "libselinux",
export_include_dirs: ["include"],
symbol_file: "exported.map",
}
cc_binary_host {
name: "sefcontext_compile",
defaults: ["libselinux_defaults"],