Date: Sat, 17 Oct 2015 09:40:31 -0700 From: Bryan Drewery <bdrewery@FreeBSD.org> To: "John D. Hendrickson" <johnandsara2@cox.net> Cc: arch@FreeBSD.org Subject: Re: make -n -n Message-ID: <562279FF.1020603@FreeBSD.org> In-Reply-To: <5622695D.6040700@cox.net> References: <561F3406.9050906@FreeBSD.org> <5622695D.6040700@cox.net>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --xtvFmFE5cPGrUOAh5G1SWb5bXjjTKnSGJ Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 10/17/2015 8:29 AM, John D. Hendrickson wrote: > Bryan Drewery wrote: >> Does anyone consider 'make -n -n' a thing for top-level builds? >> >> We have this ${_+_} thing in Makefiles that used to expand to '+' if y= ou >> gave '-n -n'. This was so just 1 '-n' would just show what the >> top-level Makefile would do: >> >> ~/svn/clean2 # make -n includes >> cd /root/svn/clean2; PATH=3D/sbin:/bin:/usr/sbin:/usr/bin make -m >> /root/svn/clean2/share/mk -f Makefile.inc1 TARGET=3Damd64 >> TARGET_ARCH=3Damd64 includes >> >> Versus the more expected (at least for bmake) -n behavior of traversin= g >> sub-makes: >> >> ~/svn/clean2 # make -n -n includes >> =3D=3D=3D> lib (includes) >> =3D=3D=3D> lib/csu (includes) >> =3D=3D=3D> lib/csu/amd64 (includes) >> =3D=3D=3D> lib/libcompiler_rt (includes) >> =3D=3D=3D> lib/libc (includes) >> =3D=3D=3D> lib/libc/tests (includes) >> =3D=3D=3D> lib/libc/tests/tls_dso (includes) >> =3D=3D=3D> lib/libc/tests/c063 (includes) >> etc... >> >> Note the actual output may be off due to local changes, but the point = is >> that -n with bmake is documented to run sub-makes with -n as well, so = it >> calls right down the chain showing all build commands without taking a= ny >> real actions. >> >> Bmake added a '-N' flag that essentially does the hack that we've put >> into our top-level Makefile - it doesn't run sub-makes. >> >> >> So having said all of that, the ${_+_} never expands anymore since >> r251748 (June 2013). The act of it working in top-level has only been >> fixed since r288391 (September 2015). >> >> Given it was broken for this long period I assume no one uses '-n -n' = or >> even knew about it. >> >> I would like to remove it (-n -n and _+_) and just use the (bmake) >> documented -n and -N flags and use '+' everywhere appropriate. Note th= at >> we use .MAKE in some targets that achieves largely the same thing, but= >> many sub-make calls don't have a .MAKE and lack a proper '+' to recurs= e >> in Makefile.inc1. >> >=20 > if you take a Makefile for older pmake and run it with newer - there is= > no telling what might happen (unless of course it's already been tried)= >=20 > no telling >=20 I'm talking about head, where only bmake is supported. Either way, the '-n -n' feature was not documented anywhere that I can find. I am making the change here to desupport '-n -n' and make '-n' and '-N' behave as documented in the bmake manpage. --=20 Regards, Bryan Drewery --xtvFmFE5cPGrUOAh5G1SWb5bXjjTKnSGJ Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJWInn/AAoJEDXXcbtuRpfPtroIAISIWhmACPrUQwtnCnhEci5K BJUS/Kt3mUg0vQAwpRf/eVKNlLzW2WS72Hq6z76UTRcBuWCYyyTNqRch4Imzp+z3 BsS7bsmLamP167at9oSkjRlDkx1uNQ6mod7VG7dlAZsqfGRkGJqIZgBFkQKx4IVu mp1DMUzXhYIupMOLCHPofbjBG7EwXiAp355LQDCxzXbPpSv3uKviTzknlakkmpbo 7V7Om+X9CDOVM81eMyT/hMOpweRl/nOtFtaxaYwzFGq9WBGkYL0DthmS0dJgZidm IDY2vl+mjdNrLyvRmd7pUe7Afv4++4eIxeTPKzgbqTmmHKD3VEwjzK7F3XZr5UU= =zd6F -----END PGP SIGNATURE----- --xtvFmFE5cPGrUOAh5G1SWb5bXjjTKnSGJ--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?562279FF.1020603>