Как сделать _topdir относительно расположения файла.spec при создании RPM?

У меня есть .spec файл, который опирается на переменную с именем _topdir,

Прямо сейчас, когда вы извлекаете источник SRPM из git, вы должны пойти и изменить где _topdir указывает, чтобы получить rpmbuild функционировать правильно.

# We need the following line so that RPM can find the BUILD and SOURCES and RPMS dirs.
%define _topdir /root/projects/my-project/my-project-srpm/

Как вы указываете, что _topdir должно быть относительно расположения .spec файл так, чтобы _topdir не жестко закодировано?

3 ответа

Укажите ваш topdir в командной строке, как...

rpmbuild --define "_topdir \`pwd\`" ...

Вы можете определить переменную _topdir в своем файле спецификаций (например, вверху)

%define _topdir %(echo $PWD)/

В вашем файле ~/.rpmmacros сделайте это:

%_topdir      %(echo $PWD)/subdir

Я не уверен, что вы можете сделать это внутри самого spec-файла, я не понимаю, почему нет, но я не уверен, как это записать.

Другие вопросы по тегам