jak w specu ustawić %define zależne od %ifarch?

Daniel bonkey Bauke bonkey w pld.org.pl
Wto, 30 Maj 2000, 13:21:25 CEST


Problem czysto akademicki, bo właściwie do niczego mi to nie
potrzebne, ale chciałbym wiedzieć na przyszłość, czy da się
coś takiego wymusić na rpmie.

Jest sobie pakiet xforms, który jest obecnie w wersji 0.88, na
ftpie jednak można znaleźć też 0.89, ale jedynie dla intela i
alphy; dla iskiekierki, znaczy się sparka -- nadal jest 0.88. No
i żeby to jakoś pogodzić, żeby builder ściągał tylko potrzebną
wersję i nie szukał nieistniejącej sparcowej 0.89 (jakby to się
działo przy ustawieniu na podstawie pomocniczej zmiennej %{_ver}
dla trzech Source'ów) wymyśliłem, że można ustawić odpowiednie
zmienne na podstawie architektury. Chciałem wsadzić w speca coś
w rodzaju:

%ifarch sparc sparc64
	%define _ver 88
	%define _tarball linux-sparc/bxform-0%{_ver}.sparc.tgz
%endif

%ifarch i386 i486 i586 i686
	%define _ver 89
	%define _tarball linux/elf/bxform-0%{_ver}-glibc2.1.tgz
%endif

%ifarch alpha
	%define _ver 89
	%define _tarball linux-alpha/elf/bxform-0%{_ver}-glibc2.1.alpha.tgz
%endif
[...]
Version:	0.%{_ver}
[...]
Source0:	ftp://ncmir.ucsd.edu/pub/xforms/%{_tarball}

Jednak %define wykonuje się niezależnie od klauzuli %ifarch
i koniec końców te zmienne ustawiają się na takie jak są
przeznaczone dla apx-a. 

Podkreślę, że to co jest (wersja 0.88 i na stałe ustawione
ścieżki) zadowala mnie w zupełności, a ciekawi mnie sam problem
%define i %ifarch albo jakieś równorzędne jego rozwiązanie :-)

-- 
Daniel `bonkey' Bauke; http://www.oho.pl/~bonkey/; {happiness=bike&&unix;}



Więcej informacji o liście dyskusyjnej pld-devel-pl