diff --git a/devel/libclc/Makefile b/devel/libclc/Makefile --- a/devel/libclc/Makefile +++ b/devel/libclc/Makefile @@ -1,45 +1,27 @@ # Created by: Koop Mast PORTNAME= libclc -DISTVERSION= 0.4.0.20190527 -PORTREVISION= 2 +DISTVERSION= 12.0.1 CATEGORIES= devel +MASTER_SITES= https://github.com/llvm/llvm-project/releases/download/llvmorg-${DISTVERSION:S/rc/-rc/}/ +DISTNAME= libclc-${DISTVERSION}.src MAINTAINER= x11@FreeBSD.org COMMENT= Required library functions for OpenCL C programming language LICENSE= LLVM -LICENSE_NAME= LLVM Release License LICENSE_FILE= ${WRKSRC}/LICENSE.TXT +LICENSE_NAME= Apache License 2.0 with LLVM Exceptions LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept -BUILD_DEPENDS= llvm${LLVM_DEFAULT}>=4.0:devel/llvm${LLVM_DEFAULT} \ +BUILD_DEPENDS= llvm12>=12.0:devel/llvm12 \ + spirv-llvm-translator-llvm12>0:devel/spirv-llvm-translator@llvm12 \ libedit>=0:devel/libedit -USE_GITHUB= yes -GH_ACCOUNT= llvm-mirror -GH_TAGNAME= 9f6204e - -# ninja based build is broken since commit 598792bc (16 sep 2016) -USES= gmake python:build +USES= cmake compiler:c++11-lib python:3.6+,build tar:xz USE_LDCONFIG= yes -MAKE_ENV= MAKE=${GMAKE} DESTDIR=${STAGEDIR} -ALL_TARGET= - -post-patch: - @${REINPLACE_CMD} -e 's|/usr/bin/python|${PYTHON_CMD}|g' \ - -e 's|"python |"${PYTHON_VERSION} |g' \ - ${WRKSRC}/build/ninja_syntax.py \ - ${WRKSRC}/configure.py - -do-configure: - @cd ${WRKSRC} && ${PYTHON_CMD} configure.py ${CONFIGURE_ARGS} -g make \ - --with-llvm-config=${LOCALBASE}/bin/llvm-config${LLVM_DEFAULT} \ - --pkgconfigdir=${PREFIX}/libdata/pkgconfig \ - --prefix=${PREFIX} - -.include -LLVM_DEFAULT= 10 +BINARY_ALIAS= python=${PYTHON_CMD} +CMAKE_ARGS+= -DLLVM_CONFIG=${LOCALBASE}/bin/llvm-config12 .include diff --git a/devel/libclc/distinfo b/devel/libclc/distinfo --- a/devel/libclc/distinfo +++ b/devel/libclc/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1562723277 -SHA256 (llvm-mirror-libclc-0.4.0.20190527-9f6204e_GH0.tar.gz) = 8004c3a075d715cff6780c8ffe04c9f798dadf48bd375bdd6d98adabed04cd55 -SIZE (llvm-mirror-libclc-0.4.0.20190527-9f6204e_GH0.tar.gz) = 176995 +TIMESTAMP = 1634573517 +SHA256 (libclc-12.0.1.src.tar.xz) = e34f0534b03905a89140deb4e7b85766e834ecf0ea4bd773b3dfb034dce4ca2f +SIZE (libclc-12.0.1.src.tar.xz) = 124172 diff --git a/devel/libclc/files/patch-configure.py b/devel/libclc/files/patch-configure.py deleted file mode 100644 --- a/devel/libclc/files/patch-configure.py +++ /dev/null @@ -1,38 +0,0 @@ -Fix use of execinfo from llvm-config --system-libs - -The LLVM_TOOL_LINK builds a helper tool named utils/prepare-builtins that -requires libedit which in turn pulls in libtinfo (part of libncurses). -In order to support builds on platforms without base ncurses (e.g. DF), -require base libedit. This requires an additional -L LDFLAGS to search -${LOCALBASE}/lib for the needed libs. (prepare-builtins is not installed) - ---- configure.py.orig 2017-11-27 11:14:06 UTC -+++ configure.py -@@ -76,7 +76,7 @@ if llvm_int_version < 390: - print("libclc requires LLVM >= 3.9") - sys.exit(1) - --llvm_system_libs = llvm_config(['--system-libs']) -+llvm_system_libs = (llvm_config(['--system-libs'])).replace("-l/usr/lib/libexecinfo.so","-lexecinfo") - llvm_bindir = llvm_config(['--bindir']) - llvm_core_libs = llvm_config(['--libs', 'core', 'bitreader', 'bitwriter']) + ' ' + \ - llvm_system_libs + ' ' + \ -@@ -131,7 +131,8 @@ b = metabuild.from_name(options.g) - description = 'OPT $out') - - c_compiler_rule(b, "LLVM_TOOL_CXX", 'CXX', cxx_compiler, llvm_cxxflags) --b.rule("LLVM_TOOL_LINK", cxx_compiler + " -o $out $in %s" % llvm_core_libs + " -Wl,-rpath %s" % llvm_libdir, 'LINK $out') -+b.rule("LLVM_TOOL_LINK", cxx_compiler + " -o $out $in %s" % llvm_core_libs + -+ " -L" + prefix + "/lib -Wl,-rpath %s" % llvm_libdir, 'LINK $out') - - prepare_builtins = os.path.join('utils', 'prepare-builtins') - b.build(os.path.join('utils', 'prepare-builtins.o'), "LLVM_TOOL_CXX", -@@ -290,7 +291,7 @@ install_cmd = ' && '.join(['mkdir -p ${D - {'src': file, - 'dst': libexecdir} - for (file, dest) in install_files_bc]) --install_cmd = ' && '.join(['%(old)s && mkdir -p ${DESTDIR}/%(dst)s && cp -r %(srcdir)s/generic/include/clc ${DESTDIR}/%(dst)s' % -+install_cmd = ' && '.join(['%(old)s && mkdir -p ${DESTDIR}/%(dst)s && cp -r generic/include/clc ${DESTDIR}/%(dst)s' % - {'old': install_cmd, - 'dst': includedir, - 'srcdir': srcdir}]) diff --git a/devel/libclc/files/patch-libclc_CMakeLists.txt b/devel/libclc/files/patch-libclc_CMakeLists.txt new file mode 100644 --- /dev/null +++ b/devel/libclc/files/patch-libclc_CMakeLists.txt @@ -0,0 +1,11 @@ +--- CMakeLists.txt.orig 2020-10-16 16:09:32 UTC ++++ CMakeLists.txt +@@ -158,7 +158,7 @@ endif() + + # pkg-config file + configure_file( libclc.pc.in libclc.pc @ONLY ) +-install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libclc.pc DESTINATION ${CMAKE_INSTALL_DATADIR}/pkgconfig ) ++install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libclc.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/libdata/pkgconfig ) + install( DIRECTORY generic/include/clc DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ) + + if( ENABLE_RUNTIME_SUBNORMAL ) diff --git a/devel/libclc/pkg-plist b/devel/libclc/pkg-plist --- a/devel/libclc/pkg-plist +++ b/devel/libclc/pkg-plist @@ -275,80 +275,66 @@ include/clc/workitem/get_local_size.h include/clc/workitem/get_num_groups.h include/clc/workitem/get_work_dim.h -lib/clc/amdgcn--amdhsa.bc -lib/clc/aruba-r600--.bc -lib/clc/barts-r600--.bc -lib/clc/bonaire-amdgcn--.bc -lib/clc/bonaire-amdgcn--amdhsa.bc -lib/clc/bonaire-amdgcn-mesa-mesa3d.bc -lib/clc/caicos-r600--.bc -lib/clc/carrizo-amdgcn--.bc -lib/clc/carrizo-amdgcn--amdhsa.bc -lib/clc/carrizo-amdgcn-mesa-mesa3d.bc -lib/clc/cayman-r600--.bc -lib/clc/cedar-r600--.bc -lib/clc/cypress-r600--.bc -lib/clc/fiji-amdgcn--.bc -lib/clc/fiji-amdgcn--amdhsa.bc -lib/clc/fiji-amdgcn-mesa-mesa3d.bc -lib/clc/gfx900-amdgcn--.bc -lib/clc/gfx900-amdgcn--amdhsa.bc -lib/clc/gfx900-amdgcn-mesa-mesa3d.bc -lib/clc/gfx902-amdgcn--.bc -lib/clc/gfx902-amdgcn--amdhsa.bc -lib/clc/gfx902-amdgcn-mesa-mesa3d.bc -lib/clc/gfx904-amdgcn--.bc -lib/clc/gfx904-amdgcn--amdhsa.bc -lib/clc/gfx904-amdgcn-mesa-mesa3d.bc -lib/clc/gfx906-amdgcn--.bc -lib/clc/gfx906-amdgcn--amdhsa.bc -lib/clc/gfx906-amdgcn-mesa-mesa3d.bc -lib/clc/hainan-amdgcn--.bc -lib/clc/hainan-amdgcn-mesa-mesa3d.bc -lib/clc/hawaii-amdgcn--.bc -lib/clc/hawaii-amdgcn--amdhsa.bc -lib/clc/hawaii-amdgcn-mesa-mesa3d.bc -lib/clc/hemlock-r600--.bc -lib/clc/iceland-amdgcn--.bc -lib/clc/iceland-amdgcn--amdhsa.bc -lib/clc/iceland-amdgcn-mesa-mesa3d.bc -lib/clc/juniper-r600--.bc -lib/clc/kabini-amdgcn--.bc -lib/clc/kabini-amdgcn--amdhsa.bc -lib/clc/kabini-amdgcn-mesa-mesa3d.bc -lib/clc/kaveri-amdgcn--.bc -lib/clc/kaveri-amdgcn--amdhsa.bc -lib/clc/kaveri-amdgcn-mesa-mesa3d.bc -lib/clc/mullins-amdgcn--.bc -lib/clc/mullins-amdgcn--amdhsa.bc -lib/clc/mullins-amdgcn-mesa-mesa3d.bc -lib/clc/nvptx--nvidiacl.bc -lib/clc/nvptx64--nvidiacl.bc -lib/clc/oland-amdgcn--.bc -lib/clc/oland-amdgcn-mesa-mesa3d.bc -lib/clc/palm-r600--.bc -lib/clc/pitcairn-amdgcn--.bc -lib/clc/pitcairn-amdgcn-mesa-mesa3d.bc -lib/clc/polaris10-amdgcn--.bc -lib/clc/polaris10-amdgcn--amdhsa.bc -lib/clc/polaris10-amdgcn-mesa-mesa3d.bc -lib/clc/polaris11-amdgcn--.bc -lib/clc/polaris11-amdgcn--amdhsa.bc -lib/clc/polaris11-amdgcn-mesa-mesa3d.bc -lib/clc/redwood-r600--.bc -lib/clc/stoney-amdgcn--.bc -lib/clc/stoney-amdgcn--amdhsa.bc -lib/clc/stoney-amdgcn-mesa-mesa3d.bc -lib/clc/subnormal_disable.bc -lib/clc/subnormal_use_default.bc -lib/clc/sumo-r600--.bc -lib/clc/sumo2-r600--.bc -lib/clc/tahiti-amdgcn--.bc -lib/clc/tahiti-amdgcn-mesa-mesa3d.bc -lib/clc/tonga-amdgcn--.bc -lib/clc/tonga-amdgcn--amdhsa.bc -lib/clc/tonga-amdgcn-mesa-mesa3d.bc -lib/clc/turks-r600--.bc -lib/clc/verde-amdgcn--.bc -lib/clc/verde-amdgcn-mesa-mesa3d.bc libdata/pkgconfig/libclc.pc +share/clc/amdgcn--amdhsa.bc +share/clc/aruba-r600--.bc +share/clc/barts-r600--.bc +share/clc/bonaire-amdgcn--.bc +share/clc/bonaire-amdgcn-mesa-mesa3d.bc +share/clc/caicos-r600--.bc +share/clc/carrizo-amdgcn--.bc +share/clc/carrizo-amdgcn-mesa-mesa3d.bc +share/clc/cayman-r600--.bc +share/clc/cedar-r600--.bc +share/clc/cypress-r600--.bc +share/clc/fiji-amdgcn--.bc +share/clc/fiji-amdgcn-mesa-mesa3d.bc +share/clc/gfx900-amdgcn--.bc +share/clc/gfx900-amdgcn-mesa-mesa3d.bc +share/clc/gfx902-amdgcn--.bc +share/clc/gfx902-amdgcn-mesa-mesa3d.bc +share/clc/gfx904-amdgcn--.bc +share/clc/gfx904-amdgcn-mesa-mesa3d.bc +share/clc/gfx906-amdgcn--.bc +share/clc/gfx906-amdgcn-mesa-mesa3d.bc +share/clc/hainan-amdgcn--.bc +share/clc/hainan-amdgcn-mesa-mesa3d.bc +share/clc/hawaii-amdgcn--.bc +share/clc/hawaii-amdgcn-mesa-mesa3d.bc +share/clc/hemlock-r600--.bc +share/clc/iceland-amdgcn--.bc +share/clc/iceland-amdgcn-mesa-mesa3d.bc +share/clc/juniper-r600--.bc +share/clc/kabini-amdgcn--.bc +share/clc/kabini-amdgcn-mesa-mesa3d.bc +share/clc/kaveri-amdgcn--.bc +share/clc/kaveri-amdgcn-mesa-mesa3d.bc +share/clc/mullins-amdgcn--.bc +share/clc/mullins-amdgcn-mesa-mesa3d.bc +share/clc/nvptx--.bc +share/clc/nvptx--nvidiacl.bc +share/clc/nvptx64--.bc +share/clc/nvptx64--nvidiacl.bc +share/clc/oland-amdgcn--.bc +share/clc/oland-amdgcn-mesa-mesa3d.bc +share/clc/palm-r600--.bc +share/clc/pitcairn-amdgcn--.bc +share/clc/pitcairn-amdgcn-mesa-mesa3d.bc +share/clc/polaris10-amdgcn--.bc +share/clc/polaris10-amdgcn-mesa-mesa3d.bc +share/clc/polaris11-amdgcn--.bc +share/clc/polaris11-amdgcn-mesa-mesa3d.bc +share/clc/redwood-r600--.bc +share/clc/spirv-mesa3d-.spv +share/clc/spirv64-mesa3d-.spv +share/clc/stoney-amdgcn--.bc +share/clc/stoney-amdgcn-mesa-mesa3d.bc +share/clc/sumo-r600--.bc +share/clc/sumo2-r600--.bc +share/clc/tahiti-amdgcn--.bc +share/clc/tahiti-amdgcn-mesa-mesa3d.bc +share/clc/tonga-amdgcn--.bc +share/clc/tonga-amdgcn-mesa-mesa3d.bc +share/clc/turks-r600--.bc +share/clc/verde-amdgcn--.bc +share/clc/verde-amdgcn-mesa-mesa3d.bc