Page MenuHomeFreeBSD

D10448.diff
No OneTemporary

D10448.diff

Index: MOVED
===================================================================
--- MOVED
+++ MOVED
@@ -9373,3 +9373,9 @@
net-mgmt/flow-tools-ng||2017-04-30|Has expired: Unfetchable for more than six months (google code has gone away)
devel/llvm36||2017-05-02|Obsolete and unmaintained upstream
lang/clang36||2017-05-02|Obsolete and unmaintained upstream
+graphics/dri|graphics/mesa-dri|2017-05-02|Renamed for clarity and consistency with graphics/mesa-libs
+graphics/gbm|graphics/mesa-libs|2017-05-02|Mesa libraries were merged into one port
+graphics/libglapi|graphics/mesa-libs|2017-05-02|Mesa libraries were merged into one port
+graphics/libglesv2|graphics/mesa-libs|2017-05-02|Mesa libraries were merged into one port
+graphics/libEGL|graphics/mesa-libs|2017-05-02|Mesa libraries were merged into one port
+graphics/libGL|graphics/mesa-libs|2017-05-02|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
@@ -1763,20 +1763,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 += gcolor3
@@ -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,9 +1,10 @@
--- 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' \
@@ -12,25 +13,27 @@
- -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
@@ -39,7 +42,7 @@
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
@@ -48,7 +51,7 @@
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,9 +1,10 @@
--- 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' \
@@ -12,25 +13,27 @@
- -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
@@ -39,7 +42,7 @@
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
@@ -48,7 +51,7 @@
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,3 +1,8 @@
+%%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
@@ -5,7 +10,36 @@
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: lang/clover/Makefile
===================================================================
--- lang/clover/Makefile
+++ lang/clover/Makefile
@@ -2,30 +2,40 @@
PORTNAME= clover
PORTVERSION= ${MESAVERSION}
-PORTREVISION= 0
CATEGORIES= lang
COMMENT= Mesa "Clover" OpenCL library
-BUILD_DEPENDS= opencl>=0:devel/opencl
+BUILD_DEPENDS= libclc>=0.2.0.20160915:devel/libclc \
+ opencl>=0:devel/opencl \
+ ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs
LIB_DEPENDS= libdrm.so:graphics/libdrm \
- libOpenCL.so:devel/ocl-icd \
- libexpat.so:textproc/expat2
+ libexpat.so:textproc/expat2 \
+ libOpenCL.so:devel/ocl-icd
RUN_DEPENDS= opencl>=0:devel/opencl
-USE_XORG= dri2proto dri3proto glproto presentproto x11 xdamage xext \
- xfixes xshmfence xvmc xxf86vm
-
-ONLY_FOR_ARCHS= i386 amd64
-ONLY_FOR_ARCHS_REASON= Clover needs a graphics driver supported by the Radeon KMS driver
+ONLY_FOR_ARCHS= i386 amd64
+ONLY_FOR_ARCHS_REASON= Clover needs a GPU supported by the Radeon KMS driver
.include <bsd.port.options.mk>
-.include "${.CURDIR}/../../graphics/libGL/Makefile.common"
+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.common"
+
+CONFIGURE_ARGS+= --enable-opencl --enable-opencl-icd --disable-dri \
+ --disable-egl --disable-gbm --disable-glx \
+ --disable-va --disable-vdpau --disable-xvmc \
+ --with-gallium-drivers=r600,radeonsi
-#MESA_BUILD_WRKSRC= src/util src/glsl src/mesa src/gallium
+#MESA_BUILD_WRKSRC= src/util src/compiler src/mesa src/gallium
MESA_INSTALL_WRKSRC= src/gallium/targets/opencl src/gallium/targets/pipe-loader
-.include "${.CURDIR}/../../graphics/libGL/Makefile.targets"
+.include "${.CURDIR}/../../graphics/mesa-dri/Makefile.targets"
+
+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 built with clang support, which is required."; \
+ ${FALSE}; \
+ fi
post-install:
@${MV} ${STAGEDIR}/etc/OpenCL ${STAGEDIR}${PREFIX}/etc/
Index: lang/clover/pkg-descr
===================================================================
--- lang/clover/pkg-descr
+++ lang/clover/pkg-descr
@@ -1,5 +1,4 @@
-This package contains the Mesa "Clover" libOpenCL implementation. This
-implementation is build onto GALLIUM and as such can only be used on Radeon
-cards.
+This package contains Mesa's libOpenCL implementation "Clover".
+It is built upon GALLIUM and currently only supports Radeon GPUs.
WWW: http://dri.freedesktop.org/wiki/GalliumCompute/
Index: lang/clover/pkg-plist
===================================================================
--- lang/clover/pkg-plist
+++ lang/clover/pkg-plist
@@ -1,9 +1,6 @@
etc/OpenCL/vendors/mesa.icd
-lib/gallium-pipe/pipe_r300.so
lib/gallium-pipe/pipe_r600.so
lib/gallium-pipe/pipe_radeonsi.so
-lib/gallium-pipe/pipe_swrast.so
-lib/gallium-pipe/pipe_vmwgfx.so
lib/libMesaOpenCL.so
lib/libMesaOpenCL.so.1
lib/libMesaOpenCL.so.1.0.0
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: science/iboview/Makefile
===================================================================
--- science/iboview/Makefile
+++ science/iboview/Makefile
@@ -3,7 +3,7 @@
PORTNAME= iboview
PORTVERSION= 20150427
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= science
MASTER_SITES= http://www.iboview.org/bin/
DISTNAME= ibo-view.20150427
@@ -15,17 +15,15 @@
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= qt5-buildtools>=0:devel/qt5-buildtools \
- libGLU>=0:graphics/libGLU \
- boost-libs>=0:devel/boost-libs
-LIB_DEPENDS= libgcc_s.so:lang/gcc \
- libGL.so:graphics/libGL
-RUN_DEPENDS= libGLU>=0:graphics/libGLU \
boost-libs>=0:devel/boost-libs
+LIB_DEPENDS= libgcc_s.so:lang/gcc
+RUN_DEPENDS= boost-libs>=0:devel/boost-libs
ONLY_FOR_ARCHS= amd64
ONLY_FOR_ARCHS_REASON_amd64= only builds and is supported on amd64
USES= tar:bz2 qmake:outsource blaslapack:openblas
+USE_GL= gl glu
USE_QT5= core gui widgets opengl script svg
PLIST_FILES= bin/iboview
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,7 +3,7 @@
PORTNAME= xorg
PORTVERSION= 7.7
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= x11
MAINTAINER= x11@FreeBSD.org
@@ -11,7 +11,7 @@
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 \

File Metadata

Mime Type
text/plain
Expires
Thu, Nov 21, 6:13 PM (6 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14722903
Default Alt Text
D10448.diff (79 KB)

Event Timeline