svn commit: r455206 - in head: . Mk
Mathieu Arnold
mat at FreeBSD.org
Thu Nov 30 15:33:47 UTC 2017
Author: mat
Date: Thu Nov 30 15:33:46 2017
New Revision: 455206
URL: https://svnweb.freebsd.org/changeset/ports/455206
Log:
Add various FLAVOR related helpers.
To help with flavored ports, helpers are available. In these, replace <*>
with the flavor name.
*_PKGNAMEPREFIX *_PKGNAMESUFFIX *_PLIST *_DESCR will overwrite the variable.
*_CONFLICTS *_CONFLICTS_BUILD *_CONFLICTS_INSTALL *_PKG_DEPENDS
*_EXTRACT_DEPENDS *_PATCH_DEPENDS *_FETCH_DEPENDS *_BUILD_DEPENDS
*_LIB_DEPENDS *_RUN_DEPENDS *_TEST_DEPENDS will append to the variable.
Reviewed by: portmgr
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12483
Modified:
head/CHANGES
head/Mk/bsd.port.mk (contents, props changed)
Modified: head/CHANGES
==============================================================================
--- head/CHANGES Thu Nov 30 15:33:29 2017 (r455205)
+++ head/CHANGES Thu Nov 30 15:33:46 2017 (r455206)
@@ -13,6 +13,28 @@ All ports committers are allowed to commit to this fil
20171130:
AUTHOR: mat at FreeBSD.org
+ To help with flavored ports, helpers are available. In these, replace <*>
+ with the flavor name.
+
+ *_PKGNAMEPREFIX *_PKGNAMESUFFIX *_PLIST *_DESCR will overwrite the variable.
+
+ *_CONFLICTS *_CONFLICTS_BUILD *_CONFLICTS_INSTALL *_PKG_DEPENDS
+ *_EXTRACT_DEPENDS *_PATCH_DEPENDS *_FETCH_DEPENDS *_BUILD_DEPENDS
+ *_LIB_DEPENDS *_RUN_DEPENDS *_TEST_DEPENDS will append to the variable.
+
+ For example:
+
+ flavor2_PKGNAMESUFFIX= -foo
+
+ can replace:
+
+ .if ${FLAVOR:U} == flavor2
+ PKGNAMESUFFIX= -foo
+ .endif
+
+20171130:
+AUTHOR: mat at FreeBSD.org
+
Flavors are a way to have multiple variations of a port. The port is built
multiple times, with the variations. To declare flavors, set the FLAVORS
variable to the flavors you want defined. The first flavor will be the
Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk Thu Nov 30 15:33:29 2017 (r455205)
+++ head/Mk/bsd.port.mk Thu Nov 30 15:33:46 2017 (r455206)
@@ -1084,6 +1084,34 @@ _PORTS_DIRECTORIES+= ${PKG_DBDIR} ${PREFIX} ${WRKDIR}
# Do not leak flavors to childs make
.MAKEOVERRIDES:= ${MAKEOVERRIDES:NFLAVOR=*}
+.if !empty(FLAVOR) && !defined(_DID_FLAVORS_HELPERS)
+_DID_FLAVORS_HELPERS= yes
+_FLAVOR_HELPERS_OVERRIDE= DESCR PLIST PKGNAMEPREFIX PKGNAMESUFFIX
+_FLAVOR_HELPERS_APPEND= CONFLICTS CONFLICTS_BUILD CONFLICTS_INSTALL \
+ PKG_DEPENDS EXTRACT_DEPENDS PATCH_DEPENDS \
+ FETCH_DEPENDS BUILD_DEPENDS LIB_DEPENDS \
+ RUN_DEPENDS TEST_DEPENDS
+# These overwrite the current value
+.for v in ${_FLAVOR_HELPERS_OVERRIDE}
+.if defined(${FLAVOR}_${v})
+${v}= ${${FLAVOR}_${v}}
+.endif
+.endfor
+
+# These append to the current value
+.for v in ${_FLAVOR_HELPERS_APPEND}
+.if defined(${FLAVOR}_${v})
+${v}+= ${${FLAVOR}_${v}}
+.endif
+.endfor
+
+.for v in BROKEN IGNORE
+.if defined(${FLAVOR}_${v})
+${v}= flavor "${FLAVOR}" ${${FLAVOR}_${v}}
+.endif
+.endfor
+.endif # defined(${FLAVOR})
+
.if defined(CROSS_TOOLCHAIN)
.if !defined(CROSS_SYSROOT)
IGNORE= CROSS_SYSROOT should be defined
More information about the svn-ports-all
mailing list