Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Jörg Krause" <jkrause@posteo.de>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/1] shairplay-sync: new package
Date: Sat, 25 Oct 2014 00:22:20 +0200	[thread overview]
Message-ID: <544AD11C.5050704@posteo.de> (raw)
In-Reply-To: <20141020173137.GF3742@free.fr>

Hi Yann, Hi All,

On 10/20/2014 07:31 PM, Yann E. MORIN wrote:
> J?rg, All,
>
> On 2014-10-20 15:21 +0200, J?rg Krause spake thusly:
>> Signed-off-by: J?rg Krause <jkrause@posteo.de>
> [--SNIP--]
>> diff --git a/package/shairport-sync/Config.in b/package/shairport-sync/Config.in
>> new file mode 100644
>> index 0000000..2eab88d
>> --- /dev/null
>> +++ b/package/shairport-sync/Config.in
>> @@ -0,0 +1,72 @@
>> +config BR2_PACKAGE_SHAIRPORT_SYNC
>> +	bool "shairport-sync"
>> +	depends on BR2_USE_MMU # libdaemon
>> +	depends on BR2_TOOLCHAIN_HAS_THREADS # alsa_lib
>> +	select BR2_PACKAGE_ALSA_LIB
>> +	select BR2_PACKAGE_LIBDAEMON
>> +	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
>> +
>> +choice
>> +	prompt "Choose SSL encryption backend"
>> +	default BR2_PACKAGE_SHAIRPORT_SYNC_OPENSSL
>> +
>> +config BR2_PACKAGE_SHAIRPORT_SYNC_OPENSSL
>> +	bool "OpenSSL"
>> +	select BR2_PACKAGE_OPENSSL
>> +
>> +config BR2_PACKAGE_SHAIRPORT_SYNC_POLARSSL
>> +	bool "PolarSSL"
>> +	select BR2_PACKAGE_POLARSSL
>> +endchoice
> Since this is a choice, either one is selected. Which means SSL support
> seems to be not optional.

You're right! SSL support is mandatory, but you can choose between 
OpenSSL and PolarSSL.

> In that case I would prefer we use something like:
>
>      config BR2_PACKAGE_SHAIRPORT_SYNC
>          bool "shairport-sync"
>          # Dependencies and selects as above
>          select BR2_PACKAGE_POLARSSL if !BR2_PACKAGE_OPENSSL
>
> This way, we ensure at least one SSL implementation is available, and do
> not bother the user with a useless prompt.

Ok

>> +choice
>> +	prompt "Choose mDNS backend"
>> +	default BR2_PACKAGE_SHAIRPORT_SYNC_AVAHI
>> +
>> +config BR2_PACKAGE_SHAIRPORT_SYNC_AVAHI
>> +	bool "Avahi"
>> +	depends on BR2_USE_WCHAR # avahi -> gettext
>> +	depends on !BR2_PREFER_STATIC_LIB
>> +	select BR2_PACKAGE_AVAHI
>> +	select BR2_PACKAGE_AVAHI_DAEMON
>> +	select BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY
>> +
>> +comment "Avahi support needs a toolchain w/ wchar, dynamic library"
>> +	depends on !BR2_USE_WCHAR || BR2_PREFER_STATIC_LIB
>> +
>> +config BR2_PACKAGE_SHAIRPORT_SYNC_TINYSVCMDNS
>> +	bool "tinysvcmdns"
>> +	help
>> +	  tinysvcmdns is a tiny mDNS responder which is only concerned with
>> +	  publishing services, without a system-wide daemon like Bonjour or
>> +	  Avahi. Its other goal is to be extremely small, embeddable, and have
>> +	  no external dependencies.
>> +endchoice
> There is no tinysvcmdns packaged in Buildroot. Does shairport-sync
> bundles its own version? Otherwise, I've seen there is a tinysvcmdns
> package on bitbucket: https://bitbucket.org/geekman/tinysvcmdns
> Maybe it would be interesting to package it in Buildroot?
>
> If so, I would just remove the choice altogether, and just use
> tinysvcmdns if avahi is not enabled.

Shairport bundles its own version of tinysvcmdns which is based on the 
one you've found on bitbucket. I will do the following: if avahi is not 
selected as a package, shairport-sync builds with tinysvcmdns support.

>
>> +config BR2_PACKAGE_SHAIRPORT_SYNC_LIBSOXR
>> +	bool "libsoxr support"
> There, you need to select BR2_PACKAGE_LIBSOXR.

Oops!

>
> Obviously, adapt the .mk to the above comments.
>

Many thanks for the review!

J?rg

      reply	other threads:[~2014-10-24 22:22 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-20 13:21 [Buildroot] [PATCH 1/1] shairplay-sync: new package Jörg Krause
2014-10-20 17:31 ` Yann E. MORIN
2014-10-24 22:22   ` Jörg Krause [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=544AD11C.5050704@posteo.de \
    --to=jkrause@posteo.de \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox