git: 22b7228039f6 - 2026Q3 - Uses/kde.mk: Use the latest KDE Frameworks if the version is omitted

Max Brazhnikov <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.ports
Message-ID <6a843bc3.3721f.6aea72ec__19450.7412774087$1787050962$gmane$org@gitrepo.freebsd.org>
The branch 2026Q3 has been updated by makc:

URL: https://cgit.FreeBSD.org/ports/commit/?id=22b7228039f6a1bbeba1ca64e8446440809efc73

commit 22b7228039f6a1bbeba1ca64e8446440809efc73
Author:     Max Brazhnikov <[email protected]>
AuthorDate: 2026-08-13 10:20:39 +0000
Commit:     Max Brazhnikov <[email protected]>
CommitDate: 2026-08-18 11:00:41 +0000

    Uses/kde.mk: Use the latest KDE Frameworks if the version is omitted
    
    Diffrential:    D58578
    Reviewed by:    adridg, arrowd, jhale
    
    (cherry picked from commit ee319c49617da1da49e5695aac0133743b2d93bc)
---
 Mk/Uses/kde.mk | 25 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/Mk/Uses/kde.mk b/Mk/Uses/kde.mk
index 6460017d5b67..ae47d1949b13 100644
--- a/Mk/Uses/kde.mk
+++ b/Mk/Uses/kde.mk
@@ -5,6 +5,8 @@
 #
 # 5:		Depend on KDE Frameworks 5 components and variables.
 # 6:		Depend on KDE Frameworks 6 components and variables.
+#		The version may be omitted when all required components are
+#		indifferent to the Frameworks version, e.g. ecm or breeze-icons.
 #
 # Variables that can be set by a port:
 #
@@ -52,25 +54,33 @@
 .if !defined(_INCLUDE_USES_KDE_MK)
 _INCLUDE_USES_KDE_MK=	yes
 
-_KDE_SUPPORTED=		5 6
+# The first value must be the latest stable version of KDE Frameworks.
+_KDE_SUPPORTED=		6 5
 
-.  if empty(kde_ARGS)
-IGNORE=	kde needs a version (${_KDE_SUPPORTED})
-.  endif
+# List of shared components. The latest stable version will be used
+# if KDE Frameworks version is not specified.
+_USE_KDE_LATEST=	apidox breeze-icons ecm oxygen-sounds
 
 .  for ver in ${_KDE_SUPPORTED:O:u}
 .    if ${kde_ARGS:M${ver}}
 .      if !defined(_KDE_VERSION)
 _KDE_VERSION=	${ver}
 .      else
-IGNORE?=	cannot be installed: different KDE versions specified via kde:[${_KDE_SUPPORTED:S/ //g}] #'
+IGNORE?=	cannot be installed: different KDE Frameworks versions specified via kde:[${_KDE_SUPPORTED:S/ //g}] #'
 .      endif
 .    endif
 .  endfor
 
+# Allow ports to not specify KDE Frameworks version only for shared components
+# listed in _USE_KDE_LATEST.
 .  if empty(_KDE_VERSION)
-IGNORE?=	kde:[${_KDE_SUPPORTED:S/ //g}] needs an argument  #'
-.  else
+.    for component in ${USE_KDE:O:u:C/:.+//}
+.      if empty(_USE_KDE_LATEST:M${component})
+IGNORE?=	cannot be installed: KDE Frameworks version must be specified via kde:[${_KDE_SUPPORTED:S/ //g}] for USE_KDE=${component}
+.      endif
+.    endfor
+_KDE_VERSION=	${_KDE_SUPPORTED:[1]}
+.  endif
 
 _KDE_RELNAME=		KDE${_KDE_VERSION}
 
@@ -1055,5 +1065,4 @@ IGNORE=				cannot be installed: unknown USE_KDE component '${component}'
 .      endif # ${_USE_KDE_ALL:M${component}} != ""
 .    endfor
 
-.  endif
 .endif
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.