Vitaly Lipatov пишет: > On 19 сентября 2008, Aleksey Avdeev wrote: > ... >> У себя в спеках я это несколько автоматизировал следующим >> кодом (см. >> > mon.git;a=blob_plain;f=webserver-common.spec;hb=ALT/webserver-c >> ommon/spec>): >> >> # for distr selected >> %def_without M40 >> %def_without M41 >> >> # for set release >> %define release_pre alt >> %define release_base_num 1 >> %define release_suff %nil > Честно говоря мне такой подход кажется неприемлемым. > 1. Это самодеятельность ? -- Прошу развернуть. > 2. Спек загромождается кучей лишних строк Да. Здесь нужны макросы. > 3. В спеке должен быть минимум функциональности и логики, и > максимум декларативности. По опыту бэкпортирования apache2, для разных сборок под разные дистрибутивы требуется привязка к разным либам (как миниум libdb -- иначе о бинарной совместимости можно забыть). И если, при этом, не добавит в спек логики по выбору нужного -- зоопарк начинает расти... Оно надо? :-) С логикой же в спеке, я получаю управление этим процессом из 1-ой точки (%def_with <нужное>) и существенное отличие в сизифовских и бранчевских спеках у меня только одно (это самое %def_with <нужное>). Это -- весьма сильно упрощает поддержку. -- С уважением. Алексей.