[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 00/22] Patches to avoid use of make recursion in the 'src/' s
Re: [PATCH 00/22] Patches to avoid use of make recursion in the 'src/' subdir
Sat, 01 Sep 2012 10:34:48 +0200
On 09/01/2012 10:20 AM, Stefano Lattarini wrote:
> On 09/01/2012 10:08 AM, Jim Meyering wrote:
>> Stefano Lattarini wrote:
>>> This is a re-spin, extension and follow-up to this previous series:
>>> plus other follow-up fixlets and refactoring. Thanks to Jim Meyering
>>> for his testing of earlier iterations of this series, and his relentless
>>> reporting of problems and errors.
>> Thanks for all of the work.
>> However, even with all of that, "make distcheck" still fails, when
>> trying to build prog.1 when the required src/prog does not yet exist.
>> (it must be run with --help)
>> Here's a first required patch.
>> From cecef0d2f7ff7e4092cc991a7b8d2b0bceadf0ee Mon Sep 17 00:00:00 2001
>> From: Jim Meyering <address@hidden>
>> Date: Sat, 1 Sep 2012 10:00:26 +0200
>> Subject: [PATCH] build: make each man/prog.1 depend on src/prog, not
>> * man/local.mk: Creating a prog.1 man page requires running
>> src/prog --help.
>> List the exceptions, e.g., install.1 depends on src/ginstall
>> and arch.1 depends on src/uname.
> But this will force the users to have perl installed, since help2man
> will now have to be run unconditionally after the compilation step.
Oops, sorry, I take that back. I see that the '.x.1' suffix rule will
be a no-op when perl is missing, so the users lacking perl will just
see a bunch of extra warning messages, but will have no real issue with
"make install" since the manpages will still distributed.
This is not so obvious at a first glance, and deserves an explanatory
comment in the code IMHO.
The catch is that, after you patch, all the users with perl will have
two copies of each manapge: one in $(srcdir), distributed, and one in
$(builddir), rebuilt by "make all". Which is a sort of confusion for
humans, and might maybe confuse some make implementation too ...