84 lines
3.7 KiB
Plaintext
84 lines
3.7 KiB
Plaintext
Here is a checklist for updating KDE4 SC. The same should apply to
|
|
KDE5 in future. Based on mistakes zhuk@ did (often) in the past.
|
|
Feel free to improve and extend with description of non-trivial
|
|
errors could happen.
|
|
|
|
Those instructions could miss something critical due to changes in
|
|
KDE build system or interdependencies; beware and please keep this
|
|
file up-to-date to at least avoid extra errors on minor updates.
|
|
|
|
* Use "sh ./kde-release-helper prepare X.Y.Z" to get testing directory
|
|
${PORTSDIR}/x11/kdeXYZ. This will strip REVISIONs in Makefiles,
|
|
remove distinfo (so that it will be easy to detect ports you didn't
|
|
gone through yet) and so on. Note that CVS/Root files will still
|
|
point under ports/x11/kde4, so you can fix other things under
|
|
x11/kde4 and then simply "cvs up" under x11/kdeXYZ. Make sure that
|
|
X.Y.Z is added to the _MODKDE4_OTHERS line in x11/kde4/kde4.port.mk.
|
|
|
|
* Use "sh ../kde4/kde-release-helper check-lists" to see what
|
|
packages are new and what are not. This will work only after official
|
|
KDE release announcement made, though, because it uses the official
|
|
mirrors to download lists of distfiles. The changes in l10n packages
|
|
list should be reflected in l10n/Makefile.langs.
|
|
|
|
* Check if resources-only ports (kde-wallpapers, oxygen-icons,
|
|
base-artwork) were changed at all. If not, then it's better override
|
|
MODKDE4_VERSION in those ports to avoid users re-download same
|
|
package.
|
|
|
|
* Generic workflow for updating ports:
|
|
1. make configure
|
|
If the "patch" stage fails, fix, then redo "make configure".
|
|
Check for dependency changes, and pay attention to the messages
|
|
like "could not determine proper linking order": those indicate
|
|
wrong order in target_link_libraries() calls that should be fixed.
|
|
Those warnings usually won't happen on a clean system (no other
|
|
versions of KDE installed, so it's RECOMMENDED to do manual part
|
|
of the update while having all of the KDE SC installed.
|
|
|
|
2. make update-plist
|
|
Pay attention to NOT removing the following lines from pkg/PLIST:
|
|
share/apps/solid/
|
|
share/apps/solid/actions/
|
|
The removal could happen due to the fact that default run-time
|
|
dependency in case of multimedia/phonon ports module happens on
|
|
phonon-vlc, which in turn depends on (surprise!) x11/vlc, which
|
|
in turn already contains those. But the other Phonon backend,
|
|
phonon-gstreamer, doesn't provide those directories. So to
|
|
support both backends, we should have those directories listed.
|
|
|
|
3. make port-lib-depends-check
|
|
Beware: it's known for stuff depending on the R package to display
|
|
non-critical warnings about libraries not found here.
|
|
|
|
* Update of l10n stuff is simple:
|
|
cd l10n/ru && make makesum && cd .. && \
|
|
make DANGEROUS=yes update-plist package
|
|
The build framework will take care on tweaking CMakeLists.txt and
|
|
removing extra stuff like localized manual pages.
|
|
|
|
* Generic order of update:
|
|
1. oxygen-icons, smokegen, productivity/akonadi, multimedia/phonon*
|
|
2. libs, smokeqt, l10n
|
|
3. libk*, baloo, Qt bindings, *thumbs, graphics-mobipocket,
|
|
graphics-strigi-analyzer, kqtquickcharts
|
|
4. nepomuk-core, baloo-widgets, kross-interpreters
|
|
5. pimlibs, baseapps
|
|
6. runtime, pim-runtime, py-kde, okular, marble
|
|
7. kate, workspace
|
|
8. smokekde and everything else except KDE bindings and webdev
|
|
9. KDE bindings
|
|
10. webdev
|
|
|
|
* When you think you're done, merge things back:
|
|
sh ../kde4/kde-release-helper merge
|
|
|
|
* Now check that everything works fine still:
|
|
cd ../kde4 && make clean="all dist"
|
|
dpb x11/kde4
|
|
|
|
* On commit, remember to clean up REVISION marks and do other tweaks,
|
|
if needed, in meta/kde4, and commit it as well.
|
|
Also, remember to regen distinfo in x11/kde-shared-data and include
|
|
it in the KDE update commit.
|