CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
70 lines
2.0 KiB
CMake
70 lines
2.0 KiB
CMake
# Building shared libraries requires PIC objects.
|
|
if(LLVM_ENABLE_PIC)
|
|
|
|
set(LLVM_LINK_COMPONENTS
|
|
AllTargetsAsmParsers
|
|
AllTargetsCodeGens
|
|
AllTargetsDescs
|
|
AllTargetsDisassemblers
|
|
AllTargetsInfos
|
|
BitReader
|
|
Core
|
|
CodeGen
|
|
LTO
|
|
MC
|
|
MCDisassembler
|
|
Support
|
|
Target
|
|
TargetParser
|
|
)
|
|
|
|
set(SOURCES
|
|
LTODisassembler.cpp
|
|
lto.cpp
|
|
)
|
|
|
|
set(LLVM_EXPORTED_SYMBOL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/lto.exports)
|
|
|
|
if(CMAKE_SYSTEM_NAME STREQUAL "AIX")
|
|
set(LTO_LIBRARY_TYPE MODULE)
|
|
set(LTO_LIBRARY_NAME libLTO)
|
|
else()
|
|
set(LTO_LIBRARY_TYPE SHARED)
|
|
set(LTO_LIBRARY_NAME LTO)
|
|
endif()
|
|
|
|
add_llvm_library(${LTO_LIBRARY_NAME} ${LTO_LIBRARY_TYPE} INSTALL_WITH_TOOLCHAIN
|
|
${SOURCES} DEPENDS intrinsics_gen)
|
|
|
|
install(FILES ${LLVM_MAIN_INCLUDE_DIR}/llvm-c/lto.h
|
|
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/llvm-c"
|
|
COMPONENT LTO)
|
|
|
|
if (APPLE)
|
|
set(LTO_VERSION ${LLVM_VERSION_MAJOR})
|
|
if(LLVM_LTO_VERSION_OFFSET)
|
|
math(EXPR LTO_VERSION "${LLVM_VERSION_MAJOR} + ${LLVM_LTO_VERSION_OFFSET}")
|
|
endif()
|
|
if(LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN)
|
|
set_target_properties(LTO PROPERTIES
|
|
SOVERSION ${LTO_VERSION}.${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX}
|
|
VERSION ${LTO_VERSION}.${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX})
|
|
if(LLVM_UNVERSIONED_LIBLTO_ON_DARWIN)
|
|
set_property(TARGET LTO PROPERTY SOVERSION)
|
|
set_property(TARGET LTO PROPERTY VERSION)
|
|
endif()
|
|
endif()
|
|
llvm_set_macho_current_version(LTO ${LTO_VERSION})
|
|
if(LLVM_USE_SANITIZER)
|
|
execute_process(COMMAND ${CMAKE_CXX_COMPILER} -print-file-name=lib
|
|
OUTPUT_VARIABLE clang_lib_dir)
|
|
string(STRIP ${clang_lib_dir} clang_lib_dir)
|
|
if (clang_lib_dir MATCHES ".*xctoolchain.*")
|
|
message(WARNING "Sanitized libLTO (with LLVM_USE_SANITIZER) is unsupported on Darwin when compiling "
|
|
"with a system sanitizer library. Please use just-built sanitizers.")
|
|
endif()
|
|
endif()
|
|
endif()
|
|
|
|
endif()
|