Page MenuHomeFreeBSD

Replace Mk/bsd.kde4.mk by Mk/Uses/kde.mk in preparation for KDE Frameworks and Plasma5 ports
ClosedPublic

Authored by tcberner on Jun 25 2016, 12:17 AM.

Details

Summary

At the moment KDE ports use bsd.kde4.mk to handle their dependencies. When working on the ports for KDE Frameworks and Plasma5 it seemed to be more reasonable to create a new kde.mk instead of adding an bsd.kde5.mk.

The kde.mk in this review is a stripped down version of the one we are using in the KDE Test repositories plasma5 branch [1] to only contain the parts relevant to the current KDE4 ports in the portstree [2].

Changes to the KDE Ports needed by this:

  • Replace USE_KDE4 by USE_KDE [3]
  • Add USES=kde:4 [4]

[1] http://src.mouf.net/area51/view/branches/plasma5/KDE/Mk/Uses/kde.mk
[2] The version in the plasma5 branch also handles frameworks/plasma5 and handles MASTER_SITES via a KDE_DIST variable similar to bsd.qt.mk for Qt Ports -- I chose to leave this out for now, as the diff is already large enough.
[3] I chose USE_KDE instead of USE_KDE4, USE_KDE5, USE_KDEX as the version we want is already specified as argument to kde:<arg>
[4] For KDE Frameworks and Plasma5 ports this would be kde:5

Test Plan
  • The kde.mk has been used in our testing repository [successfully] since 2015-10-03 (initial version).
  • I ran a poudriere build against [nearly] all ports that use KDE with attache patch with ports r417413.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

tcberner updated this revision to Diff 17874.Jun 25 2016, 12:17 AM
tcberner retitled this revision from to Replace Uses/kde.mk in preparation for KDE Frameworks and Plasma5 ports.
tcberner updated this object.
tcberner edited the test plan for this revision. (Show Details)
tcberner added reviewers: swills, kde.
tcberner set the repository for this revision to rP FreeBSD ports repository.
tcberner added a subscriber: rakuco.
tcberner retitled this revision from Replace Uses/kde.mk in preparation for KDE Frameworks and Plasma5 ports to Replace Mk/bsd.kde4.mk by Mk/Uses/kde.mk in preparation for KDE Frameworks and Plasma5 ports.Jun 25 2016, 12:19 AM
tcberner edited edge metadata.
tcberner updated this revision to Diff 17875.Jun 25 2016, 12:37 AM

Fix a dozen of KDE4-options I missed previously.

mat added a comment.Jun 25 2016, 8:15 AM

Be sure to svn mv Mk/bsd.kde4.mk Mk/Uses/kde.mk before you commit.

Also, it is better to put first the USES line, then the variables concerning the USES, so you should write:

USES=kde:4
USE_KDE=foo

and not:

USE_KDE=foo
USES=kde:4
Mk/bsd.port.mk
1431–1434 ↗(On Diff #17875)

Don't add comments ;-)

3344 ↗(On Diff #17875)

Don't change things other than what you're doing :-)

4004 ↗(On Diff #17875)

Don't change things other than what you're doing :-)

tcberner updated this revision to Diff 17928.Jun 27 2016, 4:30 PM
tcberner edited edge metadata.

The newest version

  • moves USES atop of all the USE_FOO.
  • does not modify bsd.port.mk more than wanted
  • has kde.mk moved from bsd.kde4.mk
  • drops to componenents from newer kde applications that slipped in previously in kde.mk
mat added a comment.Jun 28 2016, 12:39 PM

This, in all, looks nice, open a PR so that an exp-run is made.

tcberner updated this revision to Diff 17981.Jun 28 2016, 3:53 PM
tcberner edited edge metadata.

Update patch to the one in pr 210667 [1]

[1] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=210667

I've added some inline comments with some questions and comments; there's nothing major, and those changes likely don't require a new exp-run. Once those are taken care of we should be ready to land this.

Mk/Uses/kde.mk
73 ↗(On Diff #17981)

I think this can be removed since all ports seem to have been converted to KDE_PREFIX.

75 ↗(On Diff #17981)

Is this going to be used by the KF5 ports? Otherwise this as well as the version-independent INCDIR variables can be dropped.

96 ↗(On Diff #17981)

Perhaps with this (together with setting INFO_INSTALL_DIR) x11/kdelibs4/files/patch-cmake_modules_FindKDE4Internal.cmake can be removed in the future (no need to do this here and it likely will require an exp-run too).

99 ↗(On Diff #17981)

The kdeprefix code has since been removed rP415864, so this block can be dropped too.

140 ↗(On Diff #17981)

It'd be good to have this alphabetically sorted.

277 ↗(On Diff #17981)

This should be sorted and put after the ontologies bit.

rakuco added inline comments.Aug 21 2016, 11:09 AM
x11/kdelibs4/Makefile
1 ↗(On Diff #17981)

Extra empty line.

tcberner updated this revision to Diff 19598.EditedAug 23 2016, 8:05 PM
tcberner edited the test plan for this revision. (Show Details)
tcberner edited edge metadata.

Address issues

  • kde.mk
    • removed KDE4_PREFIX -- simply set KDE_PREFIX to $LOCALBASE
      • fix kate_PATH -- still used KDE4_PREFIX
      • fix net-p2p/amule*/pkg-plist -- PLASMAMULE option used KDE4_PREFIX [missed before] [1]
      • fix deskutils/kdepimlibs4/files/patch-cmakemodulesFindQGpgme.cmake [missed before]
    • removed KDE*INCDIR
    • removed unsupported 'kdprefix' handling
    • sorted components list and defintions alphabetically
    • svn mv it from bsd.kde4.mk
    • run Tools/scripts/indent_make_if.pl on it
  • x11/kdelibs4/Makefile
    • dropped empty line

[1] I think these two plists are broken -- I will look at them tomorrow.

tcberner marked 6 inline comments as done.Aug 23 2016, 8:08 PM

Mark stuff done.

rakuco accepted this revision.Aug 23 2016, 9:25 PM
rakuco added a reviewer: rakuco.

Looks great to me!
@mat, can you take a look at it with your portmgr hat?

This revision was automatically updated to reflect the committed changes.