Re: [CMake] Default value for CMAKE_BUILD_TYPE

2012-05-14 Thread pellegrini

On 5/11/2012 5:30 PM, Jean-Christophe Fillion-Robin wrote:

Hi Eric,

In our different projects, we use an approach similar to this one:

# Set a default build type if none was specified
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
   message(STATUS Setting build type to 'Debug' as none was specified.)
   set(CMAKE_BUILD_TYPE Debug CACHE STRING Choose the type of build. FORCE)
   # Set the possible values of build type for cmake-gui
   set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS Debug Release
 MinSizeRel RelWithDebInfo)
endif()


See 
http://vtk.org/gitweb?p=VTK.git;a=blob;f=CMakeLists.txt;h=a57fd66ef333fc26bf74fe658c88c3c634f54c3a;hb=HEAD#l12



Hth
Jc

On Fri, May 11, 2012 at 11:21 AM, pellegrini pellegr...@ill.fr 
mailto:pellegr...@ill.fr wrote:


Hi all,

when cmake is run without specifying the build type using -D
CMAKE_BUILD_TYPE, it is the Debug mode that is selected as
the default. I would like to find a way to use Release as the
default value when the user does not specify any build
type in the cmake command line.

From one of my previous post concerning CMAKE_INSTALL_PREFIX
variable, I was thinking to use a similar approach i.e.:

project(Foo)

if (CMAKE_BUILD_TYPE_INITIALIZED_TO_DEFAULT)
   set(CMAKE_BUILD_TYPE Release)
endif

but cmake still sets CMAKE_BUILD_TYPE to Debug in the
CMakeCache.txt file.

Would you have any idea about what is wrong with my implementation ?

thanks a lot.

Eric
--

Powered by www.kitware.com http://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




--
+1 919 869 8849


Hi Jean-Christophe,

I found a hack for my problem. First it seems to be a windows specific 
problem (I found one other message that

mention this).

What I did is just to put the following before (compulsory) the project 
declaration:


if (NOT DEFINED CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE CACHE Release STRING hfsfhskj FORCE)
endif()

It would be interesting to get the feedback of the CMake team about the 
uglyness of such a hack.


Bye

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

Re: [CMake] Default value for CMAKE_BUILD_TYPE

2012-05-14 Thread Jean-Christophe Fillion-Robin
Hi Eric,

Considering the fact Visual Studio is a multi-configuration system, I don't
think using CMAKE_BUILD_TYPE is what you want. Indeed, in such case, the
build type is know at build time only. See [1]

Hth
Jc

[1]
http://www.cmake.org/cmake/help/v2.8.8/cmake.html#variable:CMAKE_CFG_INTDIR


On Mon, May 14, 2012 at 11:16 AM, pellegrini pellegr...@ill.fr wrote:

  On 5/11/2012 5:30 PM, Jean-Christophe Fillion-Robin wrote:

 Hi Eric,

  In our different projects, we use an approach similar to this one:

  # Set a default build type if none was specified
 if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
   message(STATUS Setting build type to 'Debug' as none was specified.)
   set(CMAKE_BUILD_TYPE Debug CACHE STRING Choose the type of build. FORCE)
   # Set the possible values of build type for cmake-gui
   set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS Debug Release
 MinSizeRel RelWithDebInfo)
 endif()



  See
 http://vtk.org/gitweb?p=VTK.git;a=blob;f=CMakeLists.txt;h=a57fd66ef333fc26bf74fe658c88c3c634f54c3a;hb=HEAD#l12


 Hth
 Jc

 On Fri, May 11, 2012 at 11:21 AM, pellegrini pellegr...@ill.fr wrote:

 Hi all,

 when cmake is run without specifying the build type using -D
 CMAKE_BUILD_TYPE, it is the Debug mode that is selected as
 the default. I would like to find a way to use Release as the default
 value when the user does not specify any build
 type in the cmake command line.

 From one of my previous post concerning CMAKE_INSTALL_PREFIX variable, I
 was thinking to use a similar approach i.e.:

 project(Foo)

 if (CMAKE_BUILD_TYPE_INITIALIZED_TO_DEFAULT)
set(CMAKE_BUILD_TYPE Release)
 endif

 but cmake still sets CMAKE_BUILD_TYPE to Debug in the CMakeCache.txt file.

 Would you have any idea about what is wrong with my implementation ?

 thanks a lot.

 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




  --
 +1 919 869 8849

  Hi Jean-Christophe,

 I found a hack for my problem. First it seems to be a windows specific
 problem (I found one other message that
 mention this).

 What I did is just to put the following before (compulsory) the project
 declaration:

 if (NOT DEFINED CMAKE_BUILD_TYPE)
 set(CMAKE_BUILD_TYPE CACHE Release STRING hfsfhskj FORCE)
 endif()

 It would be interesting to get the feedback of the CMake team about the
 uglyness of such a hack.

 Bye

 Eric




-- 
+1 919 869 8849
--

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

Re: [CMake] Default value for CMAKE_BUILD_TYPE

2012-05-11 Thread Jean-Christophe Fillion-Robin
Hi Eric,

In our different projects, we use an approach similar to this one:

# Set a default build type if none was specified
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
  message(STATUS Setting build type to 'Debug' as none was specified.)
  set(CMAKE_BUILD_TYPE Debug CACHE STRING Choose the type of build. FORCE)
  # Set the possible values of build type for cmake-gui
  set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS Debug Release
MinSizeRel RelWithDebInfo)
endif()



See
http://vtk.org/gitweb?p=VTK.git;a=blob;f=CMakeLists.txt;h=a57fd66ef333fc26bf74fe658c88c3c634f54c3a;hb=HEAD#l12


Hth
Jc

On Fri, May 11, 2012 at 11:21 AM, pellegrini pellegr...@ill.fr wrote:

 Hi all,

 when cmake is run without specifying the build type using -D
 CMAKE_BUILD_TYPE, it is the Debug mode that is selected as
 the default. I would like to find a way to use Release as the default
 value when the user does not specify any build
 type in the cmake command line.

 From one of my previous post concerning CMAKE_INSTALL_PREFIX variable, I
 was thinking to use a similar approach i.e.:

 project(Foo)

 if (CMAKE_BUILD_TYPE_INITIALIZED_**TO_DEFAULT)
set(CMAKE_BUILD_TYPE Release)
 endif

 but cmake still sets CMAKE_BUILD_TYPE to Debug in the CMakeCache.txt file.

 Would you have any idea about what is wrong with my implementation ?

 thanks a lot.

 Eric
 --

 Powered by www.kitware.com

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

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

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




-- 
+1 919 869 8849
--

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