Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 35/49 v2] package/libpjsip: add option to enable GSM codec
Date: Mon, 25 Sep 2017 18:19:55 +0200	[thread overview]
Message-ID: <20170925161955.GA2985@scaer> (raw)
In-Reply-To: <cec794ed-8219-4289-7d28-22649734f7bc@mind.be>

Arnout, All,

On 2017-09-23 19:05 +0200, Arnout Vandecappelle spake thusly:
> On 09-09-17 23:39, Yann E. MORIN wrote:
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> > ---
> >  package/libpjsip/Config.in   | 12 ++++++++++++
> >  package/libpjsip/libpjsip.mk | 14 +++++++++++++-
> >  2 files changed, 25 insertions(+), 1 deletion(-)
> > 
> > diff --git a/package/libpjsip/Config.in b/package/libpjsip/Config.in
> > index 727d2ec3d0..ce15a20567 100644
> > --- a/package/libpjsip/Config.in
> > +++ b/package/libpjsip/Config.in
> > @@ -10,5 +10,17 @@ config BR2_PACKAGE_LIBPJSIP
> >  
> >  	  http://www.pjsip.org
> >  
> > +if BR2_PACKAGE_LIBPJSIP
> > +
> > +config BR2_PACKAGE_LIBPJSIP_CODEC_GSM
> > +    bool "GSM codec"
> > +    depends on !BR2_STATIC_LIBS # libgsm
> > +    select BR2_PACKAGE_LIBGSM
> 
>  Is there a good reason to make this an explicit suboption rather than an
> automatic one like we usually do?

The issue I see is that the handling of codecs is not orthogonal
(accounting for your reply to the G711 codec):

  - codecs without external dependency will always be built, 

  - codecs with external dependencies need those dependencies to be
    manually selected.

By adding a config for each codec, the behaviour is then the same for
all codecs, so the user experiences a _consistent_ behaviour.

>  I would be more inclined to add something like this to the pjsip help text:
> 
> pjsip will include the following codecs if the corresponding package is enabled
> in Buildroot: GSM, Speex, iLBC.

Well, that is what I originally thought, yes, but as explained above, I
still believe that usrr experience should be more consistent.

Regards,
Yann E. MORIN.

