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