Re: [PATCH] DocBook: Avoid stdout junk with no man pages to compress

From: Jim Davis
Date: Sun Jul 12 2015 - 19:37:06 EST


On Sun, Jul 12, 2015 at 2:59 PM, Ulf Magnusson <ulfalizer.lkml@xxxxxxxxx> wrote:
> gzip would run as 'gzip -f' when no uncompressed man pages were found,
> making it compress the (empty) stdin to stdout.

> --- a/Documentation/DocBook/Makefile
> +++ b/Documentation/DocBook/Makefile
> @@ -56,7 +56,7 @@ htmldocs: $(HTML)
>
> MAN := $(patsubst %.xml, %.9, $(BOOKS))
> mandocs: $(MAN)
> - find $(obj)/man -name '*.9' | xargs gzip -f
> + find $(obj)/man -name '*.9' -exec gzip -f {} \;
>
> installmandocs: mandocs
> mkdir -p /usr/local/man/man9/

That does get rid of the binary burp, but 'xargs gzip -f' has been in
the Makefile since January, and gzipping '\n' just started recently.
So what's changed?

It looks like, for whatever reason, make installmandocs always ends up
rerunning mandocs -- there's now a 'GEN Documentation
Docbook//v4l2.xml' printed, and that extra mandocs invocation is where
the problematic second invocation of find is coming from. I won't
pretend to understand the Makefile flow to guess at why that's
happening, but obviously 'make mandocs; make installmandocs' shouldn't
need to regenerate things already generated.

In any event,

Tested-by: Jim Davis <jim.epost@xxxxxxxxx>

Jim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/