>  Regards,
>  Arnout
> 
> > +
> > +comment "GSM codec needs a toolchain w/ shared libraries"
> > +    depends on BR2_STATIC_LIBS
> > +
> > +endif # BR2_PACKAGE_LIBPJSIP
> > +
> >  comment "libpjsip needs a toolchain w/ C++, threads"
> >  	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
> > diff --git a/package/libpjsip/libpjsip.mk b/package/libpjsip/libpjsip.mk
> > index 4e2da7d32d..9b25dad2f8 100644
> > --- a/package/libpjsip/libpjsip.mk
> > +++ b/package/libpjsip/libpjsip.mk
> > @@ -26,7 +26,6 @@ LIBPJSIP_CONF_ENV = \
> >  
> >  LIBPJSIP_CONF_OPTS = \
> >  	--disable-sound \
> > -	--disable-gsm-codec \
> >  	--disable-speex-codec \
> >  	--disable-speex-aec \
> >  	--disable-resample \
> > @@ -70,4 +69,17 @@ ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
> >  LIBPJSIP_DEPENDENCIES += util-linux
> >  endif
> >  
> > +# Codecs can only be disabled. If explictly enabled, the check is
> > +# omitted (but successful), and there is no configure trace "Checking
> > +# if [codec] codec is disabled...no". So we only explicitly disable it
> > +# and we do not explictly enable it, so we get the configure log in
> > +# both cases.
> > +
> > +ifeq ($(BR2_PACKAGE_LIBPJSIP_CODEC_GSM),y)
> > +LIBPJSIP_DEPENDENCIES += libgsm
> > +LIBPJSIP_CONF_OPTS += --with-external-gsm
> > +else
> > +LIBPJSIP_CONF_OPTS += --disable-gsm-codec
> > +endif
> > +
> >  $(eval $(autotools-package))
> > 
> 
> -- 
> Arnout Vandecappelle                          arnout at mind be
> Senior Embedded Software Architect            +32-16-286500
> Essensium/Mind                                http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2017-09-25 16:19 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-09 21:39 [Buildroot] [PATCH 00/49 v2] package/asterisk: add a complete asterisk stack Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 01/49 v2] package/asterisk: new package Yann E. MORIN
2017-09-09 22:12   ` Marcus Hoffmann
2017-09-10  9:02     ` Yann E. MORIN
2017-09-10  9:17       ` Yann E. MORIN
2017-09-23 17:13   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 02/49 v2] package/asterisk: enable backtrace when available Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 03/49 v2] package/asterisk: add optional libgsm dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 04/49 v2] package/asterisk: add optional zlib dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 05/49 v2] package/asterisk: add optional support for SSL Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 06/49 v2] package/asterisk: add optional alsa-lib dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 07/49 v2] package/asterisk: add optional curl dependency Yann E. MORIN
2017-09-23 17:14   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 08/49 v2] package/asterisk: add optional neon dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 09/49 v2] package/asterisk: add optional libogg dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 10/49 v2] package/asterisk: add optional bluez_utils dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 11/49 v2] package/asterisk: add optional opus dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 12/49 v2] package/asterisk: add optional speex dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 13/49 v2] package/asterisk: add optional libvorbis dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 14/49 v2] package/asterisk: add optional libilbc dependency Yann E. MORIN
2017-09-23 17:14   ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 15/49 v2] package/asterisk: add optional portaudio dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 16/49 v2] package/asterisk: add optional libical dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 17/49 v2] package/asterisk: add optional openldap dependency Yann E. MORIN
2017-09-14 14:36   ` Bernd Kuhls
2017-09-16 16:46     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 18/49 v2] package/asterisk: add optional freeradius-client dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 19/49 v2] package/asterisk: add optional libsrtp dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 20/49 v2] package/dahdi-linux: new package Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 21/49 v2] package/dahdi-tools: " Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 22/49 v2] package/dahdi-tools: add USB support Yann E. MORIN
2017-09-23 16:28   ` Arnout Vandecappelle
2017-09-24 14:57     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 23/49 v2] package/asterisk: add support for dahdi Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 24/49 v2] package/libss7: new package Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 25/49 v2] package/asterisk: add support for SS7 Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 26/49 v2] package/libpri: new package Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 27/49 v2] package/asterisk: add support for PRI signalling Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 28/49 v2] package/spandsp: new package Yann E. MORIN
2017-09-23 16:40   ` Arnout Vandecappelle
2017-09-24 18:39     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 29/49 v2] package/asterisk: add optional spandsp support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 30/49 v2] package/libqb: new package Yann E. MORIN
2017-09-23 16:51   ` Arnout Vandecappelle
2017-09-24 19:45     ` Yann E. MORIN
2017-09-24 19:52       ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 31/49 v2] package/corosync: " Yann E. MORIN
2017-09-23 16:58   ` Arnout Vandecappelle
2017-09-24 20:52     ` Yann E. MORIN
2017-09-25  7:22       ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 32/49 v2] package/corosync: add optional dbus support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 33/49 v2] package/corosync: add optional snmp support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 34/49 v2] package/asterisk: add optional corosync dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 35/49 v2] package/libpjsip: add option to enable GSM codec Yann E. MORIN
2017-09-23 17:05   ` Arnout Vandecappelle
2017-09-25 16:19     ` Yann E. MORIN [this message]
2017-09-25 20:41       ` Arnout Vandecappelle
2017-09-09 21:39 ` [Buildroot] [PATCH 36/49 v2] package/asterisk: add optional netsnmp dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 37/49 v2] package/libpjsip: add option to enable SPEEX codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 38/49 v2] package/libpjsip: add option to enable G.711 codec Yann E. MORIN
2017-09-23 17:06   ` Arnout Vandecappelle
2017-09-25 16:20     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 39/49 v2] package/libpjsip: add option to enable G.722 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 40/49 v2] package/libpjsip: add option to enable G.7221 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 41/49 v2] package/libpjsip: add option to enable iLBC codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 42/49 v2] package/libpjsip: add option to enable L16 codec Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 43/49 v2] package/libpjsip: add optional portaudio support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 44/49 v2] package/asterisk: add optional pjsip support Yann E. MORIN
2017-09-23 17:07   ` Arnout Vandecappelle
2017-09-25 16:25     ` Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 45/49 v2] package/asterisk: add optional libcap dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 46/49 v2] package/asterisk: add optional iconv support Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 47/49 v2] package/asterisk: enable inotify when possible Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 48/49 v2] package/asterisk: add optional unixodbc dependency Yann E. MORIN
2017-09-09 21:39 ` [Buildroot] [PATCH 49/49 v2] package/asterisk: add optional jack2 dependency Yann E. MORIN
2017-09-23 17:18 ` [Buildroot] [PATCH 00/49 v2] package/asterisk: add a complete asterisk stack Arnout Vandecappelle

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=20170925161955.GA2985@scaer \
    --to=yann.morin.1998@free.fr \
    --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