Date: Fri, 30 Jan 2009 17:56:27 +0000 From: Dmitry Marakasov <amdmi3@amdmi3.ru> To: David O'Brien <obrien@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r187132 - head/usr.bin/make Message-ID: <20090130175627.GA20856@hades.panopticon> In-Reply-To: <20090130113402.GB92386@dragon.NUXI.org> References: <200901130653.n0D6rrNX092719@svn.freebsd.org> <20090130015518.GA20404@hades.panopticon> <20090130113402.GB92386@dragon.NUXI.org>
next in thread | previous in thread | raw e-mail | index | archive | help
* David O'Brien (obrien@freebsd.org) wrote:
> I'm sorry I disagree. You're complaining about something that is
> a feature of FreeBSD 1.x, 2.0 - 3.0, 4.4BSD, all NetBSD versions,
> all OpenBSD versions, Sprite, and the Open Group's Open Development
> Environment make.
Nice. Well I've been using FreeBSD since 4.7, and I don't believe I've
seen this once.
> Looking at my CSRG archive for usr.bin/make/job.c, all the back to:
> ----------------------------
> revision 5.1
> date: 1990/03/11 15:27:28; author: bostic; state: Exp;
> Initial revision
> ----------------------------
>
> So I'm not sure how it violates POLA for a BSD user.
Not `BSD user', but just `user'. We can't take somethink that was
used back in FreBSD 3.0 as common and expected thing. By least
astonishment I mean:
- I do not expect to see difference between plain make and parallel
make.
- I do not expect extra messages
- I do not expect behaviour change compared to previous version
Remember, make is not only used in FreeBSD kernel, but also in ports
(I know -j is not widely used there, but I believe it will someday)
and by users themselves. Common knowledge is that make does echo
commands executed by default. Then command's stdout/stderr may follow.
But there are NO extra messages by default.
> They are quite valuable when you have to unwind a broken parallel build.
>
> The UNIX way is also not hiding information. For folks reporting
> build problems, it is valuable to be able to triag their log rather
> than continuously telling folks to re-run their build non -j.
>
> If you want "silence is golden" then all the multitude of lines of
> compiler invocation must really bug you. Perhaps we should have the
> quiet out put of the ncftp3 build where every complication takes only
> 1 line:
>
> Compiling DStrCat.so: [OK]
> Compiling DStrFree.so: [OK]
> Compiling Dynscpy.so: [OK]
> Compiling Strncpy.so: [OK]
> Compiling strtokc.so: [OK]
> ..snip..
Have they modified make to display these? I doubt. I agree that
such logs are more readable, but it should be done in a way that
- does not affect third parties
- still is more customizable and verbose than --- $TARGETNAME ---
That is, change sys.mk:
.c:
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
.c:
.if defined (KERNEL_BUILDING) || defined (WORLD_BUILDING) # or how's that checked
@echo "CC ${.TARGET}"
.endif
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
so it's only conditional for system compilation.
--
Dmitry Marakasov . 55B5 0596 FF1E 8D84 5F56 9510 D35A 80DD F9D2 F77D
amdmi3@amdmi3.ru ..: jabber: amdmi3@jabber.ru http://www.amdmi3.ru
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090130175627.GA20856>
