From e17250d6eade82b0fd23820010415057cbbd78ea244f4a2126b12a10226cf5ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ismail=20D=C3=B6nmez?= Date: Thu, 18 May 2017 08:29:48 +0000 Subject: [PATCH] Accepting request 495724 from home:mnhauke:opencl:stable - Update to 0.14 - Support for LLVM/Clang versions 3.9 and 4.0. Version 3.9 was the first release to include all frontend features for OpenCL 2.0. - Ability to build pocl in a mode where online compilation is not supported to run in hosts without LLVM and binaries compiled offline e.g. using poclcc. - pocl's binary format now can contain all the necessary bits to execute the programs on a host without online compiler support. - Initial support for out-of-order execution execution of command queues. - It's now possible to cross-compile pocl when building an offline compiler build. - New driver api extension to support out-of-order and asynchronous devices/drivers. - Pthread and HSA drivers are now fully asynchronous. - CMake now the only supported build system, autotools removed. - LTTng tracing support - Add patches: - pocl-disable-tests.diff - compilation errors on some tests disable tests for now - Remove patches: - 0001-Fixes-357-broken-build-with-GCC-6.1.patch - fixed upstream OBS-URL: https://build.opensuse.org/request/show/495724 OBS-URL: https://build.opensuse.org/package/show/science/pocl?expand=0&rev=17 --- ...-Fixes-357-broken-build-with-GCC-6.1.patch | 26 ---------------- pocl-0.13.tar.gz | 3 -- pocl-0.14.tar.gz | 3 ++ pocl-disable-tests.diff | 19 ++++++++++++ pocl.changes | 27 ++++++++++++++++ pocl.spec | 31 ++++++++++--------- 6 files changed, 66 insertions(+), 43 deletions(-) delete mode 100644 0001-Fixes-357-broken-build-with-GCC-6.1.patch delete mode 100644 pocl-0.13.tar.gz create mode 100644 pocl-0.14.tar.gz create mode 100644 pocl-disable-tests.diff diff --git a/0001-Fixes-357-broken-build-with-GCC-6.1.patch b/0001-Fixes-357-broken-build-with-GCC-6.1.patch deleted file mode 100644 index acd080e..0000000 --- a/0001-Fixes-357-broken-build-with-GCC-6.1.patch +++ /dev/null @@ -1,26 +0,0 @@ -Index: cmake/bitcode_rules.cmake -=================================================================== ---- cmake/bitcode_rules.cmake.orig -+++ cmake/bitcode_rules.cmake -@@ -62,7 +62,7 @@ function(compile_cc_to_bc FILENAME SUBDI - DEPENDS "${FULL_F_PATH}" - ${KERNEL_DEPEND_HEADERS} - COMMAND "${CLANGXX}" ${CLANG_FLAGS} ${KERNEL_CLANGXX_FLAGS} -- ${DEVICE_CL_FLAGS} "-o" "${BC_FILE}" "-c" "${FULL_F_PATH}" -+ ${DEVICE_CL_FLAGS} "-std=c++11" "-o" "${BC_FILE}" "-c" "${FULL_F_PATH}" - COMMENT "Building C++ to LLVM bitcode ${BC_FILE}" - VERBATIM) - endfunction() -Index: lib/kernel/rules.mk -=================================================================== ---- lib/kernel/rules.mk.orig -+++ lib/kernel/rules.mk -@@ -74,7 +74,7 @@ _kernel.h.pch: @top_builddir@/include/${ - @CLANG@ ${CLANG_FLAGS} ${CLFLAGS} ${DEVICE_CL_FLAGS} -D__CBUILD__ -c -o $@ -include ${abs_top_srcdir}/include/_kernel_c.h $< - %.cc.bc: %.cc ${LKERNEL_HDRS_EXTRA} - mkdir -p ${dir $@} -- @CLANGXX@ ${CLANG_FLAGS} ${CLANGXX_FLAGS} ${DEVICE_CL_FLAGS} -c -o $@ $< -+ @CLANGXX@ -std=c++11 ${CLANG_FLAGS} ${CLANGXX_FLAGS} ${DEVICE_CL_FLAGS} -c -o $@ $< - %.cl.bc: %.cl ${abs_top_srcdir}/include/_kernel.h ${abs_top_srcdir}/include/_kernel_c.h ${abs_top_srcdir}/include/pocl_types.h ${LKERNEL_HDRS_EXTRA} - mkdir -p ${dir $@} - @CLANG@ ${CLANG_FLAGS} -x cl ${CLFLAGS} ${DEVICE_CL_FLAGS} -fsigned-char -c -o $@ $< -include ${abs_top_srcdir}/include/_kernel.h diff --git a/pocl-0.13.tar.gz b/pocl-0.13.tar.gz deleted file mode 100644 index 27c43d1..0000000 --- a/pocl-0.13.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a17f37d8f26819c0c8efc6de2b57f67a0c8a81514fc9cd5005434e49d67499f9 -size 1901208 diff --git a/pocl-0.14.tar.gz b/pocl-0.14.tar.gz new file mode 100644 index 0000000..eab482c --- /dev/null +++ b/pocl-0.14.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2127bf925a91fbbe3daf2f1bac0da5c8aceb16e2a9434977a3057eade974106a +size 1231630 diff --git a/pocl-disable-tests.diff b/pocl-disable-tests.diff new file mode 100644 index 0000000..ae594b1 --- /dev/null +++ b/pocl-disable-tests.diff @@ -0,0 +1,19 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 18d36e7..3c20763 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1000,10 +1000,10 @@ message(STATUS "POCLU LINK OPTS: ${POCLU_LINK_OPTIONS}") + # poclcc bin + add_subdirectory("bin") + +-if (OCS_AVAILABLE) +- add_subdirectory("tests") +- add_subdirectory("examples") +-endif() ++#if (OCS_AVAILABLE) ++# add_subdirectory("tests") ++# add_subdirectory("examples") ++#endif() + + add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} ${COMMAND_USES_TERMINAL}) + diff --git a/pocl.changes b/pocl.changes index cd6ecf7..fae9907 100644 --- a/pocl.changes +++ b/pocl.changes @@ -1,3 +1,30 @@ + +------------------------------------------------------------------- +Tue May 16 18:59:30 UTC 2017 - mardnh@gmx.de + +- Update to 0.14 + - Support for LLVM/Clang versions 3.9 and 4.0. Version 3.9 was the first + release to include all frontend features for OpenCL 2.0. + - Ability to build pocl in a mode where online compilation is not + supported to run in hosts without LLVM and binaries compiled offline + e.g. using poclcc. + - pocl's binary format now can contain all the necessary bits to + execute the programs on a host without online compiler support. + - Initial support for out-of-order execution execution of command queues. + - It's now possible to cross-compile pocl when building an offline + compiler build. + - New driver api extension to support out-of-order and asynchronous + devices/drivers. + - Pthread and HSA drivers are now fully asynchronous. + - CMake now the only supported build system, autotools removed. + - LTTng tracing support +- Add patches: + - pocl-disable-tests.diff + - compilation errors on some tests disable tests for now +- Remove patches: + - 0001-Fixes-357-broken-build-with-GCC-6.1.patch + - fixed upstream + ------------------------------------------------------------------- Thu Feb 2 10:52:12 UTC 2017 - adam.majer@suse.de diff --git a/pocl.spec b/pocl.spec index 3342a5c..72ec387 100644 --- a/pocl.spec +++ b/pocl.spec @@ -17,29 +17,30 @@ # +%define sover 1.7.0 Name: pocl -Version: 0.13 +Version: 0.14 Release: 0 Summary: Portable Computing Language - an OpenCL implementation -License: MIT -Group: Productivity/Other # The whole code is under MIT # except include/utlist.h which is under BSD (and unbundled) and # except lib/kernel/vecmath which is under GPLv3+ or LGPLv3+ (and unbundled in future) +License: MIT +Group: Productivity/Other Url: http://portablecl.org/ Source0: http://portablecl.org/downloads/%{name}-%{version}.tar.gz Source99: pocl-rpmlintrc -Patch0: 0001-Fixes-357-broken-build-with-GCC-6.1.patch +Patch0: pocl-disable-tests.diff %if 0%{?suse_version} > 1325 BuildRequires: libboost_headers-devel %else BuildRequires: boost-devel %endif -BuildRequires: clang3_8-devel +BuildRequires: clang4-devel BuildRequires: cmake >= 2.8.12 BuildRequires: libtool BuildRequires: libtool-ltdl-devel -BuildRequires: llvm3_8-devel +BuildRequires: llvm4-devel BuildRequires: ncurses-devel BuildRequires: ninja BuildRequires: opencl-headers @@ -48,7 +49,7 @@ BuildRequires: uthash-devel BuildRequires: pkgconfig(OpenCL) BuildRequires: pkgconfig(glew) BuildRequires: pkgconfig(hwloc) -Requires: clang3_8 +Requires: clang4 Requires: libstdc++-devel Requires: uthash BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -89,7 +90,7 @@ This Subpackage provides the development files needed for pocl. %prep %setup -q -%patch0 +%patch0 -p1 %build %define __builder ninja @@ -110,8 +111,8 @@ This Subpackage provides the development files needed for pocl. %cmake_install # FIXME - should be handled upstream -chmod 755 %{buildroot}/%{_bindir}/pocl-standalone mv %{buildroot}%{_prefix}%{_libdir} %{buildroot}%{_libdir} +mv %{buildroot}%{_prefix}%{_sysconfdir} %{buildroot}%{_sysconfdir} # Unbundle vecmath #rm -vf %{buildroot}/%{_libdir}/pocl/vecmath/ @@ -119,8 +120,8 @@ mv %{buildroot}%{_prefix}%{_libdir} %{buildroot}%{_libdir} # but you need to run the .py to generate the files under the pocl dir %check -cd build -ctest %{?_smp_mflags} ||: +#cd build +#ctest %{?_smp_mflags} ||: %post -p /sbin/ldconfig %postun -p /sbin/ldconfig @@ -131,9 +132,11 @@ ctest %{?_smp_mflags} ||: %dir %{_sysconfdir}/OpenCL/ %dir %{_sysconfdir}/OpenCL/vendors %{_sysconfdir}/OpenCL/vendors/pocl.icd -%{_bindir}/pocl-standalone -%{_libdir}/libpocl.so.* -%{_libdir}/libpoclu.so.* +%{_bindir}/poclcc +%{_libdir}/libpocl.so.1 +%{_libdir}/libpocl.so.%{sover} +%{_libdir}/libpoclu.so.1 +%{_libdir}/libpoclu.so.%{sover} %{_libdir}/pocl/ %{_datadir}/pocl/