[devel] kdesdk-3.5.7-alt1

Alexey Tourbin at на altlinux.ru
Ср Сен 12 02:02:08 MSD 2007


> kdesdk-3.5.7-alt1
> 	/usr/src/tmp/kdesdk-buildroot/usr/bin/svnlastchange syntax OK
> 	/usr/src/tmp/kdesdk-buildroot/usr/bin/kde-build: line 839: syntax error near unexpected
> 	token `|'
> 	/usr/src/tmp/kdesdk-buildroot/usr/bin/kde-build: line 839: `	  |'
> 	RPM build errors:
> 	error: /bin/sh failed
> 	error: Failed to find Requires
> 	/bin/sh failed

Здесь находится скрипт, который исполняется через "#!/usr/bin/env bash",
поэтому раньше он не обрабатывался; а теперь корректно работает как
поиск интерпретатора, так и диспетчеризация типа (последнее всё ещё
возможно, в отличие от re-exec хаков на следующих строчках скрипта).

$ rpmpeek kdesdk-misc-3.5.7-alt1.i586.rpm head -1 ./usr/bin/kde-build
#! /usr/bin/env bash
$

В этом скрипте встроена pod документация открытым текстом после exit.
Шелл не понимает такой синтаксической конструкции, так как его парсер
не интерпретирует команду exit "без отсутпа" специальным образом.

$ rpmpeek kdesdk-misc-3.5.7-alt1.i586.rpm cat -n ./usr/bin/kde-build |egrep -m1 -C2 $'[0-9]\t='
   822  exit $err_no_error
   823  
   824  =head1 NAME
   825  
   826  kde-build - Updates and recompiles a tree of KDE modules
$

Zerg, я помню этот скрипт ещё когда был моложе, чем сейчас.
Если очень хочется сохранить документацию в скрипте as is,
то можно завернуть ее вот в такую конструкцию:

: <<'__EOF__'

(пустая строчка сверху обязательна)
(документация)
(пустая строчка снизу обязательна)

__EOF__
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : http://lists.altlinux.org/pipermail/devel/attachments/20070912/04b3b085/attachment.bin 


Подробная информация о списке рассылки Devel