Wireshark-dev: Re: [Wireshark-dev] Building wireshark-0.99.6 problems on Linux

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Sat, 04 Aug 2007 14:55:24 -0700
Fabrizio Bertocci wrote:

[2] The RPM build still fail because apparently the man pages are now installed under $PREFIX/share/man instead of $PREFIX/man. The workaround is, again, to change the SPEC file (same as above), replacing the line:
%prefix/man/*/*
into:
%prefix/share/man/*/*
(in %files section)
Again, the correct action would be to understand why the man pages are installed under '$PREFIX/share' now and perhaps move it back the way it was before.

The directory in which the man pages are installed was chosen by automake and autoconf.

I.e.:

The top-level Makefile.am file doesn't specify where man pages are to go; automake turns it into a Makefile.in file that installs them under $(mandir).

The top-level configure.in file doesn't specify how to set mandir; autoconf turns it into a configure script that, at least with the version of autoconf in Mac OS X 10.4.10:

	$ autoconf --version
	autoconf (GNU Autoconf) 2.59

sets it to ${prefix}/man, which means that version, at least, installs it in /usr/local/man, not /usr/local/share/man, by default. Perhaps the version of autoconf that build the configure script you're using was different.

Given that we don't choose where the man pages are to be put, except perhaps implicitly by choosing a particular OS with a particular version of autoconf, the correct action might well be to have the wireshark.spec.in file not hardcode the directory in which the man pages are to be installed, but, instead, to have the configure script figure out what subdirectory of ${prefix} will have the man pages installed, set a variable to that subdirectory, and have wireshark.spec.in refer to that variable, so the directory chosen by autoconf will be used as the installation directory.