Problem rebuilding Simons new source RPM
Harris Landgarten
harrisl at lhjonline.com
Mon Nov 25 13:28:09 EST 2002
I found the problem. I had updated ExtUtils::MakeMaker via CPAN to the
latest version. That is turn replaced MM_Unix.pm with a version that
defaulted site and vendor to /usr/man. Redhat had supplied a patched
version of this file which defaults to /usr/share/man. I copied the file
from another machine and the problem went away. Unfortunately it took
1/2 a day to track down the problem. The Cyrus/Perl interface could
certainly be improved and Simons excellent RPMs could be more robust but
not necessarily worth the effort. Thanks for the help
Harris
On Mon, 2002-11-25 at 13:14, Jonathan Marsden wrote:
> On 25 Nov 2002, Simon Matter writes:
>
> > Harris Landgarten schrieb:
>
> >> For some reason perl man pages are being installed to /usr/man
> >> instead of /usr/shared/man
>
> In older (5.x and 6.x) Red Hat distributions, /usr/man was the default
> man page location. I strongly suspect that the %{_mandir} RPM macro
> is being set to /usr/man on those machines, and to /usr/share/man
> (note: not /usr/shared/man, presumably the extra 'd' was a typo?) on
> newer distributions.
>
> On my RH 7.3 machines %_mandir is set in /usr/lib/rpm/macros to
> /usr/man (somewhat surprisingly), but this is overridden by setting it
> to /usr/share/man in the architecture-specific files:
>
> /usr/lib/rpm/athlon-linux/macros
> /usr/lib/rpm/athlon-redhat-linux/macros
> /usr/lib/rpm/i386-linux/macros
> /usr/lib/rpm/i386-redhat-linux/macros
> /usr/lib/rpm/i486-linux/macros
> /usr/lib/rpm/i486-redhat-linux/macros
> /usr/lib/rpm/i586-linux/macros
> /usr/lib/rpm/i586-redhat-linux/macros
> /usr/lib/rpm/i686-linux/macros
> /usr/lib/rpm/i686-redhat-linux/macros
> /usr/lib/rpm/noarch-linux/macros
> /usr/lib/rpm/noarch-redhat-linux/macros
>
> >> This causes the find /var/tmp/cyrus-imapd-2.1.10-root/usr/share/man
> >> -type f -name "Cyrus*" to find nothing and the following string of
> >> commands to fail with an error.
>
> If I am correct, then it might be wise to use the %{_mandir} macro
> within that find command, and anywhere else in the .spec file that the
> man directory is referenced. Then man pages should be searched for in
> the correct place on all distributions, based on that configurable
> setting.
>
> >> Do you have any idea what could be causing this?
>
> I don't know what would change it in Red Hat 8.0 -- unless a user
> copied some .rpmmacros files or /usr/lib/rpm/* or /etc/rpm/* from an
> older machine, maybe?? Either that, or the machine in use does not
> think of itself as being an x86 machine at all, so none of the
> architecture-specific macro files are being used??
>
> As a quick check, for Harris it could be worth trying
>
> echo "%_mandir /usr/share/man" >>~/.rpmmacros
>
> and then rebuilding Simon's SRPM. If that "fixes" the problem, then
> the issue is indeed the %mandir setting, and the cause of the /usr/man
> value should be tracked back through the various places in RPM config
> files where it might be being set.
>
> Jonathan
> --
> Jonathan Marsden | Internet: jonathan at xc.org | Making electronic
> 1252 Judson Street | Phone: +1 (909) 795-3877 | communications work
> Redlands, CA 92374 | Fax: +1 (909) 795-0327 | reliably for Christian
> USA | http://www.xc.org/jonathan | missions worldwide
--
Harris Landgarten <harrisl at lhjonline.com>
More information about the Info-cyrus
mailing list