summaryrefslogtreecommitdiff
path: root/man/local.mk
AgeCommit message (Collapse)Author
2012-09-01build: restore handling of space-tainted build directory nameJim Meyering
* man/local.mk: With commit v8.19-84-g08cf455, man page creation would fail when using a build directory name containing e.g., spaces.
2012-09-01build: make each man/prog.1 depend on src/prog, not src/prog.cJim Meyering
* 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.
2012-09-01maint: avoid distcheck failure by properly cleaning $(ALL_MANS)Jim Meyering
* man/local.mk (distclean-local): Remove $(ALL_MANS) when doing a VPATH build. If it's not done, generated manpages can be left around in the build directory after a "make distclean", causing failures in "make distcheck".
2012-09-01maint: port manpages generation to VPATH buildsStefano Lattarini
* man/local.mk (.x.1): Use '$(MKDIR_P)' rather than bare 'mkdir' where appropriate. Reported by Jim Meyering.
2012-09-01build: $(mandeps): new, to factor out man pages dependenciesStefano Lattarini
* man/local.mk (mandpep): Rename ... (mandeps): ... like this. Make $(ALL_MANS) depend on its content. List 'src/system.h' in here, instead of making $(ALL_MANS) depend on it explicitly. (man/*.1): No need to list $(mandep) among the dependencies any longer.
2012-09-01build: enhance man pages cleaning and dependenciesStefano Lattarini
* man/local.mk: All of the manpages should depend on 'src/system.h', and all of them should be cleaned by "make maintainer-clean", that is, added to MAINTAINERCLEANFILES. Make it be so. Some minor cosmetic tweakings and reorderings while at it.
2012-09-01build: simplify: get rid of yet some more indirection variablesStefano Lattarini
* configure.ac: Adjust and improve few comments. (MAN): Rename ... (man1_MANS): ... to this. Ensure it isn't initialized in all Makefiles (which would lead to spurious errors), by calling AM_SUBST_NOTMAKE on it. Also call AM_SUBST_NOTMAKE on 'EXTRA_MANS', for consistency. * man/local.mk (man1_MANS): Simply define to '@man1_MANS@'.
2012-09-01build: rename dist_man1_MANS -> man1_MANSStefano Lattarini
And list $(man1_MANS) directly in $(EXTRA_DIST) instead. This is similar to what is done for $(EXTRA_MANS), thus improving consistency and readability. * man/local.mk (dist_man1_MANS): Rename ... (man1_MANS): ... like this. (EXTRA_DIST): Add its contents. * cfg.mk (check-x-vs-1): Fix a botched comment.
2012-09-01build: one less unneeded make variableStefano Lattarini
* man/local.mk (man_aux): This was used only once, so inline its expansion at its sole point of use ... (EXTRA_DIST): ... here.
2012-09-01build: simplify and make more portable to non-GNU makeStefano Lattarini
The AC_SUBST'd variable '$(NO_INSTALL_PROGS_DEFAULT)' is only used in makefile expressions expanding the list of manual pages that are not built by default (but might need to be when a distribution tarball is created). Such expressions exploited a feature of make variable expansion -- namely, $(VAR:%=dir/%.x) -- that, while seemingly quite portable in practice, is not POSIX-conforming, and could break on lesser vendor make implementations. So kill two birds with one stone, by getting rid of the $(NO_INSTALL_PROGS_DEFAULT) intermediate variable and improving makefile portability in the process. While at it, we also clean up some other minor naming inconsistency and useless indirection. * configure.ac (NO_INSTALL_PROGS_DEFAULT): Don't define or AC_SUBST anymore; instead ... (EXTRA_MANS): ... define and AC_SUBST these. * man/local.mk (extra_man_1): Rename ... (EXTRA_MANS): ... like this, explicitly making clear it's AC_SUBST'd. (extra_man_x): It's used only once, no need to define it; just inline its only expansion where needed. (EXTRA_DIST): Adjust. (ALL_MANS): New, union of $(EXTRA_MANS) and $(dist_man1_MANS). * cfg.mk (check-x-vs-1, sc_option_desc_uppercase): Rely on $(ALL_MANS) rather than on $(NO_INSTALL_PROGS_DEFAULT) and $(dist_man1_MANS).
2012-09-01build: fix generation of manpages for programs not built by defaultStefano Lattarini
* src/local.mk (dist-hook): Don't use this to ensure all the programs, even the ones disabled by default or by the user, are built (doing so is required to ensure the distributed manpages are properly built). This would build those programs too late anyway, causing errors like: $ make dist make dist-xz am__post_remove_distdir='@:' make[1]: Entering directory `~/src/coreutils' GEN man/arch.1 help2man: can't get '--help' info from man/arch.td/arch make[1]: *** [man/arch.1] Error 127 make[1]: Leaving directory `~/src/coreutils' make: *** [dist] Error 2 Instead, ... * man/local.mk (extra_man_x, extra_man_1): define these ... ($(extra_man_1)): ... and make this depend on $(all_programs). (EXTRA_DIST): Adjust. Adjust some comments as well.
2012-08-30maint: move man-related syntax checks in cfg.mkStefano Lattarini
This is more natural, now that the top-level Makefile has access to all the variables and rules once defined only in 'man/Makefile.am' * man/local.mk (all_programs, sc_option_desc_uppercase, sc_man_file_correlation check-x-vs-1, check-programs-vs-x): Move from here ... * cfg.mk: ... to here. Adjust some comments in the process.
2012-08-30build: don't use recursive make to build the 'man' subdirectoryStefano Lattarini
* Makefile.am: Include 'man/local.mk'. (SUBDIRS): Remove 'man'. * configure.ac ($MAN): Adjust so that each of its entries has a leading 'man/' component. (AC_CONFIG_FILES): Remove 'man/Makefile'. * man/Makefile.am: Rename ... * man/local.mk: ... like this. With further adjustments: each 'foo.1' target renamed like 'man/foo.1', each '../src/foo.c' dependency as 'src/foo.c', and each '$(srcdir)' usage as '$(srcdir)/man'. Also ... (mandep): Adjust, removing the leading '../' component. Several whitespace adjustments while at it. (ASSORT): Remove, it's already defined in the top-level Makefile.am. * cfg.mk (sc_option_desc_uppercase, sc_man_file_correlation): Remove the associated recipes, they are now directly available from the included 'man/local.mk'. Actually, the other changes in this commit have made these recipes instable and not completely correct, but that will be fixed in later changes.