Alan W. Irwin wrote:
On 2006-09-07 09:35-0700 Brandon J. Van Every wrote:
Alan W. Irwin wrote:
On 2006-09-07 00:56-0700 Brandon J. Van Every wrote:
On MSVC my CMakeLists.txt generates Debug, Release, MinSizeRel, and
RelWithDebInfo build types. I want to keep all 4 of 'em. I want
to select MinSizeRel as the default build, so that if an end user
just fires up BUILD_ALL and does nothing else, he'll get a
MinSizeRel build. The default default is "Debug" and that's not
what I want.
So, is there a mechanism to specify the default build type? I was
unable to deduce it from the docs if there is one. Seems clear
enough how to ship *one* build type, I'd just do (SET
CMAKE_BUILD_TYPE MinSizeRel). But I want all 4 to be shipped.
Its a cached variable. So I think what you want is
SET (CMAKE_BUILD_TYPE MinSizeRel CACHE STRING "Flags used by the
compiler
during all build types.")
That gives you the default you want plus the user should be able to
override
that default with a -D option or appropriate GUI action.
I don't think this works for shipping 4 build types. I don't want
them, by default, to all behave as the same build type.
Could you explain in more detail just what you mean by "shipping 4 build
types"? (1) Is that giving the user the option of 4 different build
types with a
particular default?
Yes. What currently comes out of CMake in VS7.1 is 4 different build
types that the user can select, and the default is "Debug." If the user
does nothing but run BUILD_ALL, she'll get a debug build. We'd rather
it be a Release or MinSizeRel build.
(2) Do you want to have the user build all 4 build types
in the same CMake run?
The user can enable this from VS7.1 if they want to. They would select
"Batch Build." We're not interested in doing a batch build by default.
The first interpretation of your request is easy to supply. CMake already
allows the user to specify one of a list of build types. All the
above SET
command does is change the default build type (which is what you asked
for)
while still allowing the user to choose something different in ccmake (or
whatever GUI front-end they use) if they prefer a build type that is
different than the default MinSizeRel.
Ok I will try it and report back. I'm in the middle of tearing
something else up at this exact moment.
Cheers,
Brandon Van Every
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake