0a1f513dca
- New major release version 16.0.0. * For details, see the release notes: - https://releases.llvm.org/16.0.0/docs/ReleaseNotes.html - https://releases.llvm.org/16.0.0/tools/clang/docs/ReleaseNotes.html - https://releases.llvm.org/16.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html - https://releases.llvm.org/16.0.0/projects/libcxx/docs/ReleaseNotes.html - https://releases.llvm.org/16.0.0/tools/lld/docs/ReleaseNotes.html * New LLVM tools: - llvm-debuginfo-analyzer: Print a logical representation of low-level debug information. - llvm-remarkutil: Remark file utilities. * The test tool split-file is no longer installed. * New Clang tools: - amdgpu-arch and nvptx-arch: Tools used to detect locally available GPUs by the Clang OpenMP driver. - clang-include-cleaner: Standalone tool to determine which headers are used, using existing functionality in clangd. - clang-tblgen: Table Generation for Clang. * Removed Clang tools: clang-{nvlink,offload}-wrapper. - Rebase patches: * assume-opensuse.patch * check-no-llvm-exegesis.patch * link-clang-shared.patch * llvm_build_tablegen_component_as_shared_library.patch * llvm-do-not-install-static-libraries.patch * llvm-suse-implicit-gnu.patch * llvm-workaround-superfluous-branches.patch * openmp-drop-rpath.patch - Drop patches that have landed upstream: * clang-test-xfail-gnuless-triple.patch * CMake-Look-up-target-subcomponents-in-LLVM_AVAILABLE_LIBS.patch * libcxxabi-fix-armv7-test.patch * llvm-armv7-fix-vector-compare-with-zero-lowering.patch * llvm-link-atomic.patch - Remove llvm-better-detect-64bit-atomics-support.patch that should not be required anymore. - Add PGP signatures and keyring for source verification. OBS-URL: https://build.opensuse.org/request/show/1072964 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm16?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-16.0.0.src/cmake/modules/AddClang.cmake
|
|
===================================================================
|
|
--- a/clang-16.0.0.src/cmake/modules/AddClang.cmake
|
|
+++ b/clang-16.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-16.0.0.src/cmake/modules/AddLLD.cmake
|
|
===================================================================
|
|
--- a/lld-16.0.0.src/cmake/modules/AddLLD.cmake
|
|
+++ b/lld-16.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-16.0.0.src/cmake/polly_macros.cmake
|
|
===================================================================
|
|
--- a/polly-16.0.0.src/cmake/polly_macros.cmake
|
|
+++ b/polly-16.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-16.0.0.src/lib/CMakeLists.txt
|
|
===================================================================
|
|
--- a/polly-16.0.0.src/lib/CMakeLists.txt
|
|
+++ b/polly-16.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 ()
|