> > what rpm --eval '%_mandir'  say ?

> rpm --eval '%_mandir'
> /usr/share/man

It says this on both my x86 and alpha. On my x86 it builds fine. On the
alpha it
doesn't (I'm getting fed-up with that machine!!)

OK. I've now modified the .spec file and put an "rpm --eval '%_mandir'
just B4
the make install statement. Like this:

mkdir -p $RPM_BUILD_ROOT/usr/share/locale
rpm --eval '%_mandir'
make prefix=$RPM_BUILD_ROOT/usr manprefix=$RPM_BUILD_ROOT/%{_mandir}
install

This is what happens on my x86:

+ rpm --eval /usr/share/man
/usr/share/man
+ make prefix=/users/stefan/tmp/sndconfig-root/usr
manprefix=/users/stefan/tmp/sndconfig-root//usr/share/man install
[ -d /users/stefan/tmp/sndconfig-root/usr/share/sndconfig ] || install
-m 755 -d /users/stefan/tmp/sndconfig-root/usr/share/sndconfig
[ -d /users/stefan/tmp/sndconfig-root//usr/share/man/man8 ] || install
-m 755 -d /users/stefan/tmp/sndconfig-root//usr/share/man/man8
for d in sndconfig pnpprobe; do \
     install -s -m 755 $d /users/stefan/tmp/sndconfig-root/usr/sbin ;\
     install -m 644 $d.man
/users/stefan/tmp/sndconfig-root//usr/share/man/man8/$d.8 ;\
done

Nothing wrong with that, right?

Now on the alpha:

+ rpm --eval /usr/share/man
/usr/share/man
+ make prefix=/users/stefan/tmp/sndconfig-root/usr
manprefix=/users/stefan/tmp/sndconfig-root//usr/share/man install
[ -d /users/stefan/tmp/sndconfig-root/usr/share/sndconfig ] || install
-m 755 -d /users/stefan/tmp/sndconfig-root/usr/share/sndconfig
[ -d /users/stefan/tmp/sndconfig-root/usr/man/man8 ] || install -m 755
-d /users/stefan/tmp/sndconfig-root/usr/man/man8
for d in sndconfig pnpprobe; do \
     install -s -m 755 $d /users/stefan/tmp/sndconfig-root/usr/sbin ;\
     install -m 644 $d.man
/users/stefan/tmp/sndconfig-root/usr/man/man8/$d.8 ;\done

and this one f*cks up. The weird thing is, they were both built from the
same useraccount (homedir is shared, password and group are in NIS -->
basically the same "useraccount"). RPM versions are the same:
rpm-3.0.5-3mdk.

When you take a look at the Makefile used by the alpha and i586
compilation you'll see the following difference:

diff Makefile.alpha Makefile.586
10a11
> manprefix = /usr/man
60c61
<       [ -d $(prefix)/man/man8 ] || install -m 755 -d
$(prefix)/man/man8
---
>       [ -d $(manprefix)/man8 ] || install -m 755 -d $(manprefix)/man8
63c64
<            install -m 644 $$d.man $(prefix)/man/man8/$$d.8 ;\
---
>            install -m 644 $$d.man $(manprefix)/man8/$$d.8 ;\ 

Hmmm... maybe the makekefile patch is the problem... let's see. Oh! it's
only applied for ix86. OK, now if we make that patch available for alpha
too (it only changes the manpage handling in the Makefile --> as seen
above, god know what the motivation was to apply it only to ix86), then
it builds fine (tested here).

Further in the .spec file:

%ifarch %{ix86}
Requires: isapnptools >= 1.16, sox, awesfx, playmidi, kernel >= 2.2.0
%endif 

this seems quite harsh. isapnptools and awesfx might be out of the
question for non-x86 platforms, but the others are justified, I think.
Maybe an else statement should be made for the non x86 archs:

Requires:       sox, playmidi, kernel >= 2.2.0

Greetz!!

Stefan

Reply via email to