aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2009-04-04 22:41:07 +0000
committerOscar Fuentes <ofv@wanadoo.es>2009-04-04 22:41:07 +0000
commit9a0107db7237d55e23ac0c2399bab46e8cf94b34 (patch)
tree71560feb3e7eda2b4c25269cd513f0112a8e98b1 /CMakeLists.txt
parent903bcc4a5a8f7438f44ac74ea9e8d63ce8e2c8a1 (diff)
CMake: defines and uses macro add_llvm_definitions for keeping track
of compiler parameters explicitly added by the build specification. This macro replaces the cmake built-in `add_definitions'. Detects glibc and defines _GNU_SOURCE accordingly. Resolves bug 3882. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68428 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt20
1 files changed, 11 insertions, 9 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1edea945c4..95f36a2bcd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -74,6 +74,8 @@ set(CMAKE_MODULE_PATH
"${LLVM_MAIN_SRC_DIR}/cmake/modules"
)
+include(AddLLVMDefinitions)
+
if(WIN32)
if(CYGWIN)
set(LLVM_ON_WIN32 0)
@@ -110,7 +112,7 @@ option(LLVM_ENABLE_PIC "Build Position-Independent Code" OFF)
if( LLVM_ENABLE_PIC )
if( SUPPORTS_FPIC_FLAG )
message(STATUS "Building with -fPIC")
- add_definitions(-fPIC)
+ add_llvm_definitions(-fPIC)
else( SUPPORTS_FPIC_FLAG )
message(STATUS "Warning: -fPIC not supported.")
endif()
@@ -122,8 +124,8 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${LLVM_BINARY_DIR}/lib )
# set(CMAKE_VERBOSE_MAKEFILE true)
-add_definitions( -D__STDC_LIMIT_MACROS )
-add_definitions( -D__STDC_CONSTANT_MACROS )
+add_llvm_definitions( -D__STDC_LIMIT_MACROS )
+add_llvm_definitions( -D__STDC_CONSTANT_MACROS )
set(LLVM_PLO_FLAGS "" CACHE
STRING "Flags for creating partially linked objects.")
@@ -133,7 +135,7 @@ if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
option(LLVM_BUILD_32_BITS "Build 32 bits executables and libraries." OFF)
if( LLVM_BUILD_32_BITS )
message(STATUS "Building 32 bits executables and libraries.")
- add_definitions( -m32 )
+ add_llvm_definitions( -m32 )
list(APPEND CMAKE_EXE_LINKER_FLAGS -m32)
list(APPEND CMAKE_SHARED_LINKER_FLAGS -m32)
set( LLVM_PLO_FLAGS -melf_i386 ${LLVM_PLO_FLAGS} )
@@ -141,11 +143,11 @@ if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
endif( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT WIN32 )
if( MSVC )
- add_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS )
- add_definitions( -D_SCL_SECURE_NO_WARNINGS -DCRT_NONSTDC_NO_WARNINGS )
- add_definitions( -D_SCL_SECURE_NO_DEPRECATE )
- add_definitions( -wd4146 -wd4503 -wd4996 -wd4800 -wd4244 -wd4624 )
- add_definitions( -wd4355 -wd4715 -wd4180 -wd4345 -wd4224 )
+ add_llvm_definitions( -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS )
+ add_llvm_definitions( -D_SCL_SECURE_NO_WARNINGS -DCRT_NONSTDC_NO_WARNINGS )
+ add_llvm_definitions( -D_SCL_SECURE_NO_DEPRECATE )
+ add_llvm_definitions( -wd4146 -wd4503 -wd4996 -wd4800 -wd4244 -wd4624 )
+ add_llvm_definitions( -wd4355 -wd4715 -wd4180 -wd4345 -wd4224 )
endif( MSVC )
include_directories( ${LLVM_BINARY_DIR}/include ${LLVM_MAIN_INCLUDE_DIR})