Re: How to kdesrc-build a specific release?
- Date: Tue, 25 Dec 2018 12:48:50 -0500
- From: Michael Pyne <mpyne@xxxxxxx>
- Subject: Re: How to kdesrc-build a specific release?
On Tue, Dec 25, 2018 at 01:30:02PM +0800, Jonathan Schultz wrote:
> I have a quick question about kdesrc-build. Can I use it to build a
> specific KDE release/tag, or at least a consistent stable release? The
> branch-group stable-kf5-qt5 seems to use bleeding edge source code.
> The 'tag' option seems to need to be specified separately for each
> module. In fact the kdesrc-build manual states that you should use
> tarballs instead of 'tag', which would be fine if I could figure out
> how to make those tarballs work with kdesrc-build.
The manual is just trying to say that if you're using an old release
anyways, you're normally better off using a packaged version of that old
release instead of using kdesrc-build.
What you're trying to accomplish is probably easiest done by using the
multiple branch (or tag) options, set to whichever old stable branch
you're trying to build.
There is some standardization on KDE-based branch names outside of KF5
(which only has tags), so what you could do is to choose an old branch
as the global value of the 'branch' option (e.g. Applications/17.12).
Use a specific module-set for frameworks, using the tag option for an
old tag (this will override branch), e.g 'tag v5.37.0'.
If you have modules that fall outside of that tag/branch convention
you'll need to specify (or override) those one by one. You can override
options for modules already included through a module-set using an
So, something like this kdesrc-buildrc file
# controls default branch to use when branch not set manually
# include non-KDE modules as appropriate here. See the
# kf5-frameworks-build-include file for an example
# Bring in KF5
# uncomment and add framework names if needed
# ignore-modules kguiaddons
# uncomment and add module names if needed
# ignore-modules bluez-qt
# Override tag for extra-cmake-modules as an example, which
# originally came from frameworks-set
tag v5.18.0 # overrides v5.13.0 above
kdesrc-build will try to filter out modules that don't exist at all in
whatever branch is being used, but to be honest this isn't a primary use
case so you may still find some pain points. But if you make it work
please let us know, we could add a working configuration as an example
- Michael Pyne