Книжки
| Инструменты | Теги | Макросы | Разное |
...здесь
...здесь
Тут нужно написать о том, как *нужно* делать спеки, как их делать *не* нужно, и все такое.
В частности, многие спрашивают: будет ли спек со стороны работать в альте?
Отвечаем: да, скорее всего, но:
Зато на другой вопрос: «будет ли альтовский спек работать где либо еще?», ответ вполне однозначный: в большинстве случаев нет.
Дело это поправимо. Для того, чтобы спек из другого дистрибутива сделать максимально подходящим для ALT, можно использовать команду rpmcs из пакета etersoft-build-utils. Для того, чтобы спек из ALT работал в другом дистрибутиве, там следует установить пакет rpm-build-altlinux-compat?. Так же и etersoft-build-utils переносим на другие платформы с помощью этого пакета.
Обоснование — у нас «слишком» богатый набор макросов, сопоставимый (по мнению mike@) — с макросами в PLD и Conectiva. В RedHat и SuSE наборы макросов удивительно бедные, а сами спеки — очень часто (по всё тому же мнению mike@) жутко кривые. Видимо, это не в последнюю очередь по причине специфической организации сборочных систем и работе майнтейнеров не напрямую со спеками, а с их прообразами?
(ldv@ в ALT specfile conventions)
(тоже ldv@)
При этом недавно выяснилось, что не следует использовать в спеках внутренние макросы RPM, которые начинаются с двух подчёркиваний (например, %__install или %__mkdir_p). «А мы и не знали» :-)
Скриптик для замены всех %__ на соответственные команды от Michael Shigorin