[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 06/13] build: Generate man pages after compiling guile object
From: |
Mathieu Lirzin |
Subject: |
Re: [PATCH 06/13] build: Generate man pages after compiling guile objects. |
Date: |
Tue, 26 Jan 2016 21:08:36 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
address@hidden (Ludovic Courtès) writes:
> Mathieu Lirzin <address@hidden> skribis:
>
>> * configure.ac (BUILD_FROM_GIT): New Automake conditional.
>> * doc.am (SUBCOMMANDS): Delete variable.
>> (dist_man1_MANS): List all subcommands man pages.
>> (doc/guix.1): Build only if BUILD_FROM_GIT. Depend on 'scripts/guix'
>> instead of all subcommands.
>> [BUILD_DAEMON] (doc/guix-daemon): Likewise. Replace the
>> 'nix/nix-daemon/guix-daemon.cc' prerequisite with 'guix-daemon'.
>> [BUILD_FROM_GIT] (gen_man): New variable.
>> [BUILD_FROM_GIT] (doc/guix-%.1): New target.
>> (CLEANFILES) [BUILD_FROM_GIT]: Add $(dist_man1_MANS).
>
> I like the speedup, but not the ‘BUILD_FROM_GIT’ approach. :-)
> It reminds me of maintainer-mode and all its warts (info "(automake)
> maintainer-mode").
The BUILD_FROM_GIT is inspired by what is done for GNU Hello. ;)
However I don't have a strong opinion on this.
> Namely, I think it’s best to have the help2man rule always triggered
> whenever the corresponding .scm file is newer, rather than have it
> triggered or not based on a guess of what the user wants/can do.
OK.
> Having said that, I’m not sure what to do. Commit 0af3f404 reverted the
> original approach, which was to depend on .go files (and obviously
> wouldn’t work as we want.)
>
> So we want to delay the build of man pages without making the dependency
> on build products explicit. Hmm, not sure what can be done.
I have tried to add $(GOBJECTS) to BUILT_SOURCES and let the man pages
prerequisites like in 0af3f404. The problem was that the build didn't
fully took advantage of possible parallelisms because everything had to
wait for $(GOBJECTS) to complete before compiling anything else, and the
modules are loaded using only one thread.
Another approach is to embed ‘help2man’ (which is what Coreutils is
doing), so we can let the man pages depend on .go files. This seems
reasonable to me even if it means adding 20K of Perl in the repo. ;)
WDYT?
--
Mathieu Lirzin
- [PATCH 02/13] lint: Remove an unneeded clause in 'check-patch-file-names'., (continued)
- [PATCH 02/13] lint: Remove an unneeded clause in 'check-patch-file-names'., Mathieu Lirzin, 2016/01/24
- [PATCH 01/13] tests: Use 'dummy-origin' for lint tests when possible., Mathieu Lirzin, 2016/01/24
- [PATCH 05/13] packages: Use '@' in package record printers., Mathieu Lirzin, 2016/01/24
- [PATCH 03/13] lint: Rewrite 'check-patch-file-names'., Mathieu Lirzin, 2016/01/24
- [PATCH 06/13] build: Generate man pages after compiling guile objects., Mathieu Lirzin, 2016/01/24
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Ludovic Courtès, 2016/01/26
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects.,
Mathieu Lirzin <=
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Eric Bavier, 2016/01/28
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Mathieu Lirzin, 2016/01/28
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Eric Bavier, 2016/01/28
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Mathieu Lirzin, 2016/01/28
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Eric Bavier, 2016/01/29
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Mathieu Lirzin, 2016/01/29
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Eric Bavier, 2016/01/29
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Mathieu Lirzin, 2016/01/29
- Re: [PATCH 06/13] build: Generate man pages after compiling guile objects., Ludovic Courtès, 2016/01/31
[PATCH 08/13] build: Add 'DOT' silent rule., Mathieu Lirzin, 2016/01/24