diff --git a/Android.bp b/Android.bp index e7dfff8..dff0ee8 100644 --- a/Android.bp +++ b/Android.bp @@ -32,8 +32,8 @@ license { ], } -cc_defaults { - name: "minigbm_defaults", +filegroup { + name: "minigbm_core_files", srcs: [ "amdgpu.c", @@ -51,6 +51,27 @@ cc_defaults { "virtgpu_cross_domain.c", "virtgpu_virgl.c", ], +} + +filegroup { + name: "minigbm_gralloc_common_files", + + srcs: [ + "cros_gralloc/cros_gralloc_buffer.cc", + "cros_gralloc/cros_gralloc_helpers.cc", + "cros_gralloc/cros_gralloc_driver.cc", + ], +} + +filegroup { + name: "minigbm_gralloc0_files", + srcs: ["cros_gralloc/gralloc0/gralloc0.cc"], +} + +cc_defaults { + name: "minigbm_defaults", + + srcs: [":minigbm_core_files"], cflags: [ "-D_GNU_SOURCE=1", @@ -62,8 +83,13 @@ cc_defaults { "-Wcast-align", "-Wno-unused-parameter", ], +} - cppflags: ["-std=c++14"], +cc_library_headers { + name: "minigbm_headers", + host_supported: true, + vendor_available: true, + export_include_dirs: ["."], } cc_defaults { @@ -71,30 +97,18 @@ cc_defaults { defaults: ["minigbm_defaults"], + srcs: [":minigbm_gralloc_common_files"], + header_libs: [ "libhardware_headers", "libnativebase_headers", "libnativewindow_headers", "libsystem_headers", - ], - - export_header_lib_headers: [ - "libhardware_headers", - "libnativebase_headers", - "libnativewindow_headers", - "libsystem_headers", - ], - - srcs: [ - "cros_gralloc/cros_gralloc_buffer.cc", - "cros_gralloc/cros_gralloc_helpers.cc", - "cros_gralloc/cros_gralloc_driver.cc", + "minigbm_headers", ], static_libs: ["libarect"], - export_static_lib_headers: ["libarect"], - vendor: true, shared_libs: [ @@ -108,24 +122,16 @@ cc_defaults { relative_install_path: "hw", } -cc_defaults { - name: "gbm_defaults", - +cc_library { + name: "libgbm", defaults: ["minigbm_defaults"], + host_supported: true, srcs: [ "gbm.c", "gbm_helpers.c", ], - export_include_dirs: ["."], -} - -cc_library { - name: "libgbm", - defaults: ["gbm_defaults"], - host_supported: true, - target: { host: { // Avoid linking to another host copy of libdrm; this library will cause @@ -145,26 +151,14 @@ cc_library { "//apex_available:platform", "com.android.virt", ], -} - -cc_defaults { - name: "libminigbm_cros_gralloc_defaults", - defaults: ["minigbm_cros_gralloc_defaults"], - shared_libs: ["liblog"], - static_libs: ["libdrm"], export_include_dirs: ["."], } -cc_library_static { - name: "libminigbm_cros_gralloc", - defaults: ["libminigbm_cros_gralloc_defaults"], -} - cc_library_shared { name: "gralloc.minigbm", defaults: ["minigbm_cros_gralloc_defaults"], - srcs: ["cros_gralloc/gralloc0/gralloc0.cc"], + srcs: [":minigbm_gralloc0_files"], } cc_library_shared { @@ -180,27 +174,19 @@ cc_library_shared { }, }, cflags: ["-DDRV_I915"], - srcs: ["cros_gralloc/gralloc0/gralloc0.cc"], + srcs: [":minigbm_gralloc0_files"], } cc_library_shared { name: "gralloc.minigbm_meson", defaults: ["minigbm_cros_gralloc_defaults"], cflags: ["-DDRV_MESON"], - srcs: ["cros_gralloc/gralloc0/gralloc0.cc"], + srcs: [":minigbm_gralloc0_files"], } cc_library_shared { name: "gralloc.minigbm_msm", defaults: ["minigbm_cros_gralloc_defaults"], cflags: ["-DDRV_MSM"], - srcs: [ - "cros_gralloc/gralloc0/gralloc0.cc", - ], -} - -cc_library_static { - name: "libminigbm_cros_gralloc_msm", - defaults: ["libminigbm_cros_gralloc_defaults"], - cflags: ["-DDRV_MSM"], + srcs: [":minigbm_gralloc0_files"], } diff --git a/cros_gralloc/gralloc3/Android.bp b/cros_gralloc/gralloc3/Android.bp index 6e36c5b..5e66bec 100644 --- a/cros_gralloc/gralloc3/Android.bp +++ b/cros_gralloc/gralloc3/Android.bp @@ -22,33 +22,8 @@ package { default_applicable_licenses: ["external_minigbm_license"], } -cc_binary { - name: "android.hardware.graphics.allocator@3.0-service.minigbm", - relative_install_path: "hw", - vendor: true, - init_rc: ["android.hardware.graphics.allocator@3.0-service.minigbm.rc"], - - cflags: [ - "-Wall", - "-Werror", - ], - - shared_libs: [ - "android.hardware.graphics.allocator@3.0", - "android.hardware.graphics.mapper@3.0", - "libbase", - "libcutils", - "libhidlbase", - "liblog", - "libsync", - "libutils", - ], - - static_libs: [ - "libdrm", - "libminigbm_cros_gralloc", - ], - +filegroup { + name: "minigbm_gralloc3_allocator_files", srcs: [ "CrosGralloc3Allocator.cc", "CrosGralloc3AllocatorService.cc", @@ -56,33 +31,46 @@ cc_binary { ], } -cc_library_shared { - name: "android.hardware.graphics.mapper@3.0-impl.minigbm", - relative_install_path: "hw", - vendor: true, - - cflags: [ - "-Wall", - "-Werror", - ], - - shared_libs: [ - "android.hardware.graphics.mapper@3.0", - "libbase", - "libcutils", - "libhidlbase", - "liblog", - "libsync", - "libutils", - ], - - static_libs: [ - "libdrm", - "libminigbm_cros_gralloc", - ], - +filegroup { + name: "minigbm_gralloc3_mapper_files", srcs: [ "CrosGralloc3Mapper.cc", "CrosGralloc3Utils.cc", ], } + +cc_defaults { + name: "minigbm_gralloc3_common_defaults", + defaults: ["minigbm_cros_gralloc_defaults"], + + shared_libs: [ + "android.hardware.graphics.mapper@3.0", + "libgralloctypes", + "libhidlbase", + "libbase", + "libutils", + ], + + cflags: ["-Wno-sign-compare"], +} + +cc_defaults { + name: "minigbm_gralloc3_allocator_defaults", + defaults: ["minigbm_gralloc3_common_defaults"], + + shared_libs: ["android.hardware.graphics.allocator@3.0"], + srcs: [":minigbm_gralloc3_allocator_files"], +} + +cc_binary { + name: "android.hardware.graphics.allocator@3.0-service.minigbm", + defaults: ["minigbm_gralloc3_allocator_defaults"], + init_rc: ["android.hardware.graphics.allocator@3.0-service.minigbm.rc"], +} + +cc_library_shared { + name: "android.hardware.graphics.mapper@3.0-impl.minigbm", + defaults: ["minigbm_gralloc3_common_defaults"], + + srcs: [":minigbm_gralloc3_mapper_files"], +} diff --git a/cros_gralloc/gralloc4/Android.bp b/cros_gralloc/gralloc4/Android.bp index 4d2b542..2ff1199 100644 --- a/cros_gralloc/gralloc4/Android.bp +++ b/cros_gralloc/gralloc4/Android.bp @@ -23,34 +23,8 @@ package { default_applicable_licenses: ["external_minigbm_license"], } -cc_defaults { - name: "service_minigbm_defaults", - relative_install_path: "hw", - vendor: true, - - vintf_fragments: ["android.hardware.graphics.allocator@4.0.xml"], - - cflags: [ - "-Wall", - "-Werror", - ], - - shared_libs: [ - "android.hardware.graphics.allocator@4.0", - "android.hardware.graphics.mapper@4.0", - "libbase", - "libcutils", - "libgralloctypes", - "libhidlbase", - "liblog", - "libsync", - "libutils", - ], - - static_libs: [ - "libdrm", - ], - +filegroup { + name: "minigbm_gralloc4_allocator_files", srcs: [ "CrosGralloc4Allocator.cc", "CrosGralloc4AllocatorService.cc", @@ -58,73 +32,66 @@ cc_defaults { ], } -cc_binary { - name: "android.hardware.graphics.allocator@4.0-service.minigbm", - init_rc: ["android.hardware.graphics.allocator@4.0-service.minigbm.rc"], - defaults: ["service_minigbm_defaults"], - static_libs: [ - "libminigbm_cros_gralloc", - ], -} - -cc_binary { - name: "android.hardware.graphics.allocator@4.0-service.minigbm_msm", - init_rc: ["android.hardware.graphics.allocator@4.0-service.minigbm_msm.rc"], - defaults: ["service_minigbm_defaults"], - static_libs: [ - "libminigbm_cros_gralloc_msm", - ], -} - -cc_defaults { - name: "impl_minigbm_defaults", - relative_install_path: "hw", - vendor: true, - - vintf_fragments: ["android.hardware.graphics.mapper@4.0.xml"], - - cflags: [ - "-Wall", - "-Werror", - ], - - shared_libs: [ - "android.hardware.graphics.mapper@4.0", - "libbase", - "libcutils", - "libgralloctypes", - "libhidlbase", - "liblog", - "libsync", - "libutils", - ], - - static_libs: [ - "libdrm", - ], - +filegroup { + name: "minigbm_gralloc4_mapper_files", srcs: [ "CrosGralloc4Mapper.cc", "CrosGralloc4Utils.cc", ], } -cc_library_shared { - name: "android.hardware.graphics.mapper@4.0-impl.minigbm", - defaults: ["impl_minigbm_defaults"], +cc_defaults { + name: "minigbm_gralloc4_common_defaults", + defaults: ["minigbm_cros_gralloc_defaults"], - static_libs: [ - "libminigbm_cros_gralloc", + shared_libs: [ + "android.hardware.graphics.mapper@4.0", + "libgralloctypes", + "libhidlbase", + "libbase", + "libutils", ], + cflags: ["-Wno-sign-compare"], +} + +cc_defaults { + name: "minigbm_gralloc4_allocator_defaults", + defaults: ["minigbm_gralloc4_common_defaults"], + + shared_libs: ["android.hardware.graphics.allocator@4.0"], + srcs: [":minigbm_gralloc4_allocator_files"], +} + +cc_binary { + name: "android.hardware.graphics.allocator@4.0-service.minigbm", + defaults: ["minigbm_gralloc4_allocator_defaults"], + vintf_fragments: ["android.hardware.graphics.allocator@4.0.xml"], + init_rc: ["android.hardware.graphics.allocator@4.0-service.minigbm.rc"], +} + +cc_binary { + name: "android.hardware.graphics.allocator@4.0-service.minigbm_msm", + defaults: ["minigbm_gralloc4_allocator_defaults"], + vintf_fragments: ["android.hardware.graphics.allocator@4.0.xml"], + init_rc: ["android.hardware.graphics.allocator@4.0-service.minigbm_msm.rc"], + + cflags: ["-DDRV_MSM"], +} + +cc_library_shared { + name: "android.hardware.graphics.mapper@4.0-impl.minigbm", + defaults: ["minigbm_gralloc4_common_defaults"], + vintf_fragments: ["android.hardware.graphics.mapper@4.0.xml"], + + srcs: [":minigbm_gralloc4_mapper_files"], } cc_library_shared { name: "android.hardware.graphics.mapper@4.0-impl.minigbm_msm", - defaults: ["impl_minigbm_defaults"], - - static_libs: [ - "libminigbm_cros_gralloc_msm", - ], + defaults: ["minigbm_gralloc4_common_defaults"], + vintf_fragments: ["android.hardware.graphics.mapper@4.0.xml"], + cflags: ["-DDRV_MSM"], + srcs: [":minigbm_gralloc4_mapper_files"], }