drm_hwcomposer: Move hwcomposer.drm_hikey and hwcomposer.drm_hikey960
Prevent external/drm_hwcomposer from referencing device/linaro/hikey,
which may not exist in all trees, by compiling most of drm_hwcomposer
as a static library and then compiling just the source files that
are affected by device-specific #defines and #includes in
device/linary/hikey/gralloc*.
Fixes: 129543119
Test: m hwcomposer.drm_hikey hwcomposer.drm_hikey960 MODULES-IN-external-drm_hwcomposer
Change-Id: I800b147a40c4e368ce1a74273728f5941f6b63c4
Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
diff --git a/Android.bp b/Android.bp
index b8de984..2af4548 100644
--- a/Android.bp
+++ b/Android.bp
@@ -47,6 +47,22 @@
static_libs: ["libdrmhwc_utils"],
+ cflags: [
+ "-Wall",
+ "-Werror",
+ ],
+
+ cppflags: [
+ "-DHWC2_USE_CPP11",
+ "-DHWC2_INCLUDE_STRINGIFICATION",
+ ],
+
+ relative_install_path: "hw",
+ vendor: true,
+}
+cc_library_static {
+ name: "drm_hwcomposer",
+ defaults: ["hwcomposer.drm_defaults"],
srcs: [
"autolock.cpp",
"resourcemanager.cpp",
@@ -63,50 +79,34 @@
"drmproperty.cpp",
"hwcutils.cpp",
"platform.cpp",
- "platformdrmgeneric.cpp",
"vsyncworker.cpp",
],
- cflags: [
- "-Wall",
- "-Werror",
- ],
-
- cppflags: [
- "-DHWC2_USE_CPP11",
- "-DHWC2_INCLUDE_STRINGIFICATION",
- ],
-
- relative_install_path: "hw",
- vendor: true,
}
cc_library_shared {
name: "hwcomposer.drm",
defaults: ["hwcomposer.drm_defaults"],
+ whole_static_libs: ["drm_hwcomposer"],
+ srcs: ["platformdrmgeneric.cpp"],
cppflags: ["-DUSE_DRM_GENERIC_IMPORTER"],
}
cc_library_shared {
- name: "hwcomposer.drm_hikey",
- defaults: ["hwcomposer.drm_defaults"],
- cppflags: ["-DUSE_HISI_IMPORTER"],
- srcs: ["platformhisi.cpp"],
- include_dirs: ["device/linaro/hikey/gralloc"],
-}
-
-cc_library_shared {
- name: "hwcomposer.drm_hikey960",
- defaults: ["hwcomposer.drm_defaults"],
- cppflags: ["-DUSE_HISI_IMPORTER"],
- srcs: ["platformhisi.cpp"],
- include_dirs: ["device/linaro/hikey/gralloc960"],
-}
-
-
-cc_library_shared {
name: "hwcomposer.drm_minigbm",
defaults: ["hwcomposer.drm_defaults"],
- srcs: ["platformminigbm.cpp"],
+ whole_static_libs: ["drm_hwcomposer"],
+ srcs: [
+ "platformdrmgeneric.cpp",
+ "platformminigbm.cpp",
+ ],
include_dirs: ["external/minigbm/cros_gralloc"],
}
+// Used by hwcomposer.drm_hikey and hwcomposer.drm_hikey960
+filegroup {
+ name: "drm_hwcomposer_platformhisi",
+ srcs: [
+ "platformdrmgeneric.cpp",
+ "platformhisi.cpp",
+ ],
+}