nowe makra warunkowe --with/--without

Filip Kaliński fk181140 w students.mimuw.edu.pl
Nie, 23 Wrz 2001, 18:48:36 CEST


On Sun, 23 Sep 2001 11:22:37 +0200
Jakub Bogusz <qboosh w prioris.mini.pw.edu.pl> wrote:

> On Sun, Sep 23, 2001 at 10:19:36AM +0200, Filip Kaliński wrote:
> > On Sat, 22 Sep 2001 22:14:46 +0200
> > Jakub Bogusz <qboosh w prioris.mini.pw.edu.pl> wrote:
> > > Właśnie sprawdziłem to, co do czego miałem wątpliwości na spotkaniu.
> > > 
> > > %{?bcond: }  i  %{!?bcond: }  sprawdzają, czy makro jest
> zdefiniowane,
> > > a nie jaką ma wartość.
> > > 
> > > Czyli jeżeli mamy gdzieś np.:
> > > LDFLAGS="-lcośtam %{?ssl:-lssl -lcrypto}"
> > > %configure %{!?ssl:--without-ssl}
> > > 
> > > To niezależnie czy będzie definicja ssl=0 czy ssl=1, pierwszy
> warunek
> > > będzie spełniony ("-lssl -lcrypto" wejdzie do LDFLAGS), drugi nie
> > > (nie będzie dodane --without-ssl).
> > > Przeciwna sytuacja będzie tylko jeżeli makro ssl _w ogóle_ nie
> będzie
> > > zdefiniowane.
> [...]
> > > Dalej "rpm -bp sst.spec" daje odpowiedź "no",
> > > "rpm -bp sst.spec --define bcond=1" daje "yes",
> > > "rpm -bp sst.spec --define bcond=0" daje także "yes".
> > > 
> > > Przy czymś takim zostaje tylko używanie:
> > > %if %{ssl}
> > > cośtam
> > > %else
> > > cośinnego
> > > %endif
> > > ...a nie zawsze jest to wygodne... (w testowym przykładzie akurat
> tak)
> > 
> > Niekoniecznie, przecież jeśli założymy, że rpm ... -with <sth>
> definiuje
> > <sth>, a rpm ... -without <sth> nie robi _nic_ , to otrzymamy to czego
> > chcieliśmy, będzie można uzywać %{<sth>:...}.
> 
> Tak. Ale co z wartościami domyślnymi?
> Jeżeli wartością domyślną będzie zmienna niezdefiowana - OK; ale to jest
> właśnie sytuacja jaką mamy teraz.
> Jeżeli wartością domyślną będzie zmienna zdefiniowana (na początku
> speca?) to nie bardzo widzę, jak ją zmienić. %undefine w specu działa,
> ale by musiało być po %define (ciekawe - rpm nie ma opcji --undefine).
> 
> 

Rzeczywiście nie jest tak różowo jak myslałem, trzeba będzie trochę jeszcze pokombinować, lub zostawić jak jest...

-- 
Filip Kaliński <f.kalinski w students.mimuw.edu.pl>



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