CMake: build DLLs in the right directory and include them in the 'install' target (PR21719)
When CMake builds a dynamic library on Windows, the .dll file's location is determined by the RUNTIME_OUTPUT_DIRECTORY, which we were previously not setting. This means for example that clang_rt.asan_dynamic-i386.dll will get built and installed in the same directory as the corresponding .lib file, instead of being built in the bin/ directory and not installed at all. Differential Revision: http://reviews.llvm.org/D6508 llvm-svn: 223387
This commit is contained in:
parent
19048871b2
commit
217cf22cf6
|
@ -59,7 +59,8 @@ macro(add_compiler_rt_runtime name arch type)
|
|||
# Setup correct output directory in the build tree.
|
||||
set_target_properties(${name} PROPERTIES
|
||||
ARCHIVE_OUTPUT_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR}
|
||||
LIBRARY_OUTPUT_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR})
|
||||
LIBRARY_OUTPUT_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR}
|
||||
RUNTIME_OUTPUT_DIRECTORY ${COMPILER_RT_LIBRARY_OUTPUT_DIR})
|
||||
if ("${LIB_OUTPUT_NAME}" STREQUAL "")
|
||||
set_target_properties(${name} PROPERTIES
|
||||
OUTPUT_NAME ${name}${COMPILER_RT_OS_SUFFIX})
|
||||
|
@ -70,7 +71,8 @@ macro(add_compiler_rt_runtime name arch type)
|
|||
# Add installation command.
|
||||
install(TARGETS ${name}
|
||||
ARCHIVE DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR}
|
||||
LIBRARY DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR})
|
||||
LIBRARY DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR}
|
||||
RUNTIME DESTINATION ${COMPILER_RT_LIBRARY_INSTALL_DIR})
|
||||
else()
|
||||
message(FATAL_ERROR "Archtecture ${arch} can't be targeted")
|
||||
endif()
|
||||
|
|
Loading…
Reference in New Issue