Примеры нескольких бинарных пакетов

Я пытаюсь включить предварительный просмотр новой экспериментальной сборки Inkscape для Gtk + 3 в нашего PPA ... Я хочу скомпилировать исходный код, используя разные параметры времени компиляции, чтобы сгенерировать два разных двоичных файла пакеты: "inkscape-trunk" (обычная ежедневная сборка) и "inkscape-trunk-gtk3" (экспериментальная сборка Gtk + 3).

Ниже я показал, как я могу сделать это вручную, используя исходный код, но мне нужно знать, как это сделать с помощью инструментов упаковки Debian.

Я уже нашел исходные пакеты Ubuntu mpb и vim , которые создают несколько двоичных файлов с использованием разных конфигураций во время компиляции. Тем не менее, оба они используют старый синтаксис debhelper, и файлы правил в итоге оказываются довольно сложными.

Мой вопрос: может ли кто-нибудь предложить подходящий пример пакета, в котором несколько двоичных сборок выполняются с использованием нового элегантного синтаксиса "dh" debhelper? Это вообще возможно, или я должен прибегнуть к написанию файла правил вручную.

# Building two different configurations of the same package...

# Make subfolders for building the two different configurations
src_dir=`pwd`
build_default_dir=${src_dir}/build-default
build_gtk3_dir=${src_dir}/build-gtk3
mkdir -p $build_default_dir
mkdir -p $build_gtk3_dir

# Generate build files
./autogen.sh

# Configure and build the default version
cd $build_default_dir
../configure --prefix=/usr/
make

# Configure and build the gtk+ 3 version
cd $build_gtk3_dir
../configure --prefix=/usr/ --enable-gtk3-experimental
make
3
задан 8 July 2013 в 16:01

1 ответ

Взгляните на пакет qbittorrent , он собирает две версии пакета из одного источника с использованием нового синтаксиса dh. Вот как это может выглядеть в вашем случае (не проверено):

#!/usr/bin/make -f
%:
    dh $@

override_dh_auto_configure:
    mkdir -p build-nox && cd build-default && ../configure --prefix=/usr
    mkdir -p build-gtk3 && cd build-gtk3 && ../configure --prefix=/usr --enable-gtk3-experimental

override_dh_auto_build:
    dh_auto_build --builddirectory build-default
    dh_auto_build --builddirectory build-gtk3

override_dh_auto_install:
    dh_auto_install --builddirectory build-default --destdir debian/inkscape-trunk
    dh_auto_install --builddirectory build-gtk3 --destdir debian/inkscape-trunk-gtk3

override_dh_auto_clean:
    dh_auto_clean --builddirectory build-default
    dh_auto_clean --builddirectory build-gtk3
0
ответ дан 8 July 2013 в 16:01

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

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