package/jackd: choose mode of operation, comment celt and eigen (branch yem/adopted)
v2 cover package/jackd: choose mode of operation, comment celt and eigen (branch yem/adopted)
Hello All!
This short series adds the possibility to choose what mode to operate jackd in (initially provided by Antoine, rebased and updated by me), as well as add comments on why we do not have a dependency on celt and eigen.
Changes v1 -> v2:
- drop the eigen dependency, comment it (Thomas)
Regards,
Yann E. MORIN.
The following changes since commit 0b7b84310c3781c346eea4c114c8cb4e97bbd8ea:
olimex_imx233_olinuxino_defconfig: genimage support (2016-03-11 13:14:54 +0100)
are available in the git repository at:
git://git.busybox.net/~ymorin/git/buildroot yem/adopted
for you to fetch changes up to dc794aba76e931a0c7bb974016708c51b77d3f6b:
package/jack2: add comment about celt and eigen (2016-03-11 18:11:35 +0100)
----------------------------------------------------------------
Antoine T?nart (1):
jack2: allow to choose the mode to operate jackd
Yann E. MORIN (1):
package/jack2: add comment about celt and eigen
package/jack2/Config.in | 26 ++++++++++++++++++++++++++ package/jack2/jack2.mk | 23 +++++++++++++++++++++++ 2 files changed, 49 insertions(+)
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v2 1/2 jack2: allow to choose the mode to operate jackd
From: Antoine T?nart <[email protected]>
jack2 allows to use three modes:
- A legacy jackd service alone.
- A DBUS jackd service alone.
- A mixture between the standalone jackd and the DBUS jackd.
This patch adds the possibility to choose between these three modes, while the legacy jackd was the only option before.
In addition, the jack_control tool is removed when the DBUS jackd is not available, as this tool is used to control it.
[yann.morin.1998 at free.fr:
- rebase
- only use two booleans, not a choice
- python is a runtime-only dependency
- use python3 if enabled, fallback to python
- simplify post-install condition
]
---
Changes v1 -> v2:
- rebased; see commit log (Yann)
--- package/jack2/Config.in | 26 ++++++++++++++++++++++++++ package/jack2/jack2.mk | 15 +++++++++++++++ 2 files changed, 41 insertions(+)
package/jack2/Config.in +26 -0
@@ -11,6 +11,8 @@ config BR2_PACKAGE_JACK2 select BR2_PACKAGE_ALSA_LIB_HWDEP select BR2_PACKAGE_ALSA_LIB_SEQ select BR2_PACKAGE_ALSA_LIB_RAWMIDI + # Ensure we get at least one: + select BR2_PACKAGE_JACK2_LEGACY if !BR2_PACKAGE_JACK2_DBUS help JACK Audio Connection Kit (server and example clients).
@@ -21,6 +23,30 @@ config BR2_PACKAGE_JACK2 http://jackaudio.org/ +if BR2_PACKAGE_JACK2 + +config BR2_PACKAGE_JACK2_LEGACY + bool "classic jack2" + help + Build and use jackd. + + https://github.com/jackaudio/jackaudio.github.com/wiki/JackDbusPackaging + +config BR2_PACKAGE_JACK2_DBUS + bool "dbus jack2" + depends on BR2_USE_WCHAR # dbus-python, python + select BR2_PACKAGE_DBUS + select BR2_PACKAGE_DBUS_PYTHON + select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime + help + Build on use jackdbus. + + https://github.com/jackaudio/jackaudio.github.com/wiki/JackDbusPackaging + +endif + comment "jack2 needs a toolchain w/ threads, C++, dynamic library" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4
package/jack2/jack2.mk +15 -0
@@ -18,12 +18,27 @@ ifeq ($(BR2_PACKAGE_READLINE),y) JACK2_DEPENDENCIES += readline endif +ifeq ($(BR2_PACKAGE_JACK2_LEGACY),y) +JACK2_CONF_OPTS += --classic +else +define JACK2_REMOVE_JACK_CONTROL + $(RM) -f $(TARGET_DIR)/usr/bin/jack_control +endef +JACK2_POST_INSTALL_TARGET_HOOKS += JACK2_REMOVE_JACK_CONTROL +endif + +ifeq ($(BR2_PACKAGE_JACK2_DBUS),y) +JACK2_DEPENDENCIES += dbus +JACK2_CONF_OPTS += --dbus +endif + define JACK2_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_CONFIGURE_OPTS) \ $(HOST_DIR)/usr/bin/python2 ./waf configure \ --prefix=/usr \ --alsa \ + $(JACK2_CONF_OPTS) \ ) endef
Signature · 1 line
1.9.1
PATCH v2 1/2 jack2: allow to choose the mode to operate jackd
Hello,
Quoted 23 lines · Yann E. MORIN
From: Antoine T?nart <[email protected]>
jack2 allows to use three modes:
- A legacy jackd service alone.
- A DBUS jackd service alone.
- A mixture between the standalone jackd and the DBUS jackd.This patch adds the possibility to choose between these three modes, while the legacy jackd was the only option before.
In addition, the
jack_controltool is removed when the DBUS jackd is not available, as this tool is used to control it.Signed-off-by Antoine Tenart <[email protected]>[yann.morin.1998 at free.fr:
- rebase
- only use two booleans, not a choice
- python is a runtime-only dependency
- use python3 if enabled, fallback to python
- simplify post-install condition
]Signed-off-by "Yann E. MORIN" <[email protected]>
Quoted 7 lines
---
Changes v1 -> v2:
- rebased; see commit log (Yann)--- package/jack2/Config.in | 26 ++++++++++++++++++++++++++ package/jack2/jack2.mk | 15 +++++++++++++++ 2 files changed, 41 insertions(+)
Applied after fixing some typos. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 2/2 package/jack2: add comment about celt and eigen
In reply to Yann E. MORINThe optinal dependency on celt is not added, because we only have celt-0.5.1 and jack2 requires celt >= 0.5.2 (even though it does look for celt >= 0.5.0, it does not build with celt- < 0.5.2). Sinc ewe can not upgrade celt (for now), we just never make jack2 depend on celt051, and it won;t find it either, as it just searches for celt.pc and we have celt051.pc.
As well, the dependency on eigen is only usefull in cunjunction with gtkiostream, for which we do not have a package. So, we need not depend on eigen.
--- package/jack2/jack2.mk | 8 ++++++++ 1 file changed, 8 insertions(+)
package/jack2/jack2.mk +8 -0
@@ -32,6 +32,14 @@ JACK2_DEPENDENCIES += dbus JACK2_CONF_OPTS += --dbus endif +# Even though it advertises support for celt-0.5.x, jack2 really requires +# celt >= 0.5.2 but we only have 0.5.1.3 and we can not upgrade, so we do +# not add a dependency to celt051, which it can't find anyway as it looks +# for celt.pc but we only have celt-51.pc. + +# The dependency against eigen is only usefull in cunjunction with +# gtkiostream, which we do not have, so we need not depend on eigen. + define JACK2_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_CONFIGURE_OPTS) \
Signature · 1 line
1.9.1
PATCH v2 2/2 package/jack2: add comment about celt and eigen
Hello,
Quoted 7 lines · Yann E. MORIN
The optinal dependency on celt is not added, because we only have celt-0.5.1 and jack2 requires celt >= 0.5.2 (even though it does look for celt >= 0.5.0, it does not build with celt- < 0.5.2). Sinc ewe can not upgrade celt (for now), we just never make jack2 depend on celt051, and it won;t find it either, as it just searches for celt.pc and we have celt051.pc.
Quoted 8 lines
As well, the dependency on eigen is only usefull in cunjunction with gtkiostream, for which we do not have a package. So, we need not depend on eigen.
Signed-off-by "Yann E. MORIN" <[email protected]>--- package/jack2/jack2.mk | 8 ++++++++ 1 file changed, 8 insertions(+)
Applied after fixing some typos. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com