6b6b4b3d80
- Update to version 13.0.0. * For details, see the release notes: - https://releases.llvm.org/13.0.0/docs/ReleaseNotes.html - https://releases.llvm.org/13.0.0/tools/clang/docs/ReleaseNotes.html - https://releases.llvm.org/13.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html - https://releases.llvm.org/13.0.0/projects/libcxx/docs/ReleaseNotes.html - https://releases.llvm.org/13.0.0/tools/lld/docs/ReleaseNotes.html * New LLVM tools: - llvm-otool: Mach-O object file displaying tool. - llvm-sim: LLVM IR Similarity Visualizer. - llvm-tapi-diff: Diff tool for tbd files. - llvm-windres: Tool to manipulate Windows resources. * llvm-elfabi was removed. * New Clang tools: - clang-repl, an interactive interpreter for C/C++. - intercept-build, analyze-build: the former intercepts build commands to build a compilation database, the latter runs the static analyzer over all translation units. - scan-build-py: Python reimplementation of scan-build. - Rebase patches: * link-clang-shared.patch * llvm-do-not-install-static-libraries.patch * llvm-exegesis-link-dylib.patch - Drop patches that have landed upstream: * tablegen-test-link-static.patch - Run tests on more architectures, disable those that seem to hang. Don't run libcxx tests at all anymore because they take so long. - Relax constraints so that we can build on more machines. OBS-URL: https://build.opensuse.org/request/show/922852 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm13?expand=0&rev=1
135 lines
5.6 KiB
Diff
135 lines
5.6 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-13.0.0.src/cmake/modules/AddClang.cmake
|
|
===================================================================
|
|
--- a/clang-13.0.0.src/cmake/modules/AddClang.cmake
|
|
+++ b/clang-13.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 bin)
|
|
+ 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 bin)
|
|
+ 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 bin 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 bin 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-13.0.0.src/cmake/modules/AddLLD.cmake
|
|
===================================================================
|
|
--- a/lld-13.0.0.src/cmake/modules/AddLLD.cmake
|
|
+++ b/lld-13.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 bin)
|
|
-
|
|
if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES)
|
|
add_llvm_install_targets(install-${name}
|
|
DEPENDS ${name}
|
|
Index: polly-13.0.0.src/cmake/polly_macros.cmake
|
|
===================================================================
|
|
--- a/polly-13.0.0.src/cmake/polly_macros.cmake
|
|
+++ b/polly-13.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-13.0.0.src/lib/CMakeLists.txt
|
|
===================================================================
|
|
--- a/polly-13.0.0.src/lib/CMakeLists.txt
|
|
+++ b/polly-13.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 ()
|