shairport-sync: enable Airplay 2 for -openssl only

https://github.com/mikebrady/shairport-sync/blob/master/
CONFIGURATION%20FLAGS.md#cryptography states that only the OpenSSL
cryptography backend is suitable for Airplay 2.

Further investigation revealed that the pair_ap module within
shairport-sync, which is needed for Airplay 2, does not have an Mbed TLS
backend.

Accordingly, this commit enables Airplay 2 only for the OpenSSL build.

This has the nice side effect that for Airplay 1 the -mini or -mbedtls
versions can be used without pulling in 6 MB of ffmepg libs.

Signed-off-by: Christian Beier <info@christianbeier.net>
This commit is contained in:
Christian Beier
2025-11-28 20:28:53 +01:00
committed by Hannu Nyman
parent 78c39ff48a
commit 526520eaa4

View File

@@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=shairport-sync PKG_NAME:=shairport-sync
PKG_VERSION:=4.3.6 PKG_VERSION:=4.3.6
PKG_RELEASE:=2 PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/mikebrady/shairport-sync/tar.gz/$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/mikebrady/shairport-sync/tar.gz/$(PKG_VERSION)?
@@ -29,7 +29,7 @@ define Package/shairport-sync/default
SECTION:=sound SECTION:=sound
CATEGORY:=Sound CATEGORY:=Sound
TITLE:=AirPlay compatible audio player TITLE:=AirPlay compatible audio player
DEPENDS:=@AUDIO_SUPPORT +libpthread +alsa-lib +libconfig +libdaemon +libpopt +libplist +libsodium +libgcrypt +libffmpeg-full +libuuid +nqptp +libmosquitto DEPENDS:=@AUDIO_SUPPORT +libpthread +alsa-lib +libconfig +libdaemon +libpopt +libmosquitto
PROVIDES:=shairport-sync PROVIDES:=shairport-sync
URL:=https://github.com/mikebrady/shairport-sync URL:=https://github.com/mikebrady/shairport-sync
endef endef
@@ -37,7 +37,7 @@ endef
define Package/shairport-sync-openssl define Package/shairport-sync-openssl
$(Package/shairport-sync/default) $(Package/shairport-sync/default)
TITLE+= (openssl) TITLE+= (openssl)
DEPENDS+= +libopenssl +libavahi-client +libsoxr DEPENDS+= +libopenssl +libavahi-client +libsoxr +libplist +libsodium +libgcrypt +libffmpeg-full +libuuid +nqptp
VARIANT:=openssl VARIANT:=openssl
endef endef
@@ -73,18 +73,28 @@ define Package/shairport-sync-mini/description
$(Package/shairport-sync/default/description) $(Package/shairport-sync/default/description)
Minimal version uses mbed TLS and does not include libsoxr and avahi support. Minimal version uses mbed TLS and does not include libsoxr and avahi support.
Only supports classic AirPlay aka AirPlay 1. Please note that the minimal
version does not make use of the FFmpeg ALAC decoder that fixes some security
issues in the original decoder.
endef
define Package/shairport-sync-mbedtls/description
$(Package/shairport-sync/default/description)
mbed TLS version only supports classic AirPlay aka AirPlay 1. Please note that
the mbed TLS version does not make use of the FFmpeg ALAC decoder that fixes
some security issues in the original decoder.
endef endef
CONFIGURE_ARGS += \ CONFIGURE_ARGS += \
--with-alsa \ --with-alsa \
--with-libdaemon \ --with-libdaemon \
--with-airplay-2 \
--with-pipe \ --with-pipe \
--with-mqtt-client \ --with-mqtt-client \
--with-metadata --with-metadata
ifeq ($(BUILD_VARIANT),openssl) ifeq ($(BUILD_VARIANT),openssl)
CONFIGURE_ARGS+= --with-ssl=openssl CONFIGURE_ARGS+= --with-ssl=openssl --with-airplay-2
endif endif
ifeq ($(BUILD_VARIANT),mbedtls) ifeq ($(BUILD_VARIANT),mbedtls)