This reverts commit b7a9a2b7d5.
Reason for revert: Crash resolved by Ieb07b5bbc206f07f69e4afba921149f49d6fe8c4
Bug: 349870098
Change-Id: I49848f6e7311c1f44e6c988cb42107ed79da3a6b
97 lines
3 KiB
Makefile
97 lines
3 KiB
Makefile
# Copyright 2014 The Chromium OS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
include common.mk
|
|
|
|
PC_DEPS = libdrm
|
|
PC_CFLAGS := $(shell $(PKG_CONFIG) --cflags $(PC_DEPS))
|
|
PC_LIBS := $(shell $(PKG_CONFIG) --libs $(PC_DEPS))
|
|
|
|
CPPFLAGS += -D_GNU_SOURCE=1
|
|
CFLAGS += -std=c99 -Wall -Wsign-compare -Wpointer-arith -Wcast-qual \
|
|
-Wcast-align -D_GNU_SOURCE=1 -D_FILE_OFFSET_BITS=64
|
|
|
|
# Dependencies that all gtest based unittests should have.
|
|
UNITTEST_LIBS := -lcap -lgtest -lgmock
|
|
UNITTEST_DEPS := gbm_unittest.o testrunner.o gbm.o dri.o drv_array_helpers.o drv_helpers.o drv.o backend_mock.o virtgpu_cross_domain.o virtgpu_virgl.o virtgpu.o msm.o vc4.o amdgpu.o i915.o mediatek.o dumb_driver.o
|
|
|
|
ifdef DRV_AMDGPU
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_amdgpu)
|
|
LDLIBS += -ldrm_amdgpu -ldl
|
|
endif
|
|
ifdef DRV_I915
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_intel)
|
|
endif
|
|
ifdef DRV_MESON
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_meson)
|
|
endif
|
|
ifdef DRV_MSM
|
|
CFLAGS += -ldl
|
|
endif
|
|
ifdef DRV_RADEON
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_radeon)
|
|
endif
|
|
ifdef DRV_ROCKCHIP
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_rockchip)
|
|
endif
|
|
ifdef DRV_VC4
|
|
CFLAGS += $(shell $(PKG_CONFIG) --cflags libdrm_vc4)
|
|
endif
|
|
|
|
CPPFLAGS += $(PC_CFLAGS)
|
|
LDLIBS += $(PC_LIBS)
|
|
|
|
DESTDIR ?= $(OUT)/install
|
|
LIBDIR ?= /usr/lib
|
|
INCLUDEDIR ?= /usr/include
|
|
|
|
MINIGBM_VERSION_MAJOR := 1
|
|
MINIGBM_VERSION := $(MINIGBM_VERSION_MAJOR).0.0
|
|
MINIGBM_FILENAME := libminigbm.so.$(MINIGBM_VERSION)
|
|
|
|
CC_LIBRARY($(MINIGBM_FILENAME)): LDFLAGS += -Wl,-soname,libgbm.so.$(MINIGBM_VERSION_MAJOR)
|
|
CC_LIBRARY($(MINIGBM_FILENAME)): $(C_OBJECTS) pkgconfig
|
|
CC_STATIC_LIBRARY(libminigbm.pie.a): $(C_OBJECTS)
|
|
|
|
all: CC_LIBRARY($(MINIGBM_FILENAME))
|
|
|
|
clean: CLEAN($(MINIGBM_FILENAME))
|
|
|
|
CXX_BINARY(gbm_unittest): CXXFLAGS += -Wno-write-strings \
|
|
$(GTEST_CXXFLAGS)
|
|
CXX_BINARY(gbm_unittest): LDLIBS += $(UNITTEST_LIBS)
|
|
CXX_BINARY(gbm_unittest): $(UNITTEST_DEPS)
|
|
clean: CLEAN(gbm_unittest)
|
|
tests: TEST(CXX_BINARY(gbm_unittest))
|
|
|
|
define pkgconfig_contents
|
|
prefix=$(DESTDIR)
|
|
exec_prefix=$${prefix}
|
|
includedir=$${prefix}/$(INCLUDEDIR)
|
|
libdir=$${prefix}/$(LIBDIR)
|
|
|
|
Name: libgbm
|
|
Description: A small gbm implementation
|
|
Version: 18.0.0
|
|
Cflags: -I$${includedir}
|
|
Libs: -L$${libdir} -lgbm
|
|
Requires.private: libdrm >= 2.4.50
|
|
endef
|
|
|
|
.PHONY: pkgconfig
|
|
pkgconfig:
|
|
@echo "generating $(OUT)gbm.pc"
|
|
$(file > $(OUT)/gbm.pc,$(pkgconfig_contents))
|
|
clean:
|
|
rm -f $(OUT)gbm.pc
|
|
|
|
install: all
|
|
mkdir -p $(DESTDIR)/$(LIBDIR)
|
|
install -D -m 755 $(OUT)/$(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)
|
|
ln -sf $(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)/libgbm.so
|
|
ln -sf $(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)/libgbm.so.$(MINIGBM_VERSION_MAJOR)
|
|
ln -sf $(MINIGBM_FILENAME) $(DESTDIR)/$(LIBDIR)/libgbm.so.$(MINIGBM_VERSION)
|
|
install -D -m 0644 $(OUT)/gbm.pc $(DESTDIR)/$(LIBDIR)/pkgconfig/gbm.pc
|
|
install -D -m 0644 $(SRC)/gbm.h $(DESTDIR)/$(INCLUDEDIR)/gbm.h
|
|
install -D -m 0644 $(SRC)/minigbm_helpers.h $(DESTDIR)/$(INCLUDEDIR)/minigbm/minigbm_helpers.h
|