[CMake] CMAKE_CONFIGURATION_TYPES & MSVC7.0

xavier delannoy xavier.delannoy at gmail.com
Tue Jan 3 10:18:06 EST 2006


I have try, this doesn't work ;(
it seems that Cmake already overwrite my value.

here is my CMakeLists.txt

PROJECT(NAS C)

CMAKE_MINIMUM_REQUIRED(VERSION 2)
SET(UPDATE_TYPE cvs)

SET(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "must be force"
FORCE)

ENABLE_TESTING()

SET(MY_LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/lib")
SET(MY_SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/src")
SET(MY_ASQ_DIR "${NETASQ_SRC_DIR}/ASQ")
SET(MY_CONTRIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/contrib")
SET(MY_LIBICONV_DIR    "${NETASQ_CONTRIB_DIR}/libiconv-${LIBICONV_VERSION}")
SET(MY_OPENSSL_DIR    "${NETASQ_CONTRIB_DIR}/openssl")
SET(MY_LIBCURL_DIR    "${NETASQ_CONTRIB_DIR}/curl")


#
# SDK / DDK Directory
#
if(WIN32)
    SET(SDK_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../SDK")
ENDIF(WIN32)

#
# Platform specific
#
IF(UNIX)
  IF(APPLE)
    SET(PLATFORM "Darwin")
    SET(PLATFORM_C_FLAGS "")
    SET(PLATFORM_DEFINITION "-D_DARWIN -D_REENTRANT -D_THREAD_SAFE")
    SET(PLATFORM_SUBDIR_SRC "Darwin")
  ELSE(APPLE)
    SET(PLATFORM "FreeBSD")
    SET(PLATFORM_C_FLAGS "")
    SET(PLATFORM_DEFINITION "-D_FREEBSD -D_REENTRANT -D_THREAD_SAFE")
    SET(PLATFORM_SUBDIR_SRC "FreeBSD")
  ENDIF(APPLE)
ELSE(UNIX)
  IF(WIN32)
    SET(PLATFORM "Windows")
    SET(PLATFORM_C_FLAGS "/W3 /MT /O2 /Gs")
    SET(PLATFORM_C_FLAGS_DEBUG "/W3 /MTd /Zi /Od")
    SET(PLATFORM_DEFINITION "-DWIN32")
    SET(PLATFORM_SUBDIR_SRC "Win32")
  ELSE(WIN32)
    MESSAGE(FATAL_ERROR "Not supported platform")
  ENDIF(WIN32)
ENDIF(UNIX)

ADD_DEFINITIONS(${PLATFORM_DEFINITION})
SET(CMAKE_C_FLAGS_RELEASE "${PLATFORM_C_FLAGS}")
SET(CMAKE_C_FLAGS_DEBUG "${PLATFORM_C_FLAGS_DEBUG}")

ADD_SUBDIRECTORY(${MY_LIB_DIR} ${MY_LIB_DIR}/Cmake)
ADD_SUBDIRECTORY(${MY_SRC_DIR} ${MY_SRC_DIR}/Cmake)

2006/1/3, Jan Woetzel <jw at mip.informatik.uni-kiel.de>:
>
> xavier delannoy wrote:
>
> > I 'd like to restrict to Debug and Release only, thus I tried:
> >
> > SET(CMAKE_CONFIGURATION_TYPES "Debug;Release") in my CMakeList.txt
> > (which is located in the root directory of my project)
> >
> > When I edit CMakeCache.txt by hand, it's ok.
>
>
> CMake is creating a cache entry fro them,
> so you need to force it.
> Example:
>
> SET(CMAKE_CONFIGURATION_TYPES "Debug"
>    CACHE STRING  "semicolon separated list og configuration types,
> usually Debug;Release (forced!)" FORCE)
>
>
> --
>
>   Dipl.-Ing. Jan Woetzel
> --------------------------------------------------
>   University of Kiel
>   Institute of Computer Science and Applied Mathematics
>   Hermann-Rodewald-Str. 3 [room 310]
>   24098 Kiel/Germany
> --------------------------------------------------
>   Phone +49-431-880-4477
>   Fax   +49-431-880-4054
>   Mob.  +49-179-2937346
> --------------------------------------------------
>   Url   www.mip.informatik.uni-kiel.de/~jw
>   Email jw at mip.informatik.uni-kiel.de
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/cmake/attachments/20060103/f9b738f0/attachment.htm


More information about the CMake mailing list