mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Andreas Pretzsch <apr@cn-eng.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] sox: new package for SoX 14.4.2
Date: Mon, 11 May 2015 19:56:29 +0200	[thread overview]
Message-ID: <1431366989.14089.35.camel@ws-apr.office.loc> (raw)
In-Reply-To: <20150427094303.GG28533@pengutronix.de>

On Mo, 2015-04-27 at 11:43 +0200, Michael Olbrich wrote:
> On Sat, Apr 18, 2015 at 02:40:51AM +0200, Andreas Pretzsch wrote:
> > SoX is the Swiss Army Knife of sound processing utilities.
> > It can convert audio files to other popular audio file types
> > and also apply sound effects and filters during the conversion.
> > See http://sox.sourceforge.net/ for more information.
> > 
> > In addition to libsox, optionally the command-line tool "sox"
> > and its shortcuts "soxi", "play", "rec" can be installed.
> > 
> > Signed-off-by: Andreas Pretzsch <apr@cn-eng.de>
> > ---
> > The "--disable-openmp" is required, as sox configure detects
> > OpenMP support.............yes, -fopenmp
> > but won't run on targets without libgomp (GCC OpenMP) or similar.
> > As I don't care about this here (probably like most users), just
> > disable it, like some other packages in ptxdist do it.
> > 
> > Regarding other configure options (like mp3 support and whatnot),
> > rely on configure auto-detection, instead of adding with/without
> > options by the dozen. Whoever needs this is welcome to step in.
> > 
> >  rules/sox.in   | 46 +++++++++++++++++++++++++++++++++++++++++++
> >  rules/sox.make | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >  2 files changed, 108 insertions(+)
> >  create mode 100644 rules/sox.in
> >  create mode 100644 rules/sox.make
> > 
> > diff --git a/rules/sox.in b/rules/sox.in
> > new file mode 100644
> > index 0000000..0622f3e
> > --- /dev/null
> > +++ b/rules/sox.in
> > @@ -0,0 +1,46 @@
> > +## SECTION=multimedia_sound
> > +
> > +menuconfig SOX
> > +	tristate
> > +	prompt "sox                           "
> > +	help
> > +	  SoX is the Swiss Army Knife of sound processing utilities.
> > +	  It can convert audio files to other popular audio file types
> > +	  and also apply sound effects and filters during the conversion.
> > +	  See http://sox.sourceforge.net/ for more information.
> > +
> > +if SOX
> > +
> > +config SOX_SOX
> > +	bool
> > +	default y
> > +	prompt "Install sox command-line tool"
> > +	help
> > +	  Install command-line tool providing all libSoX functionality.
> > +	  Note: libsox is installed regardless of this option.
> > +
> > +config SOX_SOXI
> > +	bool
> > +	depends on SOX_SOX
> > +	prompt "Install symlink soxi => sox"
> > +	help
> > +	  Add "soxi" command to display sound file metadata.
> > +	  Same effect can be achieved with "sox --info".
> 
> I think we can just install this with sox

Ok. Fixed in v2.


> > +
> > +config SOX_PLAY
> > +	bool
> > +	depends on SOX_SOX
> > +	prompt "Install symlink play => sox"
> > +	help
> > +	  Add "play" command to use sox for basic playing.
> > +	  Same effect can be achieved with "sox <file> -d".
> > +
> > +config SOX_REC
> > +	bool
> > +	depends on SOX_SOX
> > +	prompt "Install symlink rec => sox"
> > +	help
> > +	  Add "rec" command to use sox for basic recording.
> > +	  Same effect can be achieved with "sox -d <file>".
> 
> Same for these two, or maybe one option for both.

One option for both. I like to see this as an optional thing, esp. given
the naming. "play" and "rec" are to "global" for my taste...


