[Midnightbsd-cvs] mports [22251] trunk/Mk: refactor var handling, use sinclude
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Jan 28 17:52:44 EST 2017
Revision: 22251
http://svnweb.midnightbsd.org/mports/?rev=22251
Author: laffer1
Date: 2017-01-28 17:52:44 -0500 (Sat, 28 Jan 2017)
Log Message:
-----------
refactor var handling, use sinclude
Modified Paths:
--------------
trunk/Mk/bsd.mport.mk
trunk/Mk/bsd.port.subdir.mk
Modified: trunk/Mk/bsd.mport.mk
===================================================================
--- trunk/Mk/bsd.mport.mk 2017-01-28 22:31:57 UTC (rev 22250)
+++ trunk/Mk/bsd.mport.mk 2017-01-28 22:52:44 UTC (rev 22251)
@@ -4122,15 +4122,12 @@
# Depend is generally meaningless for arbitrary ports, but if someone wants
# one they can override this. This is just to catch people who've gotten into
# the habit of typing `make depend all install' as a matter of course.
-#
-.if !target(depend)
-depend:
-.endif
-# Same goes for tags
-.if !target(tags)
-tags:
+.for _t in depend tags
+.if !target(${_t})
+${_t}:
.endif
+.endfor
.if !defined(NOPRECIOUSMAKEVARS)
# These won't change, so we can pass them through the environment
Modified: trunk/Mk/bsd.port.subdir.mk
===================================================================
--- trunk/Mk/bsd.port.subdir.mk 2017-01-28 22:31:57 UTC (rev 22250)
+++ trunk/Mk/bsd.port.subdir.mk 2017-01-28 22:52:44 UTC (rev 22251)
@@ -66,6 +66,7 @@
.if !defined(ARCH)
ARCH!= ${DESTDIR}${UNAME} -p
.endif
+_EXPORTED_VARS+= ARCH
.if !defined(OSVERSION)
.if exists(/usr/include/sys/param.h)
@@ -79,15 +80,18 @@
.endif
.if !defined(_OSRELEASE)
-_OSRELEASE!= ${UNAME} -r
+_OSRELEASE!= ${UNAME} -r
.endif
+_EXPORTED_VARS+= _OSRELEASE
.if !defined(OSREL)
OSREL= ${_OSRELEASE:C/[-(].*//}
.endif
+_EXPORTED_VARS+= OSREL
.if !defined(OPSYS)
OPSYS!= ${UNAME} -s
.endif
+_EXPORTED_VARS+= OPSYS
.if ${ARCH} == "amd64"
.if !defined(HAVE_COMPAT_IA32_KERN)
@@ -97,19 +101,40 @@
.endif
.endif
.endif
+_EXPORTED_VARS+= HAVE_COMPAT_IA32_KERN
.if !defined(CONFIGURE_MAX_CMD_LEN)
CONFIGURE_MAX_CMD_LEN!= ${SYSCTL} -n kern.argmax
.endif
+_EXPORTED_VARS+= CONFIGURE_MAX_CMD_LEN
+.if !defined(_JAVA_VERSION_LIST_REGEXP)
+_JAVA_VERSION_LIST_REGEXP!= ${MAKE} -V _JAVA_VERSION_LIST_REGEXP USE_JAVA=1 -f ${PORTSDIR}/Mk/bsd.mport.mk
+.endif
+_EXPORTED_VARS+= _JAVA_VERSION_LIST_REGEXP
+
+.if !defined(_JAVA_VENDOR_LIST_REGEXP)
+_JAVA_VENDOR_LIST_REGEXP!= ${MAKE} -V _JAVA_VENDOR_LIST_REGEXP USE_JAVA=1 -f ${PORTSDIR}/Mk/bsd.mport.mk
+.endif
+_EXPORTED_VARS+= _JAVA_VENDOR_LIST_REGEXP
+
+.if !defined(_JAVA_OS_LIST_REGEXP)
+_JAVA_OS_LIST_REGEXP!= ${MAKE} -V _JAVA_OS_LIST_REGEXP USE_JAVA=1 -f ${PORTSDIR}/Mk/bsd.mport.mk
+.endif
+_EXPORTED_VARS+= _JAVA_OS_LIST_REGEXP
+
+.if !defined(_JAVA_PORTS_INSTALLED)
+_JAVA_PORTS_INSTALLED!= ${MAKE} -V _JAVA_PORTS_INSTALLED USE_JAVA=1 -f ${PORTSDIR}/Mk/bsd.mport.mk
+.endif
+_EXPORTED_VARS+= _JAVA_PORTS_INSTALLED
+
.if !defined(UID)
UID!= ${ID} -u
.endif
+_EXPORTED_VARS+= UID
# local customization of the ports tree
-.if exists(${.CURDIR}/Makefile.local)
-.include "${.CURDIR}/Makefile.local"
-.endif
+.sinclude "${.CURDIR}/Makefile.local"
TARGETS+= all
TARGETS+= build
@@ -341,21 +366,13 @@
@${RM} -f $@.tmp $@.tmp2 $@.tmp3 $@.tmp4
# Pass in the cached invariant variables to child makes.
-# XXX Why are we trying to escape these characters using regexps and not using ':Q'?
.if !defined(NOPRECIOUSMAKEVARS)
-.MAKEFLAGS: \
- ARCH="${ARCH:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
- OPSYS="${OPSYS:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
- OSREL="${OSREL:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
- OSVERSION="${OSVERSION:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
- UID="${UID:S/"/"'"'"/g:S/\$/\$\$/g:S/\\/\\\\/g}" \
- HAVE_COMPAT_IA32_KERN="${HAVE_COMPAT_IA32_KERN}" \
- CONFIGURE_MAX_CMD_LEN="${CONFIGURE_MAX_CMD_LEN}" \
- _JAVA_VERSION_LIST_REGEXP="${_JAVA_VERSION_LIST_REGEXP:Q}" \
- _JAVA_VENDOR_LIST_REGEXP="${_JAVA_VENDOR_LIST_REGEXP:Q}" \
- _JAVA_OS_LIST_REGEXP="${_JAVA_OS_LIST_REGEXP:Q}" \
- _JAVA_PORTS_INSTALLED="${_JAVA_PORTS_INSTALLED}"
+.for var in ${_EXPORTED_VARS}
+.if empty(.MAKEFLAGS:M${var}=*) && !empty(${var})
+.MAKEFLAGS: ${var}=${${var}:Q}
.endif
+.endfor
+.endif
PORTSEARCH_DISPLAY_FIELDS?=name,path,info,maint,index,bdeps,rdeps,www
PORTSEARCH_KEYLIM?=0
More information about the Midnightbsd-cvs
mailing list