mirror of
https://github.com/MiyooCFW/buildroot.git
synced 2025-09-27 22:24:19 +03:00
Merge from bittboy/buildroot@db180c0
This commit is contained in:
41
package/shairport-sync/Config.in
Normal file
41
package/shairport-sync/Config.in
Normal file
@@ -0,0 +1,41 @@
|
||||
config BR2_PACKAGE_SHAIRPORT_SYNC
|
||||
bool "shairport-sync"
|
||||
depends on BR2_USE_MMU # libdaemon
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
select BR2_PACKAGE_ALSA_LIB
|
||||
select BR2_PACKAGE_ALSA_LIB_MIXER
|
||||
select BR2_PACKAGE_LIBCONFIG
|
||||
select BR2_PACKAGE_LIBDAEMON
|
||||
select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_MBEDTLS
|
||||
select BR2_PACKAGE_POPT
|
||||
help
|
||||
Shairport Sync emulates an AirPort Express for the purpose
|
||||
of streaming audio from iTunes, iPods, iPhones, iPads and
|
||||
AppleTVs. Audio played by a Shairport Sync-powered device
|
||||
stays in synchrony with the source and thus with other
|
||||
devices that are playing the same source
|
||||
synchronously. Thus, for example, synchronised multi-room
|
||||
audio is possible without difficulty.
|
||||
|
||||
https://github.com/mikebrady/shairport-sync
|
||||
|
||||
if BR2_PACKAGE_SHAIRPORT_SYNC
|
||||
|
||||
config BR2_PACKAGE_SHAIRPORT_SYNC_LIBSOXR
|
||||
bool "libsoxr support"
|
||||
select BR2_PACKAGE_LIBSOXR
|
||||
help
|
||||
Enable support for libsoxr, the SoX Resampler library.
|
||||
|
||||
Briefly, Shairport Sync keeps in step with the audio source
|
||||
by deleting or inserting frames of audio into the stream as
|
||||
needed. This "interpolation" is normally inaudible, but it
|
||||
can be heard in some circumstances. Libsoxr allows this
|
||||
interpolation to be done much more smoothly and subtly.
|
||||
|
||||
endif
|
||||
|
||||
comment "shairport-sync needs a toolchain w/ C++, NPTL"
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
||||
27
package/shairport-sync/S99shairport-sync
Normal file
27
package/shairport-sync/S99shairport-sync
Normal file
@@ -0,0 +1,27 @@
|
||||
#! /bin/sh
|
||||
|
||||
# Additional options that are passed to Shairport Sync
|
||||
OPTIONS="-d"
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
printf "Starting shairport-sync: "
|
||||
start-stop-daemon -S -q --exec /usr/bin/shairport-sync -- $OPTIONS
|
||||
[ $? = 0 ] && echo "OK" || echo "FAIL"
|
||||
;;
|
||||
stop)
|
||||
printf "Stopping shairport-sync: "
|
||||
start-stop-daemon -K -q --exec /usr/bin/shairport-sync \
|
||||
-p /var/run/shairport-sync/shairport-sync.pid
|
||||
[ $? = 0 ] && echo "OK" || echo "FAIL"
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 1
|
||||
$0 start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
3
package/shairport-sync/shairport-sync.hash
Normal file
3
package/shairport-sync/shairport-sync.hash
Normal file
@@ -0,0 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 4f1ee142b887842727ae0c310e21c83ea2386518e841a25c7ddb015d08b54eba shairport-sync-3.2.2.tar.gz
|
||||
sha256 1daaa904985807b7f9f2fa91f6b19f3faadf8df4e813f7451a691f89a6965e3f LICENSES
|
||||
66
package/shairport-sync/shairport-sync.mk
Normal file
66
package/shairport-sync/shairport-sync.mk
Normal file
@@ -0,0 +1,66 @@
|
||||
################################################################################
|
||||
#
|
||||
# shairport-sync
|
||||
#
|
||||
################################################################################
|
||||
|
||||
SHAIRPORT_SYNC_VERSION = 3.2.2
|
||||
SHAIRPORT_SYNC_SITE = $(call github,mikebrady,shairport-sync,$(SHAIRPORT_SYNC_VERSION))
|
||||
|
||||
SHAIRPORT_SYNC_LICENSE = MIT, BSD-3-Clause
|
||||
SHAIRPORT_SYNC_LICENSE_FILES = LICENSES
|
||||
SHAIRPORT_SYNC_DEPENDENCIES = alsa-lib libconfig libdaemon popt host-pkgconf
|
||||
|
||||
# git clone, no configure
|
||||
SHAIRPORT_SYNC_AUTORECONF = YES
|
||||
|
||||
SHAIRPORT_SYNC_CONF_OPTS = --with-alsa \
|
||||
--with-metadata \
|
||||
--with-pipe \
|
||||
--with-stdout
|
||||
|
||||
SHAIRPORT_SYNC_CONF_ENV += LIBS="$(SHAIRPORT_SYNC_CONF_LIBS)"
|
||||
|
||||
# Avahi or tinysvcmdns (shaiport-sync bundles its own version of tinysvcmdns).
|
||||
# Avahi support needs libavahi-client, which is built by avahi if avahi-daemon
|
||||
# and dbus is selected. Since there is no BR2_PACKAGE_LIBAVAHI_CLIENT config
|
||||
# option yet, use the avahi-daemon and dbus congig symbols to check for
|
||||
# libavahi-client.
|
||||
ifeq ($(BR2_PACKAGE_AVAHI_DAEMON)$(BR2_PACKAGE_DBUS),yy)
|
||||
SHAIRPORT_SYNC_DEPENDENCIES += avahi
|
||||
SHAIRPORT_SYNC_CONF_OPTS += --with-avahi
|
||||
else
|
||||
SHAIRPORT_SYNC_CONF_OPTS += --with-tinysvcmdns
|
||||
endif
|
||||
|
||||
# OpenSSL or mbedTLS
|
||||
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
||||
SHAIRPORT_SYNC_DEPENDENCIES += openssl
|
||||
SHAIRPORT_SYNC_CONF_OPTS += --with-ssl=openssl
|
||||
else
|
||||
SHAIRPORT_SYNC_DEPENDENCIES += mbedtls
|
||||
SHAIRPORT_SYNC_CONF_OPTS += --with-ssl=mbedtls
|
||||
SHAIRPORT_SYNC_CONF_LIBS += -lmbedx509 -lmbedcrypto
|
||||
ifeq ($(BR2_PACKAGE_MBEDTLS_COMPRESSION),y)
|
||||
SHAIRPORT_SYNC_CONF_LIBS += -lz
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_PACKAGE_SHAIRPORT_SYNC_LIBSOXR),y)
|
||||
SHAIRPORT_SYNC_DEPENDENCIES += libsoxr
|
||||
SHAIRPORT_SYNC_CONF_OPTS += --with-soxr
|
||||
endif
|
||||
|
||||
define SHAIRPORT_SYNC_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 $(@D)/shairport-sync \
|
||||
$(TARGET_DIR)/usr/bin/shairport-sync
|
||||
$(INSTALL) -D -m 0644 $(@D)/scripts/shairport-sync.conf \
|
||||
$(TARGET_DIR)/etc/shairport-sync.conf
|
||||
endef
|
||||
|
||||
define SHAIRPORT_SYNC_INSTALL_INIT_SYSV
|
||||
$(INSTALL) -D -m 0755 package/shairport-sync/S99shairport-sync \
|
||||
$(TARGET_DIR)/etc/init.d/S99shairport-sync
|
||||
endef
|
||||
|
||||
$(eval $(autotools-package))
|
||||
Reference in New Issue
Block a user