FreeBSD Bugzilla – Attachment 181984 Details for
Bug 218799
Mesa 17.0.4 update and re-organization
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
D10448
D10448.diff (text/plain), 75.89 KB, created by
Matthew Rezny
on 2017-04-21 18:55:19 UTC
(
hide
)
Description:
D10448
Filename:
MIME Type:
Creator:
Matthew Rezny
Created:
2017-04-21 18:55:19 UTC
Size:
75.89 KB
patch
obsolete
>Index: MOVED >=================================================================== >--- MOVED >+++ MOVED >@@ -9246,3 +9246,9 @@ > www/py-cactus||2017-04-19|Removed, depends on expired Django version > devel/py-django16-tastypie-mongoengine|devel/py-django-tastypie-mongoengine|2017-04-19|Removed, uses expired Django version > devel/freeocl|lang/pocl|2017-04-19|Has expired: Unfetchable for more than six months (google code has gone away); use lang/pocl instead >+graphics/dri|graphics/mesa-dri|2017-04-20|Renamed for clarity and consistency with graphics/mesa-libs >+graphics/gbm|graphics/mesa-libs|2017-04-20|Mesa libraries were merged into one port >+graphics/libglapi|graphics/mesa-libs|2017-04-20|Mesa libraries were merged into one port >+graphics/libglesv2|graphics/mesa-libs|2017-04-20|Mesa libraries were merged into one port >+graphics/libEGL|graphics/mesa-libs|2017-04-20|Mesa libraries were merged into one port >+graphics/libGL|graphics/mesa-libs|2017-04-20|Mesa libraries were merged into one port >Index: Mk/Scripts/qa.sh >=================================================================== >--- Mk/Scripts/qa.sh >+++ Mk/Scripts/qa.sh >@@ -537,13 +537,13 @@ > elif echo ${pkg} | grep -E '/sdl2_(gfx|image|mixer|net|ttf)$' > /dev/null; then > warn "you need USE_SDL+=$(echo ${pkg} | sed -E 's|.*/sdl2_||')2" > # gl-related >- elif [ ${pkg} = 'graphics/libGL' ]; then >+ elif expr ${lib_file} : "${LOCALBASE}/lib/libGL.so.*$" > /dev/null; then > warn "you need USE_GL+=gl" >- elif [ ${pkg} = 'graphics/gbm' ]; then >+ elif expr ${lib_file} : "${LOCALBASE}/lib/libgbm.so.*$" > /dev/null; then > warn "you need USE_GL+=gbm" >- elif [ ${pkg} = 'graphics/libglesv2' ]; then >+ elif expr ${lib_file} : "${LOCALBASE}/lib/libGLESv2.so.*$" > /dev/null; then > warn "you need USE_GL+=glesv2" >- elif [ ${pkg} = 'graphics/libEGL' ]; then >+ elif expr ${lib_file} : "${LOCALBASE}/lib/libEGL.so.*$" > /dev/null; then > warn "you need USE_GL+=egl" > elif [ ${pkg} = 'graphics/glew' ]; then > warn "you need USE_GL+=glew" >Index: Mk/bsd.port.mk >=================================================================== >--- Mk/bsd.port.mk >+++ Mk/bsd.port.mk >@@ -1768,20 +1768,19 @@ > > PKG_IGNORE_DEPENDS?= 'this_port_does_not_exist' > >-_GL_gbm_LIB_DEPENDS= libgbm.so:graphics/gbm >-_GL_glesv2_BUILD_DEPENDS= libglesv2>0:graphics/libglesv2 >-_GL_glesv2_RUN_DEPENDS= libglesv2>0:graphics/libglesv2 >-_GL_egl_BUILD_DEPENDS= libEGL>0:graphics/libEGL >-_GL_egl_RUN_DEPENDS= libEGL>0:graphics/libEGL >-_GL_gl_BUILD_DEPENDS= libGL>0:graphics/libGL >-_GL_gl_RUN_DEPENDS= libGL>0:graphics/libGL >-_GL_gl_USE_XORG= glproto dri2proto >+_GL_gbm_LIB_DEPENDS= libgbm.so:graphics/mesa-libs >+_GL_glesv2_BUILD_DEPENDS= ${LOCALBASE}/lib/libGLESv2.so:graphics/mesa-libs >+_GL_glesv2_RUN_DEPENDS= ${LOCALBASE}/lib/libGLESv2.so:graphics/mesa-libs >+_GL_egl_BUILD_DEPENDS= ${LOCALBASE}/lib/libEGL.so:graphics/mesa-libs >+_GL_egl_RUN_DEPENDS= ${LOCALBASE}/lib/libEGL.so:graphics/mesa-libs >+_GL_gl_BUILD_DEPENDS= ${LOCALBASE}/lib/libGL.so:graphics/mesa-libs >+_GL_gl_RUN_DEPENDS= ${LOCALBASE}/lib/libGL.so:graphics/mesa-libs >+_GL_gl_USE_XORG= glproto dri2proto dri3proto > _GL_glew_LIB_DEPENDS= libGLEW.so:graphics/glew > _GL_glu_LIB_DEPENDS= libGLU.so:graphics/libGLU >-_GL_glu_USE_XORG= glproto dri2proto >+_GL_glu_USE_XORG= glproto dri2proto dri3proto > _GL_glw_LIB_DEPENDS= libGLw.so:graphics/libGLw > _GL_glut_LIB_DEPENDS= libglut.so:graphics/freeglut >- > .if defined(USE_GL) > . if ${USE_GL:tl} == "yes" > USE_GL= glu >Index: Mk/bsd.xorg.mk >=================================================================== >--- Mk/bsd.xorg.mk >+++ Mk/bsd.xorg.mk >@@ -97,7 +97,7 @@ > CONFIGURE_ARGS+= --with-xkb-path=${LOCALBASE}/share/X11/xkb \ > --with-fontrootdir=${LOCALBASE}/share/fonts > >-LIB_PC_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/dri >+LIB_PC_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri > USE_XORG+= fontutil:build > . endif > >Index: emulators/i386-wine-devel/Makefile.i386 >=================================================================== >--- emulators/i386-wine-devel/Makefile.i386 >+++ emulators/i386-wine-devel/Makefile.i386 >@@ -12,7 +12,7 @@ > PKGINSTALL= ${SLAVEDIR}/files/pkg-install > PKGDEINSTALL= ${PKGINSTALL} > >-RUN_DEPENDS= dri>0:graphics/dri >+RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri > > CONFLICTS_INSTALL?= wine-[0-9]* wine-staging-[0-9]* wine-devel-[0-9]* \ > i386-wine-[0-9]* i386-wine-staging-[0-9]* >Index: emulators/i386-wine/Makefile.i386 >=================================================================== >--- emulators/i386-wine/Makefile.i386 >+++ emulators/i386-wine/Makefile.i386 >@@ -12,7 +12,7 @@ > PKGINSTALL= ${SLAVEDIR}/files/pkg-install > PKGDEINSTALL= ${PKGINSTALL} > >-RUN_DEPENDS= dri>0:graphics/dri >+RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri > > CONFLICTS_INSTALL?= wine-[0-9]* wine-staging-[0-9]* wine-devel-[0-9]* \ > i386-wine-staging-[0-9]* i386-wine-devel-[0-9]* >Index: graphics/Makefile >=================================================================== >--- graphics/Makefile >+++ graphics/Makefile >@@ -144,7 +144,6 @@ > SUBDIR += djview4-qt4 > SUBDIR += djvulibre > SUBDIR += dmtx-utils >- SUBDIR += dri > SUBDIR += driconf > SUBDIR += dspdfviewer > SUBDIR += duhdraw >@@ -214,7 +213,6 @@ > SUBDIR += fyre > SUBDIR += g2 > SUBDIR += gauche-gl >- SUBDIR += gbm > SUBDIR += gcolor > SUBDIR += gcolor2 > SUBDIR += gd >@@ -469,8 +467,6 @@ > SUBDIR += leptonica > SUBDIR += lfview > SUBDIR += lib3ds >- SUBDIR += libEGL >- SUBDIR += libGL > SUBDIR += libGLU > SUBDIR += libGLw > SUBDIR += libafterimage >@@ -493,8 +489,6 @@ > SUBDIR += libgaiagraphics > SUBDIR += libgeotiff > SUBDIR += libgfx >- SUBDIR += libglapi >- SUBDIR += libglesv2 > SUBDIR += libgltext > SUBDIR += libgltf > SUBDIR += libgnomecanvas >@@ -588,6 +582,8 @@ > SUBDIR += mapyrus > SUBDIR += megapov > SUBDIR += mesa-demos >+ SUBDIR += mesa-dri >+ SUBDIR += mesa-libs > SUBDIR += meshviewer > SUBDIR += metacam > SUBDIR += metapixel >Index: graphics/copperspice/Makefile >=================================================================== >--- graphics/copperspice/Makefile >+++ graphics/copperspice/Makefile >@@ -3,7 +3,7 @@ > > PORTNAME= copperspice > PORTVERSION= 1.3.2 >-PORTREVISION= 1 >+PORTREVISION= 2 > CATEGORIES= graphics > MASTER_SITES= http://download.copperspice.com/copperspice/source/ > >@@ -17,7 +17,6 @@ > libexpat.so:textproc/expat2 \ > libffi.so:devel/libffi \ > libfreetype.so:print/freetype2 \ >- libglapi.so:graphics/libglapi \ > libgstbase-0.10.so:multimedia/gstreamer \ > libgstreamer-0.10.so:multimedia/gstreamer \ > libpcre.so:devel/pcre \ >Index: graphics/dri/Makefile >=================================================================== >--- graphics/dri/Makefile >+++ /dev/null >@@ -1,46 +0,0 @@ >-# Created by: Eric Anholt <anholt@FreeBSD.org> >-# $FreeBSD$ >- >-PORTNAME= dri >-PORTVERSION= ${MESAVERSION} >-PORTEPOCH= 2 >-CATEGORIES= graphics >- >-COMMENT= OpenGL hardware acceleration drivers for the DRI >- >-LIB_DEPENDS= libdrm.so:graphics/libdrm \ >- libexpat.so:textproc/expat2 >- >-USE_XORG= dri2proto dri3proto glproto presentproto x11 xdamage xext \ >- xfixes xshmfence xv xvmc xxf86vm >- >-OPTIONS_DEFINE= TEXTURE VAAPI VDPAU >-OPTIONS_DEFAULT=TEXTURE >-OPTIONS_SUB= yes >- >-TEXTURE_DESC= Enable texture-float support (patent encumbered) >-TEXTURE_CONFIGURE_ENABLE= texture-float >- >-VAAPI_CONFIGURE_ENABLE= va >-VAAPI_LIB_DEPENDS= libva.so:multimedia/libva >-VAAPI_USE= XORG=xcb >- >-VDPAU_CONFIGURE_ENABLE= vdpau >-VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau >- >-PKGHELP= ${.CURDIR}/pkg-help >- >-.include <bsd.port.options.mk> >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-#src/mesa/libmesagallium.la >-#MESA_BUILD_WRKSRC= src/util src/gallium >-#MESA_INSTALL_WRKSRC= src/gallium >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >- >-post-install: >- @${RM} -r ${STAGEDIR}/etc/OpenCL >- >-.include <bsd.port.mk> >Index: graphics/dri/pkg-descr >=================================================================== >--- graphics/dri/pkg-descr >+++ /dev/null >@@ -1,5 +0,0 @@ >-This package contains the current stable release of the client drivers for the >-DRI. With an X Server configured for the DRI they allow direct rendering of >-hardware-accelerated OpenGL. >- >-WWW: http://dri.sourceforge.net/ >Index: graphics/dri/pkg-help >=================================================================== >--- graphics/dri/pkg-help >+++ /dev/null >@@ -1,15 +0,0 @@ >-VAAPI and VDPAU options enable building Gallium based VA-API and VDPAU >-drivers to decode video on the GPU via libva and libvdpau, respectively. >-Gallium based VAAPI and VDPAU drivers are only available for Radeon GPUs. >- >-Both GPU decode options require newer drm drivers than are currently present >-in a released FreeBSD kernel. These are options for DRM-next and DragonFly. >- >-The TEXTURE option enables texture-float support, which SGI claims requires >-US Patent #6,650,327 [1], filed Jun 16, 1998 thus expiring on Jun 16, 2018. >-Use may require a license depending on jurisdiction, consult a lawyer. >- >-See docs/patents.txt in the Mesa tarball or the following URLs: >- >-[1] https://www.google.com/patents/US6650327 >-[2] http://www.opengl.org/registry/specs/ARB/texture_float.txt >Index: graphics/dri/pkg-plist >=================================================================== >--- graphics/dri/pkg-plist >+++ /dev/null >@@ -1,89 +0,0 @@ >-etc/drirc >-@comment include/EGL/egl.h >-@comment include/EGL/eglext.h >-@comment include/EGL/eglextchromium.h >-@comment include/EGL/eglmesaext.h >-@comment include/EGL/eglplatform.h >-@comment include/GL/gl.h >-@comment include/GL/gl_mangle.h >-@comment include/GL/glcorearb.h >-@comment include/GL/glext.h >-@comment include/GL/glx.h >-@comment include/GL/glx_mangle.h >-@comment include/GL/glxext.h >-include/GL/internal/dri_interface.h >-@comment include/GL/osmesa.h >-@comment include/GLES2/gl2.h >-@comment include/GLES2/gl2ext.h >-@comment include/GLES2/gl2platform.h >-@comment include/GLES3/gl3.h >-@comment include/GLES3/gl31.h >-@comment include/GLES3/gl32.h >-@comment include/GLES3/gl3ext.h >-@comment include/GLES3/gl3platform.h >-@comment include/KHR/khrplatform.h >-@comment include/gbm.h >-%%I915_DRIVER%%lib/dri/i915_dri.so >-%%I965_DRIVER%%lib/dri/i965_dri.so >-%%SWRAST_GDRIVER%%lib/dri/kms_swrast_dri.so >-%%R200_DRIVER%%lib/dri/r200_dri.so >-%%R300_GDRIVER%%lib/dri/r300_dri.so >-%%R600_GDRIVER%%lib/dri/r600_dri.so >-%%VAAPI%%%%R600_GDRIVER%%lib/dri/r600_drv_video.so >-%%RADEON_DRIVER%%lib/dri/radeon_dri.so >-%%RADEONSI_GDRIVER%%lib/dri/radeonsi_dri.so >-%%VAAPI%%%%RADEONSI_GDRIVER%%lib/dri/radeonsi_drv_video.so >-%%SWRAST_DRIVER%%lib/dri/swrast_dri.so >-%%SVGA_GDRIVER%%lib/dri/vmwgfx_dri.so >-@comment lib/gallium-pipe/pipe_r300.so >-@comment lib/gallium-pipe/pipe_r600.so >-@comment lib/gallium-pipe/pipe_radeonsi.so >-@comment lib/gallium-pipe/pipe_swrast.so >-@comment lib/gallium-pipe/pipe_vmwgfx.so >-@comment lib/libEGL.so >-@comment lib/libEGL.so.1 >-@comment lib/libEGL.so.1.0.0 >-@comment lib/libGL.so >-@comment lib/libGL.so.1 >-@comment lib/libGL.so.1.2.0 >-@comment lib/libGLESv2.so >-@comment lib/libGLESv2.so.2 >-@comment lib/libGLESv2.so.2.0.0 >-@comment lib/libMesaOpenCL.so >-@comment lib/libMesaOpenCL.so.1 >-@comment lib/libMesaOpenCL.so.1.0.0 >-@comment lib/libOSMesa.so >-@comment lib/libOSMesa.so.8 >-@comment lib/libOSMesa.so.8.0.0 >-%%R600_GDRIVER%%lib/libXvMCr600.so >-%%R600_GDRIVER%%lib/libXvMCr600.so.1 >-%%R600_GDRIVER%%lib/libXvMCr600.so.1.0 >-%%R600_GDRIVER%%lib/libXvMCr600.so.1.0.0 >-@comment lib/libgbm.so >-@comment lib/libgbm.so.1 >-@comment lib/libgbm.so.1.0.0 >-@comment lib/libglapi.so >-@comment lib/libglapi.so.0 >-@comment lib/libglapi.so.0.0.0 >-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so >-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1 >-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1.0 >-%%VDPAU%%%%R300_GDRIVER%%lib/vdpau/libvdpau_r300.so.1.0.0 >-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so >-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1 >-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1.0 >-%%VDPAU%%%%R600_GDRIVER%%lib/vdpau/libvdpau_r600.so.1.0.0 >-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so >-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1 >-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1.0 >-%%VDPAU%%%%RADEONSI_GDRIVER%%lib/vdpau/libvdpau_radeonsi.so.1.0.0 >-@comment lib/libwayland-egl.so >-@comment lib/libwayland-egl.so.1 >-@comment lib/libwayland-egl.so.1.0.0 >-libdata/pkgconfig/dri.pc >-@comment libdata/pkgconfig/egl.pc >-@comment libdata/pkgconfig/gbm.pc >-@comment libdata/pkgconfig/gl.pc >-@comment libdata/pkgconfig/glesv2.pc >-@comment libdata/pkgconfig/osmesa.pc >-@comment libdata/pkgconfig/wayland-egl.pc >Index: graphics/gbm/Makefile >=================================================================== >--- graphics/gbm/Makefile >+++ /dev/null >@@ -1,30 +0,0 @@ >-# Created by: kwm@FreeBSD.org >-# $FreeBSD$ >- >-PORTNAME= gbm >-PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 >-CATEGORIES= graphics >- >-COMMENT= gbm library >- >-BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs >-LIB_DEPENDS+= libexpat.so:textproc/expat2 \ >- libdrm.so:graphics/libdrm \ >- libglapi.so:graphics/libglapi >- >-USE_XORG= x11 xau xcb xdmcp >- >-# stuff not needed by gbm but configure wants it >-USE_XORG+= dri2proto dri3proto glproto presentproto xdamage xext xfixes \ >- xshmfence >- >-.include <bsd.port.options.mk> >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-MESA_BUILD_WRKSRC= src/mapi src/gbm >-MESA_INSTALL_WRKSRC= src/gbm >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >- >-.include <bsd.port.mk> >Index: graphics/gbm/pkg-descr >=================================================================== >--- graphics/gbm/pkg-descr >+++ /dev/null >@@ -1,3 +0,0 @@ >-This package contains the gbm utility library. >- >-WWW: http://mesa3d.org/ >Index: graphics/gbm/pkg-plist >=================================================================== >--- graphics/gbm/pkg-plist >+++ /dev/null >@@ -1,5 +0,0 @@ >-include/gbm.h >-lib/libgbm.so >-lib/libgbm.so.1 >-lib/libgbm.so.1.0.0 >-libdata/pkgconfig/gbm.pc >Index: graphics/libEGL/Makefile >=================================================================== >--- graphics/libEGL/Makefile >+++ /dev/null >@@ -1,30 +0,0 @@ >-# Created by: kwm@FreeBSD.org >-# $FreeBSD$ >- >-PORTNAME= libEGL >-PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 >-CATEGORIES= graphics >- >-COMMENT= OpenEGL library >- >-BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs >-LIB_DEPENDS+= libexpat.so:textproc/expat2 \ >- libdrm.so:graphics/libdrm >- >-USE_GL= gbm >-USE_XORG= x11 xau xcb xdmcp >- >-# stuff not needed by libEGL but configure wants it >-USE_XORG+= dri2proto dri3proto glproto presentproto xdamage xext xfixes \ >- xshmfence >- >-.include <bsd.port.options.mk> >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-MESA_BUILD_WRKSRC= src/mapi src/gbm src/egl/ >-MESA_INSTALL_WRKSRC= src/egl >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >- >-.include <bsd.port.mk> >Index: graphics/libEGL/pkg-descr >=================================================================== >--- graphics/libEGL/pkg-descr >+++ /dev/null >@@ -1,3 +0,0 @@ >-This package contains the EGL utility library. >- >-WWW: http://mesa3d.org/ >Index: graphics/libEGL/pkg-plist >=================================================================== >--- graphics/libEGL/pkg-plist >+++ /dev/null >@@ -1,10 +0,0 @@ >-include/EGL/egl.h >-include/EGL/eglext.h >-include/EGL/eglextchromium.h >-include/EGL/eglmesaext.h >-include/EGL/eglplatform.h >-include/KHR/khrplatform.h >-lib/libEGL.so >-lib/libEGL.so.1 >-lib/libEGL.so.1.0.0 >-libdata/pkgconfig/egl.pc >Index: graphics/libGL/Makefile >=================================================================== >--- graphics/libGL/Makefile >+++ /dev/null >@@ -1,30 +0,0 @@ >-# Created by: Eric Anholt <anholt@FreeBSD.org> >-# $FreeBSD$ >- >-PORTNAME= libGL >-PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 >-CATEGORIES= graphics >- >-COMMENT= OpenGL library that renders using GLX or DRI >- >-LIB_DEPENDS+= libdrm.so:graphics/libdrm \ >- libglapi.so:graphics/libglapi \ >- libexpat.so:textproc/expat2 >- >-USE_XORG= dri2proto dri3proto glproto presentproto x11 xcb xdamage xext \ >- xfixes xshmfence xxf86vm >- >-.include <bsd.port.options.mk> >-.include "${.CURDIR}/Makefile.common" >- >-MESA_BUILD_WRKSRC= src/mapi src/glx >-MESA_INSTALL_WRKSRC= src/glx >- >-.include "${.CURDIR}/Makefile.targets" >- >-post-install: >- @cd ${WRKSRC}/src && ${SETENV} DESTDIR=${STAGEDIR} \ >- ${MAKE_CMD} install-pkgconfigDATA install-glHEADERS install-glxHEADERS >- >-.include <bsd.port.mk> >Index: graphics/libGL/Makefile.common >=================================================================== >--- graphics/libGL/Makefile.common >+++ graphics/libGL/Makefile.common >@@ -1,173 +0,0 @@ >-# Makefile.common - shared code between MesaLib ports. >-# >-# !!! Here be dragons !!! (they seem to be everywhere these days) >-# >-# Remember to upgrade the following ports everytime you bump MESAVERSION: >-# >-# - graphics/dri >-# - graphics/gbm >-# - graphics/libEGL >-# - graphics/libGL >-# - graphics/libglapi >-# - graphics/libglesv2 >-# - graphics/libosmesa >-# - lang/clover >-# >-# $FreeBSD$ >- >-MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/} >-MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/} >- >-MESABASEVERSION= 17.0.3 >-# if there is a subversion, don't include the '-' between 7.11-rc2. >-MESASUBVERSION= >- >-MASTER_SITES= https://mesa.freedesktop.org/archive/ \ >- https://mesa.freedesktop.org/archive/${MESABASEVERSION}/ \ >- ftp://ftp.freedesktop.org/pub/mesa/ \ >- ftp://ftp.freedesktop.org/pub/mesa/${MESABASEVERSION}/ >- >-DISTFILES= mesa-${MESADISTVERSION}${EXTRACT_SUFX} >- >-MAINTAINER= x11@FreeBSD.org >- >-BUILD_DEPENDS+= makedepend:devel/makedepend >- >-USES+= compiler:c++11-lib bison gettext-tools gmake libtool \ >- localbase pathfix pkgconfig python:2,build shebangfix tar:xz >-USE_LDCONFIG= yes >-GNU_CONFIGURE= yes >- >-PKGINSTALL= ${.CURDIR}/pkg-install >-PKGDEINSTALL= ${.CURDIR}/pkg-deinstall >- >-# only have one port to check with portscout. >-.if ${PORTNAME} != libGL >-PORTSCOUT= ignore:1 >-.endif >- >-python_OLD_CMD= "/usr/bin/env[[:space:]]python" >-python_CMD= ${LOCALBASE}/bin/python2 >-SHEBANG_FILES= src/gallium/*/*/*.py src/gallium/tools/trace/*.py \ >- src/gallium/drivers/svga/svgadump/svga_dump.py \ >- src/mapi/glapi/gen/*.py >-SHEBANG_FILES+= src/mapi/mapi_abi.py >- >-MASTERDIR= ${.CURDIR}/../../graphics/libGL >-PATCHDIR= ${MASTERDIR}/files >-WRKSRC= ${WRKDIR}/mesa-${MESADISTVERSION} >-DESCR= ${.CURDIR}/pkg-descr >-PLIST= ${.CURDIR}/pkg-plist >-INSTALL_TARGET= install-strip >- >-COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//} >- >-.if (${ARCH} != sparc64 && ${ARCH} != ia64) # no working LLVM >-MESA_LLVM_VER?= 40 >-LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${MESA_LLVM_VER}/lib >-.endif >- >-# There are issues that need to be fixed to use TLS model "initial-exec" >-# So stick with "global-dynamic"'s model for now. kan@ is working on a >-# patch for rtld. We might want to backport global-dynamic or >-# pthread_setspecific which it uses now by default. But since this >-# configure switch is going away ... >-# https://lists.freebsd.org/pipermail/freebsd-arch/2016-February/017699.html >-CONFIGURE_ARGS+= --disable-glx-tls >- >-# libEGL, dri and clover need gallium enabled. >-# the third option in --with-egl-platforms is wayland. >-.if (${MESA_LLVM_VER} != "") >-CONFIGURE_ARGS+= --enable-egl --with-egl-platforms=x11,drm >-.else >-CONFIGURE_ARGS+= --disable-egl >-.endif >- >-# we don't care about GLes v1 >-CONFIGURE_ARGS+= --disable-gles1 --enable-gles2 >- >-# Clover (OpenCL). >-.if ${OPSYS} == DragonFly || \ >- (${OPSYS} == FreeBSD && \ >- (${ARCH} == amd64 || ${ARCH} == i386)) >- >-BUILD_DEPENDS+= libclc>=0.2.0.20160915:devel/libclc >- >-# We need the clang port too even if it is not used to compile because >-# Clover needs some of the clang includes to build. >-.if ${COMPONENT:Mdri} != "" || ${COMPONENT:Mclover} != "" || ${COMPONENT:Mosmesa} != "" >-_USES_pre_configure+= 290:clover-pre-configure >- >-# .if !exists() evaluates too early before cairo has a chance to be installed >-clover-pre-configure: >- @if [ -e ${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} ] && \ >- ! [ -e ${LOCALBASE}/bin/clang${MESA_LLVM_VER} ]; then \ >- ${ECHO_MSG} "Your llvm${MESA_LLVM_VER} is not build with clang support, which is required."; \ >- ${FALSE}; \ >- fi >-.endif >- >-CONFIGURE_ARGS+= --enable-opencl --enable-opencl-icd >-.else >-CONFIGURE_ARGS+= --disable-opencl >-.endif >- >-CONFIGURE_ARGS+= --enable-osmesa --enable-xvmc >- >-# gallium >-.if (${MESA_LLVM_VER} != "") >-BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >-.if ${COMPONENT:Mdri} != "" || ${COMPONENT:Mclover} != "" || ${COMPONENT:Megl} != "" >-RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >-.endif >- >-CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} >- >-CONFIGURE_ARGS+= --enable-gallium-llvm --enable-llvm-shared-libs >-.else >-CONFIGURE_ARGS+= --disable-gallium-llvm >-.endif >- >-ALL_DRI_DRIVERS= I915 I965 RADEON R200 SWRAST >-ALL_GALLIUM_DRIVERS= R300 R600 RADEONSI SVGA SWRAST >- >-.if ${ARCH} == amd64 || ${ARCH} == i386 >-DRI_DRIVERS= I915 I965 RADEON R200 >-GALLIUM_DRIVERS= R300 R600 RADEONSI SVGA >-.endif >- >-.if ${ARCH} == powerpc || ${ARCH} == powerpc64 >-DRI_DRIVERS= RADEON R200 >-GALLIUM_DRIVERS= R300 R600 RADEONSI >-.endif >- >-# software rendering for all arches >-DRI_DRIVERS+= SWRAST >-GALLIUM_DRIVERS+= SWRAST >- >-.for _d in ${ALL_DRI_DRIVERS} >-. if ${DRI_DRIVERS:M${_d}} >-PLIST_SUB+= ${_d}_DRIVER="" >-. else >-PLIST_SUB+= ${_d}_DRIVER="@comment " >-. endif >-.endfor >- >-CONFIGURE_ARGS+=--with-dri-drivers="${DRI_DRIVERS:tl}" >- >-.for _gd in ${ALL_GALLIUM_DRIVERS} >-. if ${GALLIUM_DRIVERS:M${_gd}} >-PLIST_SUB+= ${_gd}_GDRIVER="" >-. else >-PLIST_SUB+= ${_gd}_GDRIVER="@comment " >-. endif >-.endfor >- >-.if (${MESA_LLVM_VER} != "") >-CONFIGURE_ARGS+=--with-gallium-drivers="${GALLIUM_DRIVERS:tl}" >-.endif >- >-.if ${OPSYS} == DragonFly >-LIB_DEPENDS+= libelf.so:devel/libelf >-.endif >- >Index: graphics/libGL/Makefile.targets >=================================================================== >--- graphics/libGL/Makefile.targets >+++ graphics/libGL/Makefile.targets >@@ -1,55 +0,0 @@ >-# $FreeBSD$ >-# >-# this file holds common targets >- >-post-patch: >-.if ${OPSYS} == FreeBSD >- @${REINPLACE_CMD} -e 's|x86_64|amd64|' \ >- ${WRKSRC}/configure >-# Clang 3.4 in 10.x on i386 fails with the following error when using "GCC atomics" >-# >-# glsl/cache.c:613:4: error: cannot compile this atomic library call yet >-# p_atomic_add(cache->size, size); note: expanded from macro 'p_atomic_add' >-# define p_atomic_add(v, i) (void) __atomic_add_fetch((v), (i), __ATOMIC_ACQ_REL) >-# >-.if ${OSVERSION} < 1100000 && ${ARCH} == "i386" >- @${REINPLACE_CMD} -e 's|-DUSE_GCC_ATOMIC_BUILTINS||' ${WRKSRC}/configure >-.endif >-.else # ${OPSYS} == DragonFly >-# Sed on dragonfly doesn't support \< or \> >- @${REINPLACE_CMD} -e 's|\\>//|[[:>:]]//|' \ >- ${WRKSRC}/configure >-.endif # ${OPSYS} >- @${REINPLACE_CMD} -e 's|/etc/|${PREFIX}/etc/|g' \ >- ${WRKSRC}/src/mesa/drivers/dri/common/xmlconfig.c >- @${REINPLACE_CMD} -e 's|#!/use/bin/python|#!${PYTHON_CMD}|g' \ >- ${WRKSRC}/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py >- @${REINPLACE_CMD} -e 's|!/use/bin/python2|!${PYTHON_CMD}|g' \ >- ${WRKSRC}/src/mesa/main/get_hash_generator.py \ >- ${WRKSRC}/src/mapi/glapi/gen/gl_enums.py \ >- ${WRKSRC}/src/mapi/glapi/gen/gl_table.py >- >-pre-build: mesa-pre-build >- >-#custom targets so we can build parts of Mesa >-mesa-pre-build: >-# do propper gmake target. >- @cd ${WRKSRC}/src/mesa/drivers/dri/common/ && ${MAKE_CMD} >- @cd ${WRKSRC}/src/loader && ${MAKE_CMD} >-# libloader.la >- >-.if defined(MESA_BUILD_WRKSRC) >-do-build: >-. for dir in ${MESA_BUILD_WRKSRC} >- (cd ${WRKSRC}/${dir}; ${DO_MAKE_BUILD} ${ALL_TARGET};) >-. endfor >-.endif >- >-.if defined(MESA_INSTALL_WRKSRC) >-do-install: >-. for dir in ${MESA_INSTALL_WRKSRC} >- (cd ${WRKSRC}/${dir} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ >- ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}) >-. endfor >-.endif >- >Index: graphics/libGL/distinfo >=================================================================== >--- graphics/libGL/distinfo >+++ graphics/libGL/distinfo >@@ -1,3 +0,0 @@ >-TIMESTAMP = 1491068637 >-SHA256 (mesa-17.0.3.tar.xz) = ca646f5075a002d60ef9123c8a4331cede155c01712ef945a65c59a5e69fe7ed >-SIZE (mesa-17.0.3.tar.xz) = 9485792 >Index: graphics/libGL/files/configure.ac >=================================================================== >--- graphics/libGL/files/configure.ac >+++ /dev/null >@@ -1,78 +0,0 @@ >---- configure.ac.orig 2017-04-01 15:33:36 UTC >-+++ configure.ac >-@@ -943,18 +943,19 @@ llvm_add_target() { >- # $1 is the llvm-config command with arguments. >- strip_unwanted_llvm_flags() { >- # Use \> (marks the end of the word) >-- echo " `$1`" | sed \ >-- -e 's/\s\+-m\S*//g' \ >-- -e 's/\s\+-DNDEBUG\>//g' \ >-- -e 's/\s\+-D_GNU_SOURCE\>//g' \ >-- -e 's/\s\+-pedantic\>//g' \ >-- -e 's/\s\+-W\S*//g' \ >-- -e 's/\s\+-O\S*//g' \ >-- -e 's/\s\+-g\S*//g' \ >-+ echo " `$1`" | sed -E \ >-+ -e 's/[[[:space:]]]+-m[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-DNDEBUG\>//g' \ >-+ -e 's/[[[:space:]]]+-D_GNU_SOURCE\>//g' \ >-+ -e 's/[[[:space:]]]+-pedantic\>//g' \ >-+ -e 's/[[[:space:]]]+-W[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-O[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-g[[^[:space:]]]*//g' \ >- -e 's/-fno-rtti\>/-Fno-rtti/g' \ >-- -e 's/\s\+-f\S*//g' \ >-+ -e 's/[[[:space:]]]+-f[[^[:space:]]]*//g' \ >- -e 's/-Fno-rtti\>/-fno-rtti/g' \ >-- -e 's/^ //' >-+ -e 's/-fno-exceptions\>//g' \ >-+ -e 's/^[[[:space:]]]//' >- } >- >- llvm_set_environment_variables() { >-@@ -1121,7 +1122,7 @@ fi >- AC_SUBST(LIBSENSORS_LIBS) >- >- case "$host_os" in >--linux*) >-+linux* | freebsd*) >- dri3_default=yes >- ;; >- *) >-@@ -1631,7 +1632,7 @@ dnl platform checks. Set DEFINES and LIB >- if test "x$enable_dri" = xyes; then >- # Platform specific settings and drivers to build >- case "$host_os" in >-- linux*) >-+ linux* | freebsd*) >- if test "x$enable_dri3" = xyes; then >- DEFINES="$DEFINES -DHAVE_DRI3" >- fi >-@@ -2002,9 +2003,18 @@ if test "x$enable_opencl" = xyes; then >- AC_MSG_ERROR([cannot enable OpenCL without Gallium]) >- fi >- >-+ if test "x$acv_mesa_CLANG" = xno; then >-+ >-+ GCC_VERSION=`$CC -dumpversion` >-+ if test $? -eq 0; then >-+ GCC_VERSION_MAJOR=`echo $GCC_VERSION | cut -d. -f1` >-+ GCC_VERSION_MINOR=`echo $GCC_VERSION | cut -d. -f2` >-+ fi >-+ >- if test $GCC_VERSION_MAJOR -lt 4 -o $GCC_VERSION_MAJOR -eq 4 -a $GCC_VERSION_MINOR -lt 7; then >- AC_MSG_ERROR([gcc >= 4.7 is required to build clover]) >- fi >-+ fi # end of clang test >- >- if test "x$have_libclc" = xno; then >- AC_MSG_ERROR([pkg-config cannot find libclc.pc which is required to build clover. >-@@ -2061,8 +2071,6 @@ if test "x$enable_opencl" = xyes; then >- CLANG_LIBDIR=${LLVM_LIBDIR} >- fi >- CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} >-- AS_IF([test ! -f "$CLANG_RESOURCE_DIR/include/stddef.h"], >-- [AC_MSG_ERROR([Could not find clang internal header stddef.h in $CLANG_RESOURCE_DIR Use --with-clang-libdir to specify the correct path to the clang libraries.])]) >- fi >- AM_CONDITIONAL(HAVE_CLOVER, test "x$enable_opencl" = xyes) >- AM_CONDITIONAL(HAVE_CLOVER_ICD, test "x$enable_opencl_icd" = xyes) >Index: graphics/libGL/files/patch-configure >=================================================================== >--- graphics/libGL/files/patch-configure >+++ /dev/null >@@ -1,80 +0,0 @@ >---- configure.orig 2017-04-01 15:33:50 UTC >-+++ configure >-@@ -22351,18 +22351,19 @@ llvm_add_target() { >- # $1 is the llvm-config command with arguments. >- strip_unwanted_llvm_flags() { >- # Use \> (marks the end of the word) >-- echo " `$1`" | sed \ >-- -e 's/\s\+-m\S*//g' \ >-- -e 's/\s\+-DNDEBUG\>//g' \ >-- -e 's/\s\+-D_GNU_SOURCE\>//g' \ >-- -e 's/\s\+-pedantic\>//g' \ >-- -e 's/\s\+-W\S*//g' \ >-- -e 's/\s\+-O\S*//g' \ >-- -e 's/\s\+-g\S*//g' \ >-+ echo " `$1`" | sed -E \ >-+ -e 's/[[[:space:]]]+-m[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-DNDEBUG\>//g' \ >-+ -e 's/[[[:space:]]]+-D_GNU_SOURCE\>//g' \ >-+ -e 's/[[[:space:]]]+-pedantic\>//g' \ >-+ -e 's/[[[:space:]]]+-W[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-O[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-g[[^[:space:]]]*//g' \ >- -e 's/-fno-rtti\>/-Fno-rtti/g' \ >-- -e 's/\s\+-f\S*//g' \ >-+ -e 's/[[[:space:]]]+-f[[^[:space:]]]*//g' \ >- -e 's/-Fno-rtti\>/-fno-rtti/g' \ >-- -e 's/^ //' >-+ -e 's/-fno-exceptions\>//g' \ >-+ -e 's/^[[[:space:]]]//' >- } >- >- llvm_set_environment_variables() { >-@@ -22560,7 +22561,7 @@ fi >- >- >- case "$host_os" in >--linux*) >-+linux* | freebsd*) >- dri3_default=yes >- ;; >- *) >-@@ -24099,7 +24100,7 @@ fi >- if test "x$enable_dri" = xyes; then >- # Platform specific settings and drivers to build >- case "$host_os" in >-- linux*) >-+ linux* | freebsd*) >- if test "x$enable_dri3" = xyes; then >- DEFINES="$DEFINES -DHAVE_DRI3" >- fi >-@@ -25851,9 +25852,19 @@ if test "x$enable_opencl" = xyes; then >- as_fn_error $? "cannot enable OpenCL without Gallium" "$LINENO" 5 >- fi >- >-+ if test "x$acv_mesa_CLANG" = xno; then >-+ >-+ GCC_VERSION=`$CC -dumpversion` >-+ if test $? -eq 0; then >-+ GCC_VERSION_MAJOR=`echo $GCC_VERSION | cut -d. -f1` >-+ GCC_VERSION_MINOR=`echo $GCC_VERSION | cut -d. -f2` >-+ fi >-+ >- if test $GCC_VERSION_MAJOR -lt 4 -o $GCC_VERSION_MAJOR -eq 4 -a $GCC_VERSION_MINOR -lt 7; then >- as_fn_error $? "gcc >= 4.7 is required to build clover" "$LINENO" 5 >- fi >-+# end of clang test. >-+ fi >- >- if test "x$have_libclc" = xno; then >- as_fn_error $? "pkg-config cannot find libclc.pc which is required to build clover. >-@@ -25916,9 +25927,6 @@ rm -f core conftest.err conftest.$ac_obj >- CLANG_LIBDIR=${LLVM_LIBDIR} >- fi >- CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} >-- if test ! -f "$CLANG_RESOURCE_DIR/include/stddef.h"; then : >-- as_fn_error $? "Could not find clang internal header stddef.h in $CLANG_RESOURCE_DIR Use --with-clang-libdir to specify the correct path to the clang libraries." "$LINENO" 5 >--fi >- fi >- if test "x$enable_opencl" = xyes; then >- HAVE_CLOVER_TRUE= >Index: graphics/libGL/files/patch-include_GL_internal_dri__interface.h >=================================================================== >--- graphics/libGL/files/patch-include_GL_internal_dri__interface.h >+++ /dev/null >@@ -1,19 +0,0 @@ >-GCC on 9.x doesn't allow types to be overwritten, these types are defined >-in drm.h also, which causes build issues in xorg-server. >- >---- include/GL/internal/dri_interface.h.orig 2016-11-10 22:05:17 UTC >-+++ include/GL/internal/dri_interface.h >-@@ -40,13 +40,7 @@ >- #ifndef DRI_INTERFACE_H >- #define DRI_INTERFACE_H >- >--#ifdef HAVE_LIBDRM >- #include <drm.h> >--#else >--typedef unsigned int drm_context_t; >--typedef unsigned int drm_drawable_t; >--typedef struct drm_clip_rect drm_clip_rect_t; >--#endif >- >- /** >- * \name DRI interface structures >Index: graphics/libGL/files/patch-src_egl_drivers_dri2_platform__x11.c >=================================================================== >--- graphics/libGL/files/patch-src_egl_drivers_dri2_platform__x11.c >+++ /dev/null >@@ -1,16 +0,0 @@ >-# work-around for https://bugs.freedesktop.org/show_bug.cgi?id=100627 >-# >---- src/egl/drivers/dri2/platform_x11.c.orig 2017-04-01 15:33:36 UTC >-+++ src/egl/drivers/dri2/platform_x11.c >-@@ -1507,7 +1507,11 @@ >- >- if (!getenv("LIBGL_ALWAYS_SOFTWARE")) { >- #ifdef HAVE_DRI3 >-+#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !defined (__DRM_NEXT__) >-+ if (getenv("LIBGL_DRI3_ENABLE") && !getenv("LIBGL_DRI3_DISABLE")) >-+#else >- if (!getenv("LIBGL_DRI3_DISABLE")) >-+#endif >- initialized = dri2_initialize_x11_dri3(drv, disp); >- #endif >- >Index: graphics/libGL/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c >=================================================================== >--- graphics/libGL/files/patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c >+++ /dev/null >@@ -1,118 +0,0 @@ >-Revert the following commit. >- >-FreeBSD and DragonFly don't have the required render nodes. >- >-------- >- >-From 69a1b9959e59653da262185c4e2cf57d24939b19 Mon Sep 17 00:00:00 2001 >-From: Emil Velikov <emil.l.velikov@gmail.com> >-Date: Mon, 29 Jun 2015 12:36:45 +0100 >-Subject: pipe-loader: drop support for non-render node devices >- >-Render nodes have been around for quite some time. Removing support via >-the master/primary node allows us to clean up the conditional >-compilation and simplify the build greatly. >- >-For example currently we the pipe-loader, which explicitly links against >-xcb and friends (for X auth) if found at compile-time. That >-would cause problems as one will be forced to use X/xcb, even if it's a >-headless system that is used for opencl. >- >-v2: Clarify the linking topic in the commit message. >- >-Cc: Tom Stellard <thomas.stellard@amd.com> >-Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> >-Reviewed-by: Francisco Jerez <currojerez@riseup.net> >- >- >---- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c.orig 2017-04-01 15:33:37 UTC >-+++ src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c >-@@ -225,6 +225,14 @@ pipe_loader_drm_probe_fd(struct pipe_loa >- } >- >- static int >-+open_drm_minor(int minor) >-+{ >-+ char path[PATH_MAX]; >-+ snprintf(path, sizeof(path), DRM_DEV_NAME, DRM_DIR_NAME, minor); >-+ return open(path, O_RDWR, 0); >-+} >-+ >-+static int >- open_drm_render_node_minor(int minor) >- { >- char path[PATH_MAX]; >-@@ -236,8 +244,15 @@ open_drm_render_node_minor(int minor) >- int >- pipe_loader_drm_probe(struct pipe_loader_device **devs, int ndev) >- { >-- int i, j, fd; >-+ int i, k, fd, num_render_node_devs; >-+ int j = 0; >-+ >-+ struct { >-+ unsigned vendor_id; >-+ unsigned chip_id; >-+ } render_node_devs[DRM_RENDER_NODE_MAX_NODES]; >- >-+ /* Look for render nodes first */ >- for (i = DRM_RENDER_NODE_MIN_MINOR, j = 0; >- i <= DRM_RENDER_NODE_MAX_MINOR; i++) { >- struct pipe_loader_device *dev; >-@@ -251,6 +266,9 @@ pipe_loader_drm_probe(struct pipe_loader >- continue; >- } >- >-+ render_node_devs[j].vendor_id = dev->u.pci.vendor_id; >-+ render_node_devs[j].chip_id = dev->u.pci.chip_id; >-+ >- if (j < ndev) { >- devs[j] = dev; >- } else { >-@@ -260,6 +278,46 @@ pipe_loader_drm_probe(struct pipe_loader >- j++; >- } >- >-+ num_render_node_devs = j; >-+ >-+ /* Next look for drm devices. */ >-+ for (i = 0; i < DRM_MAX_MINOR; i++) { >-+ struct pipe_loader_device *dev; >-+ boolean duplicate = FALSE; >-+ fd = open_drm_minor(i); >-+ if (fd < 0) >-+ continue; >-+ >-+ if (!pipe_loader_drm_probe_fd(&dev, fd)) { >-+ close(fd); >-+ continue; >-+ } >-+ >-+ /* Check to make sure we aren't already accessing this device via >-+ * render nodes. >-+ */ >-+ for (k = 0; k < num_render_node_devs; k++) { >-+ if (dev->u.pci.vendor_id == render_node_devs[k].vendor_id && >-+ dev->u.pci.chip_id == render_node_devs[k].chip_id) { >-+ close(fd); >-+ dev->ops->release(&dev); >-+ duplicate = TRUE; >-+ break; >-+ } >-+ } >-+ >-+ if (duplicate) >-+ continue; >-+ >-+ if (j < ndev) { >-+ devs[j] = dev; >-+ } else { >-+ dev->ops->release(&dev); >-+ } >-+ >-+ j++; >-+ } >-+ >- return j; >- } >- >Index: graphics/libGL/files/patch-src_gallium_auxiliary_util_u__network.c >=================================================================== >--- graphics/libGL/files/patch-src_gallium_auxiliary_util_u__network.c >+++ /dev/null >@@ -1,11 +0,0 @@ >---- src/gallium/auxiliary/util/u_network.c.orig 2016-11-10 22:05:17 UTC >-+++ src/gallium/auxiliary/util/u_network.c >-@@ -6,7 +6,7 @@ >- #if defined(PIPE_SUBSYSTEM_WINDOWS_USER) >- # include <winsock2.h> >- # include <windows.h> >--#elif defined(PIPE_OS_LINUX) || defined(PIPE_OS_HAIKU) || \ >-+#elif defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_HAIKU) || \ >- defined(PIPE_OS_APPLE) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_SOLARIS) >- # include <sys/socket.h> >- # include <netinet/in.h> >Index: graphics/libGL/files/patch-src_gallium_include_pipe_p__config.h >=================================================================== >--- graphics/libGL/files/patch-src_gallium_include_pipe_p__config.h >+++ /dev/null >@@ -1,38 +0,0 @@ >---- src/gallium/include/pipe/p_config.h.orig 2016-11-10 22:05:17 UTC >-+++ src/gallium/include/pipe/p_config.h >-@@ -76,6 +76,13 @@ >- #define PIPE_CC_ICL >- #endif >- >-+#if defined(__sparc__) || defined(__sparc64__) >-+#define PIPE_ARCH_SPARC >-+#if defined(__sparc64__) >-+#define PIPE_ARCH_SPARC_64 >-+#endif >-+#endif >-+ >- >- /* >- * Processor architecture >-@@ -130,7 +137,7 @@ >- >- #if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64) || defined(PIPE_ARCH_ARM) || defined(PIPE_ARCH_AARCH64) >- #define PIPE_ARCH_LITTLE_ENDIAN >--#elif defined(PIPE_ARCH_PPC) || defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) >-+#elif defined(PIPE_ARCH_PPC) || defined(PIPE_ARCH_PPC_64) || defined(PIPE_ARCH_S390) || defined(PIPE_ARCH_SPARC) || defined(PIPE_ARCH_SPARC_64) >- #define PIPE_ARCH_BIG_ENDIAN >- #endif >- >-@@ -159,6 +166,12 @@ >- #define PIPE_OS_ANDROID >- #endif >- >-+#if defined(__DragonFly__) >-+#define PIPE_OS_DRAGONFLY >-+#define PIPE_OS_BSD >-+#define PIPE_OS_UNIX >-+#endif >-+ >- #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) >- #define PIPE_OS_FREEBSD >- #define PIPE_OS_BSD >Index: graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_invocation.cpp >=================================================================== >--- graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_invocation.cpp >+++ /dev/null >@@ -1,30 +0,0 @@ >-# fix errors like the following >-# >-# llvm/invocation.cpp:(.text+0x1275): undefined reference to `std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::c_str() >- const' >-# /usr/bin/ld: ../../../../src/gallium/state_trackers/clover/.libs/libclover.a(libclllvm_la-invocation.o): relocation R_X86_64_PC32 against `_ZNKSt3__112bas >-ic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5c_strEv' can not be used when making a shared object; recompile with -fPIC >-# /usr/bin/ld: final link failed: Bad value >-# >---- src/gallium/state_trackers/clover/llvm/invocation.cpp.orig 2017-04-01 15:33:37 UTC >-+++ src/gallium/state_trackers/clover/llvm/invocation.cpp >-@@ -93,6 +93,8 @@ namespace { >- return ctx; >- } >- >-+ const char* cstr(const std::string& str) { return str.c_str(); } >-+ >- std::unique_ptr<clang::CompilerInstance> >- create_compiler_instance(const target &target, >- const std::vector<std::string> &opts, >-@@ -105,8 +107,8 @@ namespace { >- // Parse the compiler options. A file name should be present at the end >- // and must have the .cl extension in order for the CompilerInvocation >- // class to recognize it as an OpenCL source file. >-- const std::vector<const char *> copts = >-- map(std::mem_fn(&std::string::c_str), opts); >-+ std::vector<const char *> copts; >-+ std::transform(opts.begin(), opts.end(), copts.begin(), cstr); >- >- if (!clang::CompilerInvocation::CreateFromArgs( >- c->getInvocation(), copts.data(), copts.data() + copts.size(), diag)) >Index: graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_metadata.hpp >=================================================================== >--- graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_metadata.hpp >+++ /dev/null >@@ -1,13 +0,0 @@ >-# Fix error: no matching constructor for initialization of 'std::vector<const ::llvm::MDNode *>' >-# >---- src/gallium/state_trackers/clover/llvm/metadata.hpp.orig 2016-11-10 22:05:17 UTC >-+++ src/gallium/state_trackers/clover/llvm/metadata.hpp >-@@ -42,7 +42,7 @@ namespace clover { >- get_kernel_nodes(const ::llvm::Module &mod) { >- if (const ::llvm::NamedMDNode *n = >- mod.getNamedMetadata("opencl.kernels")) >-- return { n->op_begin(), n->op_end() }; >-+ return { n->getOperand(0), n->getOperand(n->getNumOperands()) }; >- else >- return {}; >- } >Index: graphics/libGL/files/patch-src_gallium_state__trackers_clover_util_range.hpp >=================================================================== >--- graphics/libGL/files/patch-src_gallium_state__trackers_clover_util_range.hpp >+++ /dev/null >@@ -1,31 +0,0 @@ >-From b95533b981af9a6687b41418e7cc2a5652fc2bdb Mon Sep 17 00:00:00 2001 >-From: =?UTF-8?q?Jean-S=C3=A9bastien=20P=C3=A9dron?= <dumbbell@FreeBSD.org> >-Date: Fri, 7 Mar 2014 15:16:08 +0100 >-Subject: [PATCH 3/3] Work around for clang 3.4 which fails to build Clover >- >-See: >- https://bugs.freedesktop.org/show_bug.cgi?id=74098#c3 >---- src/gallium/state_trackers/clover/util/range.hpp.orig 2016-11-10 22:05:17 UTC >-+++ src/gallium/state_trackers/clover/util/range.hpp >-@@ -362,6 +362,12 @@ namespace clover { >- return { i, i + n }; >- } >- >-+ namespace detail { >-+ template<typename T> >-+ using fixup_function_type = >-+ typename std::conditional<std::is_function<T>::value, T &, T>::type; >-+ } >-+ >- /// >- /// Create a range by transforming the contents of a number of >- /// source ranges \a rs element-wise using a provided functor \a f. >-@@ -369,7 +375,7 @@ namespace clover { >- /// \sa adaptor_range. >- /// >- template<typename F, typename... Rs> >-- adaptor_range<F, Rs...> >-+ adaptor_range<detail::fixup_function_type<F>, Rs...> >- map(F &&f, Rs &&... rs) { >- return { std::forward<F>(f), std::forward<Rs>(rs)... }; >- } >Index: graphics/libGL/files/patch-src_gallium_winsys_svga_drm_vmw__screen__ioctl.c >=================================================================== >--- graphics/libGL/files/patch-src_gallium_winsys_svga_drm_vmw__screen__ioctl.c >+++ /dev/null >@@ -1,14 +0,0 @@ >---- src/gallium/winsys/svga/drm/vmw_screen_ioctl.c.orig 2016-11-10 22:05:17 UTC >-+++ src/gallium/winsys/svga/drm/vmw_screen_ioctl.c >-@@ -70,6 +70,11 @@ vmw_region_size(struct vmw_region *regio >- return region->size; >- } >- >-+#if defined(__DragonFly__) || defined(__FreeBSD__) || \ >-+ defined(__NetBSD__) || defined(__OpenBSD__) >-+#define ERESTART EINTR >-+#endif >-+ >- uint32 >- vmw_ioctl_context_create(struct vmw_winsys_screen *vws) >- { >Index: graphics/libGL/files/patch-src_glx_glxext.c >=================================================================== >--- graphics/libGL/files/patch-src_glx_glxext.c >+++ /dev/null >@@ -1,16 +0,0 @@ >-# work-around for https://bugs.freedesktop.org/show_bug.cgi?id=100627 >-# >---- src/glx/glxext.c.orig 2017-04-01 15:33:37 UTC >-+++ src/glx/glxext.c >-@@ -906,7 +906,11 @@ __glXInitialize(Display * dpy) >- #if defined(GLX_USE_DRM) >- if (glx_direct && glx_accel) { >- #if defined(HAVE_DRI3) >-+#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !defined (__DRM_NEXT__) >-+ if (getenv("LIBGL_DRI3_ENABLE") && !getenv("LIBGL_DRI3_DISABLE")) >-+#else >- if (!getenv("LIBGL_DRI3_DISABLE")) >-+#endif >- dpyPriv->dri3Display = dri3_create_display(dpy); >- #endif /* HAVE_DRI3 */ >- dpyPriv->dri2Display = dri2CreateDisplay(dpy); >Index: graphics/libGL/files/patch-src_intel_tools_aubinator.c >=================================================================== >--- graphics/libGL/files/patch-src_intel_tools_aubinator.c >+++ /dev/null >@@ -1,14 +0,0 @@ >-# We don't have MAP_NORESERVE so use MAP_NOSYNC | MAP_NOCORE and >-# hope for the best (this alloc is too big but it's only a test) >-# >---- src/intel/tools/aubinator.c.orig 2017-04-01 15:33:37 UTC >-+++ src/intel/tools/aubinator.c >-@@ -1299,7 +1299,7 @@ int main(int argc, char *argv[]) >- /* mmap a terabyte for our gtt space. */ >- gtt_size = 1ull << 40; >- gtt = mmap(NULL, gtt_size, PROT_READ | PROT_WRITE, >-- MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0); >-+ MAP_PRIVATE | MAP_ANONYMOUS | MAP_NOSYNC | MAP_NOCORE, -1, 0); >- if (gtt == MAP_FAILED) { >- fprintf(stderr, "failed to alloc gtt space: %s\n", strerror(errno)); >- exit(EXIT_FAILURE); >Index: graphics/libGL/files/patch-src_mapi_glapi_gen_gl__gentable.py >=================================================================== >--- graphics/libGL/files/patch-src_mapi_glapi_gen_gl__gentable.py >+++ /dev/null >@@ -1,11 +0,0 @@ >---- src/mapi/glapi/gen/gl_gentable.py.orig 2017-01-06 02:14:06 UTC >-+++ src/mapi/glapi/gen/gl_gentable.py >-@@ -44,7 +44,7 @@ header = """/* GLXEXT is the define used >- #endif >- >- #if (defined(GLXEXT) && defined(HAVE_BACKTRACE)) \\ >-- || (!defined(GLXEXT) && defined(DEBUG) && !defined(__CYGWIN__) && !defined(__MINGW32__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__DragonFly__)) >-+ || (!defined(GLXEXT) && defined(DEBUG) && !defined(__CYGWIN__) && !defined(__MINGW32__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__) && !defined(__DragonFly__)) >- #define USE_BACKTRACE >- #endif >- >Index: graphics/libGL/files/patch-src_mesa_main_compiler.h >=================================================================== >--- graphics/libGL/files/patch-src_mesa_main_compiler.h >+++ /dev/null >@@ -1,12 +0,0 @@ >---- src/mesa/main/compiler.h.orig 2016-11-10 22:05:17 UTC >-+++ src/mesa/main/compiler.h >-@@ -56,6 +56,9 @@ extern "C" { >- #if defined(__linux__) >- #include <byteswap.h> >- #define CPU_TO_LE32( x ) bswap_32( x ) >-+#elif defined(__FreeBSD__) >-+#include <sys/endian.h> >-+#define CPU_TO_LE32( x ) bswap32( x ) >- #elif defined(__APPLE__) >- #include <CoreFoundation/CFByteOrder.h> >- #define CPU_TO_LE32( x ) CFSwapInt32HostToLittle( x ) >Index: graphics/libGL/files/patch-src_util_ralloc.c >=================================================================== >--- graphics/libGL/files/patch-src_util_ralloc.c >+++ /dev/null >@@ -1,18 +0,0 @@ >---- src/util/ralloc.c.orig 2017-04-01 15:33:37 UTC >-+++ src/util/ralloc.c >-@@ -338,6 +338,7 @@ ralloc_parent(const void *ptr) >- >- static void *autofree_context = NULL; >- >-+__attribute__((destructor)) >- static void >- autofree(void) >- { >-@@ -349,7 +350,6 @@ ralloc_autofree_context(void) >- { >- if (unlikely(autofree_context == NULL)) { >- autofree_context = ralloc_context(NULL); >-- atexit(autofree); >- } >- return autofree_context; >- } >Index: graphics/libGL/files/patch-src_util_u__endian.h >=================================================================== >--- graphics/libGL/files/patch-src_util_u__endian.h >+++ /dev/null >@@ -1,11 +0,0 @@ >---- src/util/u_endian.h.orig 2016-11-10 22:05:17 UTC >-+++ src/util/u_endian.h >-@@ -54,7 +54,7 @@ >- # define PIPE_ARCH_BIG_ENDIAN >- #endif >- >--#elif defined(__OpenBSD__) || defined(__NetBSD__) >-+#elif defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) >- #include <sys/types.h> >- #include <machine/endian.h> >- >Index: graphics/libGL/pkg-descr >=================================================================== >--- graphics/libGL/pkg-descr >+++ /dev/null >@@ -1,4 +0,0 @@ >-This package contains the OpenGL library, which can perform rendering over GLX >-or using the Direct Rendering Infrastructure. >- >-WWW: http://www.freedesktop.org/Software/xorg >Index: graphics/libGL/pkg-plist >=================================================================== >--- graphics/libGL/pkg-plist >+++ /dev/null >@@ -1,11 +0,0 @@ >-include/GL/gl.h >-include/GL/gl_mangle.h >-include/GL/glcorearb.h >-include/GL/glext.h >-include/GL/glx.h >-include/GL/glx_mangle.h >-include/GL/glxext.h >-lib/libGL.so >-lib/libGL.so.1 >-lib/libGL.so.1.2.0 >-libdata/pkgconfig/gl.pc >Index: graphics/libglapi/Makefile >=================================================================== >--- graphics/libglapi/Makefile >+++ /dev/null >@@ -1,36 +0,0 @@ >-# Created by: kwm@FreeBSD.org >-# $FreeBSD$ >- >-PORTNAME= libglapi >-PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 >-CATEGORIES= graphics >- >-COMMENT= Common GL api library used by Mesa based ports >- >-LICENSE= MIT >- >-BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs >- >-USE_XORG= x11 xau xcb xdmcp xvmc >- >-# stuff not needed by libglapi but configure wants it >-USE_XORG+= dri2proto dri3proto glproto presentproto xdamage xext xfixes \ >- xshmfence >-LIB_DEPENDS+= libexpat.so:textproc/expat2 \ >- libdrm.so:graphics/libdrm >- >-.include <bsd.port.options.mk> >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-MESA_BUILD_WRKSRC= src/mapi >-MESA_INSTALL_WRKSRC= src/mapi >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >- >-post-install: >- @${RM} -r ${STAGEDIR}${PREFIX}/include/GLES* >- @${RM} ${STAGEDIR}${PREFIX}/lib/libGLESv2.so* >- @${RM} ${STAGEDIR}${PREFIX}/libdata/pkgconfig/glesv2.pc >- >-.include <bsd.port.mk> >Index: graphics/libglapi/pkg-descr >=================================================================== >--- graphics/libglapi/pkg-descr >+++ /dev/null >@@ -1,3 +0,0 @@ >-This package contains the GL API utility library. >- >-WWW: http://mesa3d.org/ >Index: graphics/libglapi/pkg-plist >=================================================================== >--- graphics/libglapi/pkg-plist >+++ /dev/null >@@ -1,3 +0,0 @@ >-lib/libglapi.so >-lib/libglapi.so.0 >-lib/libglapi.so.0.0.0 >Index: graphics/libglesv2/Makefile >=================================================================== >--- graphics/libglesv2/Makefile >+++ /dev/null >@@ -1,29 +0,0 @@ >-# Created by: kwm@FreeBSD.org >-# $FreeBSD$ >- >-PORTNAME= libglesv2 >-PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 >-CATEGORIES= graphics >- >-COMMENT= OpenGL ES v2 library >- >-LICENSE= MIT >- >-LIB_DEPENDS+= libdrm.so:graphics/libdrm \ >- libglapi.so:graphics/libglapi \ >- libexpat.so:textproc/expat2 >- >-# stuff not needed by libglesv2 but configure wants it >-USE_XORG+= dri2proto dri3proto glproto presentproto xdamage xext xfixes \ >- xshmfence >- >-.include <bsd.port.options.mk> >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-BUILD_WRKSRC= ${WRKSRC}/src/mapi >-INSTALL_WRKSRC= ${WRKSRC}/src/mapi >- >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >- >-.include <bsd.port.mk> >Index: graphics/libglesv2/pkg-descr >=================================================================== >--- graphics/libglesv2/pkg-descr >+++ /dev/null >@@ -1,3 +0,0 @@ >-This package contains the GL ES v2 utility library. >- >-WWW: http://mesa3d.org/ >Index: graphics/libglesv2/pkg-plist >=================================================================== >--- graphics/libglesv2/pkg-plist >+++ /dev/null >@@ -1,15 +0,0 @@ >-include/GLES2/gl2.h >-include/GLES2/gl2ext.h >-include/GLES2/gl2platform.h >-include/GLES3/gl3.h >-include/GLES3/gl31.h >-include/GLES3/gl32.h >-include/GLES3/gl3ext.h >-include/GLES3/gl3platform.h >-lib/libGLESv2.so >-lib/libGLESv2.so.2 >-lib/libGLESv2.so.2.0.0 >-@comment lib/libglapi.so >-@comment lib/libglapi.so.0 >-@comment lib/libglapi.so.0.0.0 >-libdata/pkgconfig/glesv2.pc >Index: graphics/libosmesa/Makefile >=================================================================== >--- graphics/libosmesa/Makefile >+++ graphics/libosmesa/Makefile >@@ -3,27 +3,32 @@ > > PORTNAME= libosmesa > PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 > CATEGORIES= graphics > > COMMENT= Off-Screen Mesa implementation of the OpenGL API > > LIB_DEPENDS= libexpat.so:textproc/expat2 \ >- libglapi.so:graphics/libglapi >+ libglapi.so:graphics/mesa-libs > >-USE_XORG= dri2proto dri3proto glproto presentproto x11 xau xcb xdmcp xvmc >-# libosmesa doesn't link agains libGL but osmesa.h needs GL/gl.h >-# and both headers are intalled by libGL .... >-USE_GL= gl >+USE_XORG= glproto > > .include <bsd.port.options.mk> >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common" > >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >- >-#MESA_BUILD_WRKSRC= src/util src/glsl src/mesa #/drivers/osmesa >+CONFIGURE_ARGS+= --disable-dri --disable-egl --disable-gbm \ >+ --with-gallium-drivers=swrast >+MESA_BUILD_WRKSRC= src/util src/compiler src/mapi src/mesa >+ >+.if ${MESA_LLVM_VER} != "" >+CONFGIURE_ARGS+= --enable-osmesa-gallium >+MESA_BUILD_WRKSRC+= src/gallium >+MESA_INSTALL_WRKSRC= src/gallium/state_trackers/osmesa src/gallium/targets/osmesa >+.else >+CONFIGURE_ARGS+= --enable-osmesa > MESA_INSTALL_WRKSRC= src/mesa/drivers/osmesa >+.endif > >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets" > > post-install: > @${MKDIR} ${STAGEDIR}${PREFIX}/include/GL >Index: graphics/mesa-dri/Makefile >=================================================================== >--- graphics/mesa-dri/Makefile >+++ graphics/mesa-dri/Makefile >@@ -1,22 +1,23 @@ > # Created by: Eric Anholt <anholt@FreeBSD.org> > # $FreeBSD$ > >-PORTNAME= dri >+PORTNAME= mesa-dri > PORTVERSION= ${MESAVERSION} >-PORTEPOCH= 2 > CATEGORIES= graphics > >-COMMENT= OpenGL hardware acceleration drivers for the DRI >+COMMENT= OpenGL hardware acceleration drivers for DRI2+ > > LIB_DEPENDS= libdrm.so:graphics/libdrm \ > libexpat.so:textproc/expat2 >+RUN_DEPENDS= ${LOCALBASE}/lib/libtxc_dxtn.so:graphics/s2tc > > USE_XORG= dri2proto dri3proto glproto presentproto x11 xdamage xext \ >- xfixes xshmfence xv xvmc xxf86vm >+ xfixes xshmfence xv xvmc > > OPTIONS_DEFINE= TEXTURE VAAPI VDPAU > OPTIONS_DEFAULT=TEXTURE > OPTIONS_SUB= yes >+PKGHELP= ${.CURDIR}/pkg-help > > TEXTURE_DESC= Enable texture-float support (patent encumbered) > TEXTURE_CONFIGURE_ENABLE= texture-float >@@ -28,17 +29,46 @@ > VDPAU_CONFIGURE_ENABLE= vdpau > VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau > >-PKGHELP= ${.CURDIR}/pkg-help >- > .include <bsd.port.options.mk> >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common" > >-.include "${.CURDIR}/../../graphics/libGL/Makefile.common" >+ALL_DRI_DRIVERS= I915 I965 RADEON R200 SWRAST >+ALL_GALLIUM_DRIVERS= FREEDRENO R300 R600 RADEONSI SVGA SWRAST VC4 > >-#src/mesa/libmesagallium.la >-#MESA_BUILD_WRKSRC= src/util src/gallium >-#MESA_INSTALL_WRKSRC= src/gallium >+DRI_DRIVERS= SWRAST >+GALLIUM_DRIVERS= SWRAST >+.if ${ARCH} == amd64 || ${ARCH} == i386 \ >+ || ${ARCH} == powerpc || ${ARCH} == powerpc64 >+DRI_DRIVERS+= RADEON R200 >+GALLIUM_DRIVERS+= R300 R600 RADEONSI >+.elif ${ARCH} == armv6 || ${ARCH} == aarch64 >+GALLIUM_DRIVERS+= FREEDRENO VC4 >+.endif >+.if ${ARCH} == amd64 || ${ARCH} == i386 >+DRI_DRIVERS+= I915 I965 >+GALLIUM_DRIVERS+= SVGA >+.endif >+ >+CONFIGURE_ARGS+= --with-dri-drivers="${DRI_DRIVERS:tl}" \ >+ --with-gallium-drivers="${GALLIUM_DRIVERS:tl}" >+ >+.for _d in ${ALL_DRI_DRIVERS} >+. if ${DRI_DRIVERS:M${_d}} >+PLIST_SUB+= ${_d}_DRIVER="" >+. else >+PLIST_SUB+= ${_d}_DRIVER="@comment " >+. endif >+.endfor >+ >+.for _gd in ${ALL_GALLIUM_DRIVERS} >+. if ${GALLIUM_DRIVERS:M${_gd}} >+PLIST_SUB+= ${_gd}_GDRIVER="" >+. else >+PLIST_SUB+= ${_gd}_GDRIVER="@comment " >+. endif >+.endfor > >-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets" >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets" > > post-install: > @${RM} -r ${STAGEDIR}/etc/OpenCL >Index: graphics/mesa-dri/Makefile.common >=================================================================== >--- graphics/mesa-dri/Makefile.common >+++ graphics/mesa-dri/Makefile.common >@@ -4,21 +4,17 @@ > # > # Remember to upgrade the following ports everytime you bump MESAVERSION: > # >-# - graphics/dri >-# - graphics/gbm >-# - graphics/libEGL >-# - graphics/libGL >-# - graphics/libglapi >-# - graphics/libglesv2 > # - graphics/libosmesa >+# - graphics/mesa-dri >+# - graphics/mesa-libs > # - lang/clover > # >-# $FreeBSD: head/graphics/libGL/Makefile.common 438198 2017-04-10 19:14:48Z rezny $ >+# $FreeBSD: head/graphics/mesa-libs/Makefile.common 438198 2017-04-10 19:14:48Z rezny $ > > MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/} > MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/} > >-MESABASEVERSION= 17.0.3 >+MESABASEVERSION= 17.0.4 > # if there is a subversion, don't include the '-' between 7.11-rc2. > MESASUBVERSION= > >@@ -31,8 +27,6 @@ > > MAINTAINER= x11@FreeBSD.org > >-BUILD_DEPENDS+= makedepend:devel/makedepend >- > USES+= compiler:c++11-lib bison gettext-tools gmake libtool \ > localbase pathfix pkgconfig python:2,build shebangfix tar:xz > USE_LDCONFIG= yes >@@ -42,18 +36,20 @@ > PKGDEINSTALL= ${.CURDIR}/pkg-deinstall > > # only have one port to check with portscout. >-.if ${PORTNAME} != libGL >+.if ${PORTNAME} != mesa-dri > PORTSCOUT= ignore:1 > .endif > >-python_OLD_CMD= "/usr/bin/env[[:space:]]python" >-python_CMD= ${LOCALBASE}/bin/python2 >+python_OLD_CMD= /usr/bin/env[[:space:]]python2 /usr/bin/python2 /bin/env[[:space:]]python > SHEBANG_FILES= src/gallium/*/*/*.py src/gallium/tools/trace/*.py \ > src/gallium/drivers/svga/svgadump/svga_dump.py \ >- src/mapi/glapi/gen/*.py >-SHEBANG_FILES+= src/mapi/mapi_abi.py >+ src/gallium/drivers/freedreno/ir3/ir3_nir_trig.py \ >+ src/mapi/glapi/gen/*.py src/mapi/mapi_abi.py \ >+ src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py \ >+ src/mesa/main/get_*.py src/util/format_srgb.py \ >+ src/amd/*/*.py src/intel/genxml/gen_pack_header.py > >-MASTERDIR= ${.CURDIR}/../../graphics/libGL >+MASTERDIR= ${.CURDIR}/../../graphics/mesa-dri > PATCHDIR= ${MASTERDIR}/files > WRKSRC= ${WRKDIR}/mesa-${MESADISTVERSION} > DESCR= ${.CURDIR}/pkg-descr >@@ -64,7 +60,17 @@ > > .if (${ARCH} != sparc64 && ${ARCH} != ia64) # no working LLVM > MESA_LLVM_VER?= 40 >+.endif >+ >+.if ${MESA_LLVM_VER} != "" >+BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >+RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >+CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} > LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${MESA_LLVM_VER}/lib >+# The gallium-llvm switch is the global llvm switch for historical reasons >+CONFIGURE_ARGS+= --enable-gallium-llvm >+.else >+CONFIGURE_ARGS+= --disable-gallium-llvm > .endif > > # There are issues that need to be fixed to use TLS model "initial-exec" >@@ -75,99 +81,10 @@ > # https://lists.freebsd.org/pipermail/freebsd-arch/2016-February/017699.html > CONFIGURE_ARGS+= --disable-glx-tls > >-# libEGL, dri and clover need gallium enabled. >-# the third option in --with-egl-platforms is wayland. >-.if (${MESA_LLVM_VER} != "") >-CONFIGURE_ARGS+= --enable-egl --with-egl-platforms=x11,drm >-.else >-CONFIGURE_ARGS+= --disable-egl >-.endif >- > # we don't care about GLes v1 >-CONFIGURE_ARGS+= --disable-gles1 --enable-gles2 >- >-# Clover (OpenCL). >-.if ${OPSYS} == DragonFly || \ >- (${OPSYS} == FreeBSD && \ >- (${ARCH} == amd64 || ${ARCH} == i386)) >- >-BUILD_DEPENDS+= libclc>=0.2.0.20160915:devel/libclc >- >-# We need the clang port too even if it is not used to compile because >-# Clover needs some of the clang includes to build. >-.if ${COMPONENT:Mdri} != "" || ${COMPONENT:Mclover} != "" || ${COMPONENT:Mosmesa} != "" >-_USES_pre_configure+= 290:clover-pre-configure >- >-# .if !exists() evaluates too early before cairo has a chance to be installed >-clover-pre-configure: >- @if [ -e ${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} ] && \ >- ! [ -e ${LOCALBASE}/bin/clang${MESA_LLVM_VER} ]; then \ >- ${ECHO_MSG} "Your llvm${MESA_LLVM_VER} is not build with clang support, which is required."; \ >- ${FALSE}; \ >- fi >-.endif >- >-CONFIGURE_ARGS+= --enable-opencl --enable-opencl-icd >-.else >-CONFIGURE_ARGS+= --disable-opencl >-.endif >- >-CONFIGURE_ARGS+= --enable-osmesa --enable-xvmc >- >-# gallium >-.if (${MESA_LLVM_VER} != "") >-BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >-.if ${COMPONENT:Mdri} != "" || ${COMPONENT:Mclover} != "" || ${COMPONENT:Megl} != "" >-RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} >-.endif >- >-CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} >- >-CONFIGURE_ARGS+= --enable-gallium-llvm --enable-llvm-shared-libs >-.else >-CONFIGURE_ARGS+= --disable-gallium-llvm >-.endif >- >-ALL_DRI_DRIVERS= I915 I965 RADEON R200 SWRAST >-ALL_GALLIUM_DRIVERS= R300 R600 RADEONSI SVGA SWRAST >- >-.if ${ARCH} == amd64 || ${ARCH} == i386 >-DRI_DRIVERS= I915 I965 RADEON R200 >-GALLIUM_DRIVERS= R300 R600 RADEONSI SVGA >-.endif >- >-.if ${ARCH} == powerpc || ${ARCH} == powerpc64 >-DRI_DRIVERS= RADEON R200 >-GALLIUM_DRIVERS= R300 R600 RADEONSI >-.endif >- >-# software rendering for all arches >-DRI_DRIVERS+= SWRAST >-GALLIUM_DRIVERS+= SWRAST >- >-.for _d in ${ALL_DRI_DRIVERS} >-. if ${DRI_DRIVERS:M${_d}} >-PLIST_SUB+= ${_d}_DRIVER="" >-. else >-PLIST_SUB+= ${_d}_DRIVER="@comment " >-. endif >-.endfor >- >-CONFIGURE_ARGS+=--with-dri-drivers="${DRI_DRIVERS:tl}" >- >-.for _gd in ${ALL_GALLIUM_DRIVERS} >-. if ${GALLIUM_DRIVERS:M${_gd}} >-PLIST_SUB+= ${_gd}_GDRIVER="" >-. else >-PLIST_SUB+= ${_gd}_GDRIVER="@comment " >-. endif >-.endfor >- >-.if (${MESA_LLVM_VER} != "") >-CONFIGURE_ARGS+=--with-gallium-drivers="${GALLIUM_DRIVERS:tl}" >-.endif >+CONFIGURE_ARGS+= --disable-gles1 > > .if ${OPSYS} == DragonFly >-LIB_DEPENDS+= libelf.so:devel/libelf >+LIB_DEPENDS+= libelf.so:devel/libelf > .endif > >Index: graphics/mesa-dri/Makefile.targets >=================================================================== >--- graphics/mesa-dri/Makefile.targets >+++ graphics/mesa-dri/Makefile.targets >@@ -1,11 +1,10 @@ >-# $FreeBSD: head/graphics/libGL/Makefile.targets 438198 2017-04-10 19:14:48Z rezny $ >+# $FreeBSD: head/graphics/mesa-libs/Makefile.targets 438198 2017-04-10 19:14:48Z rezny $ > # > # this file holds common targets > > post-patch: > .if ${OPSYS} == FreeBSD >- @${REINPLACE_CMD} -e 's|x86_64|amd64|' \ >- ${WRKSRC}/configure >+ @${REINPLACE_CMD} -e 's|x86_64|amd64|' ${WRKSRC}/configure > # Clang 3.4 in 10.x on i386 fails with the following error when using "GCC atomics" > # > # glsl/cache.c:613:4: error: cannot compile this atomic library call yet >@@ -15,25 +14,16 @@ > .if ${OSVERSION} < 1100000 && ${ARCH} == "i386" > @${REINPLACE_CMD} -e 's|-DUSE_GCC_ATOMIC_BUILTINS||' ${WRKSRC}/configure > .endif >-.else # ${OPSYS} == DragonFly >-# Sed on dragonfly doesn't support \< or \> >- @${REINPLACE_CMD} -e 's|\\>//|[[:>:]]//|' \ >- ${WRKSRC}/configure > .endif # ${OPSYS} > @${REINPLACE_CMD} -e 's|/etc/|${PREFIX}/etc/|g' \ > ${WRKSRC}/src/mesa/drivers/dri/common/xmlconfig.c >- @${REINPLACE_CMD} -e 's|#!/use/bin/python|#!${PYTHON_CMD}|g' \ >- ${WRKSRC}/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py >- @${REINPLACE_CMD} -e 's|!/use/bin/python2|!${PYTHON_CMD}|g' \ >- ${WRKSRC}/src/mesa/main/get_hash_generator.py \ >- ${WRKSRC}/src/mapi/glapi/gen/gl_enums.py \ >- ${WRKSRC}/src/mapi/glapi/gen/gl_table.py > > pre-build: mesa-pre-build > > #custom targets so we can build parts of Mesa > mesa-pre-build: > # do propper gmake target. >+ @cd ${WRKSRC}/src && ${MAKE_CMD} git_sha1.h libglsl_util.la > @cd ${WRKSRC}/src/mesa/drivers/dri/common/ && ${MAKE_CMD} > @cd ${WRKSRC}/src/loader && ${MAKE_CMD} > # libloader.la >Index: graphics/mesa-dri/distinfo >=================================================================== >--- graphics/mesa-dri/distinfo >+++ graphics/mesa-dri/distinfo >@@ -1,3 +1,3 @@ >-TIMESTAMP = 1491068637 >-SHA256 (mesa-17.0.3.tar.xz) = ca646f5075a002d60ef9123c8a4331cede155c01712ef945a65c59a5e69fe7ed >-SIZE (mesa-17.0.3.tar.xz) = 9485792 >+TIMESTAMP = 1492459376 >+SHA256 (mesa-17.0.4.tar.xz) = 1269dc8545a193932a0779b2db5bce9be4a5f6813b98c38b93b372be8362a346 >+SIZE (mesa-17.0.4.tar.xz) = 9454976 >Index: graphics/mesa-dri/files/configure.ac >=================================================================== >--- graphics/mesa-dri/files/configure.ac >+++ graphics/mesa-dri/files/configure.ac >@@ -1,54 +1,57 @@ > --- configure.ac.orig 2017-04-01 15:33:36 UTC > +++ configure.ac >-@@ -943,18 +943,19 @@ llvm_add_target() { >+@@ -942,19 +942,19 @@ llvm_add_target() { >+ # Call this inside ` ` to get the return value. > # $1 is the llvm-config command with arguments. > strip_unwanted_llvm_flags() { >- # Use \> (marks the end of the word) >+- # Use \> (marks the end of the word) > - echo " `$1`" | sed \ > - -e 's/\s\+-m\S*//g' \ > - -e 's/\s\+-DNDEBUG\>//g' \ > - -e 's/\s\+-D_GNU_SOURCE\>//g' \ > - -e 's/\s\+-pedantic\>//g' \ > - -e 's/\s\+-W\S*//g' \ > - -e 's/\s\+-O\S*//g' \ > - -e 's/\s\+-g\S*//g' \ >-+ echo " `$1`" | sed -E \ >+- -e 's/-fno-rtti\>/-Fno-rtti/g' \ >+- -e 's/\s\+-f\S*//g' \ >+- -e 's/-Fno-rtti\>/-fno-rtti/g' \ >+- -e 's/^ //' >++ echo " `$1` " | sed -E \ > + -e 's/[[[:space:]]]+-m[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-DNDEBUG\>//g' \ >-+ -e 's/[[[:space:]]]+-D_GNU_SOURCE\>//g' \ >-+ -e 's/[[[:space:]]]+-pedantic\>//g' \ >++ -e 's/[[[:space:]]]+-DNDEBUG[[[:space:]]]/ /g' \ >++ -e 's/[[[:space:]]]+-D_GNU_SOURCE[[[:space:]]]/ /g' \ >++ -e 's/[[[:space:]]]+-pedantic[[[:space:]]]/ /g' \ > + -e 's/[[[:space:]]]+-W[[^[:space:]]]*//g' \ > + -e 's/[[[:space:]]]+-O[[^[:space:]]]*//g' \ > + -e 's/[[[:space:]]]+-g[[^[:space:]]]*//g' \ >- -e 's/-fno-rtti\>/-Fno-rtti/g' \ >-- -e 's/\s\+-f\S*//g' \ >++ -e 's/-fno-rtti[[[:space:]]]/-Fno-rtti /g' \ > + -e 's/[[[:space:]]]+-f[[^[:space:]]]*//g' \ >- -e 's/-Fno-rtti\>/-fno-rtti/g' \ >-- -e 's/^ //' >-+ -e 's/-fno-exceptions\>//g' \ >-+ -e 's/^[[[:space:]]]//' >++ -e 's/-Fno-rtti[[[:space:]]]/-fno-rtti /g' \ >++ -e 's/^[[[:space:]]]//' \ >++ -e 's/[[[:space:]]]$//' > } > > llvm_set_environment_variables() { >-@@ -1121,7 +1122,7 @@ fi >+@@ -1121,7 +1121,7 @@ fi > AC_SUBST(LIBSENSORS_LIBS) > > case "$host_os" in > -linux*) > +linux* | freebsd*) > dri3_default=yes > ;; > *) >-@@ -1631,7 +1632,7 @@ dnl platform checks. Set DEFINES and LIB >+@@ -1631,7 +1631,7 @@ dnl platform checks. Set DEFINES and LIB > if test "x$enable_dri" = xyes; then > # Platform specific settings and drivers to build > case "$host_os" in > - linux*) > + linux* | freebsd*) > if test "x$enable_dri3" = xyes; then > DEFINES="$DEFINES -DHAVE_DRI3" > fi >-@@ -2002,9 +2003,18 @@ if test "x$enable_opencl" = xyes; then >+@@ -2002,9 +2002,18 @@ if test "x$enable_opencl" = xyes; then > AC_MSG_ERROR([cannot enable OpenCL without Gallium]) > fi > >@@ -67,7 +70,7 @@ > > if test "x$have_libclc" = xno; then > AC_MSG_ERROR([pkg-config cannot find libclc.pc which is required to build clover. >-@@ -2061,8 +2071,6 @@ if test "x$enable_opencl" = xyes; then >+@@ -2061,8 +2070,6 @@ if test "x$enable_opencl" = xyes; then > CLANG_LIBDIR=${LLVM_LIBDIR} > fi > CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} >Index: graphics/mesa-dri/files/patch-configure >=================================================================== >--- graphics/mesa-dri/files/patch-configure >+++ graphics/mesa-dri/files/patch-configure >@@ -1,54 +1,57 @@ > --- configure.orig 2017-04-01 15:33:50 UTC > +++ configure >-@@ -22351,18 +22351,19 @@ llvm_add_target() { >+@@ -22350,19 +22350,19 @@ llvm_add_target() { >+ # Call this inside ` ` to get the return value. > # $1 is the llvm-config command with arguments. > strip_unwanted_llvm_flags() { >- # Use \> (marks the end of the word) >+- # Use \> (marks the end of the word) > - echo " `$1`" | sed \ > - -e 's/\s\+-m\S*//g' \ > - -e 's/\s\+-DNDEBUG\>//g' \ > - -e 's/\s\+-D_GNU_SOURCE\>//g' \ > - -e 's/\s\+-pedantic\>//g' \ > - -e 's/\s\+-W\S*//g' \ > - -e 's/\s\+-O\S*//g' \ > - -e 's/\s\+-g\S*//g' \ >-+ echo " `$1`" | sed -E \ >-+ -e 's/[[[:space:]]]+-m[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-DNDEBUG\>//g' \ >-+ -e 's/[[[:space:]]]+-D_GNU_SOURCE\>//g' \ >-+ -e 's/[[[:space:]]]+-pedantic\>//g' \ >-+ -e 's/[[[:space:]]]+-W[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-O[[^[:space:]]]*//g' \ >-+ -e 's/[[[:space:]]]+-g[[^[:space:]]]*//g' \ >- -e 's/-fno-rtti\>/-Fno-rtti/g' \ >+- -e 's/-fno-rtti\>/-Fno-rtti/g' \ > - -e 's/\s\+-f\S*//g' \ >-+ -e 's/[[[:space:]]]+-f[[^[:space:]]]*//g' \ >- -e 's/-Fno-rtti\>/-fno-rtti/g' \ >+- -e 's/-Fno-rtti\>/-fno-rtti/g' \ > - -e 's/^ //' >-+ -e 's/-fno-exceptions\>//g' \ >-+ -e 's/^[[[:space:]]]//' >++ echo " `$1` " | sed -E \ >++ -e 's/[[:space:]]+-m[^[:space:]]*//g' \ >++ -e 's/[[:space:]]+-DNDEBUG[[:space:]]/ /g' \ >++ -e 's/[[:space:]]+-D_GNU_SOURCE[[:space:]]/ /g' \ >++ -e 's/[[:space:]]+-pedantic[[:space:]]/ /g' \ >++ -e 's/[[:space:]]+-W[^[:space:]]*//g' \ >++ -e 's/[[:space:]]+-O[^[:space:]]*//g' \ >++ -e 's/[[:space:]]+-g[^[:space:]]*//g' \ >++ -e 's/-fno-rtti[[:space:]]/-Fno-rtti /g' \ >++ -e 's/[[:space:]]+-f[^[:space:]]*//g' \ >++ -e 's/-Fno-rtti[[:space:]]/-fno-rtti /g' \ >++ -e 's/^[[:space:]]//' \ >++ -e 's/[[:space:]]$//' > } > > llvm_set_environment_variables() { >-@@ -22560,7 +22561,7 @@ fi >+@@ -22560,7 +22560,7 @@ fi > > > case "$host_os" in > -linux*) > +linux* | freebsd*) > dri3_default=yes > ;; > *) >-@@ -24099,7 +24100,7 @@ fi >+@@ -24099,7 +24099,7 @@ fi > if test "x$enable_dri" = xyes; then > # Platform specific settings and drivers to build > case "$host_os" in > - linux*) > + linux* | freebsd*) > if test "x$enable_dri3" = xyes; then > DEFINES="$DEFINES -DHAVE_DRI3" > fi >-@@ -25851,9 +25852,19 @@ if test "x$enable_opencl" = xyes; then >+@@ -25851,9 +25851,19 @@ if test "x$enable_opencl" = xyes; then > as_fn_error $? "cannot enable OpenCL without Gallium" "$LINENO" 5 > fi > >@@ -68,7 +71,7 @@ > > if test "x$have_libclc" = xno; then > as_fn_error $? "pkg-config cannot find libclc.pc which is required to build clover. >-@@ -25916,9 +25927,6 @@ rm -f core conftest.err conftest.$ac_obj >+@@ -25916,9 +25926,6 @@ rm -f core conftest.err conftest.$ac_obj > CLANG_LIBDIR=${LLVM_LIBDIR} > fi > CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} >Index: graphics/mesa-dri/pkg-descr >=================================================================== >--- graphics/mesa-dri/pkg-descr >+++ graphics/mesa-dri/pkg-descr >@@ -1,5 +1,7 @@ >-This package contains the current stable release of the client drivers for the >-DRI. With an X Server configured for the DRI they allow direct rendering of >-hardware-accelerated OpenGL. >+This package contains the current stable release of the client drivers for DRI2+ > >-WWW: http://dri.sourceforge.net/ >+With a X Server configured for DRI, they allow direct rendering of hardware- >+accelerated OpenGL. This package also includes the software renderer, either >+llvmpipe or classic SWrast. >+ >+WWW: http://www.mesa3d.org/ >Index: graphics/mesa-libs/Makefile >=================================================================== >--- graphics/mesa-libs/Makefile >+++ graphics/mesa-libs/Makefile >@@ -1,27 +1,64 @@ > # Created by: Eric Anholt <anholt@FreeBSD.org> > # $FreeBSD$ > >-PORTNAME= libGL >+PORTNAME= mesa-libs > PORTVERSION= ${MESAVERSION} >-PORTREVISION= 0 > CATEGORIES= graphics > >-COMMENT= OpenGL library that renders using GLX or DRI >+COMMENT= OpenGL libraries that support GLX and EGL clients > >+BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs > LIB_DEPENDS+= libdrm.so:graphics/libdrm \ >- libglapi.so:graphics/libglapi \ > libexpat.so:textproc/expat2 > > USE_XORG= dri2proto dri3proto glproto presentproto x11 xcb xdamage xext \ > xfixes xshmfence xxf86vm > >+OPTIONS_DEFINE= WAYLAND >+OPTIONS_SUB= yes >+ >+WAYLAND_DESC= Enable support for the Wayland platform in EGL >+WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland \ >+ libwayland-server.so:graphics/wayland >+ > .include <bsd.port.options.mk> >-.include "${.CURDIR}/Makefile.common" >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common" >+ >+CONFIGURE_ARGS+= --with-dri-drivers=swrast --with-gallium-drivers=swrast > >-MESA_BUILD_WRKSRC= src/mapi src/glx >-MESA_INSTALL_WRKSRC= src/glx >+# libEGL needs gallium enabled which depends on llvm >+.if ${MESA_LLVM_VER} != "" >+.if ${PORT_OPTIONS:MWAYLAND} >+CONFIGURE_ARGS+= --with-egl-platforms=x11,drm,wayland >+.else >+CONFIGURE_ARGS+= --with-egl-platforms=x11,drm >+.endif >+PLIST_SUB+= EGL="" >+.else >+CONFIGURE_ARGS+= --disable-egl >+PLIST_SUB+= EGL="@comment " >+.if ${PORT_OPTIONS:MWAYLAND} >+IGNORE= WAYLAND is an option for EGL and thus only valid on platforms with LLVM >+.endif >+.endif >+ >+MESA_BUILD_WRKSRC= src/mapi >+MESA_INSTALL_WRKSRC= src/mapi >+ >+.if ${PORT_OPTIONS:MWAYLAND} >+MESA_BUILD_WRKSRC+= src/egl/wayland/wayland-drm src/egl/wayland/wayland-egl >+MESA_INSTALL_WRKSRC+= src/egl/wayland/wayland-egl >+.endif >+ >+MESA_BUILD_WRKSRC+= src/gbm src/glx >+MESA_INSTALL_WRKSRC+= src/gbm src/glx >+ >+.if ${MESA_LLVM_VER} != "" >+MESA_BUILD_WRKSRC+= src/egl >+MESA_INSTALL_WRKSRC+= src/egl >+.endif > >-.include "${.CURDIR}/Makefile.targets" >+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets" > > post-install: > @cd ${WRKSRC}/src && ${SETENV} DESTDIR=${STAGEDIR} \ >Index: graphics/mesa-libs/pkg-descr >=================================================================== >--- graphics/mesa-libs/pkg-descr >+++ graphics/mesa-libs/pkg-descr >@@ -1,4 +1,5 @@ >-This package contains the OpenGL library, which can perform rendering over GLX >-or using the Direct Rendering Infrastructure. >+This package contains the Mesa OpenGL libraries for GLX and EGL clients. >+These include libEGL, libGL, and libglesv2 as well as utlity libraries >+libglapi and gbm. > >-WWW: http://www.freedesktop.org/Software/xorg >+WWW: http://www.mesa3d.org/ >Index: graphics/mesa-libs/pkg-plist >=================================================================== >--- graphics/mesa-libs/pkg-plist >+++ graphics/mesa-libs/pkg-plist >@@ -1,11 +1,45 @@ >+%%EGL%%include/EGL/egl.h >+%%EGL%%include/EGL/eglext.h >+%%EGL%%include/EGL/eglextchromium.h >+%%EGL%%include/EGL/eglmesaext.h >+%%EGL%%include/EGL/eglplatform.h > include/GL/gl.h > include/GL/gl_mangle.h > include/GL/glcorearb.h > include/GL/glext.h > include/GL/glx.h > include/GL/glx_mangle.h > include/GL/glxext.h >+include/GLES2/gl2.h >+include/GLES2/gl2ext.h >+include/GLES2/gl2platform.h >+include/GLES3/gl3.h >+include/GLES3/gl31.h >+include/GLES3/gl32.h >+include/GLES3/gl3ext.h >+include/GLES3/gl3platform.h >+%%EGL%%include/KHR/khrplatform.h >+include/gbm.h >+%%EGL%%lib/libEGL.so >+%%EGL%%lib/libEGL.so.1 >+%%EGL%%lib/libEGL.so.1.0.0 > lib/libGL.so > lib/libGL.so.1 > lib/libGL.so.1.2.0 >+lib/libGLESv2.so >+lib/libGLESv2.so.2 >+lib/libGLESv2.so.2.0.0 >+lib/libgbm.so >+lib/libgbm.so.1 >+lib/libgbm.so.1.0.0 >+lib/libglapi.so >+lib/libglapi.so.0 >+lib/libglapi.so.0.0.0 >+%%WAYLAND%%lib/libwayland-egl.so >+%%WAYLAND%%lib/libwayland-egl.so.1 >+%%WAYLAND%%lib/libwayland-egl.so.1.0.0 >+%%EGL%%libdata/pkgconfig/egl.pc >+libdata/pkgconfig/gbm.pc > libdata/pkgconfig/gl.pc >+libdata/pkgconfig/glesv2.pc >+%%WAYLAND%%libdata/pkgconfig/wayland-egl.pc >Index: graphics/s2tc/Makefile >=================================================================== >--- graphics/s2tc/Makefile >+++ graphics/s2tc/Makefile >@@ -11,7 +11,7 @@ > LICENSE= MIT > LICENSE_FILE= ${WRKSRC}/COPYING > >-BUILD_DEPENDS= libGL>=9.1.7:graphics/libGL >+BUILD_DEPENDS= mesa-libs>=0:graphics/mesa-libs > TEST_DEPENDS= convert:graphics/ImageMagick \ > nvcompress:graphics/nvidia-texture-tools \ > wget:ftp/wget >Index: net/tigervnc-devel/Makefile >=================================================================== >--- net/tigervnc-devel/Makefile >+++ net/tigervnc-devel/Makefile >@@ -15,7 +15,7 @@ > LICENSE_FILE= ${WRKSRC}/LICENCE.TXT > > PATCH_DEPENDS= ${NONEXISTENT}:x11-servers/xorg-server:patch >-BUILD_DEPENDS= ${LOCALBASE}/include/GL/internal/dri_interface.h:graphics/dri \ >+BUILD_DEPENDS= ${LOCALBASE}/include/GL/internal/dri_interface.h:graphics/mesa-dri \ > ${LOCALBASE}/libdata/pkgconfig/fontutil.pc:x11-fonts/font-util \ > bash:shells/bash > # almost equivalent to x11-servers/xorg-server's >Index: net/tigervnc/Makefile >=================================================================== >--- net/tigervnc/Makefile >+++ net/tigervnc/Makefile >@@ -14,7 +14,7 @@ > LICENSE_FILE= ${WRKSRC}/LICENCE.TXT > > PATCH_DEPENDS= ${NONEXISTENT}:x11-servers/xorg-server:patch >-BUILD_DEPENDS= ${LOCALBASE}/include/GL/internal/dri_interface.h:graphics/dri \ >+BUILD_DEPENDS= ${LOCALBASE}/include/GL/internal/dri_interface.h:graphics/mesa-dri \ > ${LOCALBASE}/libdata/pkgconfig/fontutil.pc:x11-fonts/font-util \ > bash:shells/bash > # almost equivalent to x11-servers/xorg-server's >Index: x11-toolkits/gtkada3/Makefile >=================================================================== >--- x11-toolkits/gtkada3/Makefile >+++ x11-toolkits/gtkada3/Makefile >@@ -3,6 +3,7 @@ > > PORTNAME= gtkada > PORTVERSION= 3.14.2 >+PORTREVISION= 1 > CATEGORIES= x11-toolkits > PKGNAMESUFFIX= 3 > >@@ -16,7 +17,6 @@ > libfontconfig.so:x11-fonts/fontconfig \ > libharfbuzz.so:print/harfbuzz \ > libdrm.so:graphics/libdrm \ >- libglapi.so:graphics/libglapi \ > libatk-bridge-2.0.so:accessibility/at-spi2-atk \ > libepoxy.so:graphics/libepoxy \ > libpng16.so:graphics/png \ >Index: x11/xorg/Makefile >=================================================================== >--- x11/xorg/Makefile >+++ x11/xorg/Makefile >@@ -3,15 +3,15 @@ > > PORTNAME= xorg > PORTVERSION= 7.7 >-PORTREVISION= 2 >+PORTREVISION= 3 > CATEGORIES= x11 > > MAINTAINER= x11@FreeBSD.org > COMMENT= X.Org complete distribution metaport > > USES= metaport > >-RUN_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/dri >+RUN_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri > > # data > RUN_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/xbitmaps.pc:x11/xbitmaps \
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 218799
:
181984
|
182242
|
182245