zsh.spec (było: -fomit-frame-pointer)

Tomasz Pala gotar at polanet.pl
Tue Apr 22 17:26:47 CEST 2003


On Tue, Apr 22, 2003 at 17:19:24 +0200, Tomasz Kłoczko wrote:

> > Tak więc takie rozwiązanie byłoby motywacją do poprawienia specy, chyba
> > żeby to je (rozwiązanie) poprawić -
> > 
> > 1. najłatwiejszy byłby jakiś eval:
> > 
> > %define optflags "eval(%optflags) -inne-flagi"
> 
> A dlaczego nie może być tak jak to jest mneijwiecej do tej pory z
> -fno-exceptions czy -fno-rtti czyli:
> 
> CFLAGS="%{rpmcflags} %{!?debug:-finne-flagi}" ?

1. Trzeba ustawiać CFLAGS, CXXFLAGS, czy cokolwiek innego,
2. Trzeba zmieniać wszędzie tam, gdzie jest %rpmcflags, które z
   %optflags dziedziczy,
3. Trzeba wpisywać %{!?debug:...},
4. Trzeba dbać o zasięg zmiennych (w sekcjach %build i %install)

A to jest redundancja, gdyż dokładnie TE funkcje realizuje makro
%optflags.

Przykłady:

1. SVGATextMode.spec:

CFLAGS_DEFAULT="%{rpmcflags}"

Jak widać niekoniecznie nazywa się to CFLAGS.

2. kdelibs.spec:
	CFLAGS="%{rpmcflags}"
	CXXFLAGS="%{rpmcflags}"

Trzeba poprawiać w dwóch miejscach.

   XFree86.spec:
        "BOOTSTRAPCFLAGS=%{rpmcflags}" \
        "CCOPTIONS=%{rpmcflags}" \
        "CXXOPTIONS=%{rpmcflags}" \

Trzeba poprawiać w trzech miejscach

> Nie powinno być zreszta nic zdrożnego w tym żeby postał zestaw zaleceń
> opisujących która -finna-flaga ma być zalezna od %{debug} a która nie.

Zależne od %debug to %optflags właśnie, dlatego niżej zaproponowałem
jeszcze dodanie na końcu jego definicji %specflags i określanie
dodatkowych flag przez to makro na początku speca. Dzięki temu:

1. nie trzeba szukać, jak się nazywa zmienna,
2. zmienia się tylko w jednym miejscu, na początku speca,
3. mamy bezpośredni zapis, który dzięki dziedziczeniu %optflags przez
   %rpmcflags dziedziczy także zachowanie przy %debug,
4. mamy jasność co do zasięgu - określenie CFLAGS obowiązuje tylko w
   obrębie jednej sekcji bądź jednego wywołania %{__make}, zaś %optflags
   jest globalne i przeniesie się do %install, gdzie jak pisałem -
   czasem też się coś (choć nie do końca poprawnie) zbuduje.

-- 
GoTaR <priv0.onet.pl->gotar>            USA sux
        ...Dżahilijja... znowu? Nadal...
PLD stuff at http://mops.uci.agh.edu.pl/~gotar/



More information about the pld-devel-pl mailing list