opencl-clang: updated to 16.0.0
v16.0.0 opencl-clang linked against LLVM 16 libraries
This commit is contained in:
parent
e2e1911a0d
commit
5afde86498
|
@ -1,7 +1,6 @@
|
|||
# $NetBSD: Makefile,v 1.13 2023/11/08 13:20:39 wiz Exp $
|
||||
# $NetBSD: Makefile,v 1.14 2023/12/14 13:16:05 adam Exp $
|
||||
|
||||
DISTNAME= opencl-clang-15.0.0
|
||||
PKGREVISION= 3
|
||||
DISTNAME= opencl-clang-16.0.0
|
||||
CATEGORIES= parallel
|
||||
MASTER_SITES= ${MASTER_SITE_GITHUB:=intel/}
|
||||
GITHUB_PROJECT= opencl-clang # do not remove this, it breaks cwrappers
|
||||
|
@ -12,15 +11,16 @@ HOMEPAGE= https://github.com/intel/opencl-clang
|
|||
COMMENT= OpenCL-oriented wrapper library around clang
|
||||
LICENSE= modified-bsd
|
||||
|
||||
USE_CMAKE= yes
|
||||
USE_LANGUAGES= c c++
|
||||
USE_CXX_FEATURES= c++17
|
||||
FORCE_CXX_STD= c++17
|
||||
USE_LANGUAGES= c c++
|
||||
|
||||
# C++14
|
||||
GCC_REQD+= 7 # sync with llvm/clang
|
||||
|
||||
BUILDLINK_TRANSFORM.Darwin+= rm:-Wl,--version-script=${WRKSRC}/common_clang.map
|
||||
BUILDLINK_TRANSFORM.SunOS+= rm:-Wl,--version-script=${WRKSRC}/common_clang.map
|
||||
BUILDLINK_TRANSFORM.Darwin+= rm:-Wl,--no-undefined
|
||||
BUILDLINK_TRANSFORM.Darwin+= rm:-Wl,-Bsymbolic
|
||||
BUILDLINK_TRANSFORM.Darwin+= rm:-Wl,--version-script=${WRKSRC}/opencl_clang.map
|
||||
BUILDLINK_TRANSFORM.SunOS+= rm:-Wl,--version-script=${WRKSRC}/opencl_clang.map
|
||||
|
||||
.include "../../devel/cmake/build.mk"
|
||||
.include "../../parallel/spirv-llvm-translator/buildlink3.mk"
|
||||
.include "../../lang/clang/buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
@comment $NetBSD: PLIST,v 1.5 2022/11/19 12:35:57 adam Exp $
|
||||
include/cclang/common_clang.h
|
||||
@comment $NetBSD: PLIST,v 1.6 2023/12/14 13:16:05 adam Exp $
|
||||
include/cclang/module.modulemap
|
||||
include/cclang/opencl-c-base.h
|
||||
include/cclang/opencl-c.h
|
||||
include/cclang/opencl_clang.h
|
||||
lib/libopencl-clang.so
|
||||
lib/libopencl-clang.so.15
|
||||
lib/libopencl-clang.so.16
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
$NetBSD: distinfo,v 1.8 2022/11/14 19:02:04 adam Exp $
|
||||
$NetBSD: distinfo,v 1.9 2023/12/14 13:16:05 adam Exp $
|
||||
|
||||
BLAKE2s (opencl-clang-15.0.0.tar.gz) = 24dd74013a9a4f889626d002582cc87dd00bfb0015b6d6c35f252f6358789321
|
||||
SHA512 (opencl-clang-15.0.0.tar.gz) = a2ffce43493793524e9512be2e7bd46c0183b86b35a6f79018d355d07a83303a944e6dacebfb768e88ce75a7020a44939be872a2d4e754544198a9829f4febd4
|
||||
Size (opencl-clang-15.0.0.tar.gz) = 26212 bytes
|
||||
BLAKE2s (opencl-clang-16.0.0.tar.gz) = cd3f135e8cb3f788680e30704d5880732da241ae6652f48670d38cff585e1c8e
|
||||
SHA512 (opencl-clang-16.0.0.tar.gz) = bf723edab7dc7a028eb79d01fd2306690a2169472760bf2783d593ffec4eb788f28f184c66b204cc074cb95a4149fcc63a1dcbee5563c620a9dc2c76bb5a2d5a
|
||||
Size (opencl-clang-16.0.0.tar.gz) = 28413 bytes
|
||||
SHA1 (patch-CMakeLists.txt) = 844cac5dedb87b2de098955cebae1bf83341d9e5
|
||||
SHA1 (patch-cl__headers_CMakeLists.txt) = fc3d935aff7314d1a194b5802c63cdb125f8ec34
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
$NetBSD: patch-CMakeLists.txt,v 1.3 2023/12/14 13:16:06 adam Exp $
|
||||
|
||||
Revert to use add_llvm_library and revert linking LLVM libraries
|
||||
https://github.com/intel/opencl-clang/pull/438
|
||||
|
||||
--- CMakeLists.txt.orig 2023-04-13 01:08:59.000000000 +0000
|
||||
+++ CMakeLists.txt
|
||||
@@ -292,21 +292,23 @@ else()
|
||||
)
|
||||
endif()
|
||||
|
||||
-add_library(${TARGET_NAME} SHARED
|
||||
- ${TARGET_INCLUDE_FILES}
|
||||
- ${TARGET_SOURCE_FILES}
|
||||
- $<TARGET_OBJECTS:cl_headers>
|
||||
-)
|
||||
-
|
||||
-# Same CRT compile option are reqiured to avoid link errors on Windows.
|
||||
-# MD and MDd are choosed by default for release and debug build in LLVM.
|
||||
-# If users set MT or MTd flags, they also need to add the flags for
|
||||
-# opencl-clang sources using a custom macro set_msvc_crt_flags.
|
||||
-if(COMMAND set_msvc_crt_flags)
|
||||
- set_msvc_crt_flags(${TARGET_NAME})
|
||||
+set(EXCLUDE_LIBS_FROM_ALL "" CACHE STRING "Space-separated list of LLVM libraries to exclude from all")
|
||||
+llvm_map_components_to_libnames(ALL_LLVM_LIBS all)
|
||||
+if (NOT "${EXCLUDE_LIBS_FROM_ALL}" STREQUAL "")
|
||||
+ list(REMOVE_ITEM ALL_LLVM_LIBS ${EXCLUDE_LIBS_FROM_ALL})
|
||||
endif()
|
||||
+list(APPEND OPENCL_CLANG_LINK_LIBS ${ALL_LLVM_LIBS})
|
||||
|
||||
-add_dependencies(${TARGET_NAME} CClangCompileOptions)
|
||||
+add_llvm_library(${TARGET_NAME} SHARED
|
||||
+ ${TARGET_INCLUDE_FILES}
|
||||
+ ${TARGET_SOURCE_FILES}
|
||||
+ $<TARGET_OBJECTS:cl_headers>
|
||||
+
|
||||
+ DEPENDS CClangCompileOptions
|
||||
+
|
||||
+ LINK_LIBS
|
||||
+ ${OPENCL_CLANG_LINK_LIBS}
|
||||
+ )
|
||||
|
||||
if (WIN32)
|
||||
# Enable compiler generation of Control Flow Guard security checks.
|
||||
@@ -322,51 +324,6 @@ elseif(UNIX)
|
||||
LINK_FLAGS " -Wl,--no-undefined")
|
||||
endif(WIN32)
|
||||
|
||||
-# Enable new IN_LIST operator.
|
||||
-cmake_policy(SET CMP0057 NEW)
|
||||
-set(OTHER_LIBRARIES)
|
||||
-if ("NVPTX" IN_LIST LLVM_TARGETS_TO_BUILD)
|
||||
- list(APPEND OTHER_LIBRARIES LLVMNVPTXCodeGen LLVMNVPTXDesc LLVMNVPTXInfo)
|
||||
-endif()
|
||||
-if ("AMDGPU" IN_LIST LLVM_TARGETS_TO_BUILD)
|
||||
- list(APPEND OTHER_LIBRARIES LLVMAMDGPUCodeGen LLVMAMDGPUAsmParser LLVMAMDGPUDesc LLVMAMDGPUInfo)
|
||||
-endif()
|
||||
-
|
||||
-target_link_libraries( ${TARGET_NAME}
|
||||
- LINK_PRIVATE
|
||||
- ${OPENCL_CLANG_LINK_LIBS}
|
||||
- LLVMX86CodeGen
|
||||
- LLVMX86AsmParser
|
||||
- LLVMX86Desc
|
||||
- LLVMX86Info
|
||||
- LLVMX86Disassembler
|
||||
- LLVMAnalysis
|
||||
- LLVMCodeGen
|
||||
- LLVMCore
|
||||
- LLVMipo
|
||||
- LLVMInstCombine
|
||||
- LLVMInstrumentation
|
||||
- LLVMMC
|
||||
- LLVMMCParser
|
||||
- LLVMObjCARCOpts
|
||||
- LLVMOption
|
||||
- LLVMScalarOpts
|
||||
- LLVMSupport
|
||||
- LLVMTransformUtils
|
||||
- LLVMVectorize
|
||||
- LLVMAsmPrinter
|
||||
- LLVMSelectionDAG
|
||||
- LLVMMCDisassembler
|
||||
- LLVMProfileData
|
||||
- LLVMObject
|
||||
- LLVMBitWriter
|
||||
- LLVMIRReader
|
||||
- LLVMAsmParser
|
||||
- LLVMTarget
|
||||
- LLVMBitReader
|
||||
- ${OTHER_LIBRARIES}
|
||||
- )
|
||||
-
|
||||
install(FILES opencl_clang.h
|
||||
DESTINATION include/cclang
|
||||
COMPONENT ${TARGET_NAME})
|
|
@ -0,0 +1,27 @@
|
|||
$NetBSD: patch-cl__headers_CMakeLists.txt,v 1.1 2023/12/14 13:16:06 adam Exp $
|
||||
|
||||
Fix standalone build
|
||||
https://github.com/intel/opencl-clang/pull/485
|
||||
|
||||
--- cl_headers/CMakeLists.txt.orig 2023-04-13 01:08:59.000000000 +0000
|
||||
+++ cl_headers/CMakeLists.txt
|
||||
@@ -1,5 +1,9 @@
|
||||
set(CL_HEADERS_LIB cl_headers)
|
||||
-set(CLANG_COMMAND $<TARGET_FILE:clang> )
|
||||
+if(USE_PREBUILT_LLVM)
|
||||
+ find_program(CLANG_COMMAND clang PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
|
||||
+else()
|
||||
+ set(CLANG_COMMAND $<TARGET_FILE:clang> )
|
||||
+endif()
|
||||
if(LLVM_USE_HOST_TOOLS AND NOT OPENCL_CLANG_BUILD_EXTERNAL)
|
||||
build_native_tool(clang CLANG_COMMAND)
|
||||
endif()
|
||||
@@ -16,7 +20,7 @@ endfunction(copy_file)
|
||||
|
||||
if(USE_PREBUILT_LLVM)
|
||||
set(OPENCL_HEADERS_DIR
|
||||
- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/")
|
||||
+ "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/include/")
|
||||
else(USE_PREBUILT_LLVM)
|
||||
set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers")
|
||||
endif(USE_PREBUILT_LLVM)
|
Loading…
Reference in New Issue