summaryrefslogtreecommitdiffstats
path: root/source/l
diff options
context:
space:
mode:
Diffstat (limited to 'source/l')
-rw-r--r--source/l/spirv-llvm-translator/1889.patch73
-rwxr-xr-xsource/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild7
2 files changed, 78 insertions, 2 deletions
diff --git a/source/l/spirv-llvm-translator/1889.patch b/source/l/spirv-llvm-translator/1889.patch
new file mode 100644
index 000000000..cd6f21e52
--- /dev/null
+++ b/source/l/spirv-llvm-translator/1889.patch
@@ -0,0 +1,73 @@
+From 98fadafeae0204defedd89f015f7fb88f2888b2f Mon Sep 17 00:00:00 2001
+From: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
+Date: Fri, 17 Mar 2023 14:27:10 -0300
+Subject: [PATCH] Fix standalone builds with LLVM_LINK_LLVM_DYLIB=ON
+
+Move the LLVM components to LINK_COMPONENTS because the DEPENDS list has
+the same semantics as add_dependencies(). In this
+case it doesn't include the LLVM components when calling the linker.
+---
+ lib/SPIRV/CMakeLists.txt | 47 ++++++++++++----------------------------
+ 1 file changed, 14 insertions(+), 33 deletions(-)
+
+diff --git a/lib/SPIRV/CMakeLists.txt b/lib/SPIRV/CMakeLists.txt
+index bbef00528..2810c6b2c 100644
+--- a/lib/SPIRV/CMakeLists.txt
++++ b/lib/SPIRV/CMakeLists.txt
+@@ -38,42 +38,23 @@ set(SRC_LIST
+ libSPIRV/SPIRVType.cpp
+ libSPIRV/SPIRVValue.cpp
+ )
+-if(LLVM_LINK_LLVM_DYLIB)
+- add_llvm_library(LLVMSPIRVLib STATIC DISABLE_LLVM_LINK_LLVM_DYLIB
+- ${SRC_LIST}
+- DEPENDS
+- intrinsics_gen
+- LLVMAnalysis
+- LLVMBitWriter
+- LLVMCodeGen
+- LLVMCore
+- LLVMDemangle
+- LLVMIRReader
+- LLVMLinker
+- LLVMPasses
+- LLVMSupport
+- LLVMTargetParser
+- LLVMTransformUtils
+- )
+-else()
+- add_llvm_library(LLVMSPIRVLib
+- ${SRC_LIST}
+- LINK_COMPONENTS
+- Analysis
+- BitWriter
+- CodeGen
+- Core
+- Demangle
+- IRReader
+- Linker
+- Passes
+- Support
+- TargetParser
+- TransformUtils
++add_llvm_library(LLVMSPIRVLib STATIC DISABLE_LLVM_LINK_LLVM_DYLIB
++ ${SRC_LIST}
++ LINK_COMPONENTS
++ Analysis
++ BitWriter
++ CodeGen
++ Core
++ Demangle
++ IRReader
++ Linker
++ Passes
++ Support
++ TargetParser
++ TransformUtils
+ DEPENDS
+ intrinsics_gen
+ )
+-endif()
+
+ target_include_directories(LLVMSPIRVLib
+ PRIVATE
diff --git a/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild b/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
index 7caf33fa7..0abb464a2 100755
--- a/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
+++ b/source/l/spirv-llvm-translator/spirv-llvm-translator.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=spirv-llvm-translator
VERSION=${VERSION:-$(echo SPIRV-LLVM-Translator-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
@@ -88,6 +88,9 @@ find . \
# the -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR option below.
tar xf $CWD/SPIRV-Headers.tar.lz
+# Fix -DBUILD_SHARED_LIBS=ON
+zcat $CWD/1889.patch.gz | patch -p1 --verbose || exit 1
+
# Build and install:
mkdir -p build
cd build
@@ -100,9 +103,9 @@ cd build
-DSYSCONF_INSTALL_DIR=/etc \
-DINCLUDE_INSTALL_DIR=/usr/include \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=$TMP/SPIRV-LLVM-Translator-$VERSION/SPIRV-Headers \
+ -DBUILD_SHARED_LIBS=ON \
..
make $NUMJOBS || make || exit 1
make $NUMJOBS llvm-spirv || make llvm-spirv || exit 1