Re: CMAKE_CONFIGURATION_TYPES considered harmful
On Thursday 06 November 2008, Andreas Pakulat wrote: So just remove the setting of CMAKE_CONFIGURATION_TYPES completely. I thought it was useful for showing that debugfull is available, in ccmake? -- David Faure, [EMAIL PROTECTED], sponsored by Trolltech to work on KDE, Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org). ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: CMAKE_CONFIGURATION_TYPES considered harmful
On 06.11.08 09:58:18, David Faure wrote: On Thursday 06 November 2008, Andreas Pakulat wrote: So just remove the setting of CMAKE_CONFIGURATION_TYPES completely. I thought it was useful for showing that debugfull is available, in ccmake? Only if it is not set I think. At least here I only have options: None when trying to use that. Andreas -- Break into jail and claim police brutality. ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: CMAKE_CONFIGURATION_TYPES considered harmful
On 06.11.08 18:20:44, Alexander Neundorf wrote: On Thursday 06 November 2008, Andreas Pakulat wrote: On 06.11.08 09:58:18, David Faure wrote: On Thursday 06 November 2008, Andreas Pakulat wrote: So just remove the setting of CMAKE_CONFIGURATION_TYPES completely. I thought it was useful for showing that debugfull is available, in ccmake? I don't think so. Only if it is not set I think. At least here I only have options: None when trying to use that. Where do you see that ? Oh, apparently my terminal was to small when I tried that. In fact in a kdelibs that has the set(CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} Debugfull) I do see: Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. So apparently the text of that is simply hardcoded in ccmake. Its shown when going to the CMAKE_BUILD_TYPE entry. Andreas -- After your lover has gone you will still have PEANUT BUTTER! ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: CMAKE_CONFIGURATION_TYPES considered harmful
Manuel Sput Nickschas wrote: Hi guys, we at Gentoo have recently discovered that KDE's packages always use the Debugfull configuration for installation: -- Install configuration: Debugfull This happens also if CMAKE_BUILD_TYPE=Release. We have hunted down that issue and traced it back to FindKDE4Internal.cmake line 1033: set (CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} Debugfull) That should be more like if(CMAKE_CONFIGURATION_TYPES) list(APPEND CMAKE_CONFIGURATION_TYPES Debugfull) endif(CMAKE_CONFIGURATION_TYPES) While in theory and according to cmake docs this should just add the additional build configuration to a list of existing ones, in reality this adds Debugfull to an empty list, since CMake does not set this variable (anymore? Dunno if that was always the case...). This results in CMake always installing Debugfull, since it's set to be the only valid type. The variable is used by the IDE generators like VS and Xcode which have multiple configurations in a single build tree. It should not be set for Makefile generators. -Brad ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: CMAKE_CONFIGURATION_TYPES considered harmful
Alexander Neundorf wrote: On Wednesday 05 November 2008, Brad King wrote: Manuel Sput Nickschas wrote: ... While in theory and according to cmake docs this should just add the additional build configuration to a list of existing ones, in reality this adds Debugfull to an empty list, since CMake does not set this variable (anymore? Dunno if that was always the case...). This results in CMake always installing Debugfull, since it's set to be the only valid type. The variable is used by the IDE generators like VS and Xcode which have multiple configurations in a single build tree. It should not be set for Makefile generators. So you would recommend checking the generator over setting CMAKE_CONFIGURATION_TYPES to CMAKE_BUILD_TYPE initially ? This is what I was about to do: if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE RelWithDebInfo) set(CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} ${CMAKE_BUILD_TYPE} ) endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) The way to identify whether a generator is multi-configuration is to check whether CMAKE_CONFIGURATION_TYPES is set. The VS/XCode generators set it (and ignore CMAKE_BUILD_TYPE). The Makefile generators do not set it (and use CMAKE_BUILD_TYPE). If CMAKE_CONFIGURATION_TYPES is not already set, don't set it. -Brad ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem
Re: CMAKE_CONFIGURATION_TYPES considered harmful
On 06.11.08 00:25:39, Alexander Neundorf wrote: On Wednesday 05 November 2008, Brad King wrote: Manuel Sput Nickschas wrote: ... While in theory and according to cmake docs this should just add the additional build configuration to a list of existing ones, in reality this adds Debugfull to an empty list, since CMake does not set this variable (anymore? Dunno if that was always the case...). This results in CMake always installing Debugfull, since it's set to be the only valid type. The variable is used by the IDE generators like VS and Xcode which have multiple configurations in a single build tree. It should not be set for Makefile generators. So you would recommend checking the generator over setting CMAKE_CONFIGURATION_TYPES to CMAKE_BUILD_TYPE initially ? This is what I was about to do: if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE RelWithDebInfo) This part already exists a couple of lines below setting CMAKE_CONFIGURATION_TYPES in FindKDE4Internal (its 818 here). So thats probably why everybody gets Debugfull builds when not specifying -DCMAKE_BUILD_TYPE :) So just remove the setting of CMAKE_CONFIGURATION_TYPES completely. Andreas -- You may worry about your hair-do today, but tomorrow much peanut butter will be sold. ___ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem