bluealsa: uprev to 4.0.0

Some recipe changes have been made as well as follows:
- Dont install bluealsa.service from recipe, use the bluealsa.service
  from bluez-alsa source. In bluez-alsa 4.0.0, two more autoconf
  options have been added: --with-systemdbluealsaaplayargs and
  --with-systemdbluealsaargs that could be used to pass bluealsa
  and bluealsa-aplay arguments to systemd services.
- Drop some useless FILES varialbes.
- Add more PACKAGECONFIGs, explicitly disable the codecs that not
  supported by Yocto, this is to get a predictible build.
- Split out bluealsa-aplay to its own package and disable
  bluealsa-aplay.service by default, since bluez-alas can be used
  in many different ways, there is no default usage for it, like sink
  (BT speaker).

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Ming Liu 2022-06-05 11:46:45 +02:00 committed by Khem Raj
parent 749180d20e
commit b51045f9b7
2 changed files with 49 additions and 33 deletions

View File

@ -1,11 +0,0 @@
[Unit]
Description=Bluetooth Audio ALSA Backend
After=bluetooth.service
Requires=bluetooth.service
[Service]
Type=simple
ExecStart=/usr/bin/bluealsa
[Install]
WantedBy=multi-user.target

View File

@ -3,37 +3,64 @@ HOMEPAGE = "https://github.com/Arkq/bluez-alsa"
SECTION = "libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=72d868d66bdd5bf51fe67734431de057"
LIC_FILES_CHKSUM = "file://LICENSE;md5=8449a4f133a93f6254b496d4fb476e83"
DEPENDS += "alsa-lib bluez5 glib-2.0 sbc"
SRC_URI = "git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master"
SRCREV = "aac8742a9e7dd12a1fead9cbce7d2dc8b961999c"
SRC_URI = " \
git://github.com/Arkq/bluez-alsa.git;protocol=https;branch=master \
file://bluealsa.service \
"
SRCREV = "dd05a1baa261b94da9ba977b5e3392c8b4dc7a5e"
PV = "4.0.0+git${SRCPV}"
S = "${WORKDIR}/git"
PACKAGECONFIG[aac] = "--enable-aac, --disable-aac,"
PACKAGECONFIG[aptx] = "--enable-aptx,--disable-aptx,"
PACKAGECONFIG[hcitop] = "--enable-hcitop, --disable-hcitop, libbsd ncurses"
PACKAGECONFIG[systemd] = "--enable-systemd, --disable-systemd, systemd"
DEPENDS += "alsa-lib bluez5 dbus glib-2.0 sbc"
PACKAGECONFIG += "hcitop ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG ??= "aplay cli hcitop ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG[a2dpconf] = "--enable-a2dpconf,--disable-a2dpconf"
PACKAGECONFIG[aac] = "--enable-aac,--disable-aac,fdk-aac"
PACKAGECONFIG[aplay] = "--enable-aplay,--disable-aplay"
PACKAGECONFIG[cli] = "--enable-cli,--disable-cli"
PACKAGECONFIG[coverage] = "--with-coverage,--without-coverage,lcov-native"
PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
PACKAGECONFIG[debug-time] = "--enable-debug-time,--disable-debug-time"
PACKAGECONFIG[faststream] = "--enable-faststream,--disable-faststream"
PACKAGECONFIG[hcitop] = "--enable-hcitop,--disable-hcitop,libbsd ncurses"
PACKAGECONFIG[libunwind] = "--with-libunwind,--without-libunwind,libunwind"
PACKAGECONFIG[mp3lame] = "--enable-mp3lame,--disable-mp3lame,lame"
PACKAGECONFIG[mpg123] = "--enable-mpg123,--disable-mpg123,mpg123,mpg123"
PACKAGECONFIG[ofono] = "--enable-ofono,--disable-ofono,ofono"
PACKAGECONFIG[payloadcheck] = "--enable-payloadcheck,--disable-payloadcheck"
PACKAGECONFIG[rfcomm] = "--enable-rfcomm,--disable-rfcomm"
PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir} \
--with-systemdbluealsaargs='${SYSTEMD_BLUEALSA_ARGS}' --with-systemdbluealsaaplayargs='${SYSTEMD_BLUEALSA_APLAY_ARGS}',--disable-systemd,systemd"
PACKAGECONFIG[test] = "--enable-test,--disable-test,libcheck libsndfile1"
PACKAGECONFIG[upower] = "--enable-upower,--disable-upower,,upower"
inherit autotools pkgconfig systemd
FILES:${PN} += "\
${datadir}/alsa/alsa.conf.d/20-bluealsa.conf\
${libdir}/alsa-lib/libasound_module_ctl_bluealsa.so\
${libdir}/alsa-lib/libasound_module_pcm_bluealsa.so\
EXTRA_OECONF = " \
--disable-aptx \
--disable-lc3plus \
--disable-ldac \
--disable-manpages \
"
FILES:${PN}-staticdev += "\
${libdir}/alsa-lib/libasound_module_ctl_bluealsa.a\
${libdir}/alsa-lib/libasound_module_pcm_bluealsa.a\
"
PACKAGE_BEFORE_PN = "${PN}-aplay"
RRECOMMENDS:${PN} = "${PN}-aplay"
SYSTEMD_SERVICE:${PN} = "bluealsa.service bluealsa-aplay.service"
FILES:${PN}-aplay = "${bindir}/bluealsa-aplay"
FILES:${PN} += "${libdir}/alsa-lib/*"
SYSTEMD_PACKAGES += "${PN}-aplay"
SYSTEMD_SERVICE:${PN} = "bluealsa.service"
SYSTEMD_SERVICE:${PN}-aplay = "bluealsa-aplay.service"
SYSTEMD_AUTO_ENABLE:${PN}-aplay = "disable"
# Choose bluez-alsa arguments to be used in bluealsa systemd service
# Usually could choose profiles with it: a2dp-source a2dp-sink hfp-hf hfp-ag hsp-hs hsp-ag hfp-ofono
# Enable bluez-alsa arguments by default:
SYSTEMD_BLUEALSA_ARGS ?= "-p a2dp-source -p a2dp-sink"
# Choose bluealsa-aplay arguments to be used in bluealsa-aplay systemd service
# Defaults to be empty:
SYSTEMD_BLUEALSA_APLAY_ARGS ?= ""