mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 16:33:28 +00:00
[CMake] LLVMSupport: Give system_libs PRIVATE scope when LLVMSupport is built as SHARED. Users of LLVMSupport won't inherit ${system_libs}.
unittests/SupporTests is another user of libpthreads. Apply LLVM_SYSTEM_LIBS for him explicitly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221531 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b3963d680c
commit
93f761eced
@ -1,3 +1,32 @@
|
||||
set(system_libs)
|
||||
if( NOT MSVC )
|
||||
if( MINGW )
|
||||
set(system_libs ${system_libs} imagehlp psapi shell32)
|
||||
elseif( CMAKE_HOST_UNIX )
|
||||
if( HAVE_LIBRT )
|
||||
set(system_libs ${system_libs} rt)
|
||||
endif()
|
||||
if( HAVE_LIBDL )
|
||||
set(system_libs ${system_libs} ${CMAKE_DL_LIBS})
|
||||
endif()
|
||||
if(LLVM_ENABLE_TERMINFO)
|
||||
if(HAVE_TERMINFO)
|
||||
set(system_libs ${system_libs} ${TERMINFO_LIBS})
|
||||
endif()
|
||||
endif()
|
||||
if( LLVM_ENABLE_THREADS AND HAVE_LIBATOMIC )
|
||||
set(system_libs ${system_libs} atomic)
|
||||
endif()
|
||||
if( LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD )
|
||||
set(system_libs ${system_libs} pthread)
|
||||
endif()
|
||||
if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
|
||||
set(system_libs ${system_libs} z)
|
||||
endif()
|
||||
set(system_libs ${system_libs} m)
|
||||
endif( MINGW )
|
||||
endif( NOT MSVC )
|
||||
|
||||
add_llvm_library(LLVMSupport
|
||||
APFloat.cpp
|
||||
APInt.cpp
|
||||
@ -117,42 +146,8 @@ add_llvm_library(LLVMSupport
|
||||
Windows/ThreadLocal.inc
|
||||
Windows/TimeValue.inc
|
||||
Windows/Watchdog.inc
|
||||
|
||||
LINK_LIBS ${system_libs}
|
||||
)
|
||||
set(system_libs)
|
||||
if( NOT MSVC )
|
||||
if( MINGW )
|
||||
set(system_libs ${system_libs} imagehlp psapi shell32)
|
||||
elseif( CMAKE_HOST_UNIX )
|
||||
if( HAVE_LIBRT )
|
||||
set(system_libs ${system_libs} rt)
|
||||
endif()
|
||||
if( HAVE_LIBDL )
|
||||
set(system_libs ${system_libs} ${CMAKE_DL_LIBS})
|
||||
endif()
|
||||
if(LLVM_ENABLE_TERMINFO)
|
||||
if(HAVE_TERMINFO)
|
||||
set(system_libs ${system_libs} ${TERMINFO_LIBS})
|
||||
endif()
|
||||
endif()
|
||||
if( LLVM_ENABLE_THREADS AND HAVE_LIBATOMIC )
|
||||
set(system_libs ${system_libs} atomic)
|
||||
endif()
|
||||
if( LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD )
|
||||
set(system_libs ${system_libs} pthread)
|
||||
endif()
|
||||
if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
|
||||
set(system_libs ${system_libs} z)
|
||||
endif()
|
||||
set(system_libs ${system_libs} m)
|
||||
endif( MINGW )
|
||||
endif( NOT MSVC )
|
||||
|
||||
|
||||
if(POLICY CMP0022 AND BUILD_SHARED_LIBS)
|
||||
# FIXME: Should this be really PUBLIC?
|
||||
target_link_libraries(LLVMSupport PUBLIC ${system_libs})
|
||||
else()
|
||||
target_link_libraries(LLVMSupport ${cmake_2_8_12_INTERFACE} ${system_libs})
|
||||
endif()
|
||||
|
||||
set_property(TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS "${system_libs}")
|
||||
|
@ -42,3 +42,8 @@ add_llvm_unittest(SupportTests
|
||||
formatted_raw_ostream_test.cpp
|
||||
raw_ostream_test.cpp
|
||||
)
|
||||
|
||||
# ManagedStatic.cpp uses <pthread>.
|
||||
if(LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD)
|
||||
target_link_libraries(SupportTests pthread)
|
||||
endif()
|
||||
|
Loading…
x
Reference in New Issue
Block a user