Bug 31673 - Проблемы с макросами при сборке в hasher
Summary: Проблемы с макросами при сборке в hasher
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: etersoft-build-utils (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Vitaly Lipatov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on: 6838
Blocks:
  Show dependency tree
 
Reported: 2015-12-29 14:09 MSK by gBopHuk
Modified: 2020-11-21 22:26 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description gBopHuk 2015-12-29 14:09:16 MSK
Пример лежит тут 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
Comment 1 Vitaly Lipatov 2015-12-30 14:00:27 MSK
(В ответ на комментарий №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, конечно, нельзя.
Comment 2 gBopHuk 2015-12-30 16:35:33 MSK
(В ответ на комментарий №1)
> (В ответ на комментарий №0)
> > Пример лежит тут git.alt:/people/akv/packages/RHVoice.git
> > 
> > В спеке используются макросы из пакета rpm-macros-tts. Не смотря на то что этот
> > пакет указан в BuildRequires до сборки в самом hasher дело не доходит из-за
> > какой-то проверки перед отправкой в hasher:
> Посмотрю.
> Самый простой вариант — поставить rpm-macros-tts в систему.
> 

Спасибо, понятно. Проще сразу установить все пакеты rpm-macros-* =))).
Comment 3 gBopHuk 2016-01-12 21:04:40 MSK
А может придумать какой-нибудь вариант skip-pre-check?
Если это не вариант, то почему? - После ответа на этот вопрос закрою багу
Comment 4 Vitaly Lipatov 2016-01-13 21:46:37 MSK
(В ответ на комментарий №3)
> А может придумать какой-нибудь вариант skip-pre-check?
> Если это не вариант, то почему? - После ответа на этот вопрос закрою багу
Вариант примерно так вызывается:
$ gear --rpmbuild -- myhsh
Но встроить в etersoft-build-utils это потребует времени, так что я пока не берусь. Хотя если сделать также через промежуточный pkg.tar, то это и не сложно...

Бага пусть повисит, как напоминание ;)
Comment 5 Repository Robot 2016-04-27 01:03:47 MSK
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