diff options
Diffstat (limited to 'graphics/dri')
-rw-r--r-- | graphics/dri/Makefile | 112 | ||||
-rw-r--r-- | graphics/dri/pkg-plist | 19 |
2 files changed, 93 insertions, 38 deletions
diff --git a/graphics/dri/Makefile b/graphics/dri/Makefile index 875907c1cc31..c3b67b99447d 100644 --- a/graphics/dri/Makefile +++ b/graphics/dri/Makefile @@ -9,72 +9,108 @@ CATEGORIES= graphics COMMENT= OpenGL hardware acceleration drivers for the DRI -LIB_DEPENDS= drm:${PORTSDIR}/graphics/libdrm \ - expat:${PORTSDIR}/textproc/expat2 +LIB_DEPENDS= libdrm.so:${PORTSDIR}/graphics/libdrm \ + libexpat.so:${PORTSDIR}/textproc/expat2 USES= pkgconfig USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto +.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} >= 901000 && ${OSVERSION} < 902502 \ + && (${ARCH} == i386 || ${ARCH} == amd64) +CC=clang +CXX=clang++ +CPP=clang-cpp +. elif ${OSVERSION} < 901500 +USE_GCC=yes +. endif +.endif + +.if ${ARCH} == ia64 +#BROKEN= does not install on ia64 +.endif + ALL_DRI_DRIVERS=I915 I965 R200 RADEON SWRAST -.if ! defined(WITH_NEW_XORG) +.if !defined(WITH_NEW_XORG) ALL_DRI_DRIVERS+=I810 MACH64 MGA R128 R300 R600 SAVAGE SIS TDFX UNICHROME .endif NO_STAGE= yes .include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk" -OPTIONS_DEFINE_i386= ${ALL_DRI_DRIVERS} -OPTIONS_DEFINE_amd64= ${OPTIONS_DEFINE_i386} +PLIST_SUB+= VERSION=${MESADISTVERSION} -.if defined(WITH_NEW_XORG) -OPTIONS_DEFINE_powerpc= RADEON SWRAST -OPTIONS_DEFINE_sparc64= RADEON SWRAST -.else -OPTIONS_DEFINE_powerpc= MACH64 RADEON SWRAST TDFX -OPTIONS_DEFINE_sparc64= MACH64 RADEON SWRAST +.if ${ARCH} == amd64 || ${ARCH} == i386 +DRI_DRIVERS= ${ALL_DRI_DRIVERS} .endif -OPTIONS_DEFAULT=${OPTIONS_DEFINE} - -I810_DESC= Include DRI support for Intel i810 -I915_DESC= Include DRI support for Intel i915 -I965_DESC= Include DRI support for Intel i965 -MACH64_DESC= Include DRI support for AMD/ATI Mach64 -MGA_DESC= Include DRI support for Matrox -R128_DESC= Include DRI support for AMD/ATI R128 -R200_DESC= Include DRI support for AMD/ATI R200 -R300_DESC= Include DRI support for AMD/ATI R300 -R600_DESC= Include DRI support for AMD/ATI R600 -RADEON_DESC= Include DRI support for AMD/ATI RADEON -SAVAGE_DESC= Include DRI support for S3/Via Savage -SIS_DESC= Include DRI support for SiS 300 and 6326 -SWRAST_DESC= Include generic software DRI support -TDFX_DESC= Include DRI support for 3dfx Voodoo -UNICHROME_DESC= Include DRI support for S3/Via Unichrome - -.include <bsd.port.options.mk> +.if defined(WITH_NEW_XORG) +. if defined(WITH_GALLIUM) && (${ARCH} == i386 || ${ARCH} == amd64) +BUILD_DEPENDS+= llvm-config33:${PORTSDIR}/devel/llvm33 +RUN_DEPENDS+= llvm-config33:${PORTSDIR}/devel/llvm33 +CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config33 + +CONFIGURE_ARGS+=--enable-gallium-llvm --disable-gallium-egl + +CONFIGURE_ARGS+=--with-gallium-drivers=r300,r600,radeonsi,svga,swrast +PLIST_SUB+= GALLIUM="" +. else +CONFIGURE_ARGS+=--enable-gallium-llvm=no --without-gallium-drivers +PLIST_SUB+= GALLIUM="@comment " +. endif +. if ${ARCH} == powerpc || ${ARCH} == ia64 +DRI_DRIVERS= RADEON SWRAST +. endif +. if ${ARCH} == sparc64 +DRI_DRIVERS= SWRAST +. endif +.else # !defined(WITH_NEW_XORG) +. if ${ARCH} == powerpc +DRI_DRIVERS= MACH64 RADEON SWRAST TDFX +. elif ${ARCH} == sparc64 +DRI_DRIVERS= MACH64 RADEON SWRAST +. endif +.endif # defined(WITH_NEW_XORG) -DRI_DRIVERS= .for _d in ${ALL_DRI_DRIVERS} -.if ${PORT_OPTIONS:M${_d}} -DRI_DRIVERS+= ${_d} +.if ${DRI_DRIVERS:M${_d}} PLIST_SUB+= ${_d}_DRIVER="" .else PLIST_SUB+= ${_d}_DRIVER="@comment " .endif .endfor -.if ${ARCH} == "ia64" -BROKEN= does not install on ia64 -.endif - -.if !(${ARCH} == "amd64" || ${ARCH} == "i386") +.if !(${ARCH} == amd64 || ${ARCH} == i386) CONFIGURE_ARGS+=--disable-gallium-intel .endif CONFIGURE_ARGS+=--with-dri-drivers="${DRI_DRIVERS:L}" +.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 + do-install: +.if !defined(WITH_NEW_XORG) cd ${WRKSRC}/src/mesa; ${GMAKE} install-dri +.else + cd ${WRKSRC}/src/mesa/libdricore; ${GMAKE} install + cd ${WRKSRC}/src/mesa/drivers/dri; ${GMAKE} install +. if defined(WITH_GALLIUM) && (${ARCH} == i386 || ${ARCH} == amd64) + cd ${WRKSRC}/src/gallium/drivers/radeon; ${GMAKE} install + cd ${WRKSRC}/src/gallium/targets; ${GMAKE} install +. endif +.endif .include <bsd.port.mk> diff --git a/graphics/dri/pkg-plist b/graphics/dri/pkg-plist index 43e5ab1a8ade..d80890bb33d4 100644 --- a/graphics/dri/pkg-plist +++ b/graphics/dri/pkg-plist @@ -1,19 +1,38 @@ +%%NEW%%%%I965_DRIVER%%etc/drirc include/GL/internal/dri_interface.h %%OLD%%%%I810_DRIVER%%lib/dri/i810_dri.so +%%NEW%%%%I915_DRIVER%%lib/dri/i915_dri.la %%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 %%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 %%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%%%%GALLIUM%%lib/libllvmradeon%%VERSION%%.la +%%NEW%%%%GALLIUM%%lib/libllvmradeon%%VERSION%%.so libdata/pkgconfig/dri.pc @dirrm lib/dri @dirrmtry include/GL/internal |