@@ -, +, @@ - Expose FP64 and OpenCL 2.0 on amd64 - Allow running tests - Describe license --- lang/beignet/Makefile | 37 +++++++++++++++------- lang/beignet/distinfo | 6 ++-- .../files/patch-utests_image__from__buffer.cpp | 19 +++++++++++ lang/beignet/pkg-plist | 2 ++ 4 files changed, 50 insertions(+), 14 deletions(-) create mode 100644 lang/beignet/files/patch-utests_image__from__buffer.cpp --- b/lang/beignet/Makefile +++ b/lang/beignet/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= beignet -PORTVERSION= 1.3.0 -PORTREVISION= 1 +PORTVERSION= 1.3.1 CATEGORIES= lang MASTER_SITES= https://01.org/sites/default/files/ DISTVERSIONSUFFIX= -source @@ -11,6 +10,9 @@ DISTVERSIONSUFFIX= -source MAINTAINER= x11@FreeBSD.org COMMENT= OpenCL library for Intel GPUs +LICENSE= LGPL21+ +LICENSE_FILE= ${WRKSRC}/COPYING + BUILD_DEPENDS= clang${LLVMVER}:devel/llvm${LLVMVER} \ opencl>=0:devel/opencl LIB_DEPENDS= libOpenCL.so:devel/ocl-icd \ @@ -24,6 +26,7 @@ USES= cmake gmake ncurses pkgconfig shebangfix USE_XORG= sm ice x11 xext xfixes USE_GL= gl egl SHEBANG_FILES= src/git_sha1.sh backend/kernels/compile.sh +ALL_TARGET= all LLVMVER= 39 CMAKE_ARGS+= -DLLVM_CONFIG_EXECUTABLE=${LOCALBASE}/bin/llvm-config${LLVMVER} @@ -31,22 +34,34 @@ CMAKE_ARGS+= -DLLVM_CONFIG_EXECUTABLE=${LOCALBASE}/bin/llvm-config${LLVMVER} ONLY_FOR_ARCHS= i386 amd64 ONLY_FOR_ARCHS_REASON= Beignet needs a graphics driver supported by the Intel KMS driver -# running tests from makefile doesn't work quite yet, so comment them out for now. -#OPTIONS_DEFINE= TESTS -#TESTS_DESC= Build and run the test suite +OPTIONS_DEFINE= FP64 OPENCL20 TEST +OPTIONS_DEFAULT_amd64= OPENCL20 +OPTIONS_EXCLUDE= ${ARCH:Namd64:C/.+/OPENCL20/} +OPTIONS_SUB= yes + +FP64_DESC= Double precision (experimental) +FP64_CMAKE_BOOL= EXPERIMENTAL_DOUBLE + +OPENCL20_DESC= OpenCL 2.0 support +OPENCL20_CMAKE_BOOL= ENABLE_OPENCL_20 + +TEST_ALL_TARGET= flat_address_space utest_run post-patch: @${REINPLACE_CMD} -e 's|llvm-dis|llvm-dis${LLVMVER}|g; \ s|clang |clang${LLVMVER} |g' \ ${WRKSRC}/backend/kernels/compile.sh -#post-patch-TESTS-off: - @${REINPLACE_CMD} -e 's|ADD_SUBDIRECTORY(utests)||g' \ - ${WRKSRC}/CMakeLists.txt + +# XXX bug 213732: compiler_fill_gl_image() [FAILED] +do-test-TEST-on: + -@(cd ${TEST_WRKSRC}/utests; . ./setenv.sh; \ + ./flat_address_space; \ + ./utest_run; \ + ) + +pre-install-TEST-on: do-test-TEST-on post-install: @${RM} -r ${STAGEDIR}${PREFIX}/include/CL -#post-install-TESTS-on: -# @cd ${WRKSRC}/utests && sh ./setenv.sh && ./utest_run - .include --- b/lang/beignet/distinfo +++ b/lang/beignet/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1488314347 -SHA256 (beignet-1.3.0-source.tar.gz) = 63d98b4fe8fba3dbc0299d29fef84560625e5ac51b16b8fed453021d4afb5cd5 -SIZE (beignet-1.3.0-source.tar.gz) = 1133643 +TIMESTAMP = 1489418793 +SHA256 (beignet-1.3.1-source.tar.gz) = 399b7bc64d674b3092683263f7c085c5592686b9d837817e77857248e5cb561f +SIZE (beignet-1.3.1-source.tar.gz) = 1136608 --- /dev/null +++ b/lang/beignet/files/patch-utests_image__from__buffer.cpp @@ -0,0 +1,19 @@ +--- utests/image_from_buffer.cpp.orig 2017-01-20 10:40:51 UTC ++++ utests/image_from_buffer.cpp +@@ -1,6 +1,6 @@ + #include + #include "utest_helper.hpp" +-#include ++#include + #include + + static void image_from_buffer(void) +@@ -33,7 +33,7 @@ static void image_from_buffer(void) + // Setup kernel and images + size_t buffer_sz = sizeof(uint32_t) * w * h; + uint32_t* src_data; +- src_data = (uint32_t*)memalign(base_address_alignment, buffer_sz); ++ src_data = (uint32_t*)aligned_alloc(base_address_alignment, buffer_sz); + if(!src_data) { + fprintf(stderr, "run out of memory\n"); + return; --- b/lang/beignet/pkg-plist +++ b/lang/beignet/pkg-plist @@ -1,6 +1,8 @@ etc/OpenCL/vendors/intel-beignet.icd lib/beignet/beignet.bc lib/beignet/beignet.pch +%%OPENCL20%%lib/beignet/beignet_20.bc +%%OPENCL20%%lib/beignet/beignet_20.pch lib/beignet/include/ocl.h lib/beignet/include/ocl_as.h lib/beignet/include/ocl_async.h