From owner-freebsd-arch@freebsd.org Thu Oct 15 05:05:15 2015 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83CE8A150D0 for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 6B3E81C2F for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: by mailman.ysv.freebsd.org (Postfix) id 6A698A150CF; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) Delivered-To: arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A00EA150CE for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 589941C2E for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [IPv6:::1]) by freefall.freebsd.org (Postfix) with ESMTP id 527D9132F for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 06BF4FAAC for ; Thu, 15 Oct 2015 05:05:15 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id uo9SYrWURUB8 for ; Thu, 15 Oct 2015 05:05:12 +0000 (UTC) To: arch@FreeBSD.org DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com EDF51FAA4 From: Bryan Drewery Subject: make -n -n X-Enigmail-Draft-Status: N1110 Organization: FreeBSD Message-ID: <561F3406.9050906@FreeBSD.org> Date: Wed, 14 Oct 2015 22:05:10 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Oct 2015 05:05:15 -0000 Does anyone consider 'make -n -n' a thing for top-level builds? We have this ${_+_} thing in Makefiles that used to expand to '+' if you 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 traversing 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 any 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 that 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 recurse in Makefile.inc1. --=20 Regards, Bryan Drewery