On Tue, Oct 28, 2014 at 09:46:26AM -0400, Alan Barrett wrote:
> On Tue, 28 Oct 2014, Alistair G. Crooks wrote:
> >Modified Files:
> >     othersrc/external/bsd/multigest/bin: Makefile
> >     othersrc/external/bsd/multigest/lib: Makefile
> >+.ifndef PRINTOBJDIR
> >+PRINTOBJDIR=    ${MAKE} -V .OBJDIR
> >+.endif
> 
> At least for NetBSD's make(1), you need ${MAKE} -V '${.OBJDIR}' to
> get the recursively-expanded value of .OBJDIR.  ${MAKE} -V .OBJDIR
> would print the unexpanded value.

Oh, you'd better fix it in NetBSD's bsd.own.mk then, which was where I took
the definition above from.

        .if empty(.MAKEFLAGS:tW:M*-V .OBJDIR*)
        .if defined(MAKEOBJDIRPREFIX) || defined(MAKEOBJDIR)
        PRINTOBJDIR=    ${MAKE} -r -V .OBJDIR -f /dev/null xxx
        .else
        PRINTOBJDIR=    ${MAKE} -V .OBJDIR
        .endif
        .else
        PRINTOBJDIR=    echo /error/bsd.own.mk/PRINTOBJDIR # avoid infinite 
recursion
        .endif

It also worked just fine on a FreeBSD 10.1-PRERELEASE machine (from Oct 24th):

        > make -V .OBJDIR
        /usr/home/agc/local/multigest/lib
        >

Regards,
Alistair

Reply via email to