diff --git a/devel/libclc/Makefile b/devel/libclc/Makefile index 651295ba1965..1ca4ae8d3960 100644 --- a/devel/libclc/Makefile +++ b/devel/libclc/Makefile @@ -3,7 +3,7 @@ PORTNAME= libclc DISTVERSION= 0.3.0.20180518 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= devel MAINTAINER= x11@FreeBSD.org @@ -13,7 +13,7 @@ LICENSE= BSD3CLAUSE MIT LICENSE_COMB= dual LICENSE_FILE= ${WRKSRC}/LICENSE.TXT -BUILD_DEPENDS= llvm${LLVM_DEFAULT}>=4.0:devel/llvm${LLVM_DEFAULT} \ +BUILD_DEPENDS= llvm${LLVMVER}>=4.0:devel/llvm${LLVMVER} \ libedit>=0:devel/libedit USE_GITHUB= yes @@ -24,6 +24,9 @@ GH_TAGNAME= a2118d5 USES= gmake python:2.7,build gmake USE_LDCONFIG= yes MAKE_ENV= MAKE=${GMAKE} DESTDIR=${STAGEDIR} + +LLVMVER= ${MESA_LLVM_VER:U60} + ALL_TARGET= post-patch: @@ -34,7 +37,7 @@ post-patch: do-configure: @cd ${WRKSRC} && ${PYTHON_CMD} configure.py ${CONFIGURE_ARGS} -g make \ - --with-llvm-config=${LOCALBASE}/bin/llvm-config${LLVM_DEFAULT} \ + --with-llvm-config=${LOCALBASE}/bin/llvm-config${LLVMVER} \ --pkgconfigdir=${PREFIX}/libdata/pkgconfig \ --prefix=${PREFIX} diff --git a/graphics/libosmesa/Makefile b/graphics/libosmesa/Makefile index 20d3afe5f78f..81f262092ea5 100644 --- a/graphics/libosmesa/Makefile +++ b/graphics/libosmesa/Makefile @@ -3,6 +3,7 @@ PORTNAME= libosmesa PORTVERSION= ${MESAVERSION} +PORTREVISION= 2 CATEGORIES= graphics COMMENT= Off-Screen Mesa implementation of the OpenGL API @@ -17,7 +18,7 @@ CONFIGURE_ARGS+= --disable-dri --disable-egl --disable-gbm \ MESA_BUILD_WRKSRC= src/util src/compiler src/mapi src/mesa LDFLAGS_i386= -Wl,-znotext -.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH:Marm*} || ${ARCH} == i386 || ${ARCH:Mpowerpc*} +.if "${MESA_LLVM_VER}" != "" CONFIGURE_ARGS+= --enable-osmesa-gallium MESA_BUILD_WRKSRC+= src/gallium MESA_INSTALL_WRKSRC= src/gallium/state_trackers/osmesa src/gallium/targets/osmesa diff --git a/graphics/mesa-dri/Makefile b/graphics/mesa-dri/Makefile index 195df8d68594..09ad68602c10 100644 --- a/graphics/mesa-dri/Makefile +++ b/graphics/mesa-dri/Makefile @@ -3,7 +3,7 @@ PORTNAME= mesa-dri PORTVERSION= ${MESAVERSION} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= graphics COMMENT= OpenGL hardware acceleration drivers for DRI2+ @@ -33,7 +33,7 @@ ALL_GALLIUM_DRIVERS= FREEDRENO R300 R600 RADEONSI SVGA SWRAST VC4 ALL_VULKAN_DRIVERS= INTEL RADEON DRI_DRIVERS= SWRAST # classic swrast -.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH:Marm*} || ${ARCH} == i386 || ${ARCH:Mpowerpc*} +.if "${MESA_LLVM_VER}" != "" GALLIUM_DRIVERS= SWRAST # llvmpipe .else GALLIUM_DRIVERS= "" @@ -43,8 +43,15 @@ VULKAN_DRIVERS= # .if ${ARCH} == amd64 || ${ARCH} == i386 \ || ${ARCH} == powerpc || ${ARCH} == powerpc64 DRI_DRIVERS+= RADEON R200 -GALLIUM_DRIVERS+= R300 R600 RADEONSI +GALLIUM_DRIVERS+= R600 +. if "${MESA_LLVM_VER}" != "" && (${ARCH} == amd64 || ${ARCH} == i386) +# https://cgit.freedesktop.org/mesa/mesa/commit/?id=58952675f6d4 +GALLIUM_DRIVERS+= R300 +. endif +. if "${MESA_LLVM_VER}" != "" # until PPC gets LLVM in base +GALLIUM_DRIVERS+= RADEONSI VULKAN_DRIVERS+= RADEON +. endif .endif .if ${ARCH} == amd64 || ${ARCH} == i386 DRI_DRIVERS+= I915 I965 diff --git a/graphics/mesa-dri/Makefile.common b/graphics/mesa-dri/Makefile.common index a141b7c399bc..9b6bad5b7229 100644 --- a/graphics/mesa-dri/Makefile.common +++ b/graphics/mesa-dri/Makefile.common @@ -74,13 +74,19 @@ INSTALL_TARGET= install-strip .include -.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH:Marm*} || ${ARCH} == i386 || ${ARCH:Mpowerpc*} -BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT} -.if ${COMPONENT} != libs -RUN_DEPENDS+= llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT} +# need LLVM for libEGL wherever possible, but mixing GCC and LLVM breaks Gallium +.if ${CHOSEN_COMPILER_TYPE} == clang \ + || (${COMPONENT} == libs && ${ARCH} != sparc64) # no working LLVM +MESA_LLVM_VER?= 60 .endif -CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${LLVM_DEFAULT} -LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${LLVM_DEFAULT}/lib + +.if "${MESA_LLVM_VER}" != "" +BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} +.if ${COMPONENT} != libs +RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} +.endif +CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} +LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${MESA_LLVM_VER}/lib CONFIGURE_ARGS+= --enable-llvm .else CONFIGURE_ARGS+= --disable-llvm diff --git a/lang/beignet/Makefile b/lang/beignet/Makefile index bc59b4cc35fa..3d89df9113f5 100644 --- a/lang/beignet/Makefile +++ b/lang/beignet/Makefile @@ -4,7 +4,7 @@ PORTNAME= beignet DISTVERSION= 1.3.2 DISTVERSIONSUFFIX= -source -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= lang MASTER_SITES= https://01.org/sites/default/files/ @@ -14,12 +14,12 @@ COMMENT= OpenCL library for Intel GPUs LICENSE= LGPL21+ LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} \ +BUILD_DEPENDS= clang${LLVMVER}:devel/llvm${LLVMVER} \ opencl>=0:devel/opencl LIB_DEPENDS= libOpenCL.so:devel/ocl-icd \ libdrm.so:graphics/libdrm RUN_DEPENDS= opencl>=0:devel/opencl \ - clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} + clang${LLVMVER}:devel/llvm${LLVMVER} WRKSRC= ${WRKDIR}/Beignet-${DISTVERSION}-Source @@ -29,11 +29,12 @@ USE_GL= gl egl USE_LDCONFIG= ${LOCALBASE}/lib/${PORTNAME} SHEBANG_FILES= src/git_sha1.sh backend/kernels/compile.sh ALL_TARGET= all +LLVMVER= ${MESA_LLVM_VER:U60} -CMAKE_ARGS= -DCLANG_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ - -DLLVM_AS_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-as${LLVM_DEFAULT} \ - -DLLVM_CONFIG_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-config${LLVM_DEFAULT} \ - -DLLVM_LINK_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-link${LLVM_DEFAULT} +CMAKE_ARGS= -DCLANG_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/clang${LLVMVER} \ + -DLLVM_AS_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-as${LLVMVER} \ + -DLLVM_CONFIG_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-config${LLVMVER} \ + -DLLVM_LINK_EXECUTABLE:FILEPATH=${LOCALBASE}/bin/llvm-link${LLVMVER} ONLY_FOR_ARCHS= i386 amd64 ONLY_FOR_ARCHS_REASON= Beignet needs a graphics driver supported by the Intel KMS driver @@ -52,8 +53,8 @@ OCL20_CMAKE_BOOL= ENABLE_OPENCL_20 TEST_ALL_TARGET= flat_address_space utest_run post-patch: - @${REINPLACE_CMD} -e 's|llvm-dis|llvm-dis${LLVM_DEFAULT}|g; \ - s|clang |clang${LLVM_DEFAULT} |g' \ + @${REINPLACE_CMD} -e 's|llvm-dis|llvm-dis${LLVMVER}|g; \ + s|clang |clang${LLVMVER} |g' \ ${WRKSRC}/backend/kernels/compile.sh # XXX bug 213732: compiler_device_enqueue() Interrupt signal (SIGSEGV) received. diff --git a/lang/clover/Makefile b/lang/clover/Makefile index b090325226e4..8ad320fed62e 100644 --- a/lang/clover/Makefile +++ b/lang/clover/Makefile @@ -2,7 +2,7 @@ PORTNAME= clover PORTVERSION= ${MESAVERSION} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang COMMENT= Mesa "Clover" OpenCL library @@ -31,9 +31,9 @@ MESA_INSTALL_WRKSRC= src/gallium/targets/opencl src/gallium/targets/pipe-loader .include "${MASTERDIR}/Makefile.targets" pre-configure: - @if [ -e ${LOCALBASE}/bin/llvm-config${LLVM_DEFAULT} ] && \ - ! [ -e ${LOCALBASE}/bin/clang${LLVM_DEFAULT} ]; then \ - ${ECHO_MSG} "Your llvm${LLVM_DEFAULT} is not built with clang support, which is required."; \ + @if [ -e ${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} ] && \ + ! [ -e ${LOCALBASE}/bin/clang${MESA_LLVM_VER} ]; then \ + ${ECHO_MSG} "Your llvm${MESA_LLVM_VER} is not built with clang support, which is required."; \ ${FALSE}; \ fi