Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Oct 2012 20:45:37 +0400
From:      Andrey Chernov <ache@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        stable@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: ${CTFCONVERT_CMD} expands to empty string
Message-ID:  <50857831.1070603@freebsd.org>
In-Reply-To: <50856F6F.40204@freebsd.org>
References:  <5081F92F.8040004@freebsd.org> <508317A4.2060800@freebsd.org> <5084927C.1070101@freebsd.org> <201210221142.06889.jhb@freebsd.org> <50856F6F.40204@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
And simple test case proving that make v9201206140 dislike empty commands.
Makefile:
------------------------------------------------
CTFCONVERT_CMD=
all:
        echo ${MAKE_VERSION}
        ${CTFCONVERT_CMD}
        echo b
------------------------------------------------
> make
echo 9201206140
9201206140
${CTFCONVERT_CMD} expands to empty string
echo b
b

On 22.10.2012 20:08, Andrey Chernov wrote:
> On 22.10.2012 19:42, John Baldwin wrote:
>> On Sunday, October 21, 2012 8:25:32 pm Andrey Chernov wrote:
>>> Those lines cause this error:
>>> .if ${MK_CTF} != "no"
>>> CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
>>> .elif ${MAKE_VERSION} >= 5201111300
>>> CTFCONVERT_CMD=
>>> .else
>>> CTFCONVERT_CMD= @:
>>> .endif
>>>
>>> My make version is 9201206140
>>> So, either the check for >= 5201111300 is incorrect or change for empty
>>> make variables expansion is not merged into stable-9
>>
>> I can't reproduce this doing a buildworld of a stable/9 checkout on a 9.0-
>> stable machine btw.  What exact contents of /etc/src.conf and commands are you 
>> using to reproduce this?
>>
>> I also can't find the string "empty string" in the output of my stable/9
>> 'make universe' build before I committed this.
>>
> 
> /etc/src.conf:
> WITHOUT_AMD=yes
> WITHOUT_APM=yes
> WITHOUT_ATM=yes
> WITHOUT_AUDIT=yes
> WITH_BSD_GREP=yes
> WITHOUT_BLUETOOTH=yes
> WITHOUT_BSNMP=yes
> WITHOUT_CDDL=yes
> WITHOUT_CLANG=yes
> WITHOUT_CTM=yes
> WITHOUT_FORTRAN=yes
> WITHOUT_GPIB=yes
> WITHOUT_GPIO=yes
> WITHOUT_GSSAPI=yes
> WITHOUT_I4B=yes
> WITH_IDEA=yes
> WITHOUT_IPFILTER=yes
> WITHOUT_IPX=yes
> WITHOUT_NCP=yes
> WITHOUT_NIS=yes
> WITHOUT_KERBEROS=yes
> WITHOUT_MAILWRAPPER=yes
> WITHOUT_PF=yes
> WITHOUT_PMC=yes
> WITHOUT_PROFILE=yes
> WITHOUT_RCMDS=yes
> WITHOUT_SLIP=yes
> WITHOUT_WIRELESS=yes
> 
> I got that useless line _each_ .c file compiles. Example commands:
> cd /usr/src/usr.bin/make
> make clean
> make
> I got:
> cc -O2 -pipe -march=pentium4 -I/usr/src/usr.bin/make
> -DMAKE_VERSION=\"9201206140\" -DDEFSHELLNAME=\"sh\" -std=gnu99
> -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
> -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
> -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline
> -Wnested-externs -Wredundant-decls -Wold-style-definition
> -Wno-pointer-sign -c /usr/src/usr.bin/make/arch.c
> ${CTFCONVERT_CMD} expands to empty string
> ...etc... on each file.
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50857831.1070603>