diff options
author | Oscar Fuentes <ofv@wanadoo.es> | 2009-06-03 15:11:25 +0000 |
---|---|---|
committer | Oscar Fuentes <ofv@wanadoo.es> | 2009-06-03 15:11:25 +0000 |
commit | 81a875585c23ddc914e2f2955d87d1bf84696aa1 (patch) | |
tree | b9ee44738fe7f1777c7c8fab0bce69c381238f8b | |
parent | 5641f8d67f16b44a03290b6884ac18a08623a291 (diff) |
CMake: Implements and documents option LLVM_ENABLE_ASSERTS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72774 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | CMakeLists.txt | 12 | ||||
-rw-r--r-- | docs/CMake.html | 4 | ||||
-rw-r--r-- | tools/llvm-config/CMakeLists.txt | 1 |
3 files changed, 16 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 6af569b25a..ba63484d8c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,6 +17,8 @@ This process created the file `CMakeCache.txt' and the directory `CMakeFiles'. Please delete them.") endif() +string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) + include(FindPerl) set(LLVM_MAIN_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}) @@ -55,6 +57,16 @@ endif( MSVC ) option(LLVM_ENABLE_THREADS "Use threads if available." ON) +if( uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" ) + option(LLVM_ENABLE_ASSERTS "Enable asserts" OFF) +else() + option(LLVM_ENABLE_ASSERTS "Enable asserts" ON) +endif() + +if( LLVM_ENABLE_ASSERTS ) + add_definitions( -D_DEBUG -UNDEBUG ) +endif() + if( LLVM_TARGETS_TO_BUILD STREQUAL "all" ) set( LLVM_TARGETS_TO_BUILD ${LLVM_ALL_TARGETS} ) endif() diff --git a/docs/CMake.html b/docs/CMake.html index 27ec88ec94..b329ca46d6 100644 --- a/docs/CMake.html +++ b/docs/CMake.html @@ -248,6 +248,10 @@ <dt><b>LLVM_ENABLE_THREADS</b>:BOOL</dt> <dd>Build with threads support, if available. Defaults to ON.</dd> + <dt><b>LLVM_ENABLE_ASSERTS</b>:BOOL</dt> + <dd>Enables code asserts. Defaults to ON if and only if + CMAKE_BUILD_TYPE is <i>Release</i>.</dd> + <dt><b>LLVM_ENABLE_PIC</b>:BOOL</dt> <dd>Add the <i>-fPIC</i> flag to the compiler command-line, if the compiler supports this flag. Some systems, like Windows, does not diff --git a/tools/llvm-config/CMakeLists.txt b/tools/llvm-config/CMakeLists.txt index 29287ab82b..2cfd6bb22a 100644 --- a/tools/llvm-config/CMakeLists.txt +++ b/tools/llvm-config/CMakeLists.txt @@ -87,7 +87,6 @@ add_custom_command(OUTPUT ${FINAL_LIBDEPS} DEPENDS ${LIBDEPS} COMMENT "Checking for cyclic dependencies between LLVM libraries.") -string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) set(C_FLGS "${CMAKE_C_FLAGS_${uppercase_CMAKE_BUILD_TYPE}} ${LLVM_DEFINITIONS}") set(CXX_FLGS "${CMAKE_CXX_FLAGS_${uppercase_CMAKE_BUILD_TYPE}} ${LLVM_DEFINITIONS}") set(CPP_FLGS "${CMAKE_CPP_FLAGS_${uppercase_CMAKE_BUILD_TYPE}} ${LLVM_DEFINITIONS}") |