1. frontends access the driver via drv.h only 2. the renamed drv_helpers and drv_array_helpers are for driver only 3. remove extern "C" from drv_helpers.h given not exposed to gralloc 4. remove all redundant includes for those helpers BUG=b:199524294 TEST=CQ and gralloc builds on aosp Change-Id: I3f4d33076a6a8161804f1b7c26950ff5496507e9 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/minigbm/+/3195651 Tested-by: Yiwei Zhang <zzyiwei@chromium.org> Reviewed-by: Chia-I Wu <olv@google.com> Commit-Queue: Yiwei Zhang <zzyiwei@chromium.org>
88 lines
2 KiB
Makefile
88 lines
2 KiB
Makefile
# 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 \
|
|
dri.c \
|
|
drv.c \
|
|
drv_array_helpers.c \
|
|
drv_helpers.c \
|
|
dumb_driver.c \
|
|
exynos.c \
|
|
i915.c \
|
|
mediatek.c \
|
|
meson.c \
|
|
msm.c \
|
|
radeon.c \
|
|
rockchip.c \
|
|
vc4.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.$(TARGET_BOARD_PLATFORM)
|
|
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 := libcutils
|
|
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
|