Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F111164468
D10508.id27968.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
10 KB
Referenced Files
None
Subscribers
None
D10508.id27968.diff
View Options
Index: lang/pocl/Makefile
===================================================================
--- lang/pocl/Makefile
+++ lang/pocl/Makefile
@@ -1,8 +1,7 @@
# $FreeBSD$
PORTNAME= pocl
-PORTVERSION= 0.13
-PORTREVISION= 1
+PORTVERSION= 0.14
CATEGORIES= lang
MASTER_SITES= SF/pocl \
http://portablecl.org/downloads/
@@ -10,7 +9,7 @@
MAINTAINER= ohartman@zedat.fu-berlin.de
COMMENT= POrtable Computing Language (POCL)
-LICENSE= GPLv3
+LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= llvm${LLVM_VERSION}>=0:devel/llvm${LLVM_VERSION} \
@@ -20,46 +19,31 @@
libltdl.so:devel/libltdl
RUN_DEPENDS= llvm${LLVM_VERSION}>=0:devel/llvm${LLVM_VERSION}
-CONFLICTS= freeocl[0-9]*
-
BROKEN_FreeBSD_10= pocl is not supported on 10.x
-ONLY_FOR_ARCHS= amd64
-ONLY_FOR_ARCHS_REASON_amd64= only tested on amd64
+ONLY_FOR_ARCHS= i386 amd64
+ONLY_FOR_ARCHS_REASON= only tested on x86
-LLVM_VERSION= 38
+LLVM_VERSION= ${MESA_LLVM_VER:U40}
-GNU_CONFIGURE= yes
USE_LDCONFIG= yes
-USE_GL= yes
-USES= gmake localbase ncurses pathfix pkgconfig libtool:keepla
-
-INSTALL_TARGET= install-strip
-
-MAKE_ARGS+= PKGCONFIGDIR=${PREFIX}/libdata/pkgconfig
-
-CONFIGURE_ENV= LLVM_CONFIG="${LOCALBASE}/llvm${LLVM_VERSION}/bin/llvm-config" \
- CLANGXX_FLAGS=-std=gnu++11
-# needed for the libltdl configure check
-LDFLAGS+= -L${LOCALBASE}/lib
-PLIST_SUB= OPSYS=${OPSYS:tl} ARCH=${ARCH}
-
-ALL_TARGET= all
-
-OCL_ICD_VENDORS?= ${PREFIX}/etc/OpenCL/vendors
-
-OPTIONS_DEFINE= DEBUG
+USE_CXXSTD= gnu++11
+USES= cmake localbase:ldflags ncurses pkgconfig
-OPTIONS_GROUP= TEST
-OPTIONS_GROUP_TEST= OCLBOOK
+CMAKE_ARGS= -DWITH_LLVM_CONFIG="${LOCALBASE}/llvm${LLVM_VERSION}/bin/llvm-config" \
+ -DPOCL_INSTALL_PKGCONFIG_DIR="${PREFIX}/libdata/pkgconfig" \
+ -DKERNELLIB_HOST_CPU_VARIANTS="distro"
+PLIST_SUB= OPSYS=${OPSYS:tl} ARCH=${ARCH:S/amd64/x86_64/}
-OCLBOOK_DESC= Tests from the OpenCL book
-DEBUG_DESC= Debug build of pocl
+OPTIONS_DEFINE= DEBUG TEST
-OCLBOOK_CONFIGURE_ENABLE= enable_testsuites="opencl-book-samples,cloverleaf,opencl_book_samples,halide,vexcl"
-OCLBOOK_ALL_TARGET= check
+TEST_DESC= Tests from the OpenCL book
+TEST_CMAKE_OFF= -DENABLE_TESTSUITES=""
+TEST_CMAKE_ON= -DENABLE_TESTSUITES="all"
+TEST_TARGET= test
-DEBUG_CONFIGURE_ENABLE= debug
+post-patch:
+ @${REINPLACE_CMD} -e 's/AMD64/amd64/' ${WRKSRC}/CMakeLists.txt
-TEST_TARGET= check
+pre-install-TEST-on: do-test
.include <bsd.port.mk>
Index: lang/pocl/distinfo
===================================================================
--- lang/pocl/distinfo
+++ lang/pocl/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1479738879
-SHA256 (pocl-0.13.tar.gz) = a17f37d8f26819c0c8efc6de2b57f67a0c8a81514fc9cd5005434e49d67499f9
-SIZE (pocl-0.13.tar.gz) = 1901208
+TIMESTAMP = 1491868935
+SHA256 (pocl-0.14.tar.gz) = 2127bf925a91fbbe3daf2f1bac0da5c8aceb16e2a9434977a3057eade974106a
+SIZE (pocl-0.14.tar.gz) = 1231630
Index: lang/pocl/files/patch-Makefile.in
===================================================================
--- lang/pocl/files/patch-Makefile.in
+++ /dev/null
@@ -1,25 +0,0 @@
-First part: this is false, this was due to a libtool bug, which is fixed now
-Second part: cmp --quiet is long for the -s option, use that since FreeBSD
-cmp doesn't have the long option.
-
---- Makefile.in.orig 2016-09-13 22:57:13.327123000 +0200
-+++ Makefile.in 2016-09-13 23:01:18.738696000 +0200
-@@ -116,8 +116,7 @@
- @POCL_ANDROID_FALSE@am__append_1 = scripts examples tests
-
- #TODO: this naming scheme is used on other platforms (primarly BSDs?) too
--@BUILD_ICD_TRUE@@FREEBSD_HOST_OS_TRUE@am__append_2 = -e 's,so.VER,so.$(LIB_CURRENT_VERSION),g'
--@BUILD_ICD_TRUE@@FREEBSD_HOST_OS_FALSE@am__append_3 = -e 's,so.VER,so.$(LIB_FIRST_VERSION).$(LIB_AGE_VERSION).$(LIB_REVISION_VERSION),g'
-+@BUILD_ICD_TRUE@am__append_3 = -e 's,so.VER,so.$(LIB_FIRST_VERSION).$(LIB_AGE_VERSION).$(LIB_REVISION_VERSION),g'
- @BUILD_ICD_TRUE@am__append_4 = pocl.icd
- @BUILD_ICD_TRUE@am__append_5 = pocl.icd
- subdir = .
-@@ -1076,7 +1075,7 @@
- echo "#define PKGDATADIR \"${pkgdatadir}\"" > $@.new
- echo "#define PKGLIBEXECDIR \"${pkglibexecdir}\"" >> $@.new
- echo "#define PKGINCLUDEDIR \"${pkgincludedir}\"" >> $@.new
-- @if cmp --quiet $@.new $@ ; then \
-+ @if cmp -s $@.new $@ ; then \
- : "Paths not changed" ;\
- $(RM) $@.new ;\
- else \
Index: lang/pocl/files/patch-lib_CL_devices_cpuinfo.c
===================================================================
--- lang/pocl/files/patch-lib_CL_devices_cpuinfo.c
+++ lang/pocl/files/patch-lib_CL_devices_cpuinfo.c
@@ -1,5 +1,5 @@
---- lib/CL/devices/cpuinfo.c.orig 2016-11-20 11:31:19.521203000 +0100
-+++ lib/CL/devices/cpuinfo.c 2016-11-20 11:29:24.502817000 +0100
+--- lib/CL/devices/cpuinfo.c.orig 2017-04-05 14:15:40 UTC
++++ lib/CL/devices/cpuinfo.c
@@ -31,9 +31,13 @@
# include "vccompat.hpp"
#endif
@@ -10,16 +10,45 @@
#include "config.h"
#include "cpuinfo.h"
-+#if 0
- const char* cpuinfo = "/proc/cpuinfo";
++#ifdef __linux__
+ static const char* cpuinfo = "/proc/cpuinfo";
#define MAX_CPUINFO_SIZE 64*1024
//#define DEBUG_POCL_CPUINFO
-@@ -152,8 +156,29 @@ pocl_cpuinfo_detect_max_clock_frequency(
+@@ -153,8 +157,29 @@ pocl_cpuinfo_detect_max_clock_frequency(
}
return -1;
}
-+#endif
++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
++/**
++ * Detects the maximum clock frequency of the CPU.
++ *
++ * Assumes all cores have the same max clock freq.
++ *
++ * @return The clock frequency in MHz.
++ */
++int
++pocl_cpuinfo_detect_max_clock_frequency()
++{
++ //XXX PLEASE NOTE, THIS IS NOT TOO PORTABLE (AND/OR ACCURATE)!
++ const char mib[] = "hw.clockrate";
++ int clockrate;
++ size_t size = sizeof(clockrate);
+
++ sysctlbyname(mib, (void *)&clockrate, &size, NULL, 0);
+
++ return clockrate;
++ }
++#endif
+
++#ifdef __linux__
+ /**
+ * Detects the number of parallel hardware threads supported by
+ * the CPU by parsing the cpuinfo.
+@@ -232,6 +257,27 @@ pocl_cpuinfo_detect_compute_unit_count()
+ }
+ return -1;
+ }
++#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+/**
+ * Detects the number of parallel hardware threads supported by
+ * the CPU.
@@ -31,56 +60,27 @@
+{
+ int mib[2], nocpus;
+ size_t len;
-
++
+ mib[0] = CTL_HW;
+ mib[1] = HW_NCPU;
+ len = sizeof(nocpus);
+ sysctl(mib, 2, &nocpus, &len, NULL, 0);
-
++
+ return nocpus;
+}
-+
-+#if 0
- /**
- * Detects the number of parallel hardware threads supported by
- * the CPU by parsing the cpuinfo.
-@@ -231,6 +256,27 @@ pocl_cpuinfo_detect_compute_unit_count()
- }
- return -1;
- }
+#endif
-+
-+/**
-+ * Detects the maximum clock frequency of the CPU.
-+ *
-+ * Assumes all cores have the same max clock freq.
-+ *
-+ * @return The clock frequency in MHz.
-+ */
-+int
-+pocl_cpuinfo_detect_max_clock_frequency()
-+{
-+ //XXX PLEASE NOTE, THIS IS NOT TOO PORTABLE (AND/OR ACCURATE)!
-+ const char mib[] = "hw.clockrate";
-+ size_t size = sizeof(int);
-+ int clockrate;
-+
-+ sysctlbyname(mib, (void *)&clockrate, &size, NULL, 0);
-+
-+ return clockrate;
-+ }
#ifdef POCL_ANDROID
-@@ -269,6 +315,7 @@ pocl_cpuinfo_get_cpu_name_and_vendor(cl_
+@@ -270,6 +316,7 @@ pocl_cpuinfo_get_cpu_name_and_vendor(cl_
* short_name is in the .data anyways.*/
device->long_name = device->short_name;
-+#if 0
++#ifdef __linux__
/* default vendor and vendor_id, in case it cannot be found by other means */
device->vendor = cpuvendor_default;
if (device->vendor_id == 0)
-@@ -317,6 +364,7 @@ pocl_cpuinfo_get_cpu_name_and_vendor(cl_
+@@ -318,6 +365,7 @@ pocl_cpuinfo_get_cpu_name_and_vendor(cl_
char *new_name = (char*)malloc (len);
snprintf (new_name, len, "%s-%s", device->short_name, start);
device->long_name = new_name;
Index: lang/pocl/files/patch-lib_CL_pocl__binary.c
===================================================================
--- /dev/null
+++ lang/pocl/files/patch-lib_CL_pocl__binary.c
@@ -0,0 +1,11 @@
+--- lib/CL/pocl_binary.c.orig 2017-04-05 14:15:40 UTC
++++ lib/CL/pocl_binary.c
+@@ -36,7 +36,7 @@
+ #include <libgen.h>
+
+ #ifndef __APPLE__
+- #include <endian.h>
++ #include <sys/endian.h>
+ #else
+ #include <libkern/OSByteOrder.h>
+ #define htole16(x) OSSwapHostToLittleInt16(x)
Index: lang/pocl/files/patch-scripts_Makefile.in
===================================================================
--- lang/pocl/files/patch-scripts_Makefile.in
+++ /dev/null
@@ -1,21 +0,0 @@
-dirty hack, pocl-standalone will be installed into stage with
-r-xr-xr-x permissions. So writing to it is problemetic. give the file write
-permission and take it away after.
-
-Upstream (pre 0.14) will be using cmake so this hack is only temporary.
-
---- scripts/Makefile.in.orig 2016-09-13 22:10:48.091956000 +0200
-+++ scripts/Makefile.in 2016-09-13 22:13:33.388168000 +0200
-@@ -651,10 +651,11 @@
-
- install-exec-hook: $(bin_SCRIPTS)
- for f in $(bin_SCRIPTS) ; do \
-+ chmod +w "$(DESTDIR)$(bindir)/$$f" ; \
- sed -e '/^# BEGIN REMOVE ONCE INSTALLED$$/,/^# END REMOVE ONCE INSTALLED$$/d' \
- > "$(DESTDIR)$(bindir)/$$f" \
- < "$$f" && \
-- chmod +x "$(DESTDIR)$(bindir)/$$f" ; \
-+ chmod +x-w "$(DESTDIR)$(bindir)/$$f" ; \
- done
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
Index: lang/pocl/files/patch-tests_regression_test__issue__445.cpp
===================================================================
--- /dev/null
+++ lang/pocl/files/patch-tests_regression_test__issue__445.cpp
@@ -0,0 +1,11 @@
+--- tests/regression/test_issue_445.cpp.orig 2017-04-05 14:15:40 UTC
++++ tests/regression/test_issue_445.cpp
+@@ -29,7 +29,7 @@ private_local_array(__global int *__rest
+ }
+ )CLC";
+
+-int main(int, char *)
++int main(int, char **)
+ {
+ try {
+ int N = 9;
Index: lang/pocl/pkg-plist
===================================================================
--- lang/pocl/pkg-plist
+++ lang/pocl/pkg-plist
@@ -1,27 +1,25 @@
-bin/pocl-standalone
+bin/poclcc
etc/OpenCL/vendors/pocl.icd
include/poclu.h
-lib/libpocl.a
-lib/libpocl.la
lib/libpocl.so
lib/libpocl.so.1
-lib/libpocl.so.1.6.0
-lib/libpoclu.a
-lib/libpoclu.la
+lib/libpocl.so.1.7.0
lib/libpoclu.so
lib/libpoclu.so.1
-lib/libpoclu.so.1.6.0
-lib/pocl/llvmopencl.a
-lib/pocl/llvmopencl.la
-lib/pocl/llvmopencl.so
-lib/pocl/llvmopencl.so.7
-lib/pocl/llvmopencl.so.7.0.0
+lib/libpoclu.so.1.7.0
+lib/pocl/libllvmopencl.so
libdata/pkgconfig/pocl.pc
+%%DATADIR%%/include/_enable_all_exts.h
%%DATADIR%%/include/_kernel.h
%%DATADIR%%/include/_kernel_c.h
%%DATADIR%%/include/_kernel_constants.h
%%DATADIR%%/include/pocl.h
%%DATADIR%%/include/pocl_device.h
-%%DATADIR%%/include/pocl_tests.h
%%DATADIR%%/include/pocl_types.h
-%%DATADIR%%/kernel-%%ARCH%%-portbld-%%OPSYS%%%%OSREL%%.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-avx.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-avx2.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-avx512.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-avx_fma4.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-sse2.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-sse41.bc
+%%DATADIR%%/kernel-%%ARCH%%-unknown-%%OPSYS%%%%OSREL%%-ssse3.bc
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Mar 1, 7:23 AM (14 h, 8 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16900189
Default Alt Text
D10508.id27968.diff (10 KB)
Attached To
Mode
D10508: Update lang/pocl to 0.14 and build with llvm40 by default
Attached
Detach File
Event Timeline
Log In to Comment