1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00

[AIX] Try to not use LLVM tools while building runtimes

Since 64-bit XCOFF and the big AR format is not yet supported in some of these tools, this patch avoids additional setup of these tools. This patch is not intended to prevent picking up the LLVM tools if they happen to be available otherwise.

Reviewed By: hubert.reinterpretcast

Differential Revision: https://reviews.llvm.org/D85329
This commit is contained in:
David Tenty 2020-08-10 16:07:23 -04:00
parent dd46edfabc
commit b95ef083c5

View File

@ -274,6 +274,11 @@ else() # if this is included from LLVM's CMake
endif()
endforeach()
# 64-bit XCOFF and big AR format is not yet supported in some of these tools.
if(NOT target MATCHES aix)
set(${target}_toolchain_tools lld llvm-ar llvm-lipo llvm-ranlib llvm-nm llvm-objcopy llvm-objdump llvm-strip)
endif()
llvm_ExternalProject_Add(builtins-${target}
${compiler_rt_path}/lib/builtins
DEPENDS ${ARG_DEPENDS}
@ -287,7 +292,7 @@ else() # if this is included from LLVM's CMake
-DCMAKE_ASM_COMPILER_WORKS=ON
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
${${target}_extra_args}
TOOLCHAIN_TOOLS clang lld llvm-ar llvm-lipo llvm-ranlib llvm-nm llvm-objcopy llvm-objdump llvm-strip
TOOLCHAIN_TOOLS clang ${target}_toolchain_tools
USE_TOOLCHAIN
${EXTRA_ARGS})
endfunction()
@ -487,6 +492,11 @@ else() # if this is included from LLVM's CMake
list(APPEND EXTRA_ARGS STRIP_TOOL ${CMAKE_CURRENT_BINARY_DIR}/llvm-strip-link)
endif()
# 64-bit XCOFF and big AR format is not yet supported in some of these tools.
if(NOT target MATCHES aix)
set(${name}_toolchain_tools lld llvm-ar llvm-lipo llvm-ranlib llvm-nm llvm-objcopy llvm-objdump llvm-strip)
endif()
llvm_ExternalProject_Add(runtimes-${name}
${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS ${${name}_deps} ${CXX_HEADER_TARGET}
@ -505,7 +515,7 @@ else() # if this is included from LLVM's CMake
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
-DLLVM_RUNTIMES_TARGET=${name}
${${name}_extra_args}
TOOLCHAIN_TOOLS clang lld llvm-ar llvm-lipo llvm-ranlib llvm-nm llvm-objcopy llvm-objdump llvm-strip
TOOLCHAIN_TOOLS clang ${{name}_toolchain_tools}
EXTRA_TARGETS ${${name}_extra_targets}
${${name}_test_targets}
USE_TOOLCHAIN