From e69af3656a58b8d014fb01efa6870ab31ec8a286 Mon Sep 17 00:00:00 2001 From: =?utf8?q?IOhannes=20m=20zm=C3=B6lnig=20=28Debian/GNU=29?= Date: Thu, 25 Nov 2021 09:56:44 +0100 Subject: [PATCH] Build GUI and no-GUI flavours --- debian/control | 22 ++++++++++++++++++++- debian/jacktrip-gui.alternatives | 5 +++++ debian/jacktrip-gui.install | 1 + debian/jacktrip.alternatives | 5 +++++ debian/jacktrip.install | 2 ++ debian/jacktrip.manpages | 1 - debian/not-installed | 1 + debian/rules | 33 +++++++++++++++----------------- 8 files changed, 50 insertions(+), 20 deletions(-) create mode 100644 debian/jacktrip-gui.alternatives create mode 100644 debian/jacktrip-gui.install create mode 100644 debian/jacktrip.alternatives create mode 100644 debian/jacktrip.install delete mode 100644 debian/jacktrip.manpages create mode 100644 debian/not-installed diff --git a/debian/control b/debian/control index 964b328..382861e 100644 --- a/debian/control +++ b/debian/control @@ -23,7 +23,7 @@ Package: jacktrip Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, Suggests: iperf, audacity, qjackctl -Description: high-quality system for audio network performances +Description: high-quality system for audio network performances (cmdline) JackTrip is a Linux and Mac OS X-based system used for multi-machine network performance over the Internet. It supports any number of channels (as many as the computer/network can handle) of bidirectional, @@ -34,3 +34,23 @@ Description: high-quality system for audio network performances . It is currently being developed and actively tested at CCRMA by the SoundWIRE group. + . + This package contains the command line version of jacktrip. + +Package: jacktrip-gui +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, +Suggests: iperf, audacity, qjackctl +Description: high-quality system for audio network performances (GUI) + JackTrip is a Linux and Mac OS X-based system used for multi-machine + network performance over the Internet. It supports any number of + channels (as many as the computer/network can handle) of bidirectional, + high quality, uncompressed audio signal streaming. + . + You can use it between any combination of Linux and Mac OS X systems + (i.e., one end using Linux can connect to the other using Mac OS X). + . + It is currently being developed and actively tested at CCRMA by the + SoundWIRE group. + . + This package contains the GUI version of jacktrip. diff --git a/debian/jacktrip-gui.alternatives b/debian/jacktrip-gui.alternatives new file mode 100644 index 0000000..3c1728e --- /dev/null +++ b/debian/jacktrip-gui.alternatives @@ -0,0 +1,5 @@ +Name: jacktrip +Link: /usr/bin/jacktrip +Alternative: /usr/bin/jacktrip-gui +Priority: 50 + diff --git a/debian/jacktrip-gui.install b/debian/jacktrip-gui.install new file mode 100644 index 0000000..03875ed --- /dev/null +++ b/debian/jacktrip-gui.install @@ -0,0 +1 @@ +debian/build/flavor-*/*-gui /usr/bin/ diff --git a/debian/jacktrip.alternatives b/debian/jacktrip.alternatives new file mode 100644 index 0000000..832fd25 --- /dev/null +++ b/debian/jacktrip.alternatives @@ -0,0 +1,5 @@ +Name: jacktrip +Link: /usr/bin/jacktrip +Alternative: /usr/bin/jacktrip-cli +Priority: 10 + diff --git a/debian/jacktrip.install b/debian/jacktrip.install new file mode 100644 index 0000000..07f5aeb --- /dev/null +++ b/debian/jacktrip.install @@ -0,0 +1,2 @@ +debian/build/flavor-*/*-cli /usr/bin/ +usr/share/ diff --git a/debian/jacktrip.manpages b/debian/jacktrip.manpages deleted file mode 100644 index 6550933..0000000 --- a/debian/jacktrip.manpages +++ /dev/null @@ -1 +0,0 @@ -jacktrip.1 diff --git a/debian/not-installed b/debian/not-installed new file mode 100644 index 0000000..f1f3682 --- /dev/null +++ b/debian/not-installed @@ -0,0 +1 @@ +usr/bin/jacktrip diff --git a/debian/rules b/debian/rules index b003bc2..496997b 100755 --- a/debian/rules +++ b/debian/rules @@ -5,18 +5,10 @@ #export DH_VERBOSE = 1 export DEB_BUILD_MAINT_OPTIONS = hardening=+all --include /usr/share/dpkg/buildtools.mk -PKG_CONFIG ?= pkg-config +FLAVORS = cli gui +CONFIG_cli = -config nogui -CPPFLAGS+=$(shell $(PKG_CONFIG) --cflags rtaudio) -CFLAGS+=-DDEB_BUILD -CXXFLAGS+=-DDEB_BUILD -LDFLAGS+=$(shell $(PKG_CONFIG) --libs rtaudio) - -export CPPFLAGS -export CFLAGS -export CXXFLAGS -export LDFLAGS +builddir=debian/build/flavor- export QT_SELECT=qt5 DEB_SRCDIR = . @@ -26,15 +18,20 @@ DEB_SRCDIR = . override_dh_clean: dh_clean - rm -f jacktrip.1 + rm -rf $(FLAVORS:%=$(builddir)%) + +override_dh_auto_configure-arch: $(patsubst %,configure_%,$(FLAVORS)) +configure_%: + dh_auto_configure -a -B $(builddir)$* -- $(strip $(CONFIG) $(CONFIG_$*)) $(CURDIR)/jacktrip.pro + +override_dh_auto_build-arch: $(patsubst %,build_%,$(FLAVORS)) +build_%: + dh_auto_build -a -B $(builddir)$* -- -f Makefile.Release + cp $(builddir)$*/jacktrip $(builddir)$*/jacktrip-$* -override_dh_auto_configure: - dh_auto_configure -- $(CURDIR)/jacktrip.pro - cp $(DEB_SRCDIR)/Makefile.Release $(DEB_SRCDIR)/Makefile -override_dh_auto_build: - dh_auto_build - help2man -N -n "high-quality system for audio network performances" ./jacktrip > jacktrip.1 +override_dh_auto_install-arch: + dh_auto_install -a -B $(builddir)cli -- -f Makefile.Release override_dh_installchangelogs: dh_installchangelogs docs/About/CHANGELOG.md -- 2.30.2