On 9/11/15 8:24 AM, Simon J. Gerraty wrote: > Julian Elischer <jul...@freebsd.org> 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 >
I have committed this as it seems fine and I need to make changes around the code. -- Regards, Bryan Drewery _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"