- add libcxx-use-shlex-quote.patch to fix build with python 3.13 - Use correct LLVM_HOST_TRIPLE for riscv64 - Rebase llvm-do-not-install-static-libraries.patch. - Add upstream patch to export compiler-rt FuzzedDataProvider header, * compiler-rt-move-fdp.patch - Drop llvm5-devel-static. llvm5-devel contains shared library with - Package libLLVMFuzzer - Use gcc6 on SLE12 - Package license & credits * See - Enable BPF for all arches bsc#1026191 - libc++ must depend on libc++abi - Disable libcxx/lldb/openmp for SLE fate#319582 - Update rpmlintrc to whitelist libLTO.so - Re-enable glibc-2.23 patch for Tumbleweed - Add glibc-2.23-libcxx.patch to fix test failures with glibc 2.23 - Remove FFI support because its fragile - Enable OpenMP for x86, x86_64, ppc64 and ppc64le - Enable all targets on x86, x86_64 - fix build on s390x (one typo in ifarch and one change in filelist) - Add llvm-fix-parsearmarch.patch to fix parsing armv{6,7}hl archs. - Rename llvm-remove-werror-date-time.patch to - Require llvm-clang not just clang - Add libcxxabi-exceptions.patch to fix libcxxabi exception handling - Remove asan-disable-hugemalloctest.patch and - build compiler-rt on ppc64 (don't delete it) - complete ifarchs for s390 - Remove non-existing doc subpackage - Update to r196371 from release_34 branch OBS-URL: https://build.opensuse.org/request/show/1225866 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm18?expand=0&rev=35
72 lines
2.9 KiB
Diff
72 lines
2.9 KiB
Diff
The LLVMTableGen component is a special case that is excluded from libLLVM and
|
|
normally is only built as static library and linked into llvm-tblgen.
|
|
|
|
We need to have it as a shared library to be available for other projects such
|
|
as ldc.
|
|
|
|
This patch makes it even more special and forces it to be build and installed
|
|
as separate shared library.
|
|
|
|
Index: llvm-8.0.0rc3.src/cmake/modules/AddLLVM.cmake
|
|
===================================================================
|
|
--- llvm-8.0.0rc3.src.orig/cmake/modules/AddLLVM.cmake
|
|
+++ llvm-8.0.0rc3.src/cmake/modules/AddLLVM.cmake
|
|
@@ -541,7 +541,7 @@ function(llvm_add_library name)
|
|
if(ARG_MODULE AND LLVM_EXPORT_SYMBOLS_FOR_PLUGINS AND ARG_PLUGIN_TOOL AND (WIN32 OR CYGWIN))
|
|
# On DLL platforms symbols are imported from the tool by linking against it.
|
|
set(llvm_libs ${ARG_PLUGIN_TOOL})
|
|
- elseif (NOT ARG_COMPONENT_LIB)
|
|
+ elseif (NOT ARG_COMPONENT_LIB OR (${name} STREQUAL "LLVMTableGen" AND LLVM_BUILD_LLVM_DYLIB))
|
|
if (LLVM_LINK_LLVM_DYLIB AND NOT ARG_DISABLE_LLVM_LINK_LLVM_DYLIB)
|
|
set(llvm_libs LLVM)
|
|
else()
|
|
Index: llvm-17.0.0rc1.src/cmake/modules/TableGen.cmake
|
|
===================================================================
|
|
--- llvm-17.0.0rc1.src.orig/cmake/modules/TableGen.cmake
|
|
+++ llvm-17.0.0rc1.src/cmake/modules/TableGen.cmake
|
|
@@ -143,8 +143,8 @@ macro(add_tablegen target project)
|
|
set(${target}_OLD_LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS})
|
|
set(LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS} TableGen)
|
|
|
|
- add_llvm_executable(${target} DISABLE_LLVM_LINK_LLVM_DYLIB
|
|
- ${ADD_TABLEGEN_UNPARSED_ARGUMENTS})
|
|
+ add_llvm_executable(${target} ${ADD_TABLEGEN_UNPARSED_ARGUMENTS})
|
|
+ target_link_libraries(${target} PRIVATE LLVMTableGen)
|
|
set(LLVM_LINK_COMPONENTS ${${target}_OLD_LLVM_LINK_COMPONENTS})
|
|
|
|
set(${project}_TABLEGEN_DEFAULT "${target}")
|
|
Index: llvm-8.0.0rc3.src/lib/TableGen/CMakeLists.txt
|
|
===================================================================
|
|
--- llvm-8.0.0rc3.src.orig/lib/TableGen/CMakeLists.txt
|
|
+++ llvm-8.0.0rc3.src/lib/TableGen/CMakeLists.txt
|
|
@@ -1,3 +1,7 @@
|
|
+if (LLVM_BUILD_LLVM_DYLIB)
|
|
+ set(MAYBE_SHARED SHARED)
|
|
+endif()
|
|
+
|
|
add_llvm_component_library(LLVMTableGen
|
|
DetailedRecordsBackend.cpp
|
|
Error.cpp
|
|
@@ -9,6 +13,8 @@ add_llvm_library(LLVMTableGen
|
|
TGLexer.cpp
|
|
TGParser.cpp
|
|
|
|
+ ${MAYBE_SHARED}
|
|
+
|
|
ADDITIONAL_HEADER_DIRS
|
|
${LLVM_MAIN_INCLUDE_DIR}/llvm/TableGen
|
|
|
|
Index: llvm-18.1.0rc1.src/utils/TableGen/GlobalISel/CMakeLists.txt
|
|
===================================================================
|
|
--- llvm-18.1.0rc1.src.orig/utils/TableGen/GlobalISel/CMakeLists.txt
|
|
+++ llvm-18.1.0rc1.src/utils/TableGen/GlobalISel/CMakeLists.txt
|
|
@@ -3,7 +3,7 @@ set(LLVM_LINK_COMPONENTS
|
|
TableGen
|
|
)
|
|
|
|
-add_llvm_library(LLVMTableGenGlobalISel STATIC DISABLE_LLVM_LINK_LLVM_DYLIB
|
|
+add_llvm_library(LLVMTableGenGlobalISel STATIC
|
|
CodeExpander.cpp
|
|
CXXPredicates.cpp
|
|
MatchDataInfo.cpp
|