1################################################################################ 2# 3# mesa3d-headers 4# 5################################################################################ 6 7# mesa3d-headers is inherently incompatible with mesa3d, so error out 8# if both are enabled. 9ifeq ($(BR2_PACKAGE_MESA3D)$(BR2_PACKAGE_MESA3D_HEADERS),yy) 10$(error mesa3d-headers enabled, but mesa3d enabled too) 11endif 12 13# Not possible to directly refer to mesa3d variables, because of 14# first/second expansion trickery... 15MESA3D_HEADERS_VERSION = 21.1.8 16MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz 17MESA3D_HEADERS_SITE = https://archive.mesa3d.org 18MESA3D_HEADERS_DL_SUBDIR = mesa3d 19MESA3D_HEADERS_LICENSE = MIT, SGI, Khronos 20MESA3D_HEADERS_LICENSE_FILES = docs/license.rst 21MESA3D_HEADERS_CPE_ID_VENDOR = mesa3d 22MESA3D_HEADERS_CPE_ID_PRODUCT = mesa 23 24# Only installs header files 25MESA3D_HEADERS_INSTALL_STAGING = YES 26MESA3D_HEADERS_INSTALL_TARGET = NO 27 28MESA3D_HEADERS_DIRS = KHR 29 30ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) 31 32MESA3D_HEADERS_DIRS += GL 33 34ifeq ($(BR2_PACKAGE_XORG7),y) 35 36# Not using $(SED) because we do not want to work in-place, and $(SED) 37# contains -i. 38define MESA3D_HEADERS_BUILD_DRI_PC 39 sed -e 's:@VERSION@:$(MESA3D_HEADERS_VERSION):' \ 40 package/mesa3d-headers/dri.pc \ 41 >$(@D)/src/mesa/drivers/dri/dri.pc 42endef 43 44define MESA3D_HEADERS_INSTALL_DRI_PC 45 $(INSTALL) -D -m 0644 $(@D)/include/GL/internal/dri_interface.h \ 46 $(STAGING_DIR)/usr/include/GL/internal/dri_interface.h 47 $(INSTALL) -D -m 0644 $(@D)/src/mesa/drivers/dri/dri.pc \ 48 $(STAGING_DIR)/usr/lib/pkgconfig/dri.pc 49endef 50 51endif # Xorg 52 53endif # OpenGL 54 55ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y) 56MESA3D_HEADERS_DIRS += EGL 57endif 58 59ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) 60MESA3D_HEADERS_DIRS += GLES GLES2 61endif 62 63ifeq ($(BR2_PACKAGE_HAS_LIBOPENCL),y) 64MESA3D_HEADERS_DIRS += CL 65endif 66 67define MESA3D_HEADERS_BUILD_CMDS 68 $(MESA3D_HEADERS_BUILD_DRI_PC) 69endef 70 71define MESA3D_HEADERS_INSTALL_STAGING_CMDS 72 $(foreach d,$(MESA3D_HEADERS_DIRS),\ 73 cp -dpfr $(@D)/include/$(d) $(STAGING_DIR)/usr/include/ || exit 1$(sep)) 74 $(MESA3D_HEADERS_INSTALL_DRI_PC) 75endef 76 77$(eval $(generic-package)) 78