blob: 3eab7aeb8c0f750cc7c92e96b92b781ca3196d1c [file] [log] [blame]
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -08001# Use of this source code is governed by a BSD-style license that can be
2# found in the LICENSE file.
3
4ifeq ($(strip $(BOARD_USES_MINIGBM)), true)
5
6MINIGBM_GRALLOC_MK := $(call my-dir)/Android.gralloc.mk
7LOCAL_PATH := $(call my-dir)
8intel_drivers := i915 i965
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -08009
Albert Chaulkd8c04552018-04-05 16:56:53 -040010MINIGBM_SRC := \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080011 amdgpu.c \
Ludovico de Nittis490ba382019-05-28 16:03:34 +020012 dri.c \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080013 drv.c \
14 evdi.c \
15 exynos.c \
Alistair Strachan5932c4c2018-03-19 14:06:39 -070016 helpers_array.c \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080017 helpers.c \
18 i915.c \
19 marvell.c \
20 mediatek.c \
Sergey Volk6eca3682018-03-06 13:29:32 -080021 meson.c \
Rajesh Yadav7f79cb52018-01-22 18:29:06 +053022 msm.c \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080023 nouveau.c \
Alistair Strachan5932c4c2018-03-19 14:06:39 -070024 radeon.c \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080025 rockchip.c \
Leona Chou8f708a12020-03-19 15:06:12 +080026 synaptics.c \
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080027 tegra.c \
28 udl.c \
29 vc4.c \
Kazuhiro Inaba5b91ec02019-09-19 03:18:31 +000030 vgem.c \
Lepton Wu249e8632018-04-05 12:50:03 -070031 virtio_gpu.c
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080032
Alistair Strachan65141c22018-04-09 18:50:30 -070033MINIGBM_CPPFLAGS := -std=c++14
34MINIGBM_CFLAGS := \
35 -D_GNU_SOURCE=1 -D_FILE_OFFSET_BITS=64 \
36 -Wall -Wsign-compare -Wpointer-arith \
37 -Wcast-qual -Wcast-align \
38 -Wno-unused-parameter
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080039
40ifneq ($(filter $(intel_drivers), $(BOARD_GPU_DRIVERS)),)
Albert Chaulkd8c04552018-04-05 16:56:53 -040041MINIGBM_CPPFLAGS += -DDRV_I915
42MINIGBM_CFLAGS += -DDRV_I915
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080043LOCAL_SHARED_LIBRARIES += libdrm_intel
44endif
45
Albert Chaulkd8c04552018-04-05 16:56:53 -040046ifneq ($(filter meson, $(BOARD_GPU_DRIVERS)),)
47MINIGBM_CPPFLAGS += -DDRV_MESON
48MINIGBM_CFLAGS += -DDRV_MESON
49endif
50
Albert Chaulkd8c04552018-04-05 16:56:53 -040051include $(CLEAR_VARS)
52
53SUBDIRS := cros_gralloc
54
55LOCAL_SHARED_LIBRARIES := \
56 libcutils \
57 libdrm
58
59LOCAL_SRC_FILES := $(MINIGBM_SRC)
60
61include $(MINIGBM_GRALLOC_MK)
62
63LOCAL_CFLAGS := $(MINIGBM_CFLAGS)
64LOCAL_CPPFLAGS := $(MINIGBM_CPPFLAGS)
65
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080066LOCAL_MODULE := gralloc.$(TARGET_BOARD_PLATFORM)
67LOCAL_MODULE_TAGS := optional
68# The preferred path for vendor HALs is /vendor/lib/hw
69LOCAL_PROPRIETARY_MODULE := true
70LOCAL_MODULE_RELATIVE_PATH := hw
71LOCAL_MODULE_CLASS := SHARED_LIBRARIES
72LOCAL_MODULE_SUFFIX := $(TARGET_SHLIB_SUFFIX)
Alistair Strachan65141c22018-04-09 18:50:30 -070073LOCAL_HEADER_LIBRARIES += \
74 libhardware_headers libnativebase_headers libsystem_headers
Alistair Strachan5932c4c2018-03-19 14:06:39 -070075LOCAL_SHARED_LIBRARIES += libnativewindow libsync liblog
Alistair Strachan65141c22018-04-09 18:50:30 -070076LOCAL_STATIC_LIBRARIES += libarect
Kalyan Kondapallybc7dc782017-02-04 12:10:50 -080077include $(BUILD_SHARED_LIBRARY)
78
Albert Chaulkd8c04552018-04-05 16:56:53 -040079
80include $(CLEAR_VARS)
81LOCAL_SHARED_LIBRARIES := libcutils
82LOCAL_STATIC_LIBRARIES := libdrm
83
84LOCAL_SRC_FILES += $(MINIGBM_SRC) gbm.c gbm_helpers.c
85
Daniel Nicoaraf4e12f52018-05-10 17:58:03 -040086LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
Albert Chaulkd8c04552018-04-05 16:56:53 -040087LOCAL_CFLAGS := $(MINIGBM_CFLAGS)
88LOCAL_CPPFLAGS := $(MINIGBM_CPPFLAGS)
89
90LOCAL_MODULE := libminigbm
91LOCAL_MODULE_TAGS := optional
92include $(BUILD_SHARED_LIBRARY)
93
Alistair Strachan5932c4c2018-03-19 14:06:39 -070094endif