#363 closed task (fixed)
make check fails
Reported by: | Jari Häkkinen | Owned by: | Peter Johansson |
---|---|---|---|
Priority: | major | Milestone: | svndigest 0.7 |
Component: | build | Version: | trunk |
Keywords: | Cc: |
Description
I get the below message when I do 'make check'
make[1]: Entering directory `/home/william/jari/projects/svndigest/man' /home/william/jari/projects/svndigest/autotools/missing: line 54: help2man: command not found WARNING: `help2man' is missing on your system. You should only need it if you modified a dependency of a manual page. You may need the `Help2man' package in order for those modifications to take effect. You can get `Help2man' from any GNU archive site. make[1]: *** [svndigest.1] Error 1
I have not made any change of manual pages. However, I am trying to make svndigest on a newly installed 64bit SuSE 11.
Change History (7)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
Yes the problem is that help2man is not installed (see ticket:361).
I was not sure how to set up the build for this feature, so I checked around and took the most common way, which seems to be the way encouraged by Automake people. The rationale seems to be that since the man file is distributed, it is only developers who need help2man. Just like Automake, Autoconf etc are not needed for a user (building from a dist). Just like the tools, help2man is called via the missing scripts that is supposed to emulate the behaviour of the tool if it is missing. If, for example, you touch a Makefile.am file Automake is triggered to update the Makefile.in and if you have no Automake the Makefile.in will only be touched.
There are alternatives. GNU CoreUtils?, for example, ships the help2man (<15kB), which could be one solution. Another solution would be to add a test in configure and conditionally make targets on how to build man/svndigest.1. If help2man is available use, else create the bogus page the missing script is creating now.
Of note, there is a check at dist time to check that the shipped man page is not a bogus page. This is more or less taken from Automake trunk.
I happy to change the build and even more happy to hear your thoughts :)
comment:3 Changed 14 years ago by
I am now getting
> make /bin/sh: no: command not found make[2]: *** [svndigest.1] Error 127
Disregarding the fact that I cannot get a clean compile I think you are doing it right. However, shouldn't there be a warning saying that no help2man
exist? It will warn me in good time before it is time to create a distribution package. Of course, you are usually creating the package ...
comment:4 Changed 14 years ago by
Aha, the conditional is corrupt somehow.
I can add a warning in debug mode. The idea is that configure should be aimed at users, and information about help2man is useless since the man page is distributed.
I will add a warning when creating bogus man page too. Then we will more or less mimic the automake 1.11 behaviour.
comment:5 follow-up: 6 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
(In [739]) fixes #363. Correct AM_CONDITIONAL. Added a warning when configure is run with --enable-debug and help2man is not found. Also added a warning if a bogus man page is created. As before there is a dist-hook preventing that bogus man page is not distributed, however, now the dist-hook is triggered on the AM_CONDITIONAL rather than checking that if the man page is ok. This implies that help2man is required to create a dist also if the man page does exist.
If the problem is that help2man is not installed, configure should check for help2man.