Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#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 12 years ago by Jari Häkkinen

If the problem is that help2man is not installed, configure should check for help2man.

comment:2 Changed 12 years ago by Peter Johansson

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 12 years ago by Jari Häkkinen

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 12 years ago by Peter Johansson

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 Changed 12 years ago by Peter Johansson

Resolution: fixed
Status: newclosed

(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.

comment:6 in reply to:  5 Changed 12 years ago by Jari Häkkinen

Replying to peter:

(In [739]) fixes #363. Correct AM_CONDITIONAL. Added a warning when configure is run with --enable-debug and help2man is not found.

Maybe also if configure is run in a WC but without debug?

comment:7 Changed 12 years ago by Peter Johansson

(In [740]) refs #363: moved configure warning about missing help2man when have_svn_wc rather than when --enable-debug

Note: See TracTickets for help on using tickets.