applnk i %{_applnkdir}
Adam Gorzkiewicz
adgor w isn.pl
Nie, 12 Sty 2003, 02:21:33 CET
Tak sobie wziąłem ostatnio applnk.spec postanowiłem zobaczyć, co sie
stanie, gdy zamiast prefixu /usr/X11R6 dam prefix /opt.
Oczywiście nie zbudowało się. ponieważ w plikach Makefile.am są
definicje typu: Amusementsdir = $(datadir)/applnk/Amusements, pixmapsdir
= $(datadir)/pixmaps itd.
Taka konstrukcja wymaga, aby %{_applnkdir}/%{_pixmapsdir} były zalezne
od prefixu, gdy tym czasem:
$ pwd
/usr/lib/rpm
$ grep -r applnkdir *
athlon-linux/macros:%_applnkdir /usr/X11R6/share/applnk
i386-linux/macros:%_applnkdir /usr/X11R6/share/applnk
i486-linux/macros:%_applnkdir /usr/X11R6/share/applnk
i586-linux/macros:%_applnkdir /usr/X11R6/share/applnk
i686-linux/macros:%_applnkdir /usr/X11R6/share/applnk
noarch-linux/macros:%_applnkdir /usr/X11R6/share/applnk
$
Tak więc gwoli konsekwencji wypadałoby albo zmienić w makrach definicje
%{_applnkdir}/%{_pixmapsdir} na "prefix-dependend" co nie idzie w parze
z obecnymi tendencjami do uniezależniania tym dwóch katalogów, albo:
1. We wszystkich Makefile.am - s/(datadir)\/applnk/(applnkdir)/
oraz w katalogu pixmaps w Makefile.am -
s/(datadir)\/pixmaps/(pixmapsdir)/
2. W specu dać:
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
applnkdir=%{_applnkdir} \
pixmapsdir=%{_pixmapsdir}
Takie rozwiazanie eliminuje potrzebę operowania prefixem (którego
zastosowania akurat wobec tego pakietu nie widzę) oraz mozliwość
dowolnego definiowania %{_applnkdir}/%{_pixmapsdir}
Hurt me plenty now :)
--
Adam Gorzkiewicz
adgor w isn.pl
Więcej informacji o liście dyskusyjnej pld-devel-pl