6.3. KDE projects and source code organization#
6.3.1. Individual projects#
It is easy to set kde-builder to build a single project. The following listing is an example of what a declaration for a project would look like in the configuration file.
project kdefoo:
cmake-options: -DCMAKE_BUILD_TYPE=Debug
Tip
This is a git-based project since it doesn't use a
repository option. Also, the cmake-options
option
is listed as an example only, it is not required.
6.3.3. Project "branch groups"#
Taking the concept of a group of projects further, the KDE developers eventually found that synchronizing the names of the git branches across a large number of repositories was getting difficult, especially during the development push for the new KDE Frameworks for Qt 5.
So the concept of "branch groups" was developed, to allow users and developers to select one of only a few groups, and allow the kde-builder to automatically select the appropriate git branch.
branch-group can be used in the configuration file as follows:
global:
# Select KDE Frameworks 6 and other Qt6-based apps
branch-group: kf6-qt6
# Other global options here ...
group name:
# branch-group only works for kde-projects
repository: kde-projects
# branch-group is inherited from the one set globally, but could
# be specified here.
use-projects:
- kdelibs
- kde-workspace
# kdelibs's branch will be "frameworks"
# kde-workspace's branch will be "master" (as of August 2013)
In this case the same branch-group
gives different branch names for
each project.
This feature requires some data maintained by the KDE developers in a
git repository named repo-metadata
, however this project will be
included automatically by kde-builder (though you may see it appear in
the script output).
Tip
KDE projects that do not have a set branch name for the branch group you
choose will default to an appropriate branch name, as if you had not
specified branch-group
at all.