> > +
> > +endif
> > diff --git a/rules/sox.make b/rules/sox.make
> > new file mode 100644
> > index 0000000..bd03bdc
> > --- /dev/null
> > +++ b/rules/sox.make
> > @@ -0,0 +1,62 @@
> > +# -*-makefile-*-
> > +#
> > +# Copyright (C) 2015 by Andreas Pretzsch <apr@cn-eng.de>
> > +#
> > +# See CREDITS for details about who has contributed to this project.
> > +#
> > +# For further information about the PTXdist project and license conditions
> > +# see the README file.
> > +#
> > +
> > +PACKAGES-$(PTXCONF_SOX) += sox
> > +
> > +SOX_VERSION	:= 14.4.2
> > +SOX_MD5		:= ba804bb1ce5c71dd484a102a5b27d0dd
> > +SOX		:= sox-$(SOX_VERSION)
> > +SOX_SUFFIX	:= tar.bz2
> > +SOX_URL		:= $(call ptx/mirror, SF, sox/$(SOX).$(SOX_SUFFIX))
> > +SOX_SOURCE	:= $(SRCDIR)/$(SOX).$(SOX_SUFFIX)
> > +SOX_DIR		:= $(BUILDDIR)/$(SOX)
> > +SOX_LICENSE	:= GPLv2+ (tools), LGPLv2.1+ (libs)
> > +
> > +# ----------------------------------------------------------------------------
> > +# Prepare
> > +# ----------------------------------------------------------------------------
> > +
> > +SOX_CONF_TOOL	:= autoconf
> > +SOX_CONF_OPT	:= \
> > +	$(CROSS_AUTOCONF_USR) \
> > +	--disable-openmp
> 
> You're missing a lot of options here and probably some depencencies in the
> .in file as well. Use the global largefile option, --disable-dl-*,
> --ensable-symlinks, and either disable, enable (with correct dependency) or
> add an option (use ptx/wwo for configure) for each exernal dependency.

Regarding largefile, correct, missed that, sorry. Fixed in v2.

Regarding enable-symlinks and disable-dl-*, these are default in
configure, so passing them is redundant IMHO. And will miss future new
options in this field.
But as they won't harm (and are sox local), I add these by your request.
Also added a comment that these are default, in case somebody wonders
why they are in there.

About the external dependencies, strictly speaking, there are none.
But there are options to stop sox trying to use libraries present:
  --without-magic         Don't try to use magic
  --without-png           Don't try to use png
  --without-ladspa        Don't try to use LADSPA
  --with-ladspa-path      Default search path for LADSPA plugins
  --without-mad           Don't try to use MAD (MP3 Audio Decoder)
  --without-id3tag        Don't try to use id3tag
  --without-lame          Don't try to use LAME (LAME Ain't an MP3 Encoder)
  --without-twolame       Don't try to use Twolame (MP2 Audio Encoder)

Anyway, I added the wwo support by your request, selecting the
appropriate libs like other packages do it.
For LADSPA (where there is no package in PTXdist), "--without-ladspa" is
passed, as we forcefully override the autodetection for all these libs.
Of course, there is a suitable comment.

Last, sox configure does some autodetection for Opus, Ogg Vorbis, etc.
but provides no configure option here, beside some CFLAGS passing.
So for this, there is no support in the PTXdist config. And at least
from my side, there won't be any, until I need it for a project.


Best regards,
  Andreas

-- 

carpe noctem engineering
Ingenieurbuero fuer Hard- & Software-Entwicklung Andreas Pretzsch
Dipl.-Ing. (FH) Andreas Pretzsch          Tel. +49-(0)731-5521572
Hahnengasse 3                             Fax: +49-(0)731-5521571
89073 Ulm, Germany                        email: apr@cn-eng.de


-- 
ptxdist mailing list
ptxdist@pengutronix.de

  reply	other threads:[~2015-05-11 17:56 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-18  0:40 Andreas Pretzsch
2015-04-27  9:43 ` Michael Olbrich
2015-05-11 17:56   ` Andreas Pretzsch [this message]
2015-05-11 17:56 ` [ptxdist] [PATCH v2] " Andreas Pretzsch

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=1431366989.14089.35.camel@ws-apr.office.loc \
    --to=apr@cn-eng.de \
    --cc=ptxdist@pengutronix.de \
    /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