tech-toolchain archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: make: meta mode silent=yes



Christos writes:
>I find the fix confusing. I don't like to have both positive and negative
>options for the same predicate, because it is unclear to the user which
>one wins. 

I assume you are refering to the .NOSILENT bit?
I would tend to agree ;-)

I could probably drop that with little harm done.

>Surely, there must be a better way. Perhaps there should be a
>meta logging flag, that needs to be set for something to end up in the
>meta log?

This isn't about what goes in the .meta files, but rather what also goes
to stdout.

For example, -- job tags -- help a lot but not always.
When you have multiple sub makes running, deciphering which one spewed a 
given -- tag -- is nigh impossible (I've diagnosed a *lot* of build
issues over the last decade ;-)

The .meta files are really good solution to that.

If a .meta file is being produced, I really don't need anything else in
the main build log other than

Building /var/obj/NetBSD/current/i386/bin/cat/cat.o

But I'm loath to remove the possibiliy of also capturing everything in
the build log - for those that want that.

Today the available options boil down to a global .SILENT or not.
For the case where a .meta file is produced, .SILENT isn't an issue.
But there will always be cases where a .meta file cannot, or will not be
produced or isn't wanted, and in these cases .SILENT can be an issue -
if something goes wrong during one of those targets.

So the silent={yes,no} flag (could just as easily be
meta_silent={yes,no} provides a better level of granularity.
silent=no (the default), retains current behavior while
silent=yes allows a targeted application of .SILENT.

The .NOSILENT bit is probably unnecessary.

--sjg




Home | Main Index | Thread Index | Old Index