Skip to content

Commit ae79854

Browse files
author
Kai Luo
committed
[AIX][compiler-rt] Deliver libatomic.a at top level library directory
Install libatomic.a in top level library directory so that compiler can find it in search directories. Reviewed By: jsji Differential Revision: https://reviews.llvm.org/D104908
1 parent 42c05ed commit ae79854

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

compiler-rt/cmake/Modules/CompilerRTAIXUtils.cmake

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,16 @@ macro(archive_aix_libatomic name)
5757
if(shared_libraries_to_archive)
5858
set(output_dir "")
5959
set(install_dir "")
60-
get_compiler_rt_output_dir(${COMPILER_RT_DEFAULT_TARGET_ARCH} output_dir)
61-
get_compiler_rt_install_dir(${COMPILER_RT_DEFAULT_TARGET_ARCH} install_dir)
60+
# If LLVM defines top level library directory, we want to deliver
61+
# libatomic.a at top level. See `llvm/cmake/modules/AddLLVM.cmake'
62+
# setting _install_rpath on AIX for reference.
63+
if(LLVM_LIBRARY_OUTPUT_INTDIR AND CMAKE_INSTALL_PREFIX)
64+
set(output_dir "${LLVM_LIBRARY_OUTPUT_INTDIR}")
65+
set(install_dir "${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX}")
66+
else()
67+
get_compiler_rt_output_dir(${COMPILER_RT_DEFAULT_TARGET_ARCH} output_dir)
68+
get_compiler_rt_install_dir(${COMPILER_RT_DEFAULT_TARGET_ARCH} install_dir)
69+
endif()
6270
add_custom_command(OUTPUT "${output_dir}/libatomic.a"
6371
COMMAND ${CMAKE_AR} -X32_64 r "${output_dir}/libatomic.a"
6472
${shared_libraries_to_archive}

0 commit comments

Comments
 (0)