CMake: Renamed LLVM_ENABLE_ASSERTS to

LLVM_ENABLE_ASSERTIONS. Fine-tuned the logic that controls the
definition of NDEBUG and _DEBUG macros.

Thanks to Jay Foad for this suggestions.

llvm-svn: 72864
This commit is contained in:
Oscar Fuentes 2009-06-04 09:26:16 +00:00
parent 7ff7621a1d
commit 208a87314b
2 changed files with 15 additions and 6 deletions

View File

@ -58,13 +58,22 @@ 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)
option(LLVM_ENABLE_ASSERTIONS "Enable assertions" OFF)
else()
option(LLVM_ENABLE_ASSERTS "Enable asserts" ON)
option(LLVM_ENABLE_ASSERTIONS "Enable assertions" ON)
endif()
if( LLVM_ENABLE_ASSERTS )
add_definitions( -D_DEBUG -UNDEBUG )
if( LLVM_ENABLE_ASSERTIONS )
add_definitions( -D_DEBUG )
# On Release builds cmake automatically defines NDEBUG, so we
# explicitly undefine it:
if( uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" )
add_definitions( -UNDEBUG )
endif()
else()
if( NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE" )
add_definitions( -DNDEBUG )
endif()
endif()
if( LLVM_TARGETS_TO_BUILD STREQUAL "all" )

View File

@ -248,8 +248,8 @@
<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
<dt><b>LLVM_ENABLE_ASSERTIONS</b>:BOOL</dt>
<dd>Enables code assertions. Defaults to ON if and only if
CMAKE_BUILD_TYPE is <i>Release</i>.</dd>
<dt><b>LLVM_ENABLE_PIC</b>:BOOL</dt>