1 # Copyright 2014 The Chromium OS Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 include common.mk 6 7 PC_DEPS = libdrm 8 PC_CFLAGS := $(shell $(PKG_CONFIG) --cflags $(PC_DEPS)) 9 PC_LIBS := $(shell $(PKG_CONFIG) --libs $(PC_DEPS)) 10 11 CPPFLAGS += -D_GNU_SOURCE=1 12 CFLAGS += -std=c99 -Wall -Wsign-compare -Wpointer-arith -Wcast-qual \ 13 -Wcast-align -D_GNU_SOURCE=1 -D_FILE_OFFSET_BITS=64 14 15 ifdef DRV_AMDGPU 16 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_amdgpu) 17 LDLIBS += -ldrm_amdgpu -ldl 18 endif 19 ifdef DRV_EXYNOS 20 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_exynos) 21 endif 22 ifdef DRV_I915 23 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_intel) 24 endif 25 ifdef DRV_MESON 26 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_meson) 27 endif 28 ifdef DRV_RADEON 29 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_radeon) 30 endif 31 ifdef DRV_ROCKCHIP 32 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_rockchip) 33 endif 34 ifdef DRV_VC4 35 CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_vc4) 36 endif 37 38 CPPFLAGS += $(PC_CFLAGS) 39 LDLIBS += $(PC_LIBS) 40 41 LIBDIR ?= /usr/lib/ 42 43 GBM_VERSION_MAJOR := 1 44 MINIGBM_VERSION := $(GBM_VERSION_MAJOR).0.0 45 MINIGBM_FILENAME := libminigbm.so.$(MINIGBM_VERSION) 46 47 CC_LIBRARY($(MINIGBM_FILENAME)): LDFLAGS += -Wl,-soname,libgbm.so.$(GBM_VERSION_MAJOR) 48 CC_LIBRARY($(MINIGBM_FILENAME)): $(C_OBJECTS) 49 50 all: CC_LIBRARY($(MINIGBM_FILENAME)) 51 52 clean: CLEAN($(MINIGBM_FILENAME)) 53 54 install: all 55 mkdir -p $(DESTDIR)/$(LIBDIR) 56 install -D -m 755 $(OUT)/$(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR) 57 ln -sf $(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)/libgbm.so 58 ln -sf $(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)/libgbm.so.$(GBM_VERSION_MAJOR) 59 install -D -m 0644 $(SRC)/gbm.pc $(DESTDIR)$(LIBDIR)/pkgconfig/gbm.pc 60 install -D -m 0644 $(SRC)/gbm.h $(DESTDIR)/usr/include/gbm.h 61