[llvm-commits] [compiler-rt] r172979 - in /compiler-rt/trunk: cmake/Modules/AddCompilerRT.cmake lib/interception/CMakeLists.txt lib/sanitizer_common/CMakeLists.txt
Alexey Samsonov
samsonov at google.com
Sun Jan 20 06:36:12 PST 2013
Author: samsonov
Date: Sun Jan 20 08:36:12 2013
New Revision: 172979
URL: http://llvm.org/viewvc/llvm-project?rev=172979&view=rev
Log:
CMake: Add add_compiler_rt_osx_object_library to create universal libraries on Mac
Modified:
compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake
compiler-rt/trunk/lib/interception/CMakeLists.txt
compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt
Modified: compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake?rev=172979&r1=172978&r2=172979&view=diff
==============================================================================
--- compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake (original)
+++ compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake Sun Jan 20 08:36:12 2013
@@ -18,6 +18,20 @@
endif()
endmacro()
+# Same as above, but adds universal osx library with name "<name>.osx"
+# targeting multiple architectures.
+# add_compiler_rt_osx_object_library(<name> ARCH <architectures>
+# SOURCES <source files>
+# CFLAGS <compile flags>)
+macro(add_compiler_rt_osx_object_library name)
+ parse_arguments(LIB "ARCH;SOURCES;CFLAGS" "" ${ARGN})
+ set(libname "${name}.osx")
+ add_library(${libname} OBJECT ${LIB_SOURCES})
+ set_target_compile_flags(${libname} ${LIB_CFLAGS})
+ set_target_properties(${libname} PROPERTIES
+ OSX_ARCHITECTURES "${LIB_ARCH}")
+endmacro()
+
# Adds static runtime for a given architecture and puts it in the proper
# directory in the build and install trees.
# add_compiler_rt_static_runtime(<name> <arch>
Modified: compiler-rt/trunk/lib/interception/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/interception/CMakeLists.txt?rev=172979&r1=172978&r2=172979&view=diff
==============================================================================
--- compiler-rt/trunk/lib/interception/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/interception/CMakeLists.txt Sun Jan 20 08:36:12 2013
@@ -22,10 +22,10 @@
if(APPLE)
# Build universal binary on APPLE.
- add_library(RTInterception.osx OBJECT ${INTERCEPTION_SOURCES})
- set_target_compile_flags(RTInterception.osx ${INTERCEPTION_CFLAGS})
- set_target_properties(RTInterception.osx PROPERTIES
- OSX_ARCHITECTURES "${SANITIZER_COMMON_SUPPORTED_ARCH}")
+ add_compiler_rt_osx_object_library(RTInterception
+ ARCH ${SANITIZER_COMMON_SUPPORTED_ARCH}
+ SOURCES ${INTERCEPTION_SOURCES}
+ CFLAGS ${INTERCEPTION_CFLAGS})
elseif(ANDROID)
add_library(RTInterception.arm.android OBJECT ${INTERCEPTION_SOURCES})
set_target_compile_flags(RTInterception.arm.android
Modified: compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt?rev=172979&r1=172978&r2=172979&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt Sun Jan 20 08:36:12 2013
@@ -52,10 +52,10 @@
set(SANITIZER_RUNTIME_LIBRARIES)
if(APPLE)
# Build universal binary on APPLE.
- add_library(RTSanitizerCommon.osx OBJECT ${SANITIZER_SOURCES})
- set_target_compile_flags(RTSanitizerCommon.osx ${SANITIZER_CFLAGS})
- set_target_properties(RTSanitizerCommon.osx PROPERTIES
- OSX_ARCHITECTURES "${SANITIZER_COMMON_SUPPORTED_ARCH}")
+ add_compiler_rt_osx_object_library(RTSanitizerCommon
+ ARCH ${SANITIZER_COMMON_SUPPORTED_ARCH}
+ SOURCES ${SANITIZER_SOURCES}
+ CFLAGS ${SANITIZER_CFLAGS})
list(APPEND SANITIZER_RUNTIME_LIBRARIES RTSanitizerCommon.osx)
elseif(ANDROID)
add_library(RTSanitizerCommon.arm.android OBJECT ${SANITIZER_SOURCES})
More information about the llvm-commits
mailing list