diff options
69 files changed, 1299 insertions, 752 deletions
diff --git a/graphics/dri/Makefile b/graphics/dri/Makefile index fd19150..d677f69 100644 --- a/graphics/dri/Makefile +++ b/graphics/dri/Makefile @@ -1,9 +1,9 @@ # Created by: Eric Anholt <anholt@FreeBSD.org> -# $FreeBSD: head/graphics/dri/Makefile 355979 2014-05-31 14:15:47Z kwm $ +# $FreeBSD: head/graphics/dri/Makefile 342087 2014-01-31 22:21:43Z kwm $ PORTNAME= dri PORTVERSION= ${MESAVERSION} -PORTREVISION= 4 +PORTREVISION= ${DRIREVISION} PORTEPOCH= 2 CATEGORIES= graphics @@ -12,31 +12,38 @@ COMMENT= OpenGL hardware acceleration drivers for the DRI LIB_DEPENDS= libdrm.so:${PORTSDIR}/graphics/libdrm \ libexpat.so:${PORTSDIR}/textproc/expat2 -USES+= gettext:build -USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto +USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto \ + presentproto xvmc xshmfence + +OPTIONS_DEFINE= TEXTURE + +OPTIONS_DEFINE_i386= GALLIUM VDPAU +OPTIONS_DEFAULT_i386= GALLIUM VDPAU +OPTIONS_DEFINE_amd64= GALLIUM VDPAU +OPTIONS_DEFAULT_amd64= GALLIUM VDPAU + +GALLIUM_DESC= Gallium (llvm backed) dri drivers +TEXTURE_DESC= Enable texture-float support (patent encumbered) + +PKGHELP= ${.CURDIR}/pkg-help .include <bsd.port.options.mk> # gcc from base can't handle some code in mesa 9.1+ # We only care for 9.x and 8.x, not for old pre-clang default current. # This is for 0b0000 binary which gcc 4.3+ understands and is in the i965 driver. -.if defined(WITH_NEW_XORG) . if (${OSVERSION} >= 901500 && ${OSVERSION} < 1000000) \ && ${ARCH} == amd64 CC=clang CXX=clang++ CPP=clang-cpp -. elif ${OSVERSION} < 901500 +# i386 triggers clang bug 19778. This happens with clang 3.4.1 and older. +. elif ${OSVERSION} < 901500 || ${ARCH} == i386 USE_GCC=yes . endif -.endif ALL_DRI_DRIVERS=I915 I965 R200 RADEON SWRAST -.if !defined(WITH_NEW_XORG) -ALL_DRI_DRIVERS+=I810 MACH64 MGA R128 R300 R600 SAVAGE SIS TDFX UNICHROME -.endif - .include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" PLIST_SUB+= VERSION=${MESADISTVERSION} @@ -45,42 +52,63 @@ PLIST_SUB+= VERSION=${MESADISTVERSION} DRI_DRIVERS= ${ALL_DRI_DRIVERS} .endif -.if defined(WITH_NEW_XORG) -. if !defined(WITHOUT_GALLIUM) && (${ARCH} == i386 || ${ARCH} == amd64) -BUILD_DEPENDS+= llvm-config33:${PORTSDIR}/devel/llvm33 -CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config33 +.if defined(WITH_NEW_MESA) +DRIREVISION= 0 +PLIST= ${.CURDIR}/pkg-plist +.else +DRIREVISION= 6 +PLIST= ${.CURDIR}/pkg-plist-old +.endif -CONFIGURE_ARGS+=--enable-gallium-llvm --disable-gallium-egl +.if ${PORT_OPTIONS:MGALLIUM} +. if defined(WITH_NEW_MESA) +# keep in sync with libopencl please +BUILD_DEPENDS+= llvm34>=0:${PORTSDIR}/devel/llvm34 +CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config34 +. else +BUILD_DEPENDS+= llvm33>=0:${PORTSDIR}/devel/llvm33 +CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config33 +. endif -CONFIGURE_ARGS+=--with-gallium-drivers=r300,r600,radeonsi,svga,swrast +CONFIGURE_ARGS+=--enable-gallium-llvm \ + --enable-xvmc \ + --with-gallium-drivers=r300,r600,radeonsi,svga,swrast PLIST_SUB+= GALLIUM="" -. else -CONFIGURE_ARGS+=--enable-gallium-llvm=no --without-gallium-drivers +.else +CONFIGURE_ARGS+=--enable-gallium-llvm=no --without-gallium-drivers \ + --disable-gallium-egl PLIST_SUB+= GALLIUM="@comment " -. endif -. if ${ARCH} == powerpc || ${ARCH} == powerpc64 +.endif + +.if ${PORT_OPTIONS:MTEXTURE} +CONFIGURE_ARGS+=--enable-texture-float +.endif + +.if ${PORT_OPTIONS:MVDPAU} +CONFIGURE_ARGS+=--enable-vdpau +LIB_DEPENDS+= libvdpau.so:${PORTSDIR}/multimedia/libvdpau +PLIST_SUB+= VDPAU="" +.else +CONFIGURE_ARGS+=--disable-vdpau +PLIST_SUB+= VDPAU="@comment " +.endif + +.if ${ARCH} == powerpc || ${ARCH} == powerpc64 DRI_DRIVERS= RADEON SWRAST -. endif -. if ${ARCH} == sparc64 +.endif +.if ${ARCH} == sparc64 || ${ARCH} == armv6 DRI_DRIVERS= SWRAST -. endif -.else # !defined(WITH_NEW_XORG) -. if ${ARCH} == powerpc || ${ARCH} == powerpc64 -DRI_DRIVERS= MACH64 RADEON SWRAST TDFX -. elif ${ARCH} == sparc64 -DRI_DRIVERS= MACH64 RADEON SWRAST -. endif -.endif # defined(WITH_NEW_XORG) +.endif # empty for unsupported arches DRI_DRIVERS+= .for _d in ${ALL_DRI_DRIVERS} -.if ${DRI_DRIVERS:M${_d}} +. if ${DRI_DRIVERS:M${_d}} PLIST_SUB+= ${_d}_DRIVER="" -.else +. else PLIST_SUB+= ${_d}_DRIVER="@comment " -.endif +. endif .endfor .if !(${ARCH} == amd64 || ${ARCH} == i386) @@ -88,26 +116,4 @@ CONFIGURE_ARGS+=--disable-gallium-intel .endif CONFIGURE_ARGS+=--with-dri-drivers="${DRI_DRIVERS:tl}" -.if defined(WITH_NEW_XORG) && !defined(WITH_GALLIUM) \ - && (${ARCH} == i386 || ${ARCH} == amd64) -pre-everything:: - @${ECHO_MSG} "" - @${ECHO_MSG} "For r300, r600, radeonsi and swrast gallium based drivers." - @${ECHO_MSG} "Please define WITH_GALLIUM in /etc/make.conf" - @${ECHO_MSG} "Note that gallium support is highly experimental." - @${ECHO_MSG} "" -.endif - -post-install: -.if defined(WITH_NEW_XORG) - @${RM} -f ${STAGEDIR}${PREFIX}/include/GL/*.h - @${RM} ${STAGEDIR}${PREFIX}/lib/libGL.* - @${RM} ${STAGEDIR}${PREFIX}/lib/libglapi.* - @${RM} -f ${STAGEDIR}${PREFIX}/libdata/pkgconfig/gl.pc -.else - @${RM} -f ${STAGEDIR}${PREFIX}/include/GL/*.h - @${RM} -rf ${STAGEDIR}${PREFIX}/lib/.libGL - @${RM} -f ${STAGEDIR}${PREFIX}/libdata/pkgconfig/gl.pc -.endif - .include <bsd.port.mk> diff --git a/graphics/dri/pkg-help b/graphics/dri/pkg-help new file mode 100644 index 0000000..97cbd65 --- /dev/null +++ b/graphics/dri/pkg-help @@ -0,0 +1,13 @@ +The GALLIUM option enables gallium (llvm) backed drivers such as for example +the r600 and radeonsi driver. + +The VDPAU option enables VDPAU drivers to decode video on the GPU via the +VDPAU library. + +The TEXTURE option enables texture-float support. However Silicon Graphics +owns the US Patent #6,650,327 [1]. Use at your own risk! + +See docs/patents.txt in the Mesa tarball or the follewing urls: + +[1] http://www.google.com/patents/about?id=mIIOAAAAEBAJ&dq=6650327 +[2] http://www.opengl.org/registry/specs/ARB/texture_float.txt diff --git a/graphics/dri/pkg-plist b/graphics/dri/pkg-plist index 21dd352..46e4737 100644 --- a/graphics/dri/pkg-plist +++ b/graphics/dri/pkg-plist @@ -1,40 +1,61 @@ -%%NEW%%%%I965_DRIVER%%etc/drirc +%%I965_DRIVER%%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 include/GL/internal/dri_interface.h -%%OLD%%%%I810_DRIVER%%lib/dri/i810_dri.so -%%NEW%%%%I915_DRIVER%%lib/dri/i915_dri.la +@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 +@comment include/GL/osmesa.h +@comment include/GL/wglext.h +@comment include/GL/wmesa.h +@comment include/KHR/khrplatform.h +@comment include/gbm.h +%%GALLIUM%%lib/dri/kms_swrast_dri.so %%I915_DRIVER%%lib/dri/i915_dri.so -%%NEW%%%%I965_DRIVER%%lib/dri/i965_dri.la %%I965_DRIVER%%lib/dri/i965_dri.so -%%OLD%%%%MACH64_DRIVER%%lib/dri/mach64_dri.so -%%OLD%%%%MGA_DRIVER%%lib/dri/mga_dri.so -%%OLD%%%%R128_DRIVER%%lib/dri/r128_dri.so -%%NEW%%%%R200_DRIVER%%lib/dri/r200_dri.la %%R200_DRIVER%%lib/dri/r200_dri.so -%%OLD%%%%R300_DRIVER%%lib/dri/r300_dri.so -%%NEW%%%%GALLIUM%%lib/dri/r300_dri.la -%%NEW%%%%GALLIUM%%lib/dri/r300_dri.so -%%OLD%%%%R600_DRIVER%%lib/dri/r600_dri.so -%%NEW%%%%GALLIUM%%lib/dri/r600_dri.la -%%NEW%%%%GALLIUM%%lib/dri/r600_dri.so -%%NEW%%%%RADEON_DRIVER%%lib/dri/radeon_dri.la +%%GALLIUM%%lib/dri/r300_dri.so +%%GALLIUM%%lib/dri/r600_dri.so %%RADEON_DRIVER%%lib/dri/radeon_dri.so -%%NEW%%%%GALLIUM%%lib/dri/radeonsi_dri.la -%%NEW%%%%GALLIUM%%lib/dri/radeonsi_dri.so -%%OLD%%%%SAVAGE_DRIVER%%lib/dri/savage_dri.so -%%OLD%%%%SIS_DRIVER%%lib/dri/sis_dri.so -%%NEW%%%%SWRAST_DRIVER%%lib/dri/swrast_dri.la +%%GALLIUM%%lib/dri/radeonsi_dri.so %%SWRAST_DRIVER%%lib/dri/swrast_dri.so -%%OLD%%%%TDFX_DRIVER%%lib/dri/tdfx_dri.so -%%OLD%%%%UNICHROME_DRIVER%%lib/dri/unichrome_dri.so -%%NEW%%%%GALLIUM%%lib/dri/vmwgfx_dri.la -%%NEW%%%%GALLIUM%%lib/dri/vmwgfx_dri.so -%%NEW%%lib/libdricore%%VERSION%%.la -%%NEW%%lib/libdricore%%VERSION%%.so -%%NEW%%lib/libdricore%%VERSION%%.so.1 -%%NEW%%lib/libdricore%%VERSION%%.so.1.0.0 -%%NEW%%%%GALLIUM%%lib/libllvmradeon%%VERSION%%.la -%%NEW%%%%GALLIUM%%lib/libllvmradeon%%VERSION%%.so +%%GALLIUM%%lib/dri/vmwgfx_dri.so +%%GALLIUM%%lib/libXvMCr600.so +%%GALLIUM%%lib/libXvMCr600.so.1 +%%GALLIUM%%lib/libXvMCr600.so.1.0 +%%GALLIUM%%lib/libXvMCr600.so.1.0.0 +@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/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%%lib/vdpau/libvdpau_r600.so +%%VDPAU%%lib/vdpau/libvdpau_r600.so.1 +%%VDPAU%%lib/vdpau/libvdpau_r600.so.1.0 +%%VDPAU%%lib/vdpau/libvdpau_r600.so.1.0.0 +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so.1 +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so.1.0 +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so.1.0.0 +@comment libdata/pkgconfig/egl.pc libdata/pkgconfig/dri.pc +@comment libdata/pkgconfig/gbm.pc +@comment libdata/pkgconfig/gl.pc +%%VDPAU%%@dirrm lib/vdpau @dirrm lib/dri @dirrmtry include/GL/internal @dirrmtry include/GL diff --git a/graphics/dri/pkg-plist-old b/graphics/dri/pkg-plist-old new file mode 100644 index 0000000..8393ec2 --- /dev/null +++ b/graphics/dri/pkg-plist-old @@ -0,0 +1,71 @@ +%%I965_DRIVER%%etc/drirc +@comment include/EGL/egl.h +@comment include/EGL/eglext.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/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/GL/wglext.h +@comment include/GL/wmesa.h +@comment include/KHR/khrplatform.h +@comment include/gbm.h +%%I915_DRIVER%%lib/dri/i915_dri.so +%%I965_DRIVER%%lib/dri/i965_dri.so +%%R200_DRIVER%%lib/dri/r200_dri.so +%%GALLIUM%%lib/dri/r300_dri.so +%%GALLIUM%%lib/dri/r600_dri.so +%%RADEON_DRIVER%%lib/dri/radeon_dri.so +%%GALLIUM%%lib/dri/radeonsi_dri.so +%%SWRAST_DRIVER%%lib/dri/swrast_dri.so +%%GALLIUM%%lib/dri/vmwgfx_dri.so +%%GALLIUM%%lib/libXvMCr300.so +%%GALLIUM%%lib/libXvMCr300.so.1 +%%GALLIUM%%lib/libXvMCr300.so.1.0.0 +%%GALLIUM%%lib/libXvMCr600.so +%%GALLIUM%%lib/libXvMCr600.so.1 +%%GALLIUM%%lib/libXvMCr600.so.1.0.0 +%%GALLIUM%%lib/libXvMCsoftpipe.so +%%GALLIUM%%lib/libXvMCsoftpipe.so.1 +%%GALLIUM%%lib/libXvMCsoftpipe.so.1.0.0 +@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 +lib/libdricore9.1.7.so +lib/libdricore9.1.7.so.1 +lib/libdricore9.1.7.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 +lib/libllvmradeon%%VERSION%%.so +%%VDPAU%%lib/vdpau/libvdpau_r300.so +%%VDPAU%%lib/vdpau/libvdpau_r300.so.1 +%%VDPAU%%lib/vdpau/libvdpau_r300.so.1.0.0 +%%VDPAU%%lib/vdpau/libvdpau_r600.so +%%VDPAU%%lib/vdpau/libvdpau_r600.so.1 +%%VDPAU%%lib/vdpau/libvdpau_r600.so.1.0.0 +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so.1 +%%VDPAU%%lib/vdpau/libvdpau_radeonsi.so.1.0.0 +%%VDPAU%%lib/vdpau/libvdpau_softpipe.so +%%VDPAU%%lib/vdpau/libvdpau_softpipe.so.1 +%%VDPAU%%lib/vdpau/libvdpau_softpipe.so.1.0.0 +libdata/pkgconfig/dri.pc +@comment libdata/pkgconfig/egl.pc +@comment libdata/pkgconfig/gbm.pc +@comment libdata/pkgconfig/gl.pc +%%VDPAU%%@dirrm lib/vdpau +@dirrm lib/dri +@dirrmtry include/GL/internal +@dirrmtry include/GL diff --git a/graphics/gbm/Makefile b/graphics/gbm/Makefile index d70c72b..c2c08e1 100644 --- a/graphics/gbm/Makefile +++ b/graphics/gbm/Makefile @@ -3,6 +3,7 @@ PORTNAME= gbm PORTVERSION= ${MESAVERSION} +PORTREVISION= ${GBM_REVISION} CATEGORIES= graphics COMMENT= gbm library @@ -15,7 +16,7 @@ LIB_DEPENDS+= libpthread-stubs.so:${PORTSDIR}/devel/libpthread-stubs \ USE_XORG= x11 xau xcb xdmcp # stuff not needed by gbm but configure wants it -USE_XORG+= glproto dri2proto dri3proto xext xdamage xfixes presentproto \ +USE_XORG+= glproto dri2proto xext xdamage xfixes presentproto \ xshmfence BUILD_WRKSRC= ${WRKSRC}/src/gbm @@ -24,7 +25,17 @@ INSTALL_WRKSRC= ${WRKSRC}/src/gbm .include <bsd.port.options.mk> .include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" +.if defined(WITH_NEW_MESA) +GBM_REVISION= 0 +.else +GBM_REVISION= 0 +.endif + pre-build: +.if defined(WITH_NEW_MESA) + @cd ${WRKSRC}/src/mapi/ && ${MAKE_CMD} ${_MAKE_JOBS} +.else @cd ${WRKSRC}/src/mapi/shared-glapi && ${MAKE_CMD} ${_MAKE_JOBS} +.endif .include <bsd.port.mk> diff --git a/graphics/gbm/pkg-plist b/graphics/gbm/pkg-plist index e68d8b6..891e4ae 100644 --- a/graphics/gbm/pkg-plist +++ b/graphics/gbm/pkg-plist @@ -1,5 +1,4 @@ include/gbm.h -lib/libgbm.la lib/libgbm.so lib/libgbm.so.1 lib/libgbm.so.1.0.0 diff --git a/graphics/libEGL/Makefile b/graphics/libEGL/Makefile index 2618f1e..9819cd9 100644 --- a/graphics/libEGL/Makefile +++ b/graphics/libEGL/Makefile @@ -1,34 +1,56 @@ # Created by: kwm@FreeBSD.org -# $FreeBSD: head/graphics/libEGL/Makefile 354307 2014-05-17 09:56:00Z kwm $ +# $FreeBSD$ PORTNAME= libEGL PORTVERSION= ${MESAVERSION} -PORTREVISION= 2 +PORTREVISION= ${LIBEGL_REVISION} CATEGORIES= graphics COMMENT= OpenEGL library -LIB_DEPENDS+= libpthread-stubs.so:${PORTSDIR}/devel/libpthread-stubs - -.if defined(WITH_NEW_XORG) -LIB_DEPENDS+= libdevq.so:${PORTSDIR}/devel/libdevq -.endif +LIB_DEPENDS+= libpthread-stubs.so:${PORTSDIR}/devel/libpthread-stubs \ + libexpat.so:${PORTSDIR}/textproc/expat2 \ + libdevq.so:${PORTSDIR}/devel/libdevq \ + libdrm.so:${PORTSDIR}/graphics/libdrm USE_XORG= x11 xau xcb xdmcp # stuff not needed by libEGL but configure wants it -USE_XORG+= glproto dri2proto xext xdamage xfixes -LIB_DEPENDS+= libexpat.so:${PORTSDIR}/textproc/expat2 \ - libdrm.so:${PORTSDIR}/graphics/libdrm +USE_XORG+= glproto dri2proto xext xdamage xfixes presentproto \ + xshmfence + +.include <bsd.port.options.mk> +.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" +.if defined(WITH_NEW_MESA) +BUILD_WRKSRC= src/egl/drivers/dri2 src/egl/main +INSTALL_WRKSRC= src/egl/drivers/dri2 src/egl/main +.else BUILD_WRKSRC= ${WRKSRC}/src/egl INSTALL_WRKSRC= ${WRKSRC}/src/egl +.endif -.include <bsd.port.options.mk> +.if defined(WITH_NEW_MESA) +LIBEGL_REVISION= 0 +.else +LIBEGL_REVISION= 4 +.endif + +.if defined(WITH_NEW_MESA) +do-build: egl-do-build +do-install: egl-do-install -.if ! defined(WITH_NEW_XORG) -IGNORE= Please enable WITH_NEW_XORG, libEGL needs libdrm higher then 2.4.24 +egl-do-build: +. for dir in ${BUILD_WRKSRC} + @(cd ${WRKSRC}/${dir}; ${DO_MAKE_BUILD} ${ALL_TARGET};) +. endfor + +egl-do-install: +. for dir in ${INSTALL_WRKSRC} + @(cd ${WRKSRC}/${dir} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ + ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}) + +. endfor .endif -.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" .include <bsd.port.mk> diff --git a/graphics/libEGL/pkg-plist b/graphics/libEGL/pkg-plist index e5a8156..af23bb9 100644 --- a/graphics/libEGL/pkg-plist +++ b/graphics/libEGL/pkg-plist @@ -1,9 +1,9 @@ include/EGL/egl.h include/EGL/eglext.h +%%NEW%%include/EGL/eglextchromium.h include/EGL/eglmesaext.h include/EGL/eglplatform.h include/KHR/khrplatform.h -lib/libEGL.la lib/libEGL.so lib/libEGL.so.1 lib/libEGL.so.1.0.0 diff --git a/graphics/libGL/Makefile b/graphics/libGL/Makefile index 17df12b..eb3855e 100644 --- a/graphics/libGL/Makefile +++ b/graphics/libGL/Makefile @@ -1,5 +1,5 @@ # Created by: Eric Anholt <anholt@FreeBSD.org> -# $FreeBSD: head/graphics/libGL/Makefile 354307 2014-05-17 09:56:00Z kwm $ +# $FreeBSD: head/graphics/libGL/Makefile 347435 2014-03-08 00:08:21Z miwi $ PORTNAME= libGL PORTVERSION= ${MESAVERSION} @@ -9,39 +9,30 @@ CATEGORIES= graphics COMMENT= OpenGL library that renders using GLX or DRI LIB_DEPENDS+= libdrm.so:${PORTSDIR}/graphics/libdrm \ + libglapi.so:${PORTSDIR}/graphics/libglapi \ libexpat.so:${PORTSDIR}/textproc/expat2 -USES= pkgconfig -USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto:both +USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto:both \ + presentproto xshmfence SUB_FILES= pkg-install pkg-deinstall .include <bsd.port.options.mk> +.include "${.CURDIR}/bsd.mesalib.mk" -.if defined(WITH_NEW_XORG) -LIBGLREVISION= 1 -LIB_DEPENDS+= libglapi.so:${PORTSDIR}/graphics/libglapi +.if defined(WITH_NEW_MESA) +LIBGLREVISION= 0 .else -LIBGLREVISION= 4 +LIBGLREVISION= 3 .endif -.include "${.CURDIR}/bsd.mesalib.mk" - .if !(${ARCH} == "amd64" || ${ARCH} == "i386") CONFIGURE_ARGS+=--disable-gallium-intel .endif post-install: - ${RM} -f ${STAGEDIR}${PREFIX}/libdata/pkgconfig/dri.pc - ${RM} -rf ${STAGEDIR}${PREFIX}/include/GL/internal -.if defined(WITH_NEW_XORG) @${MKDIR} ${STAGEDIR}${PREFIX}/lib/.libGL @${MV} ${STAGEDIR}${PREFIX}/lib/libGL* \ ${STAGEDIR}${PREFIX}/lib/.libGL/ - ${RM} ${STAGEDIR}${PREFIX}/lib/libglapi* -.else - ${RM} ${STAGEDIR}${PREFIX}/include/GL/glu.h - ${RM} ${STAGEDIR}${PREFIX}/include/GL/glu_mangle.h -.endif .include <bsd.port.mk> diff --git a/graphics/libGL/bsd.mesalib.mk b/graphics/libGL/bsd.mesalib.mk index b39c6ac..fd01de1 100644 --- a/graphics/libGL/bsd.mesalib.mk +++ b/graphics/libGL/bsd.mesalib.mk @@ -4,36 +4,53 @@ # # Remember to upgrade the following ports everytime you bump MESAVERSION: # +# - graphics/dri +# - graphics/gbm # - graphics/libEGL # - graphics/libGL +# - graphics/libglapi # - grahpics/libglesv2 -# - graphics/dri # -# $FreeBSD: head/graphics/libGL/bsd.mesalib.mk 358152 2014-06-17 17:23:07Z jkim $ +# $FreeBSD$ + +# hw context support in the i915kms driver +.if ${OPSYS} == FreeBSD && \ + (${OSVERSION} >= 1000717 && ${OSVERSION} < 1100000 || \ + ${OSVERSION} >= 1100035) +WITH_NEW_MESA=1 +.endif MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/} MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/} -.if defined(WITH_NEW_XORG) -MESABASEVERSION= 9.1.7 -# if there is a subversion, include the '-' between 7.11-rc2 for example. -MESASUBVERSION= +.if defined(WITH_NEW_MESA) +MESABASEVERSION= 10.3.0 +# if there is a subversion, don't include the '-' between 7.11-rc2. +MESASUBVERSION= + +MASTER_SITES= ftp://ftp.freedesktop.org/pub/mesa/${MESABASEVERSION:R}/ PLIST_SUB+= OLD="@comment " NEW="" + +# work around libarchive bug? +EXTRACT_CMD= ${LOCALBASE}/bin/gtar +EXTRACT_DEPENDS+= gtar:${PORTSDIR}/archivers/gtar + .else -MESABASEVERSION= 7.6.1 +MESABASEVERSION= 9.1.7 MESASUBVERSION= +MASTER_SITES= ftp://ftp.freedesktop.org/pub/mesa/older-versions/${MESABASEVERSION:R:R}.x/${MESABASEVERSION}/ PLIST_SUB+= OLD="" NEW="@comment " .endif -MASTER_SITES= ftp://ftp.freedesktop.org/pub/mesa/older-versions/${MESABASEVERSION:R:R}.x/${MESABASEVERSION}/ DISTFILES= MesaLib-${MESADISTVERSION}${EXTRACT_SUFX} MAINTAINER= x11@FreeBSD.org BUILD_DEPENDS+= makedepend:${PORTSDIR}/devel/makedepend \ - python2:${PORTSDIR}/lang/python2 \ ${PYTHON_SITELIBDIR}/libxml2.py:${PORTSDIR}/textproc/py-libxml2 -USES+= bison gmake pathfix pkgconfig python:2,build \ +LIB_DEPENDS+= libdevq.so:${PORTSDIR}/devel/libdevq + +USES+= bison gmake libtool pathfix pkgconfig python:2,build \ shebangfix tar:bzip2 USE_LDCONFIG= yes GNU_CONFIGURE= yes @@ -43,39 +60,30 @@ LDFLAGS+= -Wl,-Y${LOCALBASE}/lib .if ${OSVERSION} < 1000033 BUILD_DEPENDS+= ${LOCALBASE}/bin/flex:${PORTSDIR}/textproc/flex -CONFIGURE_ENV+=ac_cv_prog_LEX=${LOCALBASE}/bin/flex +CONFIGURE_ENV+= ac_cv_prog_LEX=${LOCALBASE}/bin/flex .endif -.if defined(WITH_NEW_XORG) -INSTALL_TARGET= install-strip -USES+= libtool:keepla - 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/glsl/tests/compare_ir src/mapi/glapi/gen/*.py \ - src/mapi/mapi/mapi_abi.py - -# i386 triggers clang bug 19778. This happens with clang 3.4.1 and older. -. if ${ARCH} == i386 -USE_GCC=yes -. endif -.else -CONFIGURE_ARGS+=--disable-glut --disable-glw --disable-glu + src/glsl/tests/compare_ir src/mapi/glapi/gen/*.py -ALL_TARGET= default +.if defined(WITH_NEW_MESA) +SHEBANG_FILES+= src/mapi/mapi_abi.py .endif MASTERDIR= ${.CURDIR}/../../graphics/libGL -.if defined(WITH_NEW_XORG) +.if defined(WITH_NEW_MESA) PATCHDIR= ${MASTERDIR}/files +CONFIGURE_ARGS+= --disable-dri3 .else PATCHDIR= ${MASTERDIR}/files-old .endif DESCR= ${.CURDIR}/pkg-descr PLIST= ${.CURDIR}/pkg-plist WRKSRC= ${WRKDIR}/Mesa-${MESADISTVERSION} +INSTALL_TARGET= install-strip COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//} @@ -91,19 +99,26 @@ CONFIGURE_ARGS+= --disable-egl CONFIGURE_ARGS+= --enable-egl .endif +.if ${COMPONENT:Mopencl} == "" +CONFIGURE_ARGS+= --disable-opencl +.else +CONFIGURE_ARGS+= --enable-opencl +.endif + .if ${COMPONENT:Mdri} == "" CONFIGURE_ARGS+=--with-dri-drivers=no CONFIGURE_ARGS+=--enable-gallium-llvm=no --without-gallium-drivers .else # done in the dri port +# need to enable this globaly because it also used in dri .. +# the third possible option is wayland. +CONFIGURE_ARGS+= --enable-egl --with-egl-platforms=x11,drm .endif -.if !defined(WITH_NEW_XORG) -.if defined(WITHOUT_XCB) -CONFIGURE_ARGS+= --disable-xcb +.if ${COMPONENT:Mvdpau} == "" +CONFIGURE_ARGS+=--disable-vdpau .else -CONFIGURE_ARGS+= --enable-xcb -.endif +CONFIGURE_ARGS+=--enable-vdpau .endif post-patch: @@ -111,19 +126,25 @@ post-patch: ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|/etc/|${PREFIX}/etc/|g' \ ${WRKSRC}/src/mesa/drivers/dri/common/xmlconfig.c -.if !defined(WITH_NEW_XORG) - @${REINPLACE_CMD} -e 's|python|${PYTHON_CMD}|' \ - ${WRKSRC}/src/gallium/auxiliary/util/Makefile - @${REINPLACE_CMD} -e 's|[$$](INSTALL_LIB_DIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ - ${WRKSRC}/src/glu/Makefile \ - ${WRKSRC}/src/mesa/Makefile \ - ${WRKSRC}/src/mesa/drivers/dri/Makefile -.else +.if !defined(WITH_NEW_MESA) @${REINPLACE_CMD} -e 's|#!/usr/bin/python|#!${PYTHON_CMD}|g' \ ${WRKSRC}/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py \ ${WRKSRC}/src/glsl/builtins/tools/*.py - @${REINPLACE_CMD} -e 's|!/usr/bin/python2|!${PYTHON_CMD}|g' \ +.else + @${REINPLACE_CMD} -e 's|#!/use/bin/python|#!${PYTHON_CMD}|g' \ + ${WRKSRC}/src/mesa/drivers/dri/common/xmlpool/gen_xmlpool.py +.endif + @${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: pre-mesa-build + +pre-mesa-build: +.if defined(WITH_NEW_MESA) +# do propper gmake target. + @cd ${WRKSRC}/src/mesa/drivers/dri/common/xmlpool && ${MAKE_CMD} + @cd ${WRKSRC}/src/loader && ${MAKE_CMD} libloader.la .endif + diff --git a/graphics/libGL/distinfo b/graphics/libGL/distinfo index fd2024b..6b51956 100644 --- a/graphics/libGL/distinfo +++ b/graphics/libGL/distinfo @@ -1,4 +1,4 @@ -SHA256 (MesaLib-7.6.1.tar.bz2) = 701f0e4cb85d6298181651b780d1c0a439fadd02aad29ee6623fc05588bb8d44 -SIZE (MesaLib-7.6.1.tar.bz2) = 4886995 SHA256 (MesaLib-9.1.7.tar.bz2) = 30e6b878b457c716221a9730b179b2846c38cfd5aa1b02d54aff685f50b844a0 SIZE (MesaLib-9.1.7.tar.bz2) = 6134393 +SHA256 (MesaLib-10.3.0.tar.bz2) = 0283bfe710fa449ed82e465cfa09612a269e19abb7e0382082608062ce7960b5 +SIZE (MesaLib-10.3.0.tar.bz2) = 7252038 diff --git a/graphics/libGL/files-old/patch-Makefile.in b/graphics/libGL/files-old/patch-Makefile.in new file mode 100644 index 0000000..3adcc5d --- /dev/null +++ b/graphics/libGL/files-old/patch-Makefile.in @@ -0,0 +1,13 @@ +--- Makefile.in.orig 2014-05-11 21:01:42.000000000 +0200 ++++ Makefile.in 2014-05-11 21:02:12.000000000 +0200 +@@ -87,9 +87,7 @@ + $(top_srcdir)/m4/ax_prog_flex.m4 \ + $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/m4/ax_python_module.m4 \ +- $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ +- $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ +- $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac ++ $(top_srcdir)/configure.ac + am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) + am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ diff --git a/graphics/libGL/files-old/patch-configure b/graphics/libGL/files-old/patch-configure index c9faeef..e56b2c2 100644 --- a/graphics/libGL/files-old/patch-configure +++ b/graphics/libGL/files-old/patch-configure @@ -1,52 +1,424 @@ ---- configure.orig 2013-12-12 18:52:32.304356162 +0000 -+++ configure 2013-12-12 19:50:44.434111814 +0000 -@@ -5393,7 +5393,7 @@ - ;; - *freebsd* | dragonfly*) - case "$host_cpu" in -- i*86|x86_64|powerpc*|sparc*) default_driver="dri";; -+ i*86|x86_64|ia64|powerpc*|sparc*) default_driver="dri";; - esac - ;; - esac -@@ -6946,12 +6946,35 @@ - CXXFLAGS="$CXXFLAGS -ansi -pedantic" - fi +--- configure.orig 2014-03-14 20:50:56.000000000 +0100 ++++ configure 2014-03-14 20:51:25.000000000 +0100 +@@ -779,6 +779,8 @@ + GBM_PC_REQ_PRIV + LIBUDEV_LIBS + LIBUDEV_CFLAGS ++LIBDEVQ_LIBS ++LIBDEVQ_CFLAGS + OSMESA_PC_LIB_PRIV + OSMESA_PC_REQ + OSMESA_MESA_DEPS +@@ -1126,6 +1128,8 @@ + NOUVEAU_LIBS + RADEON_CFLAGS + RADEON_LIBS ++LIBDEVQ_CFLAGS ++LIBDEVQ_LIBS + LIBUDEV_CFLAGS + LIBUDEV_LIBS + XORG_CFLAGS +@@ -1930,6 +1934,10 @@ + RADEON_CFLAGS + C compiler flags for RADEON, overriding pkg-config + RADEON_LIBS linker flags for RADEON, overriding pkg-config ++ LIBDEVQ_CFLAGS ++ C compiler flags for LIBDEVQ, overriding pkg-config ++ LIBDEVQ_LIBS ++ linker flags for LIBDEVQ, overriding pkg-config + LIBUDEV_CFLAGS + C compiler flags for LIBUDEV, overriding pkg-config + LIBUDEV_LIBS +@@ -21184,9 +21192,34 @@ + DEFINES="$DEFINES -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1" + DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS" -- # ffb and gamma are missing because they have not been converted -- # to use the new interface. - if test "x$DRI_DIRS" = "xyes"; then -- DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \ +- DRI_DIRS="i915 i965 nouveau r200 radeon swrast" +- fi + case "$host_cpu" in + x86_64|ia64) + # i810 is missing because there is no x86-64 system where it + # could *ever* be used. + if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \ - unichrome savage sis swrast" -- fi ++ DRI_DIRS="i915 i965 nouveau r200 radeon swrast" + fi + ;; + i*86) + if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon tdfx \ -+ unichrome savage sis swrast" ++ DRI_DIRS="i915 i965 nouveau r200 radeon swrast" + fi + ;; + powerpc*) + # Build only the drivers for cards that exist on PowerPC. + # At some point MGA will be added, but not yet. + if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="mach64 r128 r200 r300 r600 radeon tdfx swrast" -+ fi ++ DRI_DIRS="r200 radeon swrast" ++ fi + ;; + sparc*) + # Build only the drivers for cards that exist on SPARC. + if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="mach64 r128 r200 r300 r600 radeon swrast" ++ DRI_DIRS="r200 radeon swrast" + fi + ;; + esac ++ ;; gnu*) DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER" +@@ -21684,6 +21717,81 @@ + if test "x$enable_gbm" = xyes; then + SRC_DIRS="$SRC_DIRS gbm" + ++ case "$host_os" in ++ *freebsd*) ++ ++pkg_failed=no ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 ++$as_echo_n "checking for LIBDEVQ... " >&6; } ++ ++if test -n "$LIBDEVQ_CFLAGS"; then ++ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++if test -n "$LIBDEVQ_LIBS"; then ++ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++ ++ ++ ++if test $pkg_failed = yes; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi ++ if test $_pkg_short_errors_supported = yes; then ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ else ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$LIBDEVQ_PKG_ERRORS" >&5 ++ ++ as_fn_error $? "gbm needs libdevq" "$LINENO" 5 ++elif test $pkg_failed = untried; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ as_fn_error $? "gbm needs libdevq" "$LINENO" 5 ++else ++ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS ++ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++$as_echo "yes" >&6; } ++ ++fi ++ ;; ++ *) + + pkg_failed=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 +@@ -21755,6 +21863,8 @@ + $as_echo "yes" >&6; } + + fi ++ ;; ++ esac + + if test "x$enable_dri" = xyes; then + GBM_BACKEND_DIRS="$GBM_BACKEND_DIRS dri" +@@ -21763,7 +21873,14 @@ + fi + fi + fi +-GBM_PC_REQ_PRIV="libudev" ++case "$host_os" in ++*freebsd*) ++ GBM_PC_REQ_PRIV="libdevq-1.0" ++ ;; ++*) ++ GBM_PC_REQ_PRIV="libudev" ++ ;; ++esac + GBM_PC_LIB_PRIV="$DLOPEN_LIBS" + + +@@ -21782,6 +21899,81 @@ + + if test "$enable_static" != yes; then + # build egl_glx when libGL is built ++ case "$host_os" in ++ *freebsd*) ++ ++pkg_failed=no ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 ++$as_echo_n "checking for LIBDEVQ... " >&6; } ++ ++if test -n "$LIBDEVQ_CFLAGS"; then ++ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++if test -n "$LIBDEVQ_LIBS"; then ++ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++ ++ ++ ++if test $pkg_failed = yes; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi ++ if test $_pkg_short_errors_supported = yes; then ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ else ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$LIBDEVQ_PKG_ERRORS" >&5 ++ ++ have_libdevq=no ++elif test $pkg_failed = untried; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ have_libdevq=no ++else ++ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS ++ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++$as_echo "yes" >&6; } ++ have_libdevq=yes ++fi ++ ;; ++ *) + + pkg_failed=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 +@@ -21853,8 +22045,12 @@ + $as_echo "yes" >&6; } + have_libudev=yes + fi ++ ;; ++ esac + if test "$have_libudev" = yes; then + DEFINES="$DEFINES -DHAVE_LIBUDEV" ++ elif test "$have_libdevq" = yes; then ++ DEFINES="$DEFINES -DHAVE_LIBDEVQ" + fi + + if test "x$enable_dri" = xyes; then +@@ -23053,9 +23249,19 @@ + ;; + esac + +- case "$plat$have_libudev" in +- waylandno|drmno) +- as_fn_error $? "cannot build $plat platfrom without udev" "$LINENO" 5 ;; ++ case "$host_os" in ++ *freebsd*) ++ case "$plat$have_libdevq" in ++ waylandno|drmno) ++ as_fn_error $? "cannot build $plat platfrom without libdevq" "$LINENO" 5 ;; ++ esac ++ ;; ++ *) ++ case "$plat$have_libudev" in ++ waylandno|drmno) ++ as_fn_error $? "cannot build $plat platfrom without udev" "$LINENO" 5 ;; ++ esac ++ ;; + esac + done + +@@ -23348,29 +23554,6 @@ + CLANG_LIBDIR=${LLVM_LIBDIR} + fi + CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} +- as_ac_File=`$as_echo "ac_cv_file_"$CLANG_RESOURCE_DIR/include/stddef.h"" | $as_tr_sh` +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"$CLANG_RESOURCE_DIR/include/stddef.h\"" >&5 +-$as_echo_n "checking for \"$CLANG_RESOURCE_DIR/include/stddef.h\"... " >&6; } +-if eval \${$as_ac_File+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- test "$cross_compiling" = yes && +- as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 +-if test -r ""$CLANG_RESOURCE_DIR/include/stddef.h""; then +- eval "$as_ac_File=yes" +-else +- eval "$as_ac_File=no" +-fi +-fi +-eval ac_res=\$$as_ac_File +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +-$as_echo "$ac_res" >&6; } +-if eval test \"x\$"$as_ac_File"\" = x"yes"; then : +- +-else +- 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 + else + MESA_LLVM=0 +@@ -23453,6 +23636,81 @@ + + gallium_require_drm_loader() { + if test "x$enable_gallium_loader" = xyes; then ++ case "$host_os" in ++ *freebsd*) ++ ++pkg_failed=no ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 ++$as_echo_n "checking for LIBDEVQ... " >&6; } ++ ++if test -n "$LIBDEVQ_CFLAGS"; then ++ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++if test -n "$LIBDEVQ_LIBS"; then ++ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" ++ elif test -n "$PKG_CONFIG"; then ++ if test -n "$PKG_CONFIG" && \ ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ ac_status=$? ++ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++ test $ac_status = 0; }; then ++ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` ++ test "x$?" != "x0" && pkg_failed=yes ++else ++ pkg_failed=yes ++fi ++ else ++ pkg_failed=untried ++fi ++ ++ ++ ++if test $pkg_failed = yes; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ ++if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then ++ _pkg_short_errors_supported=yes ++else ++ _pkg_short_errors_supported=no ++fi ++ if test $_pkg_short_errors_supported = yes; then ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ else ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ fi ++ # Put the nasty error message in config.log where it belongs ++ echo "$LIBDEVQ_PKG_ERRORS" >&5 ++ ++ as_fn_error $? "Gallium drm loader requires libdevq" "$LINENO" 5 ++elif test $pkg_failed = untried; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++ as_fn_error $? "Gallium drm loader requires libdevq" "$LINENO" 5 ++else ++ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS ++ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++$as_echo "yes" >&6; } ++ ++fi ++ ;; ++ *) + + pkg_failed=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 +@@ -23524,6 +23782,8 @@ + $as_echo "yes" >&6; } + + fi ++ ;; ++ esac + if test "x$have_libdrm" != xyes; then + as_fn_error $? "Gallium drm loader requires libdrm >= $LIBDRM_REQUIRED" "$LINENO" 5 + fi +@@ -23534,7 +23794,7 @@ + radeon_llvm_check() { + LLVM_REQUIRED_VERSION_MAJOR="3" + LLVM_REQUIRED_VERSION_MINOR="2" +- if test "$LLVM_VERSION_INT" -ne "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then ++ if test "$LLVM_VERSION_INT" -lt "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then + as_fn_error $? "LLVM $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR with R600 target enabled is required. + To use the r600/radeonsi LLVM backend, you need to fetch the LLVM source from: + git://people.freedesktop.org/~tstellar/llvm master diff --git a/graphics/libGL/files-old/patch-mach64_context.h b/graphics/libGL/files-old/patch-mach64_context.h deleted file mode 100644 index 9e3b38e..0000000 --- a/graphics/libGL/files-old/patch-mach64_context.h +++ /dev/null @@ -1,20 +0,0 @@ ---- src/mesa/drivers/dri/mach64/mach64_context.h.orig 2012-06-27 19:59:32.000000000 +0200 -+++ src/mesa/drivers/dri/mach64/mach64_context.h 2012-06-27 20:08:30.000000000 +0200 -@@ -294,11 +294,14 @@ - #define LE32_OUT( x, y ) do { *(GLuint *)(x) = (y); } while (0) - #define LE32_OUT_FLOAT( x, y ) do { *(GLfloat *)(x) = (y); } while (0) - #else --#ifndef __OpenBSD__ --#include <byteswap.h> --#else -+#if defined(__OpenBSD__) - #include <machine/endian.h> - #define bswap_32 bswap32 -+#elif defined(__FreeBSD__) -+#include <sys/endian.h> -+#define bswap_32 bswap32 -+#else -+#include <byteswap.h> - #endif - - #define LE32_IN( x ) bswap_32( *(GLuint *)(x) ) diff --git a/graphics/libGL/files/patch-src-glsl_ir_constant_expression.cpp b/graphics/libGL/files-old/patch-src-glsl_ir_constant_expression.cpp index 8df4043..8df4043 100644 --- a/graphics/libGL/files/patch-src-glsl_ir_constant_expression.cpp +++ b/graphics/libGL/files-old/patch-src-glsl_ir_constant_expression.cpp diff --git a/graphics/libGL/files/patch-src__egl__drivers__dri2__Makefile.in b/graphics/libGL/files-old/patch-src__egl__drivers__dri2__Makefile.in index 50ca60d..50ca60d 100644 --- a/graphics/libGL/files/patch-src__egl__drivers__dri2__Makefile.in +++ b/graphics/libGL/files-old/patch-src__egl__drivers__dri2__Makefile.in diff --git a/graphics/libGL/files/patch-src__egl__drivers__dri2__common.c b/graphics/libGL/files-old/patch-src__egl__drivers__dri2__common.c index 73c4f81..73c4f81 100644 --- a/graphics/libGL/files/patch-src__egl__drivers__dri2__common.c +++ b/graphics/libGL/files-old/patch-src__egl__drivers__dri2__common.c diff --git a/graphics/libGL/files/patch-src__egl__drivers__glx__Makefile.in b/graphics/libGL/files-old/patch-src__egl__drivers__glx__Makefile.in index 7010717..7010717 100644 --- a/graphics/libGL/files/patch-src__egl__drivers__glx__Makefile.in +++ b/graphics/libGL/files-old/patch-src__egl__drivers__glx__Makefile.in diff --git a/graphics/libGL/files/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c b/graphics/libGL/files-old/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c index 071391b..071391b 100644 --- a/graphics/libGL/files/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c +++ b/graphics/libGL/files-old/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c diff --git a/graphics/libGL/files-old/patch-src__gallium__include__pipe__p_config.h b/graphics/libGL/files-old/patch-src__gallium__include__pipe__p_config.h new file mode 100644 index 0000000..be72edb --- /dev/null +++ b/graphics/libGL/files-old/patch-src__gallium__include__pipe__p_config.h @@ -0,0 +1,16 @@ +--- ./src/gallium/include/pipe/p_config.h.orig 2014-02-03 18:42:39.000000000 +0100 ++++ ./src/gallium/include/pipe/p_config.h 2014-02-15 21:11:34.000000000 +0100 +@@ -81,6 +81,13 @@ + #define PIPE_CC_SUNPRO + #endif + ++#if defined(__sparc__) || defined(__sparc64__) ++#define PIPE_ARCH_SPARC ++#if defined(__sparc64__) ++#define PIPE_ARCH_SPARC_64 ++#endif ++#endif ++ + + /* + * Processor architecture diff --git a/graphics/libGL/files/patch-src__gallium__state_trackers__egl__drm__native_drm.c b/graphics/libGL/files-old/patch-src__gallium__state_trackers__egl__drm__native_drm.c index 701b7fc..701b7fc 100644 --- a/graphics/libGL/files/patch-src__gallium__state_trackers__egl__drm__native_drm.c +++ b/graphics/libGL/files-old/patch-src__gallium__state_trackers__egl__drm__native_drm.c diff --git a/graphics/libGL/files/patch-src__gallium__state_trackers__xvmc__tests__xvmc_bench.c b/graphics/libGL/files-old/patch-src__gallium__state_trackers__xvmc__tests__xvmc_bench.c index 5d4f2dc..5d4f2dc 100644 --- a/graphics/libGL/files/patch-src__gallium__state_trackers__xvmc__tests__xvmc_bench.c +++ b/graphics/libGL/files-old/patch-src__gallium__state_trackers__xvmc__tests__xvmc_bench.c diff --git a/graphics/libGL/files/patch-src__gallium__targets__egl-static__egl.c b/graphics/libGL/files-old/patch-src__gallium__targets__egl-static__egl.c index 225cdc4..225cdc4 100644 --- a/graphics/libGL/files/patch-src__gallium__targets__egl-static__egl.c +++ b/graphics/libGL/files-old/patch-src__gallium__targets__egl-static__egl.c diff --git a/graphics/libGL/files/patch-src__gallium__targets__gbm__Makefile.in b/graphics/libGL/files-old/patch-src__gallium__targets__gbm__Makefile.in index dd55acc..dd55acc 100644 --- a/graphics/libGL/files/patch-src__gallium__targets__gbm__Makefile.in +++ b/graphics/libGL/files-old/patch-src__gallium__targets__gbm__Makefile.in diff --git a/graphics/libGL/files/patch-src__gbm__Makefile.in b/graphics/libGL/files-old/patch-src__gbm__Makefile.in index 07e196e..07e196e 100644 --- a/graphics/libGL/files/patch-src__gbm__Makefile.in +++ b/graphics/libGL/files-old/patch-src__gbm__Makefile.in diff --git a/graphics/libGL/files/patch-src__gbm__backends__dri__driver_name.c b/graphics/libGL/files-old/patch-src__gbm__backends__dri__driver_name.c index ac73872..ac73872 100644 --- a/graphics/libGL/files/patch-src__gbm__backends__dri__driver_name.c +++ b/graphics/libGL/files-old/patch-src__gbm__backends__dri__driver_name.c diff --git a/graphics/libGL/files/patch-src__gbm__main__common.c b/graphics/libGL/files-old/patch-src__gbm__main__common.c index 662d022..662d022 100644 --- a/graphics/libGL/files/patch-src__gbm__main__common.c +++ b/graphics/libGL/files-old/patch-src__gbm__main__common.c diff --git a/graphics/libGL/files/patch-src__gbm__main__common.h b/graphics/libGL/files-old/patch-src__gbm__main__common.h index cd870e5..cd870e5 100644 --- a/graphics/libGL/files/patch-src__gbm__main__common.h +++ b/graphics/libGL/files-old/patch-src__gbm__main__common.h diff --git a/graphics/libGL/files-old/patch-src__mesa__x86-64__glapi_x86-64.S b/graphics/libGL/files-old/patch-src__mesa__x86-64__glapi_x86-64.S deleted file mode 100644 index 908a6fe..0000000 --- a/graphics/libGL/files-old/patch-src__mesa__x86-64__glapi_x86-64.S +++ /dev/null @@ -1,12 +0,0 @@ ---- ./src/mesa/x86-64/glapi_x86-64.S.orig 2009-03-13 04:28:49.000000000 +0100 -+++ ./src/mesa/x86-64/glapi_x86-64.S 2011-01-28 18:12:18.000000000 +0100 -@@ -73,7 +73,8 @@ _x86_64_get_dispatch: - - .p2align 4,,15 - _x86_64_get_dispatch: -- movq _gl_DispatchTSD(%rip), %rdi -+ movq _gl_DispatchTSD@GOTPCREL(%rip), %rax -+ movl (%rax), %edi - jmp pthread_getspecific@PLT - - #elif defined(THREADS) diff --git a/graphics/libGL/files-old/patch-src__mesa__x86-64__xform4.S b/graphics/libGL/files-old/patch-src__mesa__x86-64__xform4.S deleted file mode 100644 index 193e6cc..0000000 --- a/graphics/libGL/files-old/patch-src__mesa__x86-64__xform4.S +++ /dev/null @@ -1,74 +0,0 @@ ---- src/mesa/x86-64/xform4.S.orig 2009-01-22 18:38:35.000000000 +0100 -+++ src/mesa/x86-64/xform4.S 2011-05-09 21:26:00.000000000 +0200 -@@ -53,7 +53,7 @@ _mesa_x86_64_transform_points4_general: - * rdx = source - */ - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -116,7 +116,7 @@ p4_constants: - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 --.float 0f+1.0 -+.float 1.0 - - .text - .align 16 -@@ -135,7 +135,7 @@ _mesa_x86_64_transform_points4_3d: - movaps 16(%rax), %xmm10 - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -195,7 +195,7 @@ p4_3d_done: - _mesa_x86_64_transform_points4_identity: - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -223,7 +223,7 @@ p4_identity_done: - _mesa_3dnow_transform_points4_3d_no_rot: - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -287,7 +287,7 @@ p4_3d_no_rot_done: - _mesa_3dnow_transform_points4_perspective: - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -353,7 +353,7 @@ p4_perspective_done: - _mesa_3dnow_transform_points4_2d_no_rot: - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ -@@ -408,7 +408,7 @@ p4_2d_no_rot_done: - _mesa_3dnow_transform_points4_2d: - - movl V4F_COUNT(%rdx), %ecx /* count */ -- movzx V4F_STRIDE(%rdx), %eax /* stride */ -+ movzbl V4F_STRIDE(%rdx), %eax /* stride */ - - movl %ecx, V4F_COUNT(%rdi) /* set dest count */ - movl $4, V4F_SIZE(%rdi) /* set dest size */ diff --git a/graphics/libGL/files-old/patch-src__mesa__x86__glapi_x86.S b/graphics/libGL/files-old/patch-src__mesa__x86__glapi_x86.S deleted file mode 100644 index 71da78c..0000000 --- a/graphics/libGL/files-old/patch-src__mesa__x86__glapi_x86.S +++ /dev/null @@ -1,11 +0,0 @@ ---- ./src/mesa/x86/glapi_x86.S.orig 2009-03-13 04:28:49.000000000 +0100 -+++ ./src/mesa/x86/glapi_x86.S 2011-01-28 18:11:56.000000000 +0100 -@@ -47,7 +47,7 @@ - #define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX)) - - #if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) --#define GLOBL_FN(x) GLOBL x ; .type x, function -+#define GLOBL_FN(x) GLOBL x ; .type x, @function - #else - #define GLOBL_FN(x) GLOBL x - #endif diff --git a/graphics/libGL/files-old/patch-src__mesa__x86__read_rgba_span_x86.S b/graphics/libGL/files-old/patch-src__mesa__x86__read_rgba_span_x86.S deleted file mode 100644 index 37b08d1..0000000 --- a/graphics/libGL/files-old/patch-src__mesa__x86__read_rgba_span_x86.S +++ /dev/null @@ -1,11 +0,0 @@ ---- ./src/mesa/x86/read_rgba_span_x86.S.orig 2008-08-25 16:46:47.000000000 +0200 -+++ ./src/mesa/x86/read_rgba_span_x86.S 2011-01-28 18:10:06.000000000 +0100 -@@ -648,7 +648,7 @@ _generic_read_RGBA_span_RGB565_MMX: - testl $0x01, %ecx - je .L01 - -- movzxw (%eax), %ecx -+ movzwl (%eax), %ecx - movd %ecx, %mm4 - - pshufw $0x00, %mm4, %mm0 diff --git a/graphics/libGL/files/patch-src_gallium_drivers_r300_r300-chipset.c b/graphics/libGL/files-old/patch-src_gallium_drivers_r300_r300-chipset.c index 821b07c..821b07c 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_r300_r300-chipset.c +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_r300_r300-chipset.c diff --git a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600-asm.c b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600-asm.c index 3b580dd..3b580dd 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600-asm.c +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600-asm.c diff --git a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600-shader.c b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600-shader.c index 3721b25..3721b25 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600-shader.c +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600-shader.c diff --git a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600_state_common.c b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600_state_common.c index f7ad4ca..f7ad4ca 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_r600_r600_state_common.c +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_r600_r600_state_common.c diff --git a/graphics/libGL/files/patch-src_gallium_drivers_radeon_radeon-llvm-emit.cpp b/graphics/libGL/files-old/patch-src_gallium_drivers_radeon_radeon-llvm-emit.cpp index ee67776..ee67776 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_radeon_radeon-llvm-emit.cpp +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_radeon_radeon-llvm-emit.cpp diff --git a/graphics/libGL/files/patch-src_gallium_drivers_radeonsi_r600-buffer.c b/graphics/libGL/files-old/patch-src_gallium_drivers_radeonsi_r600-buffer.c index 505f3a1..505f3a1 100644 --- a/graphics/libGL/files/patch-src_gallium_drivers_radeonsi_r600-buffer.c +++ b/graphics/libGL/files-old/patch-src_gallium_drivers_radeonsi_r600-buffer.c diff --git a/graphics/libGL/files/patch-src_gallium_winsys_svga_drm_vmw-screen-ioctl.c b/graphics/libGL/files-old/patch-src_gallium_winsys_svga_drm_vmw-screen-ioctl.c index 208601d..208601d 100644 --- a/graphics/libGL/files/patch-src_gallium_winsys_svga_drm_vmw-screen-ioctl.c +++ b/graphics/libGL/files-old/patch-src_gallium_winsys_svga_drm_vmw-screen-ioctl.c diff --git a/graphics/libGL/files-old/patch-src_glx_x11_XF86dri.c b/graphics/libGL/files-old/patch-src_glx_x11_XF86dri.c deleted file mode 100644 index 1d082b5..0000000 --- a/graphics/libGL/files-old/patch-src_glx_x11_XF86dri.c +++ /dev/null @@ -1,38 +0,0 @@ ---- src/glx/x11/XF86dri.c.orig 2009-06-17 18:35:16.000000000 +0000 -+++ src/glx/x11/XF86dri.c 2013-05-29 10:09:37.000000000 +0000 -@@ -43,6 +43,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN - #include <X11/extensions/Xext.h> - #include <X11/extensions/extutil.h> - #include "xf86dristr.h" -+#include <limits.h> - - - #if defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__) >= 303 -@@ -212,7 +213,11 @@ XF86DRIOpenConnection(Display * dpy, int - } - - if (rep.length) { -- if (!(*busIdString = (char *) Xcalloc(rep.busIdStringLength + 1, 1))) { -+ if (rep.busIdStringLength < INT_MAX) -+ *busIdString = Xcalloc(rep.busIdStringLength + 1, 1); -+ else -+ *busIdString = NULL; -+ if (*busIdString == NULL) { - _XEatData(dpy, ((rep.busIdStringLength + 3) & ~3)); - UnlockDisplay(dpy); - SyncHandle(); -@@ -311,9 +316,11 @@ XF86DRIGetClientDriverName(Display * dpy - *ddxDriverPatchVersion = rep.ddxDriverPatchVersion; - - if (rep.length) { -- if (! -- (*clientDriverName = -- (char *) Xcalloc(rep.clientDriverNameLength + 1, 1))) { -+ if (rep.clientDriverNameLength < INT_MAX) -+ *clientDriverName = Xcalloc(rep.clientDriverNameLength + 1, 1); -+ else -+ *clientDriverName = NULL; -+ if (*clientDriverName == NULL) { - _XEatData(dpy, ((rep.clientDriverNameLength + 3) & ~3)); - UnlockDisplay(dpy); - SyncHandle(); diff --git a/graphics/libGL/files/patch-src_mapi_glapi_gen_gl-gentable.py b/graphics/libGL/files-old/patch-src_mapi_glapi_gen_gl-gentable.py index d952bb6..d952bb6 100644 --- a/graphics/libGL/files/patch-src_mapi_glapi_gen_gl-gentable.py +++ b/graphics/libGL/files-old/patch-src_mapi_glapi_gen_gl-gentable.py diff --git a/graphics/libGL/files-old/patch-src_mesa_Makefile b/graphics/libGL/files-old/patch-src_mesa_Makefile deleted file mode 100644 index 433f3fb..0000000 --- a/graphics/libGL/files-old/patch-src_mesa_Makefile +++ /dev/null @@ -1,15 +0,0 @@ ---- src/mesa/Makefile.orig 2009-12-22 03:31:19.000000000 +0100 -+++ src/mesa/Makefile 2013-08-19 23:19:42.000000000 +0200 -@@ -127,10 +127,10 @@ - $(DESTDIR)$(INSTALL_INC_DIR)/GL - - install-libgl: default gl.pc install-headers -- $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR) -+ $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/.libGL - $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig - $(MINSTALL) $(TOP)/$(LIB_DIR)/$(GL_LIB_GLOB) \ -- $(DESTDIR)$(INSTALL_LIB_DIR) -+ $(DESTDIR)$(INSTALL_LIB_DIR)/.libGL - $(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig - - install-osmesa: default osmesa.pc diff --git a/graphics/libGL/files/patch-src_mesa_drivers_dri_common_Makefile.in b/graphics/libGL/files-old/patch-src_mesa_drivers_dri_common_Makefile.in index 1084e90..1084e90 100644 --- a/graphics/libGL/files/patch-src_mesa_drivers_dri_common_Makefile.in +++ b/graphics/libGL/files-old/patch-src_mesa_drivers_dri_common_Makefile.in diff --git a/graphics/libGL/files/patch-src_mesa_drivers_dri_common_xmlpool_Makefile.in b/graphics/libGL/files-old/patch-src_mesa_drivers_dri_common_xmlpool_Makefile.in index 4f2a84b..4f2a84b 100644 --- a/graphics/libGL/files/patch-src_mesa_drivers_dri_common_xmlpool_Makefile.in +++ b/graphics/libGL/files-old/patch-src_mesa_drivers_dri_common_xmlpool_Makefile.in diff --git a/graphics/libGL/files/patch-src_mesa_main_compiler.h b/graphics/libGL/files-old/patch-src_mesa_main_compiler.h index 50cf3a8..50cf3a8 100644 --- a/graphics/libGL/files/patch-src_mesa_main_compiler.h +++ b/graphics/libGL/files-old/patch-src_mesa_main_compiler.h diff --git a/graphics/libGL/files/patch-src_mesa_main_imports.c b/graphics/libGL/files-old/patch-src_mesa_main_imports.c index c5979f7..c5979f7 100644 --- a/graphics/libGL/files/patch-src_mesa_main_imports.c +++ b/graphics/libGL/files-old/patch-src_mesa_main_imports.c diff --git a/graphics/libGL/files-old/pkg-deinstall.in b/graphics/libGL/files-old/pkg-deinstall.in new file mode 100644 index 0000000..37d8953 --- /dev/null +++ b/graphics/libGL/files-old/pkg-deinstall.in @@ -0,0 +1,12 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +PREFIX="${PKG_PREFIX-/usr/local}" + +case $2 in +DEINSTALL) + /bin/rm -f ${PREFIX}/lib/libGL.so* + ;; +esac diff --git a/graphics/libGL/files-old/pkg-install.in b/graphics/libGL/files-old/pkg-install.in new file mode 100644 index 0000000..280922c --- /dev/null +++ b/graphics/libGL/files-old/pkg-install.in @@ -0,0 +1,18 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +PREFIX="${PKG_PREFIX-/usr/local}" + +case $2 in +POST-INSTALL) + if [ -f ${PREFIX}/lib/.nvidia/libGL.so.1 ]; then + /bin/ln -f ${PREFIX}/lib/.nvidia/libGL.so.1 ${PREFIX}/lib/libGL.so + /bin/ln -f ${PREFIX}/lib/.nvidia/libGL.so.1 ${PREFIX}/lib/libGL.so.1 + else + /bin/ln -f ${PREFIX}/lib/.libGL/libGL.so.1 ${PREFIX}/lib/libGL.so + /bin/ln -f ${PREFIX}/lib/.libGL/libGL.so.1 ${PREFIX}/lib/libGL.so.1 + fi + ;; +esac diff --git a/graphics/libGL/files/configure.ac b/graphics/libGL/files/configure.ac new file mode 100644 index 0000000..170618f --- /dev/null +++ b/graphics/libGL/files/configure.ac @@ -0,0 +1,100 @@ +--- configure.ac.orig 2014-08-21 01:41:38.000000000 +0200 ++++ configure.ac 2014-08-29 13:40:20.688548140 +0200 +@@ -37,6 +37,7 @@ + DRI3PROTO_REQUIRED=1.0 + PRESENTPROTO_REQUIRED=1.0 + LIBUDEV_REQUIRED=151 ++LIBDEVQ_REQUIRED=0.0.2 + GLPROTO_REQUIRED=1.4.14 + LIBOMXIL_BELLAGIO_REQUIRED=0.0 + VDPAU_REQUIRED=0.4.1 +@@ -53,7 +54,7 @@ + AM_PROG_CC_C_O + AM_PROG_AS + AC_CHECK_PROGS([MAKE], [gmake make]) +-AC_CHECK_PROGS([PYTHON2], [python2 python]) ++AC_CHECK_PROGS([PYTHON2], [python2.7 python2 python]) + AC_PROG_SED + AC_PROG_MKDIR_P + +@@ -152,7 +153,7 @@ + DEFINES="-DUSE_EXTERNAL_DXTN_LIB=1" + AC_SUBST([DEFINES]) + case "$host_os" in +-linux*|*-gnu*|gnu*) ++linux*|*-gnu*|gnu*|freebsd*) + DEFINES="$DEFINES -D_GNU_SOURCE -DHAVE_PTHREAD" + ;; + solaris*) +@@ -581,7 +582,7 @@ + [enable_dri=yes]) + + case "$host_os" in +-linux*) ++linux*|freebsd*) + dri3_default=yes + ;; + *) +@@ -855,6 +856,9 @@ + PKG_CHECK_MODULES([LIBUDEV], [libudev >= $LIBUDEV_REQUIRED], + have_libudev=yes, have_libudev=no) + ++PKG_CHECK_MODULES([LIBDEVQ], [libdevq-1.0 >= $LIBDEVQ_REQUIRED], ++ have_libdevq=yes, have_libdevq=no) ++ + AC_ARG_ENABLE([sysfs], + [AS_HELP_STRING([--enable-sysfs], + [enable /sys PCI identification @<:@default=disabled@:>@])], +@@ -949,6 +953,10 @@ + DEFINES="$DEFINES -DHAVE_LIBUDEV" + have_pci_id=yes + fi ++if test "$have_libdevq" = yes; then ++ DEFINES="$DEFINES -DHAVE_LIBDEVQ" ++ have_pci_id=yes ++fi + + if test "$have_sysfs" = yes; then + DEFINES="$DEFINES -DHAVE_SYSFS" +@@ -1069,6 +1077,23 @@ + *freebsd* | dragonfly* | *netbsd* | openbsd*) + DEFINES="$DEFINES -DHAVE_PTHREAD" + DEFINES="$DEFINES -DHAVE_ALIAS" ++dnl not sure about dri3 support, just enable it for now. ++ if test "x$enable_dri3" = xyes; then ++ DEFINES="$DEFINES -DHAVE_DRI3" ++ fi ++ ++ if test "x$have_libdevq" != xyes; then ++ AC_MSG_ERROR([libdevq required for building DRI]) ++ fi ++ ++ case "$host_cpu" in ++ powerpc* | sparc*) ++ # Build only the drivers for cards that exist on PowerPC/sparc ++ if test "x$with_dri_drivers" = "xyes"; then ++ with_dri_drivers="r200 radeon swrast" ++ fi ++ ;; ++ esac + ;; + gnu*) + DEFINES="$DEFINES -DHAVE_ALIAS" +@@ -1252,6 +1277,8 @@ + AM_CONDITIONAL(HAVE_GBM, test "x$enable_gbm" = xyes) + if test "x$need_pci_id$have_libudev" = xyesyes; then + GBM_PC_REQ_PRIV="libudev >= $LIBUDEV_REQUIRED" ++elif test "x$need_libdevq" = xyes; then ++ GBM_PC_REQ_PRIV="libdevq-1.0 >= $LIBDEVQ_REQUIRED" + else + GBM_PC_REQ_PRIV="" + fi +@@ -1728,8 +1755,6 @@ + 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 + else + MESA_LLVM=0 diff --git a/graphics/libGL/files/patch-Makefile.in b/graphics/libGL/files/patch-Makefile.in index 3adcc5d..8bebfd6 100644 --- a/graphics/libGL/files/patch-Makefile.in +++ b/graphics/libGL/files/patch-Makefile.in @@ -1,12 +1,14 @@ ---- Makefile.in.orig 2014-05-11 21:01:42.000000000 +0200 -+++ Makefile.in 2014-05-11 21:02:12.000000000 +0200 -@@ -87,9 +87,7 @@ +--- Makefile.in.orig 2014-05-18 10:37:51.000000000 +0200 ++++ Makefile.in 2014-05-18 10:38:21.000000000 +0200 +@@ -85,10 +85,8 @@ + $(top_srcdir)/m4/ax_gcc_builtin.m4 \ + $(top_srcdir)/m4/ax_prog_bison.m4 \ $(top_srcdir)/m4/ax_prog_flex.m4 \ - $(top_srcdir)/m4/ax_pthread.m4 \ - $(top_srcdir)/m4/ax_python_module.m4 \ -- $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ -- $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ -- $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac +- $(top_srcdir)/m4/ax_pthread.m4 $(top_srcdir)/m4/libtool.m4 \ +- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ +- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ +- $(top_srcdir)/VERSION $(top_srcdir)/configure.ac ++ $(top_srcdir)/m4/ax_pthread.m4 \ + $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) diff --git a/graphics/libGL/files/patch-configure b/graphics/libGL/files/patch-configure index e56b2c2..be9deef 100644 --- a/graphics/libGL/files/patch-configure +++ b/graphics/libGL/files/patch-configure @@ -1,185 +1,73 @@ ---- configure.orig 2014-03-14 20:50:56.000000000 +0100 -+++ configure 2014-03-14 20:51:25.000000000 +0100 -@@ -779,6 +779,8 @@ - GBM_PC_REQ_PRIV - LIBUDEV_LIBS - LIBUDEV_CFLAGS +--- configure.orig 2014-08-29 13:42:21.635540273 +0200 ++++ configure 2014-08-29 13:42:55.401537200 +0200 +@@ -858,6 +858,8 @@ + GLPROTO_CFLAGS + XLIBGL_LIBS + XLIBGL_CFLAGS +LIBDEVQ_LIBS +LIBDEVQ_CFLAGS - OSMESA_PC_LIB_PRIV - OSMESA_PC_REQ - OSMESA_MESA_DEPS -@@ -1126,6 +1128,8 @@ - NOUVEAU_LIBS - RADEON_CFLAGS - RADEON_LIBS -+LIBDEVQ_CFLAGS -+LIBDEVQ_LIBS + LIBUDEV_LIBS + LIBUDEV_CFLAGS + LIBDRM_LIBS +@@ -1146,6 +1148,8 @@ + LIBDRM_LIBS LIBUDEV_CFLAGS LIBUDEV_LIBS - XORG_CFLAGS -@@ -1930,6 +1934,10 @@ - RADEON_CFLAGS - C compiler flags for RADEON, overriding pkg-config - RADEON_LIBS linker flags for RADEON, overriding pkg-config ++LIBDEVQ_CFLAGS ++LIBDEVQ_LIBS + XLIBGL_CFLAGS + XLIBGL_LIBS + GLPROTO_CFLAGS +@@ -1945,6 +1949,10 @@ + C compiler flags for LIBUDEV, overriding pkg-config + LIBUDEV_LIBS + linker flags for LIBUDEV, overriding pkg-config + LIBDEVQ_CFLAGS + C compiler flags for LIBDEVQ, overriding pkg-config + LIBDEVQ_LIBS + linker flags for LIBDEVQ, overriding pkg-config - LIBUDEV_CFLAGS - C compiler flags for LIBUDEV, overriding pkg-config - LIBUDEV_LIBS -@@ -21184,9 +21192,34 @@ - DEFINES="$DEFINES -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1" - DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS" - -- if test "x$DRI_DIRS" = "xyes"; then -- DRI_DIRS="i915 i965 nouveau r200 radeon swrast" -- fi -+ case "$host_cpu" in -+ x86_64|ia64) -+ # i810 is missing because there is no x86-64 system where it -+ # could *ever* be used. -+ if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="i915 i965 nouveau r200 radeon swrast" -+ fi -+ ;; -+ i*86) -+ if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="i915 i965 nouveau r200 radeon swrast" -+ fi -+ ;; -+ powerpc*) -+ # Build only the drivers for cards that exist on PowerPC. -+ # At some point MGA will be added, but not yet. -+ if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="r200 radeon swrast" -+ fi -+ ;; -+ sparc*) -+ # Build only the drivers for cards that exist on SPARC. -+ if test "x$DRI_DIRS" = "xyes"; then -+ DRI_DIRS="r200 radeon swrast" -+ fi -+ ;; -+ esac -+ - ;; - gnu*) - DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER" -@@ -21684,6 +21717,81 @@ - if test "x$enable_gbm" = xyes; then - SRC_DIRS="$SRC_DIRS gbm" + XLIBGL_CFLAGS + C compiler flags for XLIBGL, overriding pkg-config + XLIBGL_LIBS linker flags for XLIBGL, overriding pkg-config +@@ -5086,6 +5094,7 @@ + DRI3PROTO_REQUIRED=1.0 + PRESENTPROTO_REQUIRED=1.0 + LIBUDEV_REQUIRED=151 ++LIBDEVQ_REQUIRED=0.0.2 + GLPROTO_REQUIRED=1.4.14 + LIBOMXIL_BELLAGIO_REQUIRED=0.0 + VDPAU_REQUIRED=0.4.1 +@@ -6519,7 +6528,7 @@ + test -n "$MAKE" && break + done -+ case "$host_os" in -+ *freebsd*) -+ -+pkg_failed=no -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 -+$as_echo_n "checking for LIBDEVQ... " >&6; } -+ -+if test -n "$LIBDEVQ_CFLAGS"; then -+ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+if test -n "$LIBDEVQ_LIBS"; then -+ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+ -+ -+ -+if test $pkg_failed = yes; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ -+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then -+ _pkg_short_errors_supported=yes -+else -+ _pkg_short_errors_supported=no -+fi -+ if test $_pkg_short_errors_supported = yes; then -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` -+ else -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` -+ fi -+ # Put the nasty error message in config.log where it belongs -+ echo "$LIBDEVQ_PKG_ERRORS" >&5 -+ -+ as_fn_error $? "gbm needs libdevq" "$LINENO" 5 -+elif test $pkg_failed = untried; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ as_fn_error $? "gbm needs libdevq" "$LINENO" 5 -+else -+ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS -+ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; } -+ -+fi -+ ;; -+ *) +-for ac_prog in python2 python ++for ac_prog in python2.7 python2 python + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +@@ -17891,7 +17900,7 @@ + DEFINES="-DUSE_EXTERNAL_DXTN_LIB=1" - pkg_failed=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 -@@ -21755,6 +21863,8 @@ - $as_echo "yes" >&6; } + case "$host_os" in +-linux*|*-gnu*|gnu*) ++linux*|*-gnu*|gnu*|freebsd*) + DEFINES="$DEFINES -D_GNU_SOURCE -DHAVE_PTHREAD" + ;; + solaris*) +@@ -19147,7 +19156,7 @@ - fi -+ ;; -+ esac - if test "x$enable_dri" = xyes; then - GBM_BACKEND_DIRS="$GBM_BACKEND_DIRS dri" -@@ -21763,7 +21873,14 @@ - fi - fi + case "$host_os" in +-linux*) ++linux*|freebsd*) + dri3_default=yes + ;; + *) +@@ -19669,6 +19678,78 @@ + have_libudev=yes fi --GBM_PC_REQ_PRIV="libudev" -+case "$host_os" in -+*freebsd*) -+ GBM_PC_REQ_PRIV="libdevq-1.0" -+ ;; -+*) -+ GBM_PC_REQ_PRIV="libudev" -+ ;; -+esac - GBM_PC_LIB_PRIV="$DLOPEN_LIBS" - - -@@ -21782,6 +21899,81 @@ - if test "$enable_static" != yes; then - # build egl_glx when libGL is built -+ case "$host_os" in -+ *freebsd*) + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 @@ -189,12 +77,12 @@ + pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0 >= \$LIBDEVQ_REQUIRED\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0 >= $LIBDEVQ_REQUIRED") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` ++ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes @@ -206,12 +94,12 @@ + pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 ++ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0 >= \$LIBDEVQ_REQUIRED\""; } >&5 ++ ($PKG_CONFIG --exists --print-errors "libdevq-1.0 >= $LIBDEVQ_REQUIRED") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` ++ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes @@ -232,9 +120,9 @@ + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>&1` + else -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` ++ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$LIBDEVQ_PKG_ERRORS" >&5 @@ -251,174 +139,60 @@ +$as_echo "yes" >&6; } + have_libdevq=yes +fi -+ ;; -+ *) - - pkg_failed=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 -@@ -21853,8 +22045,12 @@ - $as_echo "yes" >&6; } - have_libudev=yes ++ + # Check whether --enable-sysfs was given. + if test "${enable_sysfs+set}" = set; then : + enableval=$enable_sysfs; have_sysfs="$enableval" +@@ -20373,6 +20454,10 @@ + DEFINES="$DEFINES -DHAVE_LIBUDEV" + have_pci_id=yes fi -+ ;; -+ esac - if test "$have_libudev" = yes; then - DEFINES="$DEFINES -DHAVE_LIBUDEV" -+ elif test "$have_libdevq" = yes; then -+ DEFINES="$DEFINES -DHAVE_LIBDEVQ" - fi - - if test "x$enable_dri" = xyes; then -@@ -23053,9 +23249,19 @@ - ;; - esac ++if test "$have_libdevq" = yes; then ++ DEFINES="$DEFINES -DHAVE_LIBDEVQ" ++ have_pci_id=yes ++fi -- case "$plat$have_libudev" in -- waylandno|drmno) -- as_fn_error $? "cannot build $plat platfrom without udev" "$LINENO" 5 ;; -+ case "$host_os" in -+ *freebsd*) -+ case "$plat$have_libdevq" in -+ waylandno|drmno) -+ as_fn_error $? "cannot build $plat platfrom without libdevq" "$LINENO" 5 ;; -+ esac -+ ;; -+ *) -+ case "$plat$have_libudev" in -+ waylandno|drmno) -+ as_fn_error $? "cannot build $plat platfrom without udev" "$LINENO" 5 ;; -+ esac + if test "$have_sysfs" = yes; then + DEFINES="$DEFINES -DHAVE_SYSFS" +@@ -20498,6 +20583,22 @@ + *freebsd* | dragonfly* | *netbsd* | openbsd*) + DEFINES="$DEFINES -DHAVE_PTHREAD" + DEFINES="$DEFINES -DHAVE_ALIAS" ++ if test "x$enable_dri3" = xyes; then ++ DEFINES="$DEFINES -DHAVE_DRI3" ++ fi ++ ++ if test "x$have_libdevq" != xyes; then ++ as_fn_error $? "libdevq required for building DRI" "$LINENO" 5 ++ fi ++ ++ case "$host_cpu" in ++ powerpc* | sparc*) ++ # Build only the drivers for cards that exist on PowerPC/sparc ++ if test "x$with_dri_drivers" = "xyes"; then ++ with_dri_drivers="r200 radeon swrast" ++ fi + ;; - esac - done ++ esac + ;; + gnu*) + DEFINES="$DEFINES -DHAVE_ALIAS" +@@ -21226,6 +21327,8 @@ -@@ -23348,29 +23554,6 @@ + if test "x$need_pci_id$have_libudev" = xyesyes; then + GBM_PC_REQ_PRIV="libudev >= $LIBUDEV_REQUIRED" ++elif test "x$need_libdevq" = xyes; then ++ GBM_PC_REQ_PRIV="libdevq-1.0 >= $LIBDEVQ_REQUIRED" + else + GBM_PC_REQ_PRIV="" + fi +@@ -22541,9 +22644,6 @@ CLANG_LIBDIR=${LLVM_LIBDIR} fi CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} -- as_ac_File=`$as_echo "ac_cv_file_"$CLANG_RESOURCE_DIR/include/stddef.h"" | $as_tr_sh` --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"$CLANG_RESOURCE_DIR/include/stddef.h\"" >&5 --$as_echo_n "checking for \"$CLANG_RESOURCE_DIR/include/stddef.h\"... " >&6; } --if eval \${$as_ac_File+:} false; then : -- $as_echo_n "(cached) " >&6 --else -- test "$cross_compiling" = yes && -- as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 --if test -r ""$CLANG_RESOURCE_DIR/include/stddef.h""; then -- eval "$as_ac_File=yes" --else -- eval "$as_ac_File=no" --fi --fi --eval ac_res=\$$as_ac_File -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 --$as_echo "$ac_res" >&6; } --if eval test \"x\$"$as_ac_File"\" = x"yes"; then : -- --else +- 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 else - MESA_LLVM=0 -@@ -23453,6 +23636,81 @@ - - gallium_require_drm_loader() { - if test "x$enable_gallium_loader" = xyes; then -+ case "$host_os" in -+ *freebsd*) -+ -+pkg_failed=no -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 -+$as_echo_n "checking for LIBDEVQ... " >&6; } -+ -+if test -n "$LIBDEVQ_CFLAGS"; then -+ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+if test -n "$LIBDEVQ_LIBS"; then -+ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+ -+ -+ -+if test $pkg_failed = yes; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ -+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then -+ _pkg_short_errors_supported=yes -+else -+ _pkg_short_errors_supported=no -+fi -+ if test $_pkg_short_errors_supported = yes; then -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0" 2>&1` -+ else -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0" 2>&1` -+ fi -+ # Put the nasty error message in config.log where it belongs -+ echo "$LIBDEVQ_PKG_ERRORS" >&5 -+ -+ as_fn_error $? "Gallium drm loader requires libdevq" "$LINENO" 5 -+elif test $pkg_failed = untried; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ as_fn_error $? "Gallium drm loader requires libdevq" "$LINENO" 5 -+else -+ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS -+ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; } -+ -+fi -+ ;; -+ *) - - pkg_failed=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBUDEV" >&5 -@@ -23524,6 +23782,8 @@ - $as_echo "yes" >&6; } - - fi -+ ;; -+ esac - if test "x$have_libdrm" != xyes; then - as_fn_error $? "Gallium drm loader requires libdrm >= $LIBDRM_REQUIRED" "$LINENO" 5 - fi -@@ -23534,7 +23794,7 @@ - radeon_llvm_check() { - LLVM_REQUIRED_VERSION_MAJOR="3" - LLVM_REQUIRED_VERSION_MINOR="2" -- if test "$LLVM_VERSION_INT" -ne "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then -+ if test "$LLVM_VERSION_INT" -lt "${LLVM_REQUIRED_VERSION_MAJOR}0${LLVM_REQUIRED_VERSION_MINOR}"; then - as_fn_error $? "LLVM $LLVM_REQUIRED_VERSION_MAJOR.$LLVM_REQUIRED_VERSION_MINOR with R600 target enabled is required. - To use the r600/radeonsi LLVM backend, you need to fetch the LLVM source from: - git://people.freedesktop.org/~tstellar/llvm master + MESA_LLVM=0 diff --git a/graphics/libGL/files/patch-src__gallium__drivers__r300__r300_chipset.c b/graphics/libGL/files/patch-src__gallium__drivers__r300__r300_chipset.c new file mode 100644 index 0000000..c1f7662 --- /dev/null +++ b/graphics/libGL/files/patch-src__gallium__drivers__r300__r300_chipset.c @@ -0,0 +1,24 @@ +--- ./src/gallium/drivers/r300/r300_chipset.c.orig 2014-01-06 22:15:40.000000000 +0100 ++++ ./src/gallium/drivers/r300/r300_chipset.c 2014-02-23 22:01:50.000000000 +0100 +@@ -53,6 +53,21 @@ + if (!os_get_process_name(proc_name, sizeof(proc_name))) + return; + ++#if defined(__DragonFly__) || \ ++ defined(__FreeBSD__) || \ ++ defined(__NetBSD__) || \ ++ defined(__OpenBSD__) ++ const char *progname, *program_invocation_short_name; ++ ++ progname = getprogname(); ++ program_invocation_short_name = strrchr(progname, '/'); ++ if (program_invocation_short_name) { ++ program_invocation_short_name++; ++ } else { ++ program_invocation_short_name = progname; ++ } ++#endif ++ + for (i = 0; i < Elements(list); i++) { + if (strcmp(list[i], proc_name) == 0) { + caps->zmask_ram = 0; diff --git a/graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h b/graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h index be72edb..f6df7a3 100644 --- a/graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h +++ b/graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h @@ -1,5 +1,5 @@ ---- ./src/gallium/include/pipe/p_config.h.orig 2014-02-03 18:42:39.000000000 +0100 -+++ ./src/gallium/include/pipe/p_config.h 2014-02-15 21:11:34.000000000 +0100 +--- ./src/gallium/include/pipe/p_config.h.orig 2014-01-23 18:02:42.000000000 +0100 ++++ ./src/gallium/include/pipe/p_config.h 2014-02-23 22:01:50.000000000 +0100 @@ -81,6 +81,13 @@ #define PIPE_CC_SUNPRO #endif diff --git a/graphics/libGL/files/patch-src__gallium__state_trackers__clover__util__range.hpp b/graphics/libGL/files/patch-src__gallium__state_trackers__clover__util__range.hpp new file mode 100644 index 0000000..426ceb5 --- /dev/null +++ b/graphics/libGL/files/patch-src__gallium__state_trackers__clover__util__range.hpp @@ -0,0 +1,40 @@ +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 | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/gallium/state_trackers/clover/util/range.hpp b/src/gallium/state_trackers/clover/util/range.hpp +index afa5f77..359edda 100644 +--- src/gallium/state_trackers/clover/util/range.hpp ++++ 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)... }; + } +-- +1.8.5.4 + diff --git a/graphics/libGL/files/patch-src__gallium__winsys__svga__drm__vmw_screen_ioctl.c b/graphics/libGL/files/patch-src__gallium__winsys__svga__drm__vmw_screen_ioctl.c new file mode 100644 index 0000000..ae12d3f --- /dev/null +++ b/graphics/libGL/files/patch-src__gallium__winsys__svga__drm__vmw_screen_ioctl.c @@ -0,0 +1,14 @@ +--- ./src/gallium/winsys/svga/drm/vmw_screen_ioctl.c.orig 2014-01-06 22:15:40.000000000 +0100 ++++ ./src/gallium/winsys/svga/drm/vmw_screen_ioctl.c 2014-02-23 22:01:50.000000000 +0100 +@@ -66,6 +66,11 @@ + */ + #define SVGA3D_SURFACE_HINT_SCANOUT (1 << 9) + ++#if defined(__DragonFly__) || defined(__FreeBSD__) || \ ++ defined(__NetBSD__) || defined(__OpenBSD__) ++#define ERESTART EINTR ++#endif ++ + uint32 + vmw_ioctl_context_create(struct vmw_winsys_screen *vws) + { diff --git a/graphics/libGL/files/patch-src__glsl__ir_constant_expression.cpp b/graphics/libGL/files/patch-src__glsl__ir_constant_expression.cpp new file mode 100644 index 0000000..168ac03 --- /dev/null +++ b/graphics/libGL/files/patch-src__glsl__ir_constant_expression.cpp @@ -0,0 +1,14 @@ +--- ./src/glsl/ir_constant_expression.cpp.orig 2014-02-05 21:59:10.000000000 +0100 ++++ ./src/glsl/ir_constant_expression.cpp 2014-02-23 22:01:50.000000000 +0100 +@@ -60,6 +60,11 @@ + } + #endif + ++#include <sys/param.h> ++#if __FreeBSD_version <= 704100 || (__FreeBSD_version >= 800000 && __FreeBSD_version < 802502) || (__FreeBSD_version >= 900000 && __FreeBSD_version < 900027) ++#define log2(x) (log(x) / log(2)) ++#endif ++ + static float + dot(ir_constant *op0, ir_constant *op1) + { diff --git a/graphics/libGL/files/patch-src__loader__Makefile.in b/graphics/libGL/files/patch-src__loader__Makefile.in new file mode 100644 index 0000000..94068d3 --- /dev/null +++ b/graphics/libGL/files/patch-src__loader__Makefile.in @@ -0,0 +1,20 @@ +--- src/loader/Makefile.in.orig 2014-08-29 13:44:57.595529080 +0200 ++++ src/loader/Makefile.in 2014-08-29 13:46:36.674521667 +0200 +@@ -315,6 +315,8 @@ + LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ + LIBCLC_INCLUDEDIR = @LIBCLC_INCLUDEDIR@ + LIBCLC_LIBEXECDIR = @LIBCLC_LIBEXECDIR@ ++LIBDEVQ_CFLAGS = @LIBDEVQ_CFLAGS@ ++LIBDEVQ_LIBS = @LIBDEVQ_LIBS@ + LIBDRM_CFLAGS = @LIBDRM_CFLAGS@ + LIBDRM_LIBS = @LIBDRM_LIBS@ + LIBOBJS = @LIBOBJS@ +@@ -485,7 +487,7 @@ + noinst_LTLIBRARIES = libloader.la + libloader_la_CPPFLAGS = $(DEFINES) -I$(top_srcdir)/include \ + -I$(top_srcdir)/src $(VISIBILITY_CFLAGS) $(LIBUDEV_CFLAGS) \ +- $(am__append_1) $(am__append_4) $(am__append_5) ++ $(LIBDEVQ_CFLAGS) $(am__append_1) $(am__append_4) $(am__append_5) + libloader_la_SOURCES = $(LOADER_C_FILES) $(am__append_2) + libloader_la_LIBADD = $(am__append_3) $(am__append_6) + all: all-am diff --git a/graphics/libGL/files/patch-src__loader__loader.c b/graphics/libGL/files/patch-src__loader__loader.c new file mode 100644 index 0000000..ea8ae2b --- /dev/null +++ b/graphics/libGL/files/patch-src__loader__loader.c @@ -0,0 +1,90 @@ +--- src/loader/loader.c.orig 2014-08-21 01:27:47.000000000 +0200 ++++ src/loader/loader.c 2014-09-04 19:57:56.384142575 +0200 +@@ -67,7 +67,7 @@ + #include <stdarg.h> + #include <stdio.h> + #include <string.h> +-#ifdef HAVE_LIBUDEV ++#if defined(HAVE_LIBUDEV) || defined(HAVE_LIBDEVQ) + #include <assert.h> + #include <dlfcn.h> + #include <fcntl.h> +@@ -488,6 +488,53 @@ + } + #endif + ++#if defined(HAVE_LIBDEVQ) ++#include <libdevq.h> ++ ++static void *devq_handle = NULL; ++ ++static void * ++devq_dlopen_handle(void) ++{ ++ if (!devq_handle) { ++ devq_handle = dlopen("libdevq.so.0", RTLD_LOCAL | RTLD_LAZY); ++ } ++ ++ return devq_handle; ++} ++ ++static void * ++asserted_dlsym(void *dlopen_handle, const char *name) ++{ ++ void *result = dlsym(dlopen_handle, name); ++ assert(result); ++ return result; ++} ++ ++#define DEVQ_SYMBOL(ret, name, args) \ ++ ret (*name) args = asserted_dlsym(devq_dlopen_handle(), #name); ++ ++static int ++devq_get_pci_id_from_fd(int fd, int *vendor_id, int *chip_id) ++{ ++ int ret; ++ DEVQ_SYMBOL(int, devq_device_get_pciid_from_fd, ++ (int fd, int *vendor_id, int *chip_id)); ++ ++ *chip_id = -1; ++ ++ ret = devq_device_get_pciid_from_fd(fd, vendor_id, chip_id); ++ if (ret < 0) { ++ log_(_LOADER_WARNING, "MESA-LOADER: could not get PCI ID\n"); ++ goto out; ++ } ++ ++out: ++ return (*chip_id >= 0); ++} ++ ++#endif ++ + #if !defined(__NOT_HAVE_DRM_H) + /* for i915 */ + #include <i915_drm.h> +@@ -571,6 +618,10 @@ + if (sysfs_get_pci_id_for_fd(fd, vendor_id, chip_id)) + return 1; + #endif ++#if HAVE_LIBDEVQ ++ if (devq_get_pci_id_from_fd(fd, vendor_id, chip_id)) ++ return 1; ++#endif + #if !defined(__NOT_HAVE_DRM_H) + if (drm_get_pci_id_for_fd(fd, vendor_id, chip_id)) + return 1; +@@ -665,6 +716,13 @@ + if ((result = sysfs_get_device_name_for_fd(fd))) + return result; + #endif ++#if HAVE_LIBDEVQ ++#if 0 ++/* XXX implement this function in libdevq */ ++ if ((result = devq_device_get_name_for_fd(fd))) ++ return result; ++#endif ++#endif + return result; + } + diff --git a/graphics/libGL/files/patch-src__mapi__glapi__gen__gl_gentable.py b/graphics/libGL/files/patch-src__mapi__glapi__gen__gl_gentable.py new file mode 100644 index 0000000..b4541a5 --- /dev/null +++ b/graphics/libGL/files/patch-src__mapi__glapi__gen__gl_gentable.py @@ -0,0 +1,11 @@ +--- src/mapi/glapi/gen/gl_gentable.py.orig 2014-08-31 01:21:41.368693630 +0200 ++++ src/mapi/glapi/gen/gl_gentable.py 2014-08-31 01:23:09.451686631 +0200 +@@ -42,7 +42,7 @@ + #endif + + #if (defined(GLXEXT) && defined(HAVE_BACKTRACE)) \\ +- || (!defined(GLXEXT) && defined(DEBUG) && !defined(_WIN32_WCE) && !defined(__CYGWIN__) && !defined(__MINGW32__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__DragonFly__)) ++ || (!defined(GLXEXT) && defined(DEBUG) && !defined(_WIN32_WCE) && !defined(__CYGWIN__) && !defined(__MINGW32__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__) && !defined(__DragonFly__)) + #define USE_BACKTRACE + #endif + diff --git a/graphics/libGL/files/patch-src__mesa__main__compiler.h b/graphics/libGL/files/patch-src__mesa__main__compiler.h new file mode 100644 index 0000000..2cd6606 --- /dev/null +++ b/graphics/libGL/files/patch-src__mesa__main__compiler.h @@ -0,0 +1,12 @@ +--- ./src/mesa/main/compiler.h.orig 2014-01-23 18:02:42.000000000 +0100 ++++ ./src/mesa/main/compiler.h 2014-02-23 22:01:50.000000000 +0100 +@@ -162,6 +162,9 @@ + #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 ) diff --git a/graphics/libGL/files/patch-src__mesa__main__imports.c b/graphics/libGL/files/patch-src__mesa__main__imports.c new file mode 100644 index 0000000..2751c38 --- /dev/null +++ b/graphics/libGL/files/patch-src__mesa__main__imports.c @@ -0,0 +1,11 @@ +--- src/mesa/main/imports.c.orig 2014-05-28 09:50:40.000000000 +0200 ++++ src/mesa/main/imports.c 2014-05-28 09:50:56.000000000 +0200 +@@ -571,7 +571,7 @@ + { + #if defined(_GNU_SOURCE) && !defined(__CYGWIN__) && !defined(__FreeBSD__) && \ + !defined(ANDROID) && !defined(__HAIKU__) && !defined(__UCLIBC__) && \ +- !defined(__NetBSD__) ++ !defined(__DragonFly__) && !defined(__NetBSD__) + static locale_t loc = NULL; + if (!loc) { + loc = newlocale(LC_CTYPE_MASK, "C", NULL); diff --git a/graphics/libGL/files/pkg-install.in b/graphics/libGL/files/pkg-install.in index 280922c..f94c9f1 100644 --- a/graphics/libGL/files/pkg-install.in +++ b/graphics/libGL/files/pkg-install.in @@ -12,6 +12,7 @@ POST-INSTALL) /bin/ln -f ${PREFIX}/lib/.nvidia/libGL.so.1 ${PREFIX}/lib/libGL.so.1 else /bin/ln -f ${PREFIX}/lib/.libGL/libGL.so.1 ${PREFIX}/lib/libGL.so + /bin/ln -f ${PREFIX}/lib/.libGL/libGL.so.1.2.0 ${PREFIX}/lib/libGL.so.1.2.0 /bin/ln -f ${PREFIX}/lib/.libGL/libGL.so.1 ${PREFIX}/lib/libGL.so.1 fi ;; diff --git a/graphics/libGL/files/src__loader__Makefile.am b/graphics/libGL/files/src__loader__Makefile.am new file mode 100644 index 0000000..3739f42 --- /dev/null +++ b/graphics/libGL/files/src__loader__Makefile.am @@ -0,0 +1,12 @@ +--- ./src/loader/Makefile.am.orig 2014-02-05 21:59:10.000000000 +0100 ++++ ./src/loader/Makefile.am 2014-02-23 22:01:50.000000000 +0100 +@@ -27,7 +27,8 @@ + $(DEFINES) \ + -I$(top_srcdir)/include \ + $(VISIBILITY_CFLAGS) \ +- $(LIBUDEV_CFLAGS) ++ $(LIBUDEV_CFLAGS) \ ++ $(LIBDEVQ_CFLAGS) + + if !HAVE_LIBDRM + libloader_la_CPPFLAGS += \ diff --git a/graphics/libGL/pkg-plist b/graphics/libGL/pkg-plist index 9cdb2a8..d910c93 100644 --- a/graphics/libGL/pkg-plist +++ b/graphics/libGL/pkg-plist @@ -1,23 +1,22 @@ -%%OLD%%include/GL/dmesa.h -%%OLD%%include/GL/ggimesa.h +@comment etc/drirc +@comment include/GL/internal/dri_interface.h include/GL/gl.h include/GL/gl_mangle.h +%%NEW%%include/GL/glcorearb.h include/GL/glext.h -%%OLD%%include/GL/glfbdev.h include/GL/glx.h include/GL/glx_mangle.h include/GL/glxext.h -%%OLD%%include/GL/mesa_wgl.h -%%OLD%%include/GL/mglmesa.h include/GL/osmesa.h -%%OLD%%include/GL/svgamesa.h -%%OLD%%include/GL/vms_x_fix.h include/GL/wglext.h include/GL/wmesa.h -%%NEW%%lib/.libGL/libGL.la lib/.libGL/libGL.so lib/.libGL/libGL.so.1 -%%NEW%%lib/.libGL/libGL.so.1.2.0 +lib/.libGL/libGL.so.1.2.0 +@comment lib/libglapi.so +@comment lib/libglapi.so.0 +@comment lib/libglapi.so.0.0.0 +@comment libdata/pkgconfig/dri.pc libdata/pkgconfig/gl.pc @dirrm lib/.libGL @dirrmtry include/GL diff --git a/graphics/libglapi/Makefile b/graphics/libglapi/Makefile index a14319c..f5346c3 100644 --- a/graphics/libglapi/Makefile +++ b/graphics/libglapi/Makefile @@ -1,30 +1,38 @@ # Created by: kwm@FreeBSD.org -# $FreeBSD: head/graphics/libglapi/Makefile 354307 2014-05-17 09:56:00Z kwm $ +# $FreeBSD$ PORTNAME= libglapi PORTVERSION= ${MESAVERSION} +PORTREVISION= ${LIBGLAPI_REVISION} CATEGORIES= graphics COMMENT= Common GL api libary used by Mesa based ports. -BUILD_DEPENDS= expat>=0:${PORTSDIR}/textproc/expat2 \ - libdrm>=0:${PORTSDIR}/graphics/libdrm \ - libpthread-stubs>=0:${PORTSDIR}/devel/libpthread-stubs +LIB_DEPENDS+= libpthread-stubs.so:${PORTSDIR}/devel/libpthread-stubs USE_XORG= x11 xau xcb xdmcp # stuff not needed by libglapi but configure wants it -USE_XORG+= glproto dri2proto dri3proto xext xdamage xfixes presentproto \ +USE_XORG+= glproto dri2proto xext xdamage xfixes presentproto \ xshmfence - -BUILD_WRKSRC= ${WRKSRC}/src/mapi/shared-glapi -INSTALL_WRKSRC= ${WRKSRC}/src/mapi/shared-glapi +LIB_DEPENDS+= libexpat.so:${PORTSDIR}/textproc/expat2 \ + libdrm.so:${PORTSDIR}/graphics/libdrm .include <bsd.port.options.mk> +.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" -.if ! defined(WITH_NEW_XORG) -IGNORE= Please enable WITH_NEW_XORG, libglapi needs libdrm higher then 2.4.24 +.if defined (WITH_NEW_MESA) +LIBGLAPI_REVISION= 0 +.else +LIBGLAPI_REVISION= 2 +.endif + +.if defined (WITH_NEW_MESA) +BUILD_WRKSRC= ${WRKSRC}/src/mapi +INSTALL_WRKSRC= ${WRKSRC}/src/mapi +.else +BUILD_WRKSRC= ${WRKSRC}/src/mapi/shared-glapi +INSTALL_WRKSRC= ${WRKSRC}/src/mapi/shared-glapi .endif -.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" .include <bsd.port.mk> diff --git a/graphics/libglapi/pkg-descr b/graphics/libglapi/pkg-descr index a7fd4a9..f0ed995 100644 --- a/graphics/libglapi/pkg-descr +++ b/graphics/libglapi/pkg-descr @@ -1,3 +1,3 @@ -This package contains the share GL API library. +This package contains the EGL utility library. WWW: http://www.freedesktop.org/Software/xorg diff --git a/graphics/libglapi/pkg-plist b/graphics/libglapi/pkg-plist index 184b8a4..f2a3e03 100644 --- a/graphics/libglapi/pkg-plist +++ b/graphics/libglapi/pkg-plist @@ -1,4 +1,3 @@ -lib/libglapi.la lib/libglapi.so lib/libglapi.so.0 lib/libglapi.so.0.0.0 diff --git a/graphics/libglesv2/Makefile b/graphics/libglesv2/Makefile index 72bc21c..4829157 100644 --- a/graphics/libglesv2/Makefile +++ b/graphics/libglesv2/Makefile @@ -1,33 +1,44 @@ # Created by: kwm@FreeBSD.org -# $FreeBSD: head/graphics/libglesv2/Makefile 354307 2014-05-17 09:56:00Z kwm $ +# $FreeBSD: head/graphics/libglesv2/Makefile 351411 2014-04-16 18:28:47Z zeising $ PORTNAME= libglesv2 PORTVERSION= ${MESAVERSION} -PORTREVISION= 1 +PORTREVISION= ${LIBGLES_REVISION} CATEGORIES= graphics COMMENT= OpenGL ES v2 library -BUILD_DEPENDS= expat>=0:${PORTSDIR}/textproc/expat2 LIB_DEPENDS+= libdrm.so:${PORTSDIR}/graphics/libdrm \ - libglapi.so:${PORTSDIR}/graphics/libglapi + libglapi.so:${PORTSDIR}/graphics/libglapi \ + libexpat.so:${PORTSDIR}/textproc/expat2 + +# stuff not needed by libglesv2 but configure wants it +USE_XORG+= glproto dri2proto xext xdamage xfixes presentproto \ + xshmfence .include <bsd.port.options.mk> +.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" -.if ! defined(WITH_NEW_XORG) -IGNORE= Please enable WITH_NEW_XORG, libglesv2 needs libdrm higher then 2.4.24 +.if defined(WITH_NEW_MESA) +LIBGLES_REVISION= 0 +.else +LIBGLES_REVISION= 3 .endif -# stuff not needed by libEGL but configure wants it -USE_XORG+= glproto dri2proto xext xdamage xfixes - - -BUILD_WKRSRC= ${WRKSRC}/src/mapi/es2api +.if defined(WITH_NEW_MESA) +BUILD_WRKSRC= ${WRKSRC}/src/mapi +INSTALL_WRKSRC= ${WRKSRC}/src/mapi +.else +BUILD_WRKSRC= ${WRKSRC}/src/mapi/es2api INSTALL_WRKSRC= ${WRKSRC}/src/mapi/es2api +.endif -# this library doesn't exist in Mesa 7.6 so use newer -WITH_NEW_XORG=yes +.if !defined(WITH_NEW_MESA) +pre-build: + @cd ${WRKSRC}/src/mapi/shared-glapi && ${MAKE_CMD} ${_MAKE_JOBS} +.else +post-install: + @${RM} ${STAGEDIR}/${PREFIX}/lib/libglapi* +.endif -.include <bsd.port.options.mk> -.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" .include <bsd.port.mk> diff --git a/graphics/libglesv2/pkg-plist b/graphics/libglesv2/pkg-plist index 45c4e97..8abc024 100644 --- a/graphics/libglesv2/pkg-plist +++ b/graphics/libglesv2/pkg-plist @@ -2,9 +2,9 @@ include/GLES2/gl2.h include/GLES2/gl2ext.h include/GLES2/gl2platform.h include/GLES3/gl3.h +%%NEW%%include/GLES3/gl31.h include/GLES3/gl3ext.h include/GLES3/gl3platform.h -lib/libGLESv2.la lib/libGLESv2.so lib/libGLESv2.so.2 lib/libGLESv2.so.2.0.0 |