[libui] Create a libui-types static library.
This is intended to be a small library for sharing some libui types with
APEX modules. I.e., HIDL dependencies such as gralloc should not be
included in the library so that binary sizes remain small.
Bug: 136263238
Test: builds
Change-Id: I9d9d5fb32033c08cfb517f6cfc0ecb4cf1eee2fe
diff --git a/libs/ui/Android.bp b/libs/ui/Android.bp
index ba6255d..9f7f36f 100644
--- a/libs/ui/Android.bp
+++ b/libs/ui/Android.bp
@@ -12,6 +12,64 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+cc_defaults {
+ name: "libui-defaults",
+ clang: true,
+ cflags: [
+ "-Wall",
+ "-Werror",
+ ],
+ cppflags: [
+ "-Wextra",
+ ],
+
+ sanitize: {
+ integer_overflow: true,
+ misc_undefined: ["bounds"],
+ },
+
+}
+
+cc_library_static {
+ name: "libui-types",
+ vendor_available: true,
+ host_supported: true,
+ target: {
+ windows: {
+ enabled: true,
+ }
+ },
+
+ defaults: [
+ "libui-defaults",
+ ],
+
+ apex_available: [
+ "//apex_available:anyapex",
+ "//apex_available:platform",
+ ],
+ shared_libs: [
+ "libutils",
+ ],
+
+ static_libs: [
+ "libmath",
+ ],
+
+ srcs: [
+ "ColorSpace.cpp",
+ ],
+
+ export_include_dirs: [
+ "include_types",
+ ],
+
+ export_static_lib_headers: [
+ "libmath",
+ ],
+
+}
+
cc_library_shared {
name: "libui",
vendor_available: true,
@@ -35,7 +93,6 @@
},
srcs: [
- "ColorSpace.cpp",
"BufferHubBuffer.cpp",
"BufferHubEventFd.cpp",
"BufferHubMetadata.cpp",
@@ -68,8 +125,11 @@
"include_private",
],
- // Uncomment the following line to enable VALIDATE_REGIONS traces
- //defaults: ["libui-validate-regions-defaults"],
+ defaults: [
+ "libui-defaults",
+ // Uncomment the following line to enable VALIDATE_REGIONS traces
+ //defaults: ["libui-validate-regions-defaults"],
+ ],
shared_libs: [
"android.frameworks.bufferhub@1.0",
@@ -104,6 +164,10 @@
"libmath",
],
+ whole_static_libs: [
+ "libui-types",
+ ],
+
// bufferhub is not used when building libgui for vendors
target: {
vendor: {