Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Nov 2011 23:15:11 -0800
From:      Garrett Cooper <yanegomi@gmail.com>
To:        Alexander Best <arundel@freebsd.org>
Cc:        Doug Barton <dougb@freebsd.org>, current@freebsd.org, Warner Losh <imp@bsdimp.com>
Subject:   Re: Remove debug echo
Message-ID:  <CAGH67wQGnSfnO0H4ok2=czm7uxdwY%2BBuDmtQdwuswjSBGt8szw@mail.gmail.com>
In-Reply-To: <CAGH67wT18DLu%2BOhOOw-Pjyq9az0pWD39y4nuDY-nDyPOKbmd8Q@mail.gmail.com>
References:  <201111291607.26546.jhb@freebsd.org> <A6C0CFB3-A657-41AA-8A2E-172D95BD0F98@bsdimp.com> <20111201002515.GA50028@freebsd.org> <CAGH67wQFecLHFsANmWFSr6e%2B99P1QY9erNzoXFmJG40RntFazQ@mail.gmail.com> <20111201014349.GA61475@freebsd.org> <CAGH67wT18DLu%2BOhOOw-Pjyq9az0pWD39y4nuDY-nDyPOKbmd8Q@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--e89a8f83a729f4ab1e04b3029cdd
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

On Wed, Nov 30, 2011 at 5:59 PM, Garrett Cooper <yanegomi@gmail.com> wrote:
> On Wed, Nov 30, 2011 at 5:43 PM, Alexander Best <arundel@freebsd.org> wro=
te:
>> On Wed Nov 30 11, Garrett Cooper wrote:
>>> On Wed, Nov 30, 2011 at 4:25 PM, Alexander Best <arundel@freebsd.org> w=
rote:
>>> > On Tue Nov 29 11, Warner Losh wrote:
>>> >> kill it.
>>> >>
>>> >> Warner
>>> >> On Nov 29, 2011, at 2:07 PM, John Baldwin wrote:
>>> >>
>>> >> > Any objections to this? =A0It removes a weird line during 'make -s=
 buildworld'
>>> >> > output and I think it was debugging accidentally left in in 213077=
 by Warner:
>>> >> >
>>> >> > Index: newvers.sh
>>> >> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>> >> > --- newvers.sh =A0 =A0 =A0(revision 228074)
>>> >> > +++ newvers.sh =A0 =A0 =A0(working copy)
>>> >> > @@ -99,7 +99,6 @@ for dir in /bin /usr/bin /usr/local/bin; do
>>> >> > done
>>> >> >
>>> >> > if [ -n "$svnversion" ] ; then
>>> >> > - =A0 echo "$svnversion"
>>> >> > =A0 =A0 svn=3D`cd ${SYSDIR} && $svnversion`
>>> >> > =A0 =A0 case "$svn" in
>>> >> > =A0 =A0 [0-9]*) svn=3D" r${svn}" ;;
>>> >
>>> > also...
>>> >
>>> > when running buildkernel via 'make -s', do we really need all those m=
odule
>>> > printfs? i see messages for "cleandir", "obj", "depend" and "all". i =
think for
>>> > 'make -s', that's pure overkill!
>>> >
>>> > for a GENERIC kernel, 'make' enters ~ 670 module dirs. take that time=
s 4 and
>>> > you'll get 2680 lines of output. not really *silent*, is it? ;)
>>>
>>> =A0 =A0 pmake sucks as far as diagnostic output is concerned when compa=
red
>>> with gmake. I'd rather not have to fish through with -j1 (if I'm lucky
>>> and it's not a race) to determine what directory created the "Error
>>> Code" output. With the printouts discussed here, at least you have a
>>> chance at determining what the issue was.
>>> =A0 =A0 Maybe it's just me, but I like noisy builds -- otherwise the
>>> amount of time I have to spend root-causing the issue becomes
>>> expensive.
>>
>> ehmmm...a noisy silent flag? i totally agree, if we're talking about 'ma=
ke' in
>> its default mode, but what's the point of a silent flag, if it produces =
> 2500
>> lines of output? nobody uses the -s flag for diagnostics. its purpose is=
 to
>> build a kernel without producing a lot of output and also not fiddling w=
ith
>> stdout/stderr to achieve that goal.
>
> What I really want is this:
>
> $ cat Makefile
> all: foo bar baz yadda
>
> foo bar yadda:
>
> baz:
> =A0 =A0 =A0 =A0false
> $ gmake
> false
> gmake: *** [baz] Error 1
> =A0 =A0 =A0 =A0 =A0 =A0 ^^^^
> $ make all
> false
> *** Error code 1
>
> Stop in /tmp.
>
> Otherwise diagnosing issues becomes a PITA with -j > 1 (with pmake I
> have to start using some serious grep'ing, and if I'm lucky I can find
> the source of error). If I get a few spare cycles I might just
> implement it and post a patch somewhere (the entering and leaving
> directory feature of gmake is really nice too, but it's less
> important.. unless you have the same target in multiple directories)..

I've attached a patch that makes make do what I would like it to do;
there are some other items that require cleanup to achieve the `argv0'
prefixing that's available in gmake, but this is good enough for a
meaningful traceback when things fail. Pastebin available here, just
in case the mailing list eats my patch: http://pastebin.com/dFqcDRfv

$ cat ~/Makefile
all:
        cd $$HOME/foo; ${MAKE} $@
$ cat ~/foo/Makefile
all: foo bar barf yadda

foo bar yadda:
        @true

baz:
        @false

barf: baz
$ $PWD/make -j4 -f ~/Makefile all
cd $HOME/foo; /usr/src/usr.bin/make/make all
*** [baz] Error code 1
1 error
*** [all] Error code 2
1 error
$

If someone would please, PLEASE commit this.. I will give you beer, or
wine, or a copy of Skyrim, or a few months subscription to WoW, or
something else of value to you that we could negotiate :)... I'm quite
frankly tired of having to playing guessing games fishing through logs
trying to determine build errors on FreeBSD if and when they do occur
with pmake, and I'm sure that a number of developers and build/release
engineers out there are in the same boat as I am.

Thanks,
-Garrett

--e89a8f83a729f4ab1e04b3029cdd
Content-Type: application/octet-stream; 
	name="more-meaningful-make-errors.patch"
Content-Disposition: attachment; filename="more-meaningful-make-errors.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gvnf5kb40

SW5kZXg6IHVzci5iaW4vbWFrZS9qb2IuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSB1c3IuYmluL21ha2Uvam9i
LmMJKHJldmlzaW9uIDIyODEwNykKKysrIHVzci5iaW4vbWFrZS9qb2IuYwkod29ya2luZyBjb3B5
KQpAQCAtOTU0LDE3ICs5NTQsMTggQEAKIAkJCQkJCWxhc3ROb2RlID0gam9iLT5ub2RlOwogCQkJ
CQl9CiAJCQkJCWZwcmludGYob3V0LAotCQkJCQkgICAgIioqKiBDb21wbGV0ZWQgc3VjY2Vzc2Z1
bGx5XG4iKTsKKwkJCQkJICAgICIqKiogWyVzXSBDb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5XG4iLAor
CQkJCQkgICAgam9iLT5ub2RlLT5uYW1lKTsKIAkJCQl9CiAJCQl9IGVsc2UgewogCQkJCWlmICh1
c2VQaXBlcyAmJiBqb2ItPm5vZGUgIT0gbGFzdE5vZGUpIHsKLQkJCQkJTUVTU0FHRShvdXQsIGpv
Yi0+bm9kZSk7CiAJCQkJCWxhc3ROb2RlID0gam9iLT5ub2RlOwogCQkJCX0KLQkJCQlmcHJpbnRm
KG91dCwgIioqKiBFcnJvciBjb2RlICVkJXNcbiIsCisJCQkJZnByaW50ZihvdXQsICIqKiogWyVz
XSBFcnJvciBjb2RlICVkJXNcbiIsCisJCQkJCWpvYi0+bm9kZS0+bmFtZSwKIAkJCQkJV0VYSVRT
VEFUVVMoKnN0YXR1cyksCiAJCQkJCShqb2ItPmZsYWdzICYgSk9CX0lHTkVSUikgPwotCQkJCQki
KGlnbm9yZWQpIiA6ICIiKTsKKwkJCQkJIiAoaWdub3JlZCkiIDogIiIpOwogCiAJCQkJaWYgKGpv
Yi0+ZmxhZ3MgJiBKT0JfSUdORVJSKSB7CiAJCQkJCSpzdGF0dXMgPSAwOwpAQCAtMTAwMiwxMCAr
MTAwMywxMCBAQAogCQkJCSAqLwogCQkJCWlmIChqb2ItPmZsYWdzICYgKEpPQl9SRVNVTUUgfCBK
T0JfUkVTVEFSVCkpIHsKIAkJCQkJaWYgKHVzZVBpcGVzICYmIGpvYi0+bm9kZSAhPSBsYXN0Tm9k
ZSkgewotCQkJCQkJTUVTU0FHRShvdXQsIGpvYi0+bm9kZSk7CiAJCQkJCQlsYXN0Tm9kZSA9IGpv
Yi0+bm9kZTsKIAkJCQkJfQotCQkJCQlmcHJpbnRmKG91dCwgIioqKiBDb250aW51ZWRcbiIpOwor
CQkJCQlmcHJpbnRmKG91dCwgIioqKiBbJXNdIENvbnRpbnVlZFxuIiwKKwkJCQkJICAgIGpvYi0+
bm9kZS0+bmFtZSk7CiAJCQkJfQogCQkJCWlmICghKGpvYi0+ZmxhZ3MgJiBKT0JfQ09OVElOVUlO
RykpIHsKIAkJCQkJREVCVUdGKEpPQiwgKCJXYXJuaW5nOiBwcm9jZXNzICVqZCB3YXMgbm90ICIK
QEAgLTEwMjUsMTEgKzEwMjYsMTEgQEAKIAogCQkJfSBlbHNlIHsKIAkJCQlpZiAodXNlUGlwZXMg
JiYgam9iLT5ub2RlICE9IGxhc3ROb2RlKSB7Ci0JCQkJCU1FU1NBR0Uob3V0LCBqb2ItPm5vZGUp
OwogCQkJCQlsYXN0Tm9kZSA9IGpvYi0+bm9kZTsKIAkJCQl9CiAJCQkJZnByaW50ZihvdXQsCi0J
CQkJICAgICIqKiogU2lnbmFsICVkXG4iLCBXVEVSTVNJRygqc3RhdHVzKSk7CisJCQkJICAgICIq
KiogWyVzXSBTaWduYWwgJWRcbiIsIGpvYi0+bm9kZS0+bmFtZSwKKwkJCQkgICAgV1RFUk1TSUco
KnN0YXR1cykpOwogCQkJCWZmbHVzaChvdXQpOwogCQkJfQogCQl9CkBAIC0xMDUzLDEwICsxMDU0
LDEwIEBACiAKIAkJREVCVUdGKEpPQiwgKCJQcm9jZXNzICVqZCBzdG9wcGVkLlxuIiwgKGludG1h
eF90KSBqb2ItPnBpZCkpOwogCQlpZiAodXNlUGlwZXMgJiYgam9iLT5ub2RlICE9IGxhc3ROb2Rl
KSB7Ci0JCQlNRVNTQUdFKG91dCwgam9iLT5ub2RlKTsKIAkJCWxhc3ROb2RlID0gam9iLT5ub2Rl
OwogCQl9Ci0JCWZwcmludGYob3V0LCAiKioqIFN0b3BwZWQgLS0gc2lnbmFsICVkXG4iLCBXU1RP
UFNJRygqc3RhdHVzKSk7CisJCWZwcmludGYob3V0LCAiKioqIFslc10gU3RvcHBlZCAtLSBzaWdu
YWwgJWRcbiIsCisJCSAgICBqb2ItPm5vZGUtPm5hbWUsIFdTVE9QU0lHKCpzdGF0dXMpKTsKIAkJ
am9iLT5mbGFncyB8PSBKT0JfUkVTVU1FOwogCQlUQUlMUV9JTlNFUlRfVEFJTCgmc3RvcHBlZEpv
YnMsIGpvYiwgbGluayk7CiAJCWZmbHVzaChvdXQpOwpAQCAtMzA0MiwxMyArMzA0MywxNSBAQAog
CQkJaWYgKHN0YXR1cyA9PSAwKSB7CiAJCQkJcmV0dXJuICgwKTsKICAgCQkJfSBlbHNlIHsKLQkJ
CQlwcmludGYoIioqKiBFcnJvciBjb2RlICVkIiwgc3RhdHVzKTsKKwkJCQlwcmludGYoIioqKiBb
JXNdIEVycm9yIGNvZGUgJWQiLAorCQkJCSAgICBnbi0+bmFtZSwgc3RhdHVzKTsKICAgCQkJfQog
CQl9IGVsc2UgaWYgKFdJRlNUT1BQRUQocmVhc29uKSkgewogCQkJc3RhdHVzID0gV1NUT1BTSUco
cmVhc29uKTsKIAkJfSBlbHNlIHsKIAkJCXN0YXR1cyA9IFdURVJNU0lHKHJlYXNvbik7Ci0JCQlw
cmludGYoIioqKiBTaWduYWwgJWQiLCBzdGF0dXMpOworCQkJcHJpbnRmKCIqKiogWyVzXSBTaWdu
YWwgJWQiLAorCQkJICAgIGduLT5uYW1lLCBzdGF0dXMpOwogICAJCX0KICAgCiAJCWlmIChwcy5l
cnJDaGVjaykgewo=
--e89a8f83a729f4ab1e04b3029cdd--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGH67wQGnSfnO0H4ok2=czm7uxdwY%2BBuDmtQdwuswjSBGt8szw>