Пример лежит тут git.alt:/people/akv/packages/RHVoice.git В спеке используются макросы из пакета rpm-macros-tts. Не смотря на то что этот пакет указан в BuildRequires до сборки в самом hasher дело не доходит из-за какой-то проверки перед отправкой в hasher: $rpmbsh Using autodetected spec /srv/akv/Projects/git/RHVoice/RHVoice.spec... предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice ошибка: запрос файла спецификации /srv/akv/Projects/git/RHVoice/RHVoice.spec не удался, невозможно разобрать файл предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice ошибка: запрос файла спецификации /srv/akv/Projects/git/RHVoice/RHVoice.spec не удался, невозможно разобрать файл add_changelog: /srv/akv/Projects/git/RHVoice/RHVoice.spec: version "" unchanged, skipping skip changelog editing without EDITOR var предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found предупреждение: Macro %tts_unregister not found предупреждение: Macro %tts_unregister not found предупреждение: Macro %_ttsdir not found Just packing RHVoice-0.5-alt3.src.rpm $ nice -n 9 gear --rpmbuild -- rpmbuild --quiet --define=_topdir /tmp/.private/akv/RPM --quiet -bs --nodeps --target x86_64 Платформы для сборки: x86_64 Сборка для платформы x86_64 предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice Error in rpmbsh: Error with rpmbuild Попытка определить макросы в самом spec: $ grep define RHVoice.spec %define /etc/tts.d %_ttsdir %define /usr/sbin/tts-unregister %tts_unregister $ rpmbsh Using autodetected spec /srv/akv/Projects/git/RHVoice/RHVoice.spec... ошибка: Недопустимое имя (%define) макроса % ошибка: Недопустимое имя (%define) макроса % предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice ошибка: запрос файла спецификации /srv/akv/Projects/git/RHVoice/RHVoice.spec не удался, невозможно разобрать файл ошибка: Недопустимое имя (%define) макроса % ошибка: Недопустимое имя (%define) макроса % предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice ошибка: запрос файла спецификации /srv/akv/Projects/git/RHVoice/RHVoice.spec не удался, невозможно разобрать файл add_changelog: /srv/akv/Projects/git/RHVoice/RHVoice.spec: version "" unchanged, skipping skip changelog editing without EDITOR var ошибка: Недопустимое имя (%define) макроса % ошибка: Недопустимое имя (%define) макроса % предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found предупреждение: Macro %tts_unregister not found предупреждение: Macro %tts_unregister not found предупреждение: Macro %_ttsdir not found Just packing RHVoice-0.5-alt3.src.rpm $ nice -n 9 gear --rpmbuild -- rpmbuild --quiet --define=_topdir /tmp/.private/akv/RPM --quiet -bs --nodeps --target x86_64 Платформы для сборки: x86_64 Сборка для платформы x86_64 ошибка: Недопустимое имя (%define) макроса % ошибка: Недопустимое имя (%define) макроса % предупреждение: Macro %_ttsdir not found предупреждение: Macro %_ttsdir not found ошибка: Macro %tts_unregister not found ошибка: строка 73: %tts_unregister rhvoice Error in rpmbsh: Error with rpmbuild
(В ответ на комментарий №0) > Пример лежит тут git.alt:/people/akv/packages/RHVoice.git > > В спеке используются макросы из пакета rpm-macros-tts. Не смотря на то что этот > пакет указан в BuildRequires до сборки в самом hasher дело не доходит из-за > какой-то проверки перед отправкой в hasher: Посмотрю. Самый простой вариант — поставить rpm-macros-tts в систему. > > Попытка определить макросы в самом spec: > > $ grep define RHVoice.spec > %define /etc/tts.d %_ttsdir > %define /usr/sbin/tts-unregister %tts_unregister Для этого нужно посмотреть хоть один пример в другом спеке, как определяются макросы. Но делать так при наличии rpm-macros-tts, конечно, нельзя.
(В ответ на комментарий №1) > (В ответ на комментарий №0) > > Пример лежит тут git.alt:/people/akv/packages/RHVoice.git > > > > В спеке используются макросы из пакета rpm-macros-tts. Не смотря на то что этот > > пакет указан в BuildRequires до сборки в самом hasher дело не доходит из-за > > какой-то проверки перед отправкой в hasher: > Посмотрю. > Самый простой вариант — поставить rpm-macros-tts в систему. > Спасибо, понятно. Проще сразу установить все пакеты rpm-macros-* =))).
А может придумать какой-нибудь вариант skip-pre-check? Если это не вариант, то почему? - После ответа на этот вопрос закрою багу
(В ответ на комментарий №3) > А может придумать какой-нибудь вариант skip-pre-check? > Если это не вариант, то почему? - После ответа на этот вопрос закрою багу Вариант примерно так вызывается: $ gear --rpmbuild -- myhsh Но встроить в etersoft-build-utils это потребует времени, так что я пока не берусь. Хотя если сделать также через промежуточный pkg.tar, то это и не сложно... Бага пусть повисит, как напоминание ;)
etersoft-build-utils-2.5.1-alt1 -> sisyphus: * Wed Apr 27 2016 Vitaly Lipatov <lav@altlinux> 2.5.1-alt1 - rpmbsh: add -w for build via gear --hasher and make src.rpm in hasher (ALT bug #31673) - small fixes