Frameworks/Epics/CMake: Difference between revisions

From KDE Community Wiki
Line 20: Line 20:
{{FeatureDone|Extend FeatureSummary.cmake to make MacroLogFeature.cmake unnecessary. Done since 2.8.6.|Alex}}
{{FeatureDone|Extend FeatureSummary.cmake to make MacroLogFeature.cmake unnecessary. Done since 2.8.6.|Alex}}
{{FeatureDone|Merge MacroOptionalFindPackage.cmake in CMake. find_apckage() has been extended with 2.8.6 so that this is not necessary anymore.|Alex}}
{{FeatureDone|Merge MacroOptionalFindPackage.cmake in CMake. find_apckage() has been extended with 2.8.6 so that this is not necessary anymore.|Alex}}
{{FeatureDone|Create project extra-cmake-modules for distributing additional Find-modules|Alex}}
{{FeatureTodo|superbuilds|??}}
{{FeatureTodo|superbuilds|??}}
{{FeatureTodo|Developers are also affected by the splits. Makes building more tedious. Figure out what to do about this|??}}
{{FeatureTodo|Developers are also affected by the splits. Makes building more tedious. Figure out what to do about this|??}}

Revision as of 21:29, 6 December 2011

CMake Required Features and Migration Epic

Forewords

Roughly this epic is about CMake upstream contributions we need done, and the tooling around that to allow our developers to build the whole lot with a single command and to produce different granularity of tarballs for our downstreams.

Definition of Done

  • kde-frameworks-devel has been warned about CMake API changes introduced by the feature

Backlog

Status Description Contact
DONE Upstream automoc into cmake. Done since 2.8.6. Alex
DONE Extend FeatureSummary.cmake to make MacroLogFeature.cmake unnecessary. Done since 2.8.6. Alex
DONE Merge MacroOptionalFindPackage.cmake in CMake. find_apckage() has been extended with 2.8.6 so that this is not necessary anymore. Alex
DONE Create project extra-cmake-modules for distributing additional Find-modules Alex
TO DO superbuilds ?? <{{{3}}}>
TO DO Developers are also affected by the splits. Makes building more tedious. Figure out what to do about this ?? <{{{3}}}>
TO DO Review the Find-modules in kdelibs (over 100), and find out which ones are

currently needed in the frameworks branch. Here is an overview over the current state: http://community.kde.org/KDE_Core/Platform_11/Buildsystem/FindFilesSurvey

?? <{{{3}}}>
TO DO develop a future-proof mechanism for providing modules additional to cmake

in extra-cmake-modules, i.e. so that using projects can decide which additional stuff they want to use, use some things maybe only for some versions of cmake, etc.

?? <{{{3}}}>
TO DO come to a decision how to deal with pkg-config under Windows (and OSX ?) ?? <{{{3}}}>
TO DO figure out how to define the default library install dir, taking Debian

multiarch into account

?? <{{{3}}}>
TO DO

Figure out how to deal with the install dirs in general:

  • use GNUInstallDirs.cmake coming with cmake ?
  • keep the support for "if I install to the same prefix as kdelibs (...what

is kdelibs then ?), I want the same set of install dir",

?? <{{{3}}}>
TO DO improve the example in kdeexamples/buildsystem/HowToInstallALibrary/, so it

can serve as reference

?? <{{{3}}}>
TO DO somebody has to do the actual porting. Back in the KDE3->KDE4 days Laurent

Montel did most of this work. Here is a (hopefully) complete list of changes: http://techbase.kde.org/Development/ECM_SourceIncompatChanges

?? <{{{3}}}>
TO DO

It would be nice if we could get Windows and OSX developers more actively involved with KF5.

Kevin Ottens <{{{3}}}>