svn commit: r451772 - in head: . Mk
Baptiste Daroussin
bapt at FreeBSD.org
Wed Oct 11 19:03:26 UTC 2017
Author: bapt
Date: Wed Oct 11 19:03:24 2017
New Revision: 451772
URL: https://svnweb.freebsd.org/changeset/ports/451772
Log:
Introduce the new BINARY_ALIAS variable
When defined it will create symlinks of some given binaries in a directory which
will be prepended to the PATH.
The syntax is the following:
BINARY_ALIAS= target1=source1 target2=source2
For example to have a "swig" binary in the path which will be pointing at
swig3.0 and a "sed" pointing at GNU sed: gsed
BINARY_ALIAS= swig=swig3.0 sed=gsed
Reviewed by: swills, adamw, mat
Approved by: swills (portmgr)
Differential Revision: https://reviews.freebsd.org/D12603
Modified:
head/CHANGES
head/Mk/bsd.port.mk
Modified: head/CHANGES
==============================================================================
--- head/CHANGES Wed Oct 11 18:41:27 2017 (r451771)
+++ head/CHANGES Wed Oct 11 19:03:24 2017 (r451772)
@@ -10,6 +10,20 @@ in the release notes and/or placed into UPDATING.
All ports committers are allowed to commit to this file.
+20171011:
+AUTHOR: bapt at FreeBSD.org
+
+ New BINARY_ALIAS variable has been added, when defined it will create symlinks
+ of some given binaries in a directory which will be prepended to the PATH.
+
+ The syntax is the following:
+ BINARY_ALIAS= target1=source1 target2=source2
+
+ For example to have a "swig" binary in the path which will be pointing at
+ swig3.0 and a "sed" pointing at GNU sed: gsed
+
+ BINARY_ALIAS= swig=swig3.0 sed=gsed
+
20170625:
AUTHOR: kde at FreeBSD.org
Modified: head/Mk/bsd.port.mk
==============================================================================
--- head/Mk/bsd.port.mk Wed Oct 11 18:41:27 2017 (r451771)
+++ head/Mk/bsd.port.mk Wed Oct 11 19:03:24 2017 (r451772)
@@ -1063,7 +1063,7 @@ FLAVOR?=
MINIMAL_PKG_VERSION= 1.6.0
_PORTS_DIRECTORIES+= ${PKG_DBDIR} ${PREFIX} ${WRKDIR} ${EXTRACT_WRKDIR} \
- ${STAGEDIR}${PREFIX} ${WRKDIR}/pkg
+ ${STAGEDIR}${PREFIX} ${WRKDIR}/pkg ${BINARY_LINKDIR}
# Ensure .CURDIR contains an absolute path without a trailing slash. Failed
# builds can occur when PORTSDIR is a symbolic link, or with something like
@@ -1607,6 +1607,13 @@ _WRKDIR= work-${FLAVOR}
.endif
WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/${_WRKDIR}
+BINARY_LINKDIR= ${WRKDIR}/.bin
+PATH:= ${BINARY_LINKDIR}:${PATH}
+.if !${MAKE_ENV:MPATH=*} && !${CONFIGURE_ENV:MPATH=*}
+MAKE_ENV+= PATH=${PATH}
+CONFIGURE_ENV+= PATH=${PATH}
+.endif
+
.if !defined(IGNORE_MASTER_SITE_GITHUB) && defined(USE_GITHUB) && empty(USE_GITHUB:Mnodefault)
WRKSRC?= ${WRKDIR}/${GH_PROJECT}-${GH_TAGNAME_EXTRACT}
.endif
@@ -5182,6 +5189,15 @@ install-desktop-entries:
.endif
.endif
+.if !empty(BINARY_ALIAS)
+.if !target(create-binary-alias)
+create-binary-alias: ${BINARY_LINKDIR}
+.for target src in ${BINARY_ALIAS:C/=/ /}
+ @${RLN} `which ${src}` ${BINARY_LINKDIR}/${target}
+.endfor
+.endif
+.endif
+
.if defined(WARNING)
WARNING_WAIT?= 10
show-warnings:
@@ -5269,7 +5285,8 @@ _PATCH_SEQ= 050:ask-license 100:patch-message 150:pat
700:post-patch 850:post-patch-script \
${_OPTIONS_patch} ${_USES_patch}
_CONFIGURE_DEP= patch
-_CONFIGURE_SEQ= 150:build-depends 151:lib-depends 200:configure-message \
+_CONFIGURE_SEQ= 150:build-depends 151:lib-depends 160:create-binary-alias \
+ 200:configure-message \
300:pre-configure 450:pre-configure-script \
490:run-autotools-fixup 500:do-configure 700:post-configure \
850:post-configure-script \
More information about the svn-ports-head
mailing list