Actually, if someone on OS X decides to generate Makefiles then CMAKE_BUILD_TYPE can be very important.

You can simply do what you are doing and it _should_ work. The order of operations in a CMake file, like any other language, is important. It just depends on what is after those lines that you insert will determine what gets used and what does not.

_________________________________________________________
Mike Jackson                  [email protected]
BlueQuartz Software                    www.bluequartz.net
Principal Software Engineer                  Dayton, Ohio



On Mar 20, 2009, at 2:38 PM, Eric Sokolowsky wrote:

How do you tell Cmake to add a compiler flag to a project's Debug target?

In a project I'm trying to fix (OpenSceneGraph) it looks like Cmake
generates an Xcode project file containing all four of the build types:
Debug, Release, ReleaseMinSize, and RelWithDebInfo. These types can be
selected from within Xcode. Is it therefore true that there is no need
to set CMAKE_BUILD_TYPE on OSX? To gain understanding of what cmake is
doing, I have the following lines at the beginning of the CMakeLists.txt:

SET(COMPILE_DEFINITIONS_DEBUG ${COMPILE_DEFINITIONS_DEBUG} -D_DEBUG=2)
SET(CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG=3)
SET(CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG} -D_DEBUG=4)
add_definitions(-D_DEBUG=5)

And I put these lines at the end of the file:

SET(COMPILE_DEFINITIONS_DEBUG ${COMPILE_DEFINITIONS_DEBUG} -D_DEBUG=6)
SET(CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG=7)
SET(CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG} -D_DEBUG=8)
add_definitions(-D_DEBUG=9)

When I look in the build directory I only see instances of "- D_DEBUG=5"
and "-D_DEBUG=9". The Cmake documentation implies that at least one of
the other lines should do *something*, but they appear to do nothing.

Can anyone explain what is going on? Thanks.

-Eric
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to