OSDN Git Service

Convert external/minigbm to Android.bp
authorColin Cross <ccross@android.com>
Fri, 22 Mar 2019 20:15:06 +0000 (13:15 -0700)
committerColin Cross <ccross@android.com>
Fri, 22 Mar 2019 20:15:06 +0000 (13:15 -0700)
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 [new file with mode: 0644]
Android.mk [deleted file]

diff --git a/Android.bp b/Android.bp
new file mode 100644 (file)
index 0000000..63a50f7
--- /dev/null
@@ -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 (file)
index 1c52e2a..0000000
+++ /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