Сборка пакета Debian с двумя сборочными системами

У меня есть пакет, который должен быть собран как с обычным makefile, так и с setup.py. Дело в том, что магия упаковки Debian, которая вызывается через debuild, распознает makefile и делает правильные вещи

make
make install DESTDIR=???

и заставляет их работать правильно. Когда у меня есть только setup.py и dh $@ --with python3 --buildsystem pybuild в debian/rules, он правильно установит модуль Python с

python3 setup.py build
python3 setup.py install --install-layout deb --root=??? ???

. Я не знаю всех этих флагов. И я думаю, что мне не нужно. Я просто хочу, чтобы произошла магия makefile, а затем магия setup.py.

Как я могу сказать debuild сделать и то, и другое?

Когда я сделаю следующее в debian/rules

%:
        dh $@
        dh $@ --with python3 --buildsystem pybuild

, он поместит только первый один в полученный пакет. Я пытался удалить debhelper.log между ними, но это не сильно изменилось.

5
задан 28 May 2014 в 01:02

1 ответ

Можно использовать обоих, но в этом случае Ваш debian/rules будет исключительно использовать переопределения:

#!/usr/bin/make -f

%:
    dh $@ --with=python3

override_dh_auto_build:
    make universe-explode-in-delight
    cd python_src && python3 setup.py build

override_dh_auto_test:
    cd python_src && python3 setup.py test

override_dh_auto_install:
    cd python_src && python3 setup.py install \
        --force --root=$(CURDIR)/debian/tmp \
        --no-compile -O0 --install-layout=deb
    make install_non_python_stuff

override_dh_auto_clean:
    cd python_src && python3 setup.py clean

См.: http://manpages.ubuntu.com/manpages/trusty/man1/dh.1.html

0
ответ дан 28 May 2014 в 01:02

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

Похожие вопросы: