forked from pool/llvm15
43f9d469ce
- Update to version 15.0.0. * For details, see the release notes: - https://releases.llvm.org/15.0.0/docs/ReleaseNotes.html - https://releases.llvm.org/15.0.0/tools/clang/docs/ReleaseNotes.html - https://releases.llvm.org/15.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html - https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html - https://releases.llvm.org/15.0.0/tools/lld/docs/ReleaseNotes.html * New LLVM tools: - llvm-debuginfod: Provides debug info to remote hosts. - llvm-dwarfutil: Can copy and manipulate debug info. - llvm-remark-size-diff: Compute diff between remark files. * New Clang tools: - clang-offload-packager: Bundle multiple objects into single fat binaries including offload code. - clang-pseudo: Approximate heuristic parser for C++. - Rebase patches: * check-no-llvm-exegesis.patch * link-clang-tools-extra-shared.patch * lld-default-sha1.patch * llvm-do-not-install-static-libraries.patch * lto-disable-cache.patch - Drop patches that have landed upstream: * clang-repl-private-deps.patch * llvm-glibc-2-36.patch * llvm-scev-fix-isImpliedViaMerge.patch - Drop llvm-lifetime-for-rust.patch: this is now solved via attributes and LLVM doesn't need a hardcoded list of allocation functions anymore. - Add llvm-link-atomic.patch to fix build on ppc. - Add libcxx-test-library-path.patch to fix libc++ tests failing without RUNPATH on libc++.so. - Add libcxxabi-fix-armv7-test.patch to fix tests on armv7l. - Thanks to Andreas Schwab for most of the rebasing! OBS-URL: https://build.opensuse.org/request/show/1002539 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm15?expand=0&rev=1
135 lines
5.7 KiB
Diff
135 lines
5.7 KiB
Diff
This has similar effect as simply deleting the static libraries which we don't
|
|
want after installation. By not copying them in the first place we reduce the
|
|
disk usage during installation.
|
|
|
|
Index: clang-15.0.0.src/cmake/modules/AddClang.cmake
|
|
===================================================================
|
|
--- a/clang-15.0.0.src/cmake/modules/AddClang.cmake
|
|
+++ b/clang-15.0.0.src/cmake/modules/AddClang.cmake
|
|
@@ -106,12 +106,15 @@ macro(add_clang_library name)
|
|
|
|
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ARG_INSTALL_WITH_TOOLCHAIN)
|
|
get_target_export_arg(${name} Clang export_to_clangtargets UMBRELLA clang-libraries)
|
|
- install(TARGETS ${lib}
|
|
- COMPONENT ${lib}
|
|
- ${export_to_clangtargets}
|
|
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
|
+ if (ARG_SHARED OR ARG_MODULE)
|
|
+ install(TARGETS ${lib}
|
|
+ COMPONENT ${lib}
|
|
+ ${export_to_clangtargets}
|
|
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
|
+ set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS ${lib})
|
|
+ endif()
|
|
|
|
if (NOT LLVM_ENABLE_IDE)
|
|
add_llvm_install_targets(install-${lib}
|
|
@@ -121,7 +124,6 @@ macro(add_clang_library name)
|
|
|
|
set_property(GLOBAL APPEND PROPERTY CLANG_LIBS ${lib})
|
|
endif()
|
|
- set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS ${lib})
|
|
else()
|
|
# Add empty "phony" target
|
|
add_custom_target(${lib})
|
|
Index: cmake/modules/AddLLVM.cmake
|
|
===================================================================
|
|
--- a/cmake/modules/AddLLVM.cmake
|
|
+++ b/cmake/modules/AddLLVM.cmake
|
|
@@ -730,11 +730,14 @@ macro(add_llvm_library name)
|
|
endif()
|
|
|
|
get_target_export_arg(${name} LLVM export_to_llvmexports ${umbrella})
|
|
- install(TARGETS ${name}
|
|
- ${export_to_llvmexports}
|
|
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
|
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
|
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${name})
|
|
+ if(ARG_SHARED OR ARG_MODULE OR NOT LLVM_BUILD_LLVM_DYLIB)
|
|
+ install(TARGETS ${name}
|
|
+ ${export_to_llvmexports}
|
|
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
|
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name}
|
|
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${name})
|
|
+ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
|
+ endif()
|
|
|
|
if (NOT LLVM_ENABLE_IDE)
|
|
add_llvm_install_targets(install-${name}
|
|
@@ -742,7 +745,6 @@ macro(add_llvm_library name)
|
|
COMPONENT ${name})
|
|
endif()
|
|
endif()
|
|
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
|
endif()
|
|
if (ARG_MODULE)
|
|
set_target_properties(${name} PROPERTIES FOLDER "Loadable modules")
|
|
Index: lld-15.0.0.src/cmake/modules/AddLLD.cmake
|
|
===================================================================
|
|
--- a/lld-15.0.0.src/cmake/modules/AddLLD.cmake
|
|
+++ b/lld-15.0.0.src/cmake/modules/AddLLD.cmake
|
|
@@ -17,13 +17,6 @@ macro(add_lld_library name)
|
|
|
|
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
|
get_target_export_arg(${name} LLD export_to_lldtargets)
|
|
- install(TARGETS ${name}
|
|
- COMPONENT ${name}
|
|
- ${export_to_lldtargets}
|
|
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
|
-
|
|
if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
|
|
add_llvm_install_targets(install-${name}
|
|
DEPENDS ${name}
|
|
Index: polly-15.0.0.src/cmake/polly_macros.cmake
|
|
===================================================================
|
|
--- a/polly-15.0.0.src/cmake/polly_macros.cmake
|
|
+++ b/polly-15.0.0.src/cmake/polly_macros.cmake
|
|
@@ -42,12 +42,14 @@ macro(add_polly_library name)
|
|
llvm_config(${name} ${LLVM_LINK_COMPONENTS})
|
|
endif( LLVM_LINK_COMPONENTS )
|
|
if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly")
|
|
- install(TARGETS ${name}
|
|
- EXPORT LLVMExports
|
|
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
|
|
+ if (MODULE OR SHARED_LIBRARY OR NOT LLVM_BUILD_LLVM_DYLIB)
|
|
+ install(TARGETS ${name}
|
|
+ EXPORT LLVMExports
|
|
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
|
|
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})
|
|
+ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
|
+ endif()
|
|
endif()
|
|
- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name})
|
|
endmacro(add_polly_library)
|
|
|
|
macro(add_polly_loadable_module name)
|
|
Index: polly-15.0.0.src/lib/CMakeLists.txt
|
|
===================================================================
|
|
--- a/polly-15.0.0.src/lib/CMakeLists.txt
|
|
+++ b/polly-15.0.0.src/lib/CMakeLists.txt
|
|
@@ -74,7 +74,7 @@ set_target_properties(PollyCore PROPERTI
|
|
# It depends on all library it needs, such that with
|
|
# LLVM_POLLY_LINK_INTO_TOOLS=ON, its dependencies like PollyISL are linked as
|
|
# well.
|
|
-target_link_libraries(Polly PUBLIC
|
|
+target_link_libraries(Polly PRIVATE
|
|
${ISL_TARGET}
|
|
)
|
|
|
|
@@ -143,7 +143,7 @@ else ()
|
|
# hosts. This is not the case for bugpoint. Use LLVM_POLLY_LINK_INTO_TOOLS=ON
|
|
# instead which will automatically resolve the additional dependencies by
|
|
# Polly.
|
|
- target_link_libraries(LLVMPolly PUBLIC ${ISL_TARGET})
|
|
+ target_link_libraries(LLVMPolly PRIVATE ${ISL_TARGET})
|
|
if (GPU_CODEGEN)
|
|
target_link_libraries(LLVMPolly PUBLIC PollyPPCG)
|
|
endif ()
|