Julian Elischer <[email protected]> wrote:
> > If MAKEOBJDIR is empty or not a suitable value (no '/')
> > set a default that works.
>
> if not suitable.. it should error (with a really explicit error
> message), not do something else..
How about:
$ MAKEOBJDIR='obj.${MACHINE}' make -C bin/cat -DWITH_META_MODE -V .OBJDIR
make: "/b/sjg/work/FreeBSD/current/src/share/mk/local.meta.sys.mk" line
29: Cannot use MAKEOBJDIR=obj.amd64
Unset MAKEOBJDIR to get default: MAKEOBJDIR='${.CURDIR:S,${SRCTOP},${OBJTOP},}'
$
Index: share/mk/local.meta.sys.mk
===================================================================
--- share/mk/local.meta.sys.mk (revision 287636)
+++ share/mk/local.meta.sys.mk (working copy)
@@ -16,15 +16,19 @@
MAKEOBJDIRPREFIX=
.export MAKEOBJDIRPREFIX
.endif
-.if empty(MAKEOBJDIR) || ${MAKEOBJDIR:M*/*} == ""
+_default_makeobjdir=$${.CURDIR:S,$${SRCTOP},$${OBJTOP},}
+.if empty(MAKEOBJDIR)
# OBJTOP set below
-MAKEOBJDIR=$${.CURDIR:S,$${SRCTOP},$${OBJTOP},}
+MAKEOBJDIR=${_default_makeobjdir}
# export but do not track
.export-env MAKEOBJDIR
# now for our own use
MAKEOBJDIR= ${.CURDIR:S,${SRCTOP},${OBJTOP},}
.endif
+.if ${MAKEOBJDIR:M*/*} == ""
+.error Cannot use MAKEOBJDIR=${MAKEOBJDIR}${.newline}Unset MAKEOBJDIR to get
default: MAKEOBJDIR='${_default_makeobjdir}'
.endif
+.endif
.if !empty(SB)
SB_OBJROOT ?= ${SB}/obj/
# this is what we use below
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"