makra _arch i _build_arch a dietlibc i uClibc

Jakub Bogusz qboosh w pld.org.pl
Nie, 19 Maj 2002, 19:00:21 CEST


Wyszło coś takiego:
rpm 4.0.2 ma tak zdefiniowane makra na dowolnym ix86:
%_arch = i386
%_build_arch nie zdefiniowane
%_target_cpu = i[3456]86 lub athlon

rpm 4.0.4 ma:
%_arch = i[3456]86 lub athlon - ale buildarchtranslate nie jest brane
         pod uwagę
%_build_arch = i386
%_target_cpu = i[3456]86 lub athlon

No i na 4.0.4 budowanie dietlibca się rozjechało, bo szukał czegoś
w /usr/athlon-dietlibc-linux/lib-athlon, podczas gdy było
w /usr/athlon-dietlibc-linux/lib-i386. A ten "athlon" to się w ogóle
nielegalnie pojawił, bo mam "buildarchtranslate: athlon i686".

Teraz dwa pytania:
1. czy dietlibc i uClibc ma być w /usr/{i[3456]86,athlon}-*libc-linux,
czy w /usr/i386-*libc-linux? Jeśli to pierwsze, to s/%_arch/%_target_cpu/.
Ale oprócz katalogu jest jeszcze %{_bindir}/%{_arch}-dietlibc-gcc - też
zmienić?
Dla i686-pld-linux jest i686-pld-linux{,-gcc}, więc dlaczego dla innych
libc na i686 katalog i gcc mają się nazywać i386?

2. co z makrem %_arch użytym w nazwie podkatalogu lib-i386
w dietlibc.spec? Jak zmienię na %_build_arch, to się na 4.0.2 rozjedzie
(chyba żeby dopisać do makr dla 4.0.2 "%_build_arch %_arch").
Na 4.0.4 przedefiniowanie %_arch powoduje, że zmienia się wszystko na
i386.
W nazwie katalogu najprościej to załatwić poprzez s/lib-%{arch}/lib-*/,
gorzej z %{_arch}-dietlibc-gcc, jeśli to miałoby zostać
i386-dietlibc-gcc na każdym ix86.


-- 
Jakub Bogusz    http://prioris.mini.pw.edu.pl/~qboosh/



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