Date: Mon, 10 Apr 2017 13:12:09 -0700 From: Mark Millard <markmi@dsl-only.net> To: John Marino <freebsdml@marino.st>, FreeBSD Ports <freebsd-ports@freebsd.org> Subject: Re: lang/gcc6-aux build error due to internal Makefile/sh syntax: $${PWDCMD-pwd} is missing a ":" Message-ID: <A3BFEC8A-EF5E-4AB8-8E22-3C267E06784E@dsl-only.net> In-Reply-To: <1626B3C1-0B4E-4070-A830-0EEEF38E0F87@dsl-only.net> References: <1626B3C1-0B4E-4070-A830-0EEEF38E0F87@dsl-only.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2017-Apr-10, at 12:12 PM, Mark Millard <markmi at dsl-only.net> = wrote: > Context (on a BPI-M3 arm64 board): I had been thinking of the BPI-M3 for other reasons and typed that instead of the correct: pine64+ 2GB. (True elsewhere as well.) I do really mean arm64 here. > # svnlite info /usr/ports/ | grep "Re[plv]" > Relative URL: ^/head > Repository Root: svn://svn.freebsd.org/ports > Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 > Revision: 438141 > Last Changed Rev: 438141 >=20 >=20 > I was trying to build synth on an arm64 (BPI-M3) and it in turn tried > to build gcc6-aux. That failed with: >=20 > checking for autoheader... no > configure: updating cache ./config.cache > configure: creating ./config.status > config.status: creating Makefile > config.status: creating config.intl > config.status: creating config.h > config.status: executing default-1 commands > gmake[3]: Leaving directory = '/usr/obj/portswork/usr/ports/lang/gcc6-aux/work/build' > gmake[2]: *** [Makefile:875: all] Error 2 > gmake[2]: Leaving directory = '/usr/obj/portswork/usr/ports/lang/gcc6-aux/work/build' > *** Error code 2 >=20 > Looking around in: >=20 > /usr/obj/portswork/usr/ports/lang/gcc6-aux/work/build/Makefile >=20 > shows. . . >=20 > SHELL =3D /bin/sh >=20 > # pwd command to use. Allow user to override default by setting = PWDCMD in > # the environment to account for automounters. The make variable must = not > # be called PWDCMD, otherwise the value set here is passed to make > # subprocesses and overrides the setting from the user's environment. > # Don't use PWD since it is a common shell environment variable and we > # don't want to corrupt it. > PWD_COMMAND =3D $${PWDCMD-pwd} >=20 > . . . >=20 > # The target built for a native non-bootstrap build. > .PHONY: all > all: > @: $(MAKE); $(unstage) > @r=3D`${PWD_COMMAND}`; export r; \ > s=3D`cd $(srcdir); ${PWD_COMMAND}`; export s; \ > $(MAKE) $(RECURSE_FLAGS_TO_PASS) all-host all-target \ > && : >=20 >=20 >=20 > with line 875 being the one with: @r=3D`${PWD_COMMAND}` >=20 > It appears to me that the notation $${PWDCMD-pwd} is not > what was intended. My guess is that a ":" is missing: >=20 > PWD_COMMAND =3D $${PWDCMD:-pwd} >=20 > (/bin/sh notation to avoid an empty PWDCMD by then using pwd). >=20 >=20 > NOTE on arm64 and fork() behavior: >=20 > head (12) has received 2 fixes to arm64 fork behavior in recent times: >=20 > -r316679 > -r313772 >=20 > stable/11 is supposed to get an MFC for -r316679 in a couple > of weeks. >=20 > -r313772 was from February and has yet to be MFC'd but is needed. > No explicit MFC schedule has been set. >=20 =3D=3D=3D Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A3BFEC8A-EF5E-4AB8-8E22-3C267E06784E>