forked from OSchip/llvm-project
CMake variables renaming: X86_64->x86_64 I386->i386
llvm-svn: 172812
This commit is contained in:
parent
518a135ffe
commit
193b45f4fe
|
@ -30,21 +30,21 @@ set(COMPILER_RT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||||
# Detect whether the current target platform is 32-bit or 64-bit, and setup
|
# Detect whether the current target platform is 32-bit or 64-bit, and setup
|
||||||
# the correct commandline flags needed to attempt to target 32-bit and 64-bit.
|
# the correct commandline flags needed to attempt to target 32-bit and 64-bit.
|
||||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4 OR LLVM_BUILD_32_BITS)
|
if(CMAKE_SIZEOF_VOID_P EQUAL 4 OR LLVM_BUILD_32_BITS)
|
||||||
set(TARGET_X86_64_CFLAGS "-m64")
|
set(TARGET_x86_64_CFLAGS "-m64")
|
||||||
set(TARGET_I386_CFLAGS "")
|
set(TARGET_i386_CFLAGS "")
|
||||||
else()
|
else()
|
||||||
if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
|
if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||||
message(FATAL_ERROR "Please use a sane architecture with 4 or 8 byte pointers.")
|
message(FATAL_ERROR "Please use a sane architecture with 4 or 8 byte pointers.")
|
||||||
endif()
|
endif()
|
||||||
set(TARGET_X86_64_CFLAGS "")
|
set(TARGET_x86_64_CFLAGS "")
|
||||||
set(TARGET_I386_CFLAGS "-m32")
|
set(TARGET_i386_CFLAGS "-m32")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
function(get_target_flags_for_arch arch out_var)
|
function(get_target_flags_for_arch arch out_var)
|
||||||
if(${arch} STREQUAL "x86_64")
|
if(${arch} STREQUAL "x86_64")
|
||||||
set(${out_var} ${TARGET_X86_64_CFLAGS} PARENT_SCOPE)
|
set(${out_var} ${TARGET_x86_64_CFLAGS} PARENT_SCOPE)
|
||||||
elseif(${arch} STREQUAL "i386")
|
elseif(${arch} STREQUAL "i386")
|
||||||
set(${out_var} ${TARGET_I386_CFLAGS} PARENT_SCOPE)
|
set(${out_var} ${TARGET_i386_CFLAGS} PARENT_SCOPE)
|
||||||
else()
|
else()
|
||||||
message(FATAL_ERROR "Unsupported architecture: ${arch}")
|
message(FATAL_ERROR "Unsupported architecture: ${arch}")
|
||||||
endif()
|
endif()
|
||||||
|
@ -56,15 +56,15 @@ endfunction()
|
||||||
# abilities.
|
# abilities.
|
||||||
set(SIMPLE_SOURCE64 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple64.c)
|
set(SIMPLE_SOURCE64 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple64.c)
|
||||||
file(WRITE ${SIMPLE_SOURCE64} "#include <stdlib.h>\nint main() {}")
|
file(WRITE ${SIMPLE_SOURCE64} "#include <stdlib.h>\nint main() {}")
|
||||||
try_compile(CAN_TARGET_X86_64 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE64}
|
try_compile(CAN_TARGET_x86_64 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE64}
|
||||||
COMPILE_DEFINITIONS "${TARGET_X86_64_CFLAGS}"
|
COMPILE_DEFINITIONS "${TARGET_x86_64_CFLAGS}"
|
||||||
CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_X86_64_CFLAGS}")
|
CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_x86_64_CFLAGS}")
|
||||||
|
|
||||||
set(SIMPLE_SOURCE32 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple32.c)
|
set(SIMPLE_SOURCE32 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple32.c)
|
||||||
file(WRITE ${SIMPLE_SOURCE32} "#include <stdlib.h>\nint main() {}")
|
file(WRITE ${SIMPLE_SOURCE32} "#include <stdlib.h>\nint main() {}")
|
||||||
try_compile(CAN_TARGET_I386 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE32}
|
try_compile(CAN_TARGET_i386 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE32}
|
||||||
COMPILE_DEFINITIONS "${TARGET_I386_CFLAGS}"
|
COMPILE_DEFINITIONS "${TARGET_i386_CFLAGS}"
|
||||||
CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_I386_CFLAGS}")
|
CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_i386_CFLAGS}")
|
||||||
|
|
||||||
# We only support running instrumented tests when we're not cross compiling
|
# We only support running instrumented tests when we're not cross compiling
|
||||||
# and target a unix-like system. On Android we define the rules for building
|
# and target a unix-like system. On Android we define the rules for building
|
||||||
|
@ -78,9 +78,9 @@ endif()
|
||||||
function(filter_available_targets out_var)
|
function(filter_available_targets out_var)
|
||||||
set(archs)
|
set(archs)
|
||||||
foreach(arch ${ARGN})
|
foreach(arch ${ARGN})
|
||||||
if(${arch} STREQUAL "x86_64" AND CAN_TARGET_X86_64)
|
if(${arch} STREQUAL "x86_64" AND CAN_TARGET_x86_64)
|
||||||
list(APPEND archs ${arch})
|
list(APPEND archs ${arch})
|
||||||
elseif (${arch} STREQUAL "i386" AND CAN_TARGET_I386)
|
elseif (${arch} STREQUAL "i386" AND CAN_TARGET_i386)
|
||||||
list(APPEND archs ${arch})
|
list(APPEND archs ${arch})
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
|
@ -150,7 +150,7 @@ set(GENERIC_SOURCES
|
||||||
umodti3.c
|
umodti3.c
|
||||||
)
|
)
|
||||||
|
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_library(clang_rt.x86_64 STATIC
|
add_library(clang_rt.x86_64 STATIC
|
||||||
x86_64/floatdidf.c
|
x86_64/floatdidf.c
|
||||||
x86_64/floatdisf.c
|
x86_64/floatdisf.c
|
||||||
|
@ -160,10 +160,10 @@ if(CAN_TARGET_X86_64)
|
||||||
x86_64/floatundixf.S
|
x86_64/floatundixf.S
|
||||||
${GENERIC_SOURCES}
|
${GENERIC_SOURCES}
|
||||||
)
|
)
|
||||||
set_target_properties(clang_rt.x86_64 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_X86_64_CFLAGS}")
|
set_target_properties(clang_rt.x86_64 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_x86_64_CFLAGS}")
|
||||||
add_clang_compiler_rt_libraries(clang_rt.x86_64)
|
add_clang_compiler_rt_libraries(clang_rt.x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_library(clang_rt.i386 STATIC
|
add_library(clang_rt.i386 STATIC
|
||||||
i386/ashldi3.S
|
i386/ashldi3.S
|
||||||
i386/ashrdi3.S
|
i386/ashrdi3.S
|
||||||
|
@ -181,6 +181,6 @@ if(CAN_TARGET_I386)
|
||||||
i386/umoddi3.S
|
i386/umoddi3.S
|
||||||
${GENERIC_SOURCES}
|
${GENERIC_SOURCES}
|
||||||
)
|
)
|
||||||
set_target_properties(clang_rt.i386 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_I386_CFLAGS}")
|
set_target_properties(clang_rt.i386 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_i386_CFLAGS}")
|
||||||
add_clang_compiler_rt_libraries(clang_rt.i386)
|
add_clang_compiler_rt_libraries(clang_rt.i386)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -78,25 +78,25 @@ elseif(ANDROID)
|
||||||
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-arm-android)
|
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-arm-android)
|
||||||
else()
|
else()
|
||||||
# Otherwise, build separate libraries for each target.
|
# Otherwise, build separate libraries for each target.
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_library(clang_rt.asan-x86_64 STATIC
|
add_library(clang_rt.asan-x86_64 STATIC
|
||||||
${ASAN_SOURCES}
|
${ASAN_SOURCES}
|
||||||
$<TARGET_OBJECTS:RTInterception.x86_64>
|
$<TARGET_OBJECTS:RTInterception.x86_64>
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.asan-x86_64
|
set_target_compile_flags(clang_rt.asan-x86_64
|
||||||
${ASAN_CFLAGS} ${TARGET_X86_64_CFLAGS}
|
${ASAN_CFLAGS} ${TARGET_x86_64_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-x86_64)
|
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_library(clang_rt.asan-i386 STATIC
|
add_library(clang_rt.asan-i386 STATIC
|
||||||
${ASAN_SOURCES}
|
${ASAN_SOURCES}
|
||||||
$<TARGET_OBJECTS:RTInterception.i386>
|
$<TARGET_OBJECTS:RTInterception.i386>
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.i386>
|
$<TARGET_OBJECTS:RTSanitizerCommon.i386>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.asan-i386
|
set_target_compile_flags(clang_rt.asan-i386
|
||||||
${ASAN_CFLAGS} ${TARGET_I386_CFLAGS}
|
${ASAN_CFLAGS} ${TARGET_i386_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-i386)
|
list(APPEND ASAN_RUNTIME_LIBRARIES clang_rt.asan-i386)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -65,6 +65,7 @@ else()
|
||||||
# passing -fsanitize=address flag.
|
# passing -fsanitize=address flag.
|
||||||
list(APPEND ASAN_LINK_FLAGS -fsanitize=address)
|
list(APPEND ASAN_LINK_FLAGS -fsanitize=address)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# Unit tests on Mac depend on Foundation.
|
# Unit tests on Mac depend on Foundation.
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
list(APPEND ASAN_LINK_FLAGS -framework Foundation)
|
list(APPEND ASAN_LINK_FLAGS -framework Foundation)
|
||||||
|
@ -154,10 +155,10 @@ macro(add_asan_tests_for_arch arch)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
if(COMPILER_RT_CAN_EXECUTE_TESTS)
|
if(COMPILER_RT_CAN_EXECUTE_TESTS)
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_asan_tests_for_arch(x86_64)
|
add_asan_tests_for_arch(x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_asan_tests_for_arch(i386)
|
add_asan_tests_for_arch(i386)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -29,15 +29,15 @@ if(APPLE)
|
||||||
OSX_ARCHITECTURES "${INTERCEPTION_TARGETS}")
|
OSX_ARCHITECTURES "${INTERCEPTION_TARGETS}")
|
||||||
else()
|
else()
|
||||||
# Otherwise, build separate libraries for each target.
|
# Otherwise, build separate libraries for each target.
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_library(RTInterception.x86_64 OBJECT ${INTERCEPTION_SOURCES})
|
add_library(RTInterception.x86_64 OBJECT ${INTERCEPTION_SOURCES})
|
||||||
set_target_compile_flags(RTInterception.x86_64
|
set_target_compile_flags(RTInterception.x86_64
|
||||||
${INTERCEPTION_CFLAGS} ${TARGET_X86_64_CFLAGS})
|
${INTERCEPTION_CFLAGS} ${TARGET_x86_64_CFLAGS})
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_library(RTInterception.i386 OBJECT ${INTERCEPTION_SOURCES})
|
add_library(RTInterception.i386 OBJECT ${INTERCEPTION_SOURCES})
|
||||||
set_target_compile_flags(RTInterception.i386
|
set_target_compile_flags(RTInterception.i386
|
||||||
${INTERCEPTION_CFLAGS} ${TARGET_I386_CFLAGS})
|
${INTERCEPTION_CFLAGS} ${TARGET_i386_CFLAGS})
|
||||||
endif()
|
endif()
|
||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
add_library(RTInterception.arm.android OBJECT ${INTERCEPTION_SOURCES})
|
add_library(RTInterception.arm.android OBJECT ${INTERCEPTION_SOURCES})
|
||||||
|
|
|
@ -24,7 +24,7 @@ add_library(clang_rt.msan-x86_64 STATIC
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.msan-x86_64
|
set_target_compile_flags(clang_rt.msan-x86_64
|
||||||
${MSAN_RTL_CFLAGS} ${TARGET_X86_64_CFLAGS}
|
${MSAN_RTL_CFLAGS} ${TARGET_x86_64_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND MSAN_RUNTIME_LIBRARIES clang_rt.msan-x86_64)
|
list(APPEND MSAN_RUNTIME_LIBRARIES clang_rt.msan-x86_64)
|
||||||
|
|
||||||
|
|
|
@ -149,7 +149,7 @@ macro(add_msan_tests_for_arch arch)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
if(COMPILER_RT_CAN_EXECUTE_TESTS AND EXISTS ${MSAN_LIBCXX_PATH}/)
|
if(COMPILER_RT_CAN_EXECUTE_TESTS AND EXISTS ${MSAN_LIBCXX_PATH}/)
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_msan_tests_for_arch(x86_64)
|
add_msan_tests_for_arch(x86_64)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -60,16 +60,16 @@ if(APPLE)
|
||||||
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.osx)
|
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.osx)
|
||||||
else()
|
else()
|
||||||
# Otherwise, build separate libraries for each target.
|
# Otherwise, build separate libraries for each target.
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_library(RTSanitizerCommon.x86_64 OBJECT ${SANITIZER_SOURCES})
|
add_library(RTSanitizerCommon.x86_64 OBJECT ${SANITIZER_SOURCES})
|
||||||
set_target_compile_flags(RTSanitizerCommon.x86_64
|
set_target_compile_flags(RTSanitizerCommon.x86_64
|
||||||
${SANITIZER_CFLAGS} ${TARGET_X86_64_CFLAGS})
|
${SANITIZER_CFLAGS} ${TARGET_x86_64_CFLAGS})
|
||||||
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.x86_64)
|
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_library(RTSanitizerCommon.i386 OBJECT ${SANITIZER_SOURCES})
|
add_library(RTSanitizerCommon.i386 OBJECT ${SANITIZER_SOURCES})
|
||||||
set_target_compile_flags(RTSanitizerCommon.i386
|
set_target_compile_flags(RTSanitizerCommon.i386
|
||||||
${SANITIZER_CFLAGS} ${TARGET_I386_CFLAGS})
|
${SANITIZER_CFLAGS} ${TARGET_i386_CFLAGS})
|
||||||
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.i386)
|
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.i386)
|
||||||
endif()
|
endif()
|
||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
|
|
|
@ -84,19 +84,19 @@ if(COMPILER_RT_CAN_EXECUTE_TESTS)
|
||||||
add_sanitizer_common_lib("RTSanitizerCommon.test.osx"
|
add_sanitizer_common_lib("RTSanitizerCommon.test.osx"
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.osx>)
|
$<TARGET_OBJECTS:RTSanitizerCommon.osx>)
|
||||||
else()
|
else()
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_sanitizer_common_lib("RTSanitizerCommon.test.x86_64"
|
add_sanitizer_common_lib("RTSanitizerCommon.test.x86_64"
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>)
|
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_sanitizer_common_lib("RTSanitizerCommon.test.i386"
|
add_sanitizer_common_lib("RTSanitizerCommon.test.i386"
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.i386>)
|
$<TARGET_OBJECTS:RTSanitizerCommon.i386>)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_sanitizer_tests_for_arch(x86_64)
|
add_sanitizer_tests_for_arch(x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_sanitizer_tests_for_arch(i386)
|
add_sanitizer_tests_for_arch(i386)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,7 @@ endif()
|
||||||
|
|
||||||
set(TSAN_RUNTIME_LIBRARIES)
|
set(TSAN_RUNTIME_LIBRARIES)
|
||||||
# TSan is currently supported on 64-bit Linux only.
|
# TSan is currently supported on 64-bit Linux only.
|
||||||
if(CAN_TARGET_X86_64 AND UNIX AND NOT APPLE)
|
if(CAN_TARGET_x86_64 AND UNIX AND NOT APPLE)
|
||||||
set(TSAN_ASM_SOURCES tsan_rtl_amd64.S)
|
set(TSAN_ASM_SOURCES tsan_rtl_amd64.S)
|
||||||
# Pass ASM file directly to the C++ compiler.
|
# Pass ASM file directly to the C++ compiler.
|
||||||
set_source_files_properties(${TSAN_ASM_SOURCES} PROPERTIES
|
set_source_files_properties(${TSAN_ASM_SOURCES} PROPERTIES
|
||||||
|
@ -46,7 +46,7 @@ if(CAN_TARGET_X86_64 AND UNIX AND NOT APPLE)
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.tsan-x86_64
|
set_target_compile_flags(clang_rt.tsan-x86_64
|
||||||
${TSAN_CFLAGS} ${TARGET_X86_64_CFLAGS}
|
${TSAN_CFLAGS} ${TARGET_x86_64_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND TSAN_RUNTIME_LIBRARIES clang_rt.tsan-x86_64)
|
list(APPEND TSAN_RUNTIME_LIBRARIES clang_rt.tsan-x86_64)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -6,7 +6,7 @@ set_target_properties(TsanUnitTests PROPERTIES
|
||||||
function(add_tsan_unittest testname)
|
function(add_tsan_unittest testname)
|
||||||
# Build unit tests only on 64-bit Linux.
|
# Build unit tests only on 64-bit Linux.
|
||||||
if(UNIX AND NOT APPLE
|
if(UNIX AND NOT APPLE
|
||||||
AND CAN_TARGET_X86_64
|
AND CAN_TARGET_x86_64
|
||||||
AND CMAKE_SIZEOF_VOID_P EQUAL 8
|
AND CMAKE_SIZEOF_VOID_P EQUAL 8
|
||||||
AND NOT LLVM_BUILD_32_BITS)
|
AND NOT LLVM_BUILD_32_BITS)
|
||||||
add_unittest(TsanUnitTests ${testname} ${ARGN})
|
add_unittest(TsanUnitTests ${testname} ${ARGN})
|
||||||
|
|
|
@ -27,23 +27,23 @@ if(APPLE)
|
||||||
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan_osx)
|
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan_osx)
|
||||||
else()
|
else()
|
||||||
# Build separate libraries for each target.
|
# Build separate libraries for each target.
|
||||||
if(CAN_TARGET_X86_64)
|
if(CAN_TARGET_x86_64)
|
||||||
add_library(clang_rt.ubsan-x86_64 STATIC
|
add_library(clang_rt.ubsan-x86_64 STATIC
|
||||||
${UBSAN_SOURCES}
|
${UBSAN_SOURCES}
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
$<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.ubsan-x86_64
|
set_target_compile_flags(clang_rt.ubsan-x86_64
|
||||||
${UBSAN_CFLAGS} ${TARGET_X86_64_CFLAGS}
|
${UBSAN_CFLAGS} ${TARGET_x86_64_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan-x86_64)
|
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan-x86_64)
|
||||||
endif()
|
endif()
|
||||||
if(CAN_TARGET_I386)
|
if(CAN_TARGET_i386)
|
||||||
add_library(clang_rt.ubsan-i386 STATIC
|
add_library(clang_rt.ubsan-i386 STATIC
|
||||||
${UBSAN_SOURCES}
|
${UBSAN_SOURCES}
|
||||||
$<TARGET_OBJECTS:RTSanitizerCommon.i386>
|
$<TARGET_OBJECTS:RTSanitizerCommon.i386>
|
||||||
)
|
)
|
||||||
set_target_compile_flags(clang_rt.ubsan-i386
|
set_target_compile_flags(clang_rt.ubsan-i386
|
||||||
${UBSAN_CFLAGS} ${TARGET_I386_CFLAGS}
|
${UBSAN_CFLAGS} ${TARGET_i386_CFLAGS}
|
||||||
)
|
)
|
||||||
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan-i386)
|
list(APPEND UBSAN_RUNTIME_LIBRARIES clang_rt.ubsan-i386)
|
||||||
endif()
|
endif()
|
||||||
|
|
Loading…
Reference in New Issue