libgda i pdksh

Jakub Bogusz qboosh w pld-linux.org
Pon, 4 Gru 2006, 16:16:11 CET


On Mon, Dec 04, 2006 at 04:07:06PM +0100, Marcin Król wrote:
> Hello.
> 
> Krotkie pytanie to shellowych specjalistow. Jest sobie nasza domyslna
> powloka, pdksh. Jest sobie rowniez libgda.spec. Proba zbudowania tegoz
> zakonczyla sie niepowodzeniem, bo ponizsza linijka (wycinek z configure):
> 
> freetdsvercheck="`grep \"^#define \(VERSION_NO \|TDS_VERSION_NO \)\"
> $freetds_incdir/tdsver.h|sed 's|^.*"\(.*\)"|\1|'`"
> 
> na pdksh konczy sie tak:
> 
> grep: (VERSION_NO: No such file or directory
> grep: |TDS_VERSION_NO: No such file or directory
> grep: )": No such file or directory

Tak powinno działać:

freetdsvercheck="$(grep "^#define \(VERSION_NO \|TDS_VERSION_NO \)" $freetds_incdir/tdsver.h|sed 's|^.*"\(.*\)"|\1|')"

> Configure puszczone via bash dziala poprawnie, czyli wstawia co trzeba
> do zmiennej freetdsvercheck. pdksh jak widac nie obsluguje
> "escape'owanych" cudzyslowi (przynajmniej w tym konkretnym wypadku).
> 
> Zwazywszy, ze w libgda zmienil sie tylko release odpowiedzialna za ww
> problem musi byc jedna ze zmian w pdksh dokonana po ostatnim (udanym)
> budowaniu libgda.

Zmianą jest autoconf 2.60, który ustawia -o posix także dla ksh, co zmienia
interpretowanie \" wewnątrz `` przez tę powłokę.


-- 
Jakub Bogusz    http://qboosh.pl/


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