From 9521a6025389380924804d8f42f65fbf7bd37b99 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Fri, 22 Mar 2019 13:15:06 -0700 Subject: [PATCH] Convert external/minigbm to Android.bp See build/soong/README.md for more information. This replaces the product and BoardConfig.mk variable conditionals with different versions of the HAL for each product, which will also allow checkbuild to verify that they build even on products that don't use them. Fixes: 122332792 Test: mma Change-Id: Ie8b6316ea09795e36339f94883c89795771c1f48 --- Android.bp | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Android.mk | 92 ----------------------------------------------- 2 files changed, 120 insertions(+), 92 deletions(-) create mode 100644 Android.bp delete mode 100644 Android.mk diff --git a/Android.bp b/Android.bp new file mode 100644 index 0000000..63a50f7 --- /dev/null +++ b/Android.bp @@ -0,0 +1,120 @@ +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +cc_defaults { + name: "gralloc.minigbm_intel_defaults", + cflags: ["-DDRV_I915"], +} + +cc_defaults { + name: "gralloc.minigbm_meson_defaults", + cflags: ["-DDRV_MESON"], +} + +cc_defaults { + name: "gralloc.minigbm_defaults", + + srcs: [ + "amdgpu.c", + "drv.c", + "evdi.c", + "exynos.c", + "helpers_array.c", + "helpers.c", + "i915.c", + "marvell.c", + "mediatek.c", + "meson.c", + "msm.c", + "nouveau.c", + "radeon.c", + "rockchip.c", + "tegra.c", + "udl.c", + "vc4.c", + "vgem.c", + "virtio_gpu.c", + + "cros_gralloc/cros_gralloc_buffer.cc", + "cros_gralloc/cros_gralloc_driver.cc", + "cros_gralloc/cros_gralloc_helpers.cc", + "cros_gralloc/gralloc0/gralloc0.cc", + ], + + cflags: [ + "-D_GNU_SOURCE=1", + "-D_FILE_OFFSET_BITS=64", + "-Wall", + "-Wsign-compare", + "-Wpointer-arith", + "-Wcast-qual", + "-Wcast-align", + "-Wno-unused-parameter", + ], + cppflags: ["-std=c++14"], + + // The preferred path for vendor HALs is /vendor/lib/hw + vendor: true, + relative_install_path: "hw", + + header_libs: [ + "libhardware_headers", + "libnativebase_headers", + "libsystem_headers", + ], + + shared_libs: [ + "libcutils", + "libdrm", + + "libnativewindow", + "libsync", + "liblog", + ], + + static_libs: ["libarect"], +} + +cc_library_shared { + name: "gralloc.minigbm", + defaults: ["gralloc.minigbm_defaults"], +} + +cc_library_shared { + name: "gralloc.minigbm_intel", + defaults: [ + "gralloc.minigbm_defaults", + "gralloc.minigbm_intel_defaults", + ], + enabled: false, + arch: { + x86: { + enabled: true, + }, + x86_64: { + enabled: true, + }, + }, +} + +cc_library_shared { + name: "gralloc.minigbm_meson", + defaults: [ + "gralloc.minigbm_defaults", + "gralloc.minigbm_meson_defaults", + ], +} + +cc_library_shared { + name: "libminigbm", + defaults: ["gralloc.minigbm_defaults"], + shared_libs: ["liblog"], + static_libs: ["libdrm"], + + srcs: [ + "gbm.c", + "gbm_helpers.c", + ], + + export_include_dirs: ["."], +} diff --git a/Android.mk b/Android.mk deleted file mode 100644 index 1c52e2a..0000000 --- a/Android.mk +++ /dev/null @@ -1,92 +0,0 @@ -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -ifeq ($(strip $(BOARD_USES_MINIGBM)), true) - -MINIGBM_GRALLOC_MK := $(call my-dir)/Android.gralloc.mk -LOCAL_PATH := $(call my-dir) -intel_drivers := i915 i965 - -MINIGBM_SRC := \ - amdgpu.c \ - drv.c \ - evdi.c \ - exynos.c \ - helpers_array.c \ - helpers.c \ - i915.c \ - marvell.c \ - mediatek.c \ - meson.c \ - msm.c \ - nouveau.c \ - radeon.c \ - rockchip.c \ - tegra.c \ - udl.c \ - vc4.c \ - vgem.c \ - virtio_gpu.c - -MINIGBM_CPPFLAGS := -std=c++14 -MINIGBM_CFLAGS := \ - -D_GNU_SOURCE=1 -D_FILE_OFFSET_BITS=64 \ - -Wall -Wsign-compare -Wpointer-arith \ - -Wcast-qual -Wcast-align \ - -Wno-unused-parameter - -ifneq ($(filter $(intel_drivers), $(BOARD_GPU_DRIVERS)),) -MINIGBM_CPPFLAGS += -DDRV_I915 -MINIGBM_CFLAGS += -DDRV_I915 -LOCAL_SHARED_LIBRARIES += libdrm_intel -endif - -ifneq ($(filter meson, $(BOARD_GPU_DRIVERS)),) -MINIGBM_CPPFLAGS += -DDRV_MESON -MINIGBM_CFLAGS += -DDRV_MESON -endif - -include $(CLEAR_VARS) - -SUBDIRS := cros_gralloc - -LOCAL_SHARED_LIBRARIES := \ - libcutils \ - libdrm - -LOCAL_SRC_FILES := $(MINIGBM_SRC) - -include $(MINIGBM_GRALLOC_MK) - -LOCAL_CFLAGS := $(MINIGBM_CFLAGS) -LOCAL_CPPFLAGS := $(MINIGBM_CPPFLAGS) - -LOCAL_MODULE := gralloc.minigbm -LOCAL_MODULE_TAGS := optional -# The preferred path for vendor HALs is /vendor/lib/hw -LOCAL_PROPRIETARY_MODULE := true -LOCAL_MODULE_RELATIVE_PATH := hw -LOCAL_MODULE_CLASS := SHARED_LIBRARIES -LOCAL_MODULE_SUFFIX := $(TARGET_SHLIB_SUFFIX) -LOCAL_HEADER_LIBRARIES += \ - libhardware_headers libnativebase_headers libsystem_headers -LOCAL_SHARED_LIBRARIES += libnativewindow libsync liblog -LOCAL_STATIC_LIBRARIES += libarect -include $(BUILD_SHARED_LIBRARY) - - -include $(CLEAR_VARS) -LOCAL_SHARED_LIBRARIES := liblog -LOCAL_STATIC_LIBRARIES := libdrm - -LOCAL_SRC_FILES += $(MINIGBM_SRC) gbm.c gbm_helpers.c - -LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) -LOCAL_CFLAGS := $(MINIGBM_CFLAGS) -LOCAL_CPPFLAGS := $(MINIGBM_CPPFLAGS) - -LOCAL_MODULE := libminigbm -LOCAL_MODULE_TAGS := optional -include $(BUILD_SHARED_LIBRARY) - -endif -- 2.11.0