update libsndfile to 1.0.28

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

update libsndfile to 1.0.28

Jan Stary
This updates libsndfile to 1.0.28, the latest release.
Sorry for being so late; thanks to naddy@ for the nudge.

* Add explicit ./configure --options (in --help order)
* Without CPPFLAGS="-I${PREFIX}/include", FLAC includes are not found
* Obsolete doc/dither.html was removed

On some platforms (macppc), the compiler does not understand -Wvla,
so we need a patch for these. Should the patch be made platform-specific?
I would very much like to avoid that, and just drop -Wvla from configure
everywhere, for simplicity.

Tested on current amd64, macppc and armv7; please test everywhere.

There have been a number of fixes since 1.0.28
- I intend to add those in a separate commit.

(Currently, it's 1.0.29pre1)

        Jan


Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/libsndfile/Makefile,v
retrieving revision 1.31
diff -u -p -r1.31 Makefile
--- Makefile 7 Nov 2016 21:52:53 -0000 1.31
+++ Makefile 11 Mar 2018 11:47:12 -0000
@@ -2,11 +2,11 @@
 
 COMMENT= library to handle various audio file formats
 
-DISTNAME= libsndfile-1.0.27
+DISTNAME= libsndfile-1.0.28
 CATEGORIES= audio
 HOMEPAGE= http://www.mega-nerd.com/libsndfile/
 MAINTAINER= Jan Stary <[hidden email]>
-SHARED_LIBS += sndfile              5.0      # .1.27
+SHARED_LIBS += sndfile              6.0      # .1.28
 
 # LGPLv2.1
 PERMIT_PACKAGE_CDROM= Yes
@@ -16,9 +16,17 @@ MASTER_SITES= ${HOMEPAGE}files/
 WANTLIB= c m sndio FLAC ogg vorbis vorbisenc
 
 CONFIGURE_STYLE=gnu
-CONFIGURE_ARGS= --disable-alsa \
+CONFIGURE_ARGS= --enable-option-checking \
+ --disable-silent-rules \
+ --disable-experimental \
+ --disable-werror \
+ --disable-cpu-clip \
+ --disable-sqlite \
+ --disable-alsa \
+ --enable-external-libs \
  --disable-octave \
- --disable-sqlite
+ --enable-largefile \
+CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
 MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
 
 LIB_DEPENDS= audio/flac \
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/libsndfile/distinfo,v
retrieving revision 1.16
diff -u -p -r1.16 distinfo
--- distinfo 7 Nov 2016 21:52:53 -0000 1.16
+++ distinfo 11 Mar 2018 11:47:12 -0000
@@ -1,2 +1,2 @@
-SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
-SIZE (libsndfile-1.0.27.tar.gz) = 1192337
+SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
+SIZE (libsndfile-1.0.28.tar.gz) = 1202833
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
retrieving revision 1.12
diff -u -p -r1.12 PLIST
--- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
+++ pkg/PLIST 11 Mar 2018 11:47:12 -0000
@@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
 share/doc/libsndfile/api.html
 share/doc/libsndfile/bugs.html
 share/doc/libsndfile/command.html
-share/doc/libsndfile/dither.html
 share/doc/libsndfile/embedded_files.html
 share/doc/libsndfile/index.html
 share/doc/libsndfile/libsndfile.css

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
On Mar 11 13:57:13, [hidden email] wrote:
> Tested on current amd64, macppc and armv7; please test everywhere.

sox works fine happy with the new version

        Jan

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jeremie Courreges-Anglas-2
In reply to this post by Jan Stary
On Sun, Mar 11 2018, Jan Stary <[hidden email]> wrote:
> This updates libsndfile to 1.0.28, the latest release.
> Sorry for being so late; thanks to naddy@ for the nudge.
>
> * Add explicit ./configure --options (in --help order)

Not ok with me, please see below.

> * Without CPPFLAGS="-I${PREFIX}/include", FLAC includes are not found
> * Obsolete doc/dither.html was removed
>
> On some platforms (macppc), the compiler does not understand -Wvla,
> so we need a patch for these.

gcc-4.2.1 from base doesn't understand -Wvla. This would affect all
platforms using gcc and not clang, not just powerpc. A solution for
upstream is to detect whether the compiler supports the flag.

> Should the patch be made platform-specific?
> I would very much like to avoid that, and just drop -Wvla from configure
> everywhere, for simplicity.

Please just drop it.

> Tested on current amd64, macppc and armv7; please test everywhere.

make test passes on sparc64 when I remove -Wvla.

Do you really want tests on alpha or landisk before this is
committed? ;)  I don't think libsndfile is arch-dependent enough to
warrant this, but I may be wrong...  The only arch-specific bits I see
are for x86-32 and x86-64.  They cause a lot of warnings with clang,
btw:

In file included from ogg.c:34:
./sfendian.h:28:24: warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]
./sfconfig.h:116:82: note: expanded from macro 'CPU_IS_X86'
#define CPU_IS_X86              (defined __i486__ || defined __i586__ || defined __i686__ || defined __x86_64__)


> There have been a number of fixes since 1.0.28
> - I intend to add those in a separate commit.
>
> (Currently, it's 1.0.29pre1)
>
> Jan
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/Makefile,v
> retrieving revision 1.31
> diff -u -p -r1.31 Makefile
> --- Makefile 7 Nov 2016 21:52:53 -0000 1.31
> +++ Makefile 11 Mar 2018 11:47:12 -0000
> @@ -2,11 +2,11 @@
>  
>  COMMENT= library to handle various audio file formats
>  
> -DISTNAME= libsndfile-1.0.27
> +DISTNAME= libsndfile-1.0.28
>  CATEGORIES= audio
>  HOMEPAGE= http://www.mega-nerd.com/libsndfile/
>  MAINTAINER= Jan Stary <[hidden email]>
> -SHARED_LIBS += sndfile              5.0      # .1.27
> +SHARED_LIBS += sndfile              6.0      # .1.28

The scary number of removed functions seems to be due to the use
of -fvisibility=hidden.  Upstream could also use -Wl,--version-script,
but they only seem to enable it on gnu/linux systems.

The installed headers are almost unchanged, so I wouldn't expect fallout
from missing functions, but better be safe than sorry...

>  
>  # LGPLv2.1
>  PERMIT_PACKAGE_CDROM= Yes
> @@ -16,9 +16,17 @@ MASTER_SITES= ${HOMEPAGE}files/
>  WANTLIB= c m sndio FLAC ogg vorbis vorbisenc
>  
>  CONFIGURE_STYLE=gnu
> -CONFIGURE_ARGS= --disable-alsa \
> +CONFIGURE_ARGS= --enable-option-checking \
> + --disable-silent-rules \
> + --disable-experimental \
> + --disable-werror \
> + --disable-cpu-clip \
> + --disable-sqlite \
> + --disable-alsa \
> + --enable-external-libs \
>   --disable-octave \
> - --disable-sqlite
> + --enable-largefile \

At least --enable-option-checking --disable-silent-rules
and --enable-largefile are generic autoconf options, we should *not*
have to specify them.  --disable-alsa doesn't affect us, we have no alsa
implementation in base or ports.  I'm not sure there's a point to
overspecify options that upstream will probably not toggle, such
as --disable-experimental, --disable-cpu-clip, --enable-external-libs.

--disable-werror I could understand, -Werror is a common source of
gratuitous breakage in bulks.

> +CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
>  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
>  
>  LIB_DEPENDS= audio/flac \
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/distinfo,v
> retrieving revision 1.16
> diff -u -p -r1.16 distinfo
> --- distinfo 7 Nov 2016 21:52:53 -0000 1.16
> +++ distinfo 11 Mar 2018 11:47:12 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
> -SIZE (libsndfile-1.0.27.tar.gz) = 1192337
> +SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
> +SIZE (libsndfile-1.0.28.tar.gz) = 1202833
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
> retrieving revision 1.12
> diff -u -p -r1.12 PLIST
> --- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
> +++ pkg/PLIST 11 Mar 2018 11:47:12 -0000
> @@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
>  share/doc/libsndfile/api.html
>  share/doc/libsndfile/bugs.html
>  share/doc/libsndfile/command.html
> -share/doc/libsndfile/dither.html
>  share/doc/libsndfile/embedded_files.html
>  share/doc/libsndfile/index.html
>  share/doc/libsndfile/libsndfile.css
>

--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
On Mar 13 13:08:09, [hidden email] wrote:

> On Sun, Mar 11 2018, Jan Stary <[hidden email]> wrote:
> > This updates libsndfile to 1.0.28, the latest release.
> > Sorry for being so late; thanks to naddy@ for the nudge.
> >
> > * Add explicit ./configure --options (in --help order)
>
> Not ok with me, please see below.
>
> > * Without CPPFLAGS="-I${PREFIX}/include", FLAC includes are not found
> > * Obsolete doc/dither.html was removed
> >
> > On some platforms (macppc), the compiler does not understand -Wvla,
> > so we need a patch for these.
>
> gcc-4.2.1 from base doesn't understand -Wvla. This would affect all
> platforms using gcc and not clang, not just powerpc.
Yes; I have included a patch.

> A solution for
> upstream is to detect whether the compiler supports the flag.

They have in the meantime (after 1.0.28).

> > Should the patch be made platform-specific?
> > I would very much like to avoid that, and just drop -Wvla from configure
> > everywhere, for simplicity.
>
> Please just drop it.

I did.

> > Tested on current amd64, macppc and armv7; please test everywhere.
>
> make test passes on sparc64 when I remove -Wvla.

Now I'm not sure: the original post includes the diff
to Makefile, distinfo, PLSIST, plus the Wvla patch as an attachment.

If not, I appologize and send again here.

> Do you really want tests on alpha or landisk before this is
> committed? ;)

Yes.

> I don't think libsndfile is arch-dependent enough to
> warrant this, but I may be wrong...  The only arch-specific bits I see
> are for x86-32 and x86-64.  They cause a lot of warnings with clang,

Please test everywhere. I don't have any alpha or landisk hw.

> btw:
>
> In file included from ogg.c:34:
> ./sfendian.h:28:24: warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined]
> ./sfconfig.h:116:82: note: expanded from macro 'CPU_IS_X86'
> #define CPU_IS_X86              (defined __i486__ || defined __i586__ || defined __i686__ || defined __x86_64__)

Yes. I need to talk to upstream about this.
However, the resulting libsndfile seems to work fine.

Jan


>
> > There have been a number of fixes since 1.0.28
> > - I intend to add those in a separate commit.
> >
> > (Currently, it's 1.0.29pre1)
> >
> > Jan
> >
> >
> > Index: Makefile
> > ===================================================================
> > RCS file: /cvs/ports/audio/libsndfile/Makefile,v
> > retrieving revision 1.31
> > diff -u -p -r1.31 Makefile
> > --- Makefile 7 Nov 2016 21:52:53 -0000 1.31
> > +++ Makefile 11 Mar 2018 11:47:12 -0000
> > @@ -2,11 +2,11 @@
> >  
> >  COMMENT= library to handle various audio file formats
> >  
> > -DISTNAME= libsndfile-1.0.27
> > +DISTNAME= libsndfile-1.0.28
> >  CATEGORIES= audio
> >  HOMEPAGE= http://www.mega-nerd.com/libsndfile/
> >  MAINTAINER= Jan Stary <[hidden email]>
> > -SHARED_LIBS += sndfile              5.0      # .1.27
> > +SHARED_LIBS += sndfile              6.0      # .1.28
>
> The scary number of removed functions seems to be due to the use
> of -fvisibility=hidden.  Upstream could also use -Wl,--version-script,
> but they only seem to enable it on gnu/linux systems.
>
> The installed headers are almost unchanged, so I wouldn't expect fallout
> from missing functions, but better be safe than sorry...
>
> >  
> >  # LGPLv2.1
> >  PERMIT_PACKAGE_CDROM= Yes
> > @@ -16,9 +16,17 @@ MASTER_SITES= ${HOMEPAGE}files/
> >  WANTLIB= c m sndio FLAC ogg vorbis vorbisenc
> >  
> >  CONFIGURE_STYLE=gnu
> > -CONFIGURE_ARGS= --disable-alsa \
> > +CONFIGURE_ARGS= --enable-option-checking \
> > + --disable-silent-rules \
> > + --disable-experimental \
> > + --disable-werror \
> > + --disable-cpu-clip \
> > + --disable-sqlite \
> > + --disable-alsa \
> > + --enable-external-libs \
> >   --disable-octave \
> > - --disable-sqlite
> > + --enable-largefile \
>
> At least --enable-option-checking --disable-silent-rules
> and --enable-largefile are generic autoconf options, we should *not*
> have to specify them.  --disable-alsa doesn't affect us, we have no alsa
> implementation in base or ports.  I'm not sure there's a point to
> overspecify options that upstream will probably not toggle, such
> as --disable-experimental, --disable-cpu-clip, --enable-external-libs.
>
> --disable-werror I could understand, -Werror is a common source of
> gratuitous breakage in bulks.
>
> > +CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
> >  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
> >  
> >  LIB_DEPENDS= audio/flac \
> > Index: distinfo
> > ===================================================================
> > RCS file: /cvs/ports/audio/libsndfile/distinfo,v
> > retrieving revision 1.16
> > diff -u -p -r1.16 distinfo
> > --- distinfo 7 Nov 2016 21:52:53 -0000 1.16
> > +++ distinfo 11 Mar 2018 11:47:12 -0000
> > @@ -1,2 +1,2 @@
> > -SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
> > -SIZE (libsndfile-1.0.27.tar.gz) = 1192337
> > +SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
> > +SIZE (libsndfile-1.0.28.tar.gz) = 1202833
> > Index: pkg/PLIST
> > ===================================================================
> > RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
> > retrieving revision 1.12
> > diff -u -p -r1.12 PLIST
> > --- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
> > +++ pkg/PLIST 11 Mar 2018 11:47:12 -0000
> > @@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
> >  share/doc/libsndfile/api.html
> >  share/doc/libsndfile/bugs.html
> >  share/doc/libsndfile/command.html
> > -share/doc/libsndfile/dither.html
> >  share/doc/libsndfile/embedded_files.html
> >  share/doc/libsndfile/index.html
> >  share/doc/libsndfile/libsndfile.css
> >
>
> --
> jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE
>

patch-configure (797 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Stuart Henderson
In reply to this post by Jan Stary
On 2018/03/11 20:53, Jan Stary wrote:
> On Mar 11 13:57:13, [hidden email] wrote:
> > Tested on current amd64, macppc and armv7; please test everywhere.
>
> sox works fine happy with the new version
>
> Jan
>

Lots of functions removed and the direct dependencies chain to a lot
more things in the ports tree.

$ sqlite3 /usr/local/share/sqlports "select fullpkgpath from depends where dependspath='audio/libsndfile'"
audio/aqualung
audio/audacious-plugins
audio/deadbeef
audio/fluidsynth
audio/herrie
audio/hydrogen
audio/jack
audio/libbs2b
audio/libsamplerate
audio/moc
audio/mscore
audio/mumble
audio/pulseaudio
audio/siren
audio/soundtracker
audio/sox
audio/speech-dispatcher
audio/twolame
audio/vamp-plugin-sdk
audio/xmms2
comms/fldigi
comms/minimodem
emulators/mednafen
emulators/xroar
games/alephone/alephone
games/easyrpg
math/octave
multimedia/gstreamer-0.10/plugins-bad,-main
multimedia/k3b-kde4
telephony/baresip/baresip,-main
x11/agar/agar
x11/gnustep/gui
x11/kde4/libkdegames

You can take this list and write it to a file and do "cd /usr/ports;
make SUBDIRLIST=/path/to/file package" and it will build them one after
another, no complicated setup. Even if you skip the ones with heavy
dependencies (kde etc) it'll still be helpful.

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Stuart Henderson
In reply to this post by Jan Stary
On 2018/03/13 16:16, Jan Stary wrote:
> > Do you really want tests on alpha or landisk before this is
> > committed? ;)
>
> Yes.

Ha. In that case you will have *plenty* of time to test all the dependent ports :-)

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
In reply to this post by Stuart Henderson
On Mar 13 21:58:50, [hidden email] wrote:

> On 2018/03/11 20:53, Jan Stary wrote:
> > On Mar 11 13:57:13, [hidden email] wrote:
> > > Tested on current amd64, macppc and armv7; please test everywhere.
> >
> > sox works fine happy with the new version
> >
> > Jan
> >
>
> Lots of functions removed and the direct dependencies chain to a lot
> more things in the ports tree.
>
> $ sqlite3 /usr/local/share/sqlports "select fullpkgpath from depends where dependspath='audio/libsndfile'"

Thanks for the list; I took a subset of it.
The followign build fine on current/amd64 and current/macppc:

audio/fluidsynth
audio/herrie
audio/jack
audio/libbs2b
audio/libsamplerate
audio/pulseaudio
audio/siren
audio/sox
audio/speech-dispatcher
audio/twolame
audio/vamp-plugin-sdk
comms/minimodem
emulators/mednafen

        Jan

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
In reply to this post by Jeremie Courreges-Anglas-2
On Mar 13 13:08:09, [hidden email] wrote:
> On Sun, Mar 11 2018, Jan Stary <[hidden email]> wrote:
> > This updates libsndfile to 1.0.28, the latest release.
> > Sorry for being so late; thanks to naddy@ for the nudge.
> >
> > * Add explicit ./configure --options (in --help order)
>
> Not ok with me, please see below.

Tweaked diff below; the -Wvla patch too, for completeness.

> > -CONFIGURE_ARGS= --disable-alsa \
> > +CONFIGURE_ARGS= --enable-option-checking \
> > + --disable-silent-rules \
> > + --disable-experimental \
> > + --disable-werror \
> > + --disable-cpu-clip \
> > + --disable-sqlite \
> > + --disable-alsa \
> > + --enable-external-libs \
> >   --disable-octave \
> > - --disable-sqlite
> > + --enable-largefile \
>
> At least --enable-option-checking --disable-silent-rules
> and --enable-largefile are generic autoconf options, we should *not*
> have to specify them.

Are they on by default (in autoconf, in OpenBSD ports)?
I dropped them from the diff.

> --disable-alsa doesn't affect us, we have no alsa
> implementation in base or ports.

The point of adding this is to explicitly say we don't want it.
I don't expect ALSA to appear in OpenBSD ports of course,
but what's the problem with having the explicit option?
(audio/sox does the same with all audio drivers.)

> I'm not sure there's a point to
> overspecify options that upstream will probably not toggle, such
> as --disable-experimental, --disable-cpu-clip, --enable-external-libs.

I don't think it's overspecification.
Do we want FLACC, OGG, etc? Yes we do.
Therefore, --enable-external-libs
and similarly for others.

> --disable-werror I could understand, -Werror is a common source of
> gratuitous breakage in bulks.

Yes.

Slightly tweaked diff follows.

        Jan


Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/libsndfile/Makefile,v
retrieving revision 1.31
diff -u -p -u -p -r1.31 Makefile
--- Makefile 7 Nov 2016 21:52:53 -0000 1.31
+++ Makefile 18 Mar 2018 11:43:43 -0000
@@ -2,11 +2,11 @@
 
 COMMENT= library to handle various audio file formats
 
-DISTNAME= libsndfile-1.0.27
+DISTNAME= libsndfile-1.0.28
 CATEGORIES= audio
 HOMEPAGE= http://www.mega-nerd.com/libsndfile/
 MAINTAINER= Jan Stary <[hidden email]>
-SHARED_LIBS += sndfile              5.0      # .1.27
+SHARED_LIBS += sndfile              6.0      # .1.28
 
 # LGPLv2.1
 PERMIT_PACKAGE_CDROM= Yes
@@ -16,9 +16,14 @@ MASTER_SITES= ${HOMEPAGE}files/
 WANTLIB= c m sndio FLAC ogg vorbis vorbisenc
 
 CONFIGURE_STYLE=gnu
-CONFIGURE_ARGS= --disable-alsa \
- --disable-octave \
- --disable-sqlite
+CONFIGURE_ARGS= --disable-experimental \
+ --disable-werror \
+ --disable-cpu-clip \
+ --disable-sqlite \
+ --enable-external-libs \
+ --disable-octave
+
+CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
 MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
 
 LIB_DEPENDS= audio/flac \
Index: patches/patch-configure
===================================================================
RCS file: patches/patch-configure
diff -N patches/patch-configure
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-configure 18 Mar 2018 11:43:43 -0000
@@ -0,0 +1,14 @@
+On some systems, the compiler cannot -Wvla
+
+Index: configure
+--- configure.orig
++++ configure
+@@ -20828,7 +20828,7 @@ rm -f core conftest.err conftest.$ac_objext \
+ common_flags="-Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self"
+
+ # -Winline -Wconversion "
+- CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return -Wvla"
++ CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return"
+ CXXFLAGS="$CXXFLAGS $common_flags -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo"
+
+ if test "x$enable_gcc_opt" = "xno" ; then

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jeremie Courreges-Anglas-2
On Sun, Mar 18 2018, Jan Stary <[hidden email]> wrote:

> On Mar 13 13:08:09, [hidden email] wrote:
>> On Sun, Mar 11 2018, Jan Stary <[hidden email]> wrote:
>> > This updates libsndfile to 1.0.28, the latest release.
>> > Sorry for being so late; thanks to naddy@ for the nudge.
>> >
>> > * Add explicit ./configure --options (in --help order)
>>
>> Not ok with me, please see below.
>
> Tweaked diff below; the -Wvla patch too, for completeness.
>
>> > -CONFIGURE_ARGS= --disable-alsa \
>> > +CONFIGURE_ARGS= --enable-option-checking \
>> > + --disable-silent-rules \
>> > + --disable-experimental \
>> > + --disable-werror \
>> > + --disable-cpu-clip \
>> > + --disable-sqlite \
>> > + --disable-alsa \
>> > + --enable-external-libs \
>> >   --disable-octave \
>> > - --disable-sqlite
>> > + --enable-largefile \
>>
>> At least --enable-option-checking --disable-silent-rules
>> and --enable-largefile are generic autoconf options, we should *not*
>> have to specify them.
>
> Are they on by default (in autoconf, in OpenBSD ports)?

The ports tree explicitely sets --disable-silent-rules, others are
using autoconf default afaik.  --enable-largefile isn't useful on
OpenBSD where off_t is always 64 bits.

> I dropped them from the diff.
>
>> --disable-alsa doesn't affect us, we have no alsa
>> implementation in base or ports.
>
> The point of adding this is to explicitly say we don't want it.
> I don't expect ALSA to appear in OpenBSD ports of course,
> but what's the problem with having the explicit option?

If we explicitely specified all possibly supported but pointless
configure knobs in ports, we'd have huge and unreadable Makefiles.

> (audio/sox does the same with all audio drivers.)

A bunch of lines in sox/Makefile don't seem very useful either...

>> I'm not sure there's a point to
>> overspecify options that upstream will probably not toggle, such
>> as --disable-experimental, --disable-cpu-clip, --enable-external-libs.
>
> I don't think it's overspecification.
> Do we want FLACC, OGG, etc? Yes we do.
> Therefore, --enable-external-libs

What's the probability of upstream disabling flac/ogg/etc support
through libflac/libvorbis by default?  Those are cheap deps.

But don't mistake --enable-external-libs for what it isn't.
Only --disable-external-libs is useful to *disable* the use of said
libraries.  --enable-external-libs won't trigger a failure if one of
those libs is missing/misdetected, won't increase determinism, and thus
looks like overspecification.

> and similarly for others.

I'd rather let upstream decide whether experimental or cpu-clip code
should be disabled by default, but no strong opinion here.

>> --disable-werror I could understand, -Werror is a common source of
>> gratuitous breakage in bulks.
>
> Yes.
>
> Slightly tweaked diff follows.
>
> Jan
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/Makefile,v
> retrieving revision 1.31
> diff -u -p -u -p -r1.31 Makefile
> --- Makefile 7 Nov 2016 21:52:53 -0000 1.31
> +++ Makefile 18 Mar 2018 11:43:43 -0000
> @@ -2,11 +2,11 @@
>  
>  COMMENT= library to handle various audio file formats
>  
> -DISTNAME= libsndfile-1.0.27
> +DISTNAME= libsndfile-1.0.28
>  CATEGORIES= audio
>  HOMEPAGE= http://www.mega-nerd.com/libsndfile/
>  MAINTAINER= Jan Stary <[hidden email]>
> -SHARED_LIBS += sndfile              5.0      # .1.27
> +SHARED_LIBS += sndfile              6.0      # .1.28
>  
>  # LGPLv2.1
>  PERMIT_PACKAGE_CDROM= Yes
> @@ -16,9 +16,14 @@ MASTER_SITES= ${HOMEPAGE}files/
>  WANTLIB= c m sndio FLAC ogg vorbis vorbisenc
>  
>  CONFIGURE_STYLE=gnu
> -CONFIGURE_ARGS= --disable-alsa \
> - --disable-octave \
> - --disable-sqlite
> +CONFIGURE_ARGS= --disable-experimental \
> + --disable-werror \
> + --disable-cpu-clip \
> + --disable-sqlite \
> + --enable-external-libs \
> + --disable-octave
> +
> +CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
>  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
>  
>  LIB_DEPENDS= audio/flac \
> Index: patches/patch-configure
> ===================================================================
> RCS file: patches/patch-configure
> diff -N patches/patch-configure
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configure 18 Mar 2018 11:43:43 -0000
> @@ -0,0 +1,14 @@
> +On some systems, the compiler cannot -Wvla
> +
> +Index: configure
> +--- configure.orig
> ++++ configure
> +@@ -20828,7 +20828,7 @@ rm -f core conftest.err conftest.$ac_objext \
> + common_flags="-Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self"
> +
> + # -Winline -Wconversion "
> +- CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return -Wvla"
> ++ CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return"
> + CXXFLAGS="$CXXFLAGS $common_flags -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo"
> +
> + if test "x$enable_gcc_opt" = "xno" ; then
>

--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
OK, here is another stab at the libsndfile update.

* bump lib from 5.0 to 6.0
* give CPPFLAGS that ./configure needs to know
* patch away -Wvla which does not necesarilly exist
* drop the removed dither.html doc file

Tested on amd64, macppc and armv7 with the following
(via "make SUBDIRLIST=... package", thank you stu@).

audio/fluidsynth
audio/herrie
audio/jack
audio/libbs2b
audio/libsamplerate
audio/pulseaudio
audio/siren
audio/sox
audio/speech-dispatcher
audio/twolame
audio/vamp-plugin-sdk
comms/minimodem
emulators/mednafen

On amd64, I also built x11/mplayer with this.

> On Mar 13 13:08:09, [hidden email] wrote:
> > > * Add explicit ./configure --options (in --help order)
> > Not ok with me, please see below.

Removed.

        Jan


Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/libsndfile/Makefile,v
retrieving revision 1.31
diff -u -p -u -p -r1.31 Makefile
--- Makefile 7 Nov 2016 21:52:53 -0000 1.31
+++ Makefile 17 Apr 2018 07:43:48 -0000
@@ -2,11 +2,11 @@
 
 COMMENT= library to handle various audio file formats
 
-DISTNAME= libsndfile-1.0.27
+DISTNAME= libsndfile-1.0.28
 CATEGORIES= audio
 HOMEPAGE= http://www.mega-nerd.com/libsndfile/
 MAINTAINER= Jan Stary <[hidden email]>
-SHARED_LIBS += sndfile              5.0      # .1.27
+SHARED_LIBS += sndfile              6.0      # .1.28
 
 # LGPLv2.1
 PERMIT_PACKAGE_CDROM= Yes
@@ -19,6 +19,8 @@ CONFIGURE_STYLE=gnu
 CONFIGURE_ARGS= --disable-alsa \
  --disable-octave \
  --disable-sqlite
+
+CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
 MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
 
 LIB_DEPENDS= audio/flac \
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/libsndfile/distinfo,v
retrieving revision 1.16
diff -u -p -u -p -r1.16 distinfo
--- distinfo 7 Nov 2016 21:52:53 -0000 1.16
+++ distinfo 17 Apr 2018 07:43:48 -0000
@@ -1,2 +1,2 @@
-SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
-SIZE (libsndfile-1.0.27.tar.gz) = 1192337
+SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
+SIZE (libsndfile-1.0.28.tar.gz) = 1202833
Index: patches/patch-configure
===================================================================
RCS file: patches/patch-configure
diff -N patches/patch-configure
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-configure 17 Apr 2018 07:43:48 -0000
@@ -0,0 +1,14 @@
+Some compilers don't have -Wvla
+
+Index: configure
+--- configure.orig
++++ configure
+@@ -20828,7 +20828,7 @@ rm -f core conftest.err conftest.$ac_objext \
+ common_flags="-Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self"
+
+ # -Winline -Wconversion "
+- CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return -Wvla"
++ CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return"
+ CXXFLAGS="$CXXFLAGS $common_flags -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo"
+
+ if test "x$enable_gcc_opt" = "xno" ; then
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
retrieving revision 1.12
diff -u -p -u -p -r1.12 PLIST
--- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
+++ pkg/PLIST 17 Apr 2018 07:43:48 -0000
@@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
 share/doc/libsndfile/api.html
 share/doc/libsndfile/bugs.html
 share/doc/libsndfile/command.html
-share/doc/libsndfile/dither.html
 share/doc/libsndfile/embedded_files.html
 share/doc/libsndfile/index.html
 share/doc/libsndfile/libsndfile.css

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jan Stary
ping

On Apr 17 18:05:47, [hidden email] wrote:

> OK, here is another stab at the libsndfile update.
>
> * bump lib from 5.0 to 6.0
> * give CPPFLAGS that ./configure needs to know
> * patch away -Wvla which does not necesarilly exist
> * drop the removed dither.html doc file
>
> Tested on amd64, macppc and armv7 with the following
> (via "make SUBDIRLIST=... package", thank you stu@).
>
> audio/fluidsynth
> audio/herrie
> audio/jack
> audio/libbs2b
> audio/libsamplerate
> audio/pulseaudio
> audio/siren
> audio/sox
> audio/speech-dispatcher
> audio/twolame
> audio/vamp-plugin-sdk
> comms/minimodem
> emulators/mednafen
>
> On amd64, I also built x11/mplayer with this.
>
> > On Mar 13 13:08:09, [hidden email] wrote:
> > > > * Add explicit ./configure --options (in --help order)
> > > Not ok with me, please see below.
>
> Removed.
>
> Jan
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/Makefile,v
> retrieving revision 1.31
> diff -u -p -u -p -r1.31 Makefile
> --- Makefile 7 Nov 2016 21:52:53 -0000 1.31
> +++ Makefile 17 Apr 2018 07:43:48 -0000
> @@ -2,11 +2,11 @@
>  
>  COMMENT= library to handle various audio file formats
>  
> -DISTNAME= libsndfile-1.0.27
> +DISTNAME= libsndfile-1.0.28
>  CATEGORIES= audio
>  HOMEPAGE= http://www.mega-nerd.com/libsndfile/
>  MAINTAINER= Jan Stary <[hidden email]>
> -SHARED_LIBS += sndfile              5.0      # .1.27
> +SHARED_LIBS += sndfile              6.0      # .1.28
>  
>  # LGPLv2.1
>  PERMIT_PACKAGE_CDROM= Yes
> @@ -19,6 +19,8 @@ CONFIGURE_STYLE=gnu
>  CONFIGURE_ARGS= --disable-alsa \
>   --disable-octave \
>   --disable-sqlite
> +
> +CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
>  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
>  
>  LIB_DEPENDS= audio/flac \
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/distinfo,v
> retrieving revision 1.16
> diff -u -p -u -p -r1.16 distinfo
> --- distinfo 7 Nov 2016 21:52:53 -0000 1.16
> +++ distinfo 17 Apr 2018 07:43:48 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
> -SIZE (libsndfile-1.0.27.tar.gz) = 1192337
> +SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
> +SIZE (libsndfile-1.0.28.tar.gz) = 1202833
> Index: patches/patch-configure
> ===================================================================
> RCS file: patches/patch-configure
> diff -N patches/patch-configure
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configure 17 Apr 2018 07:43:48 -0000
> @@ -0,0 +1,14 @@
> +Some compilers don't have -Wvla
> +
> +Index: configure
> +--- configure.orig
> ++++ configure
> +@@ -20828,7 +20828,7 @@ rm -f core conftest.err conftest.$ac_objext \
> + common_flags="-Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self"
> +
> + # -Winline -Wconversion "
> +- CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return -Wvla"
> ++ CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return"
> + CXXFLAGS="$CXXFLAGS $common_flags -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo"
> +
> + if test "x$enable_gcc_opt" = "xno" ; then
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
> retrieving revision 1.12
> diff -u -p -u -p -r1.12 PLIST
> --- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
> +++ pkg/PLIST 17 Apr 2018 07:43:48 -0000
> @@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
>  share/doc/libsndfile/api.html
>  share/doc/libsndfile/bugs.html
>  share/doc/libsndfile/command.html
> -share/doc/libsndfile/dither.html
>  share/doc/libsndfile/embedded_files.html
>  share/doc/libsndfile/index.html
>  share/doc/libsndfile/libsndfile.css
>

Reply | Threaded
Open this post in threaded view
|

Re: update libsndfile to 1.0.28

Jeremie Courreges-Anglas-2
In reply to this post by Jan Stary
On Tue, Apr 17 2018, Jan Stary <[hidden email]> wrote:

> OK, here is another stab at the libsndfile update.
>
> * bump lib from 5.0 to 6.0
> * give CPPFLAGS that ./configure needs to know
> * patch away -Wvla which does not necesarilly exist
> * drop the removed dither.html doc file
>
> Tested on amd64, macppc and armv7 with the following
> (via "make SUBDIRLIST=... package", thank you stu@).
>
> audio/fluidsynth
> audio/herrie
> audio/jack
> audio/libbs2b
> audio/libsamplerate
> audio/pulseaudio
> audio/siren
> audio/sox
> audio/speech-dispatcher
> audio/twolame
> audio/vamp-plugin-sdk
> comms/minimodem
> emulators/mednafen
>
> On amd64, I also built x11/mplayer with this.
>
>> On Mar 13 13:08:09, [hidden email] wrote:
>> > > * Add explicit ./configure --options (in --help order)
>> > Not ok with me, please see below.
>
> Removed.
>
> Jan

Committed, thanks.  Nit below,

> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/Makefile,v
> retrieving revision 1.31
> diff -u -p -u -p -r1.31 Makefile
> --- Makefile 7 Nov 2016 21:52:53 -0000 1.31
> +++ Makefile 17 Apr 2018 07:43:48 -0000
> @@ -2,11 +2,11 @@
>  
>  COMMENT= library to handle various audio file formats
>  
> -DISTNAME= libsndfile-1.0.27
> +DISTNAME= libsndfile-1.0.28
>  CATEGORIES= audio
>  HOMEPAGE= http://www.mega-nerd.com/libsndfile/
>  MAINTAINER= Jan Stary <[hidden email]>
> -SHARED_LIBS += sndfile              5.0      # .1.27
> +SHARED_LIBS += sndfile              6.0      # .1.28
>  
>  # LGPLv2.1
>  PERMIT_PACKAGE_CDROM= Yes
> @@ -19,6 +19,8 @@ CONFIGURE_STYLE=gnu
>  CONFIGURE_ARGS= --disable-alsa \
>   --disable-octave \
>   --disable-sqlite
> +
> +CONFIGURE_ENV= CPPFLAGS="-I${PREFIX}/include"
>  MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/Cfg
>  
>  LIB_DEPENDS= audio/flac \
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/distinfo,v
> retrieving revision 1.16
> diff -u -p -u -p -r1.16 distinfo
> --- distinfo 7 Nov 2016 21:52:53 -0000 1.16
> +++ distinfo 17 Apr 2018 07:43:48 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (libsndfile-1.0.27.tar.gz) = o5GVLyf0qSzrK0wGSTrBB4lu1sdr6aYTpHMfB20w+sA=
> -SIZE (libsndfile-1.0.27.tar.gz) = 1192337
> +SHA256 (libsndfile-1.0.28.tar.gz) = H/M5KfBC+jM67R6JI6pijD7p4euFUSaGxVCS0eWp36k=
> +SIZE (libsndfile-1.0.28.tar.gz) = 1202833
> Index: patches/patch-configure
> ===================================================================
> RCS file: patches/patch-configure
> diff -N patches/patch-configure
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configure 17 Apr 2018 07:43:48 -0000
> @@ -0,0 +1,14 @@

make update-patches would have added $OpenBSD$ here, portcheck
complained.  Fixed in the commit.

> +Some compilers don't have -Wvla
> +
> +Index: configure
> +--- configure.orig
> ++++ configure
> +@@ -20828,7 +20828,7 @@ rm -f core conftest.err conftest.$ac_objext \
> + common_flags="-Wcast-align -Wcast-qual -Wshadow -Wwrite-strings -Wundef -Wuninitialized -Winit-self"
> +
> + # -Winline -Wconversion "
> +- CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return -Wvla"
> ++ CFLAGS="$CFLAGS     $common_flags -Wbad-function-cast -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Waggregate-return"
> + CXXFLAGS="$CXXFLAGS $common_flags -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-promo"
> +
> + if test "x$enable_gcc_opt" = "xno" ; then
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/audio/libsndfile/pkg/PLIST,v
> retrieving revision 1.12
> diff -u -p -u -p -r1.12 PLIST
> --- pkg/PLIST 10 Dec 2015 10:00:30 -0000 1.12
> +++ pkg/PLIST 17 Apr 2018 07:43:48 -0000
> @@ -31,7 +31,6 @@ share/doc/libsndfile/FAQ.html
>  share/doc/libsndfile/api.html
>  share/doc/libsndfile/bugs.html
>  share/doc/libsndfile/command.html
> -share/doc/libsndfile/dither.html
>  share/doc/libsndfile/embedded_files.html
>  share/doc/libsndfile/index.html
>  share/doc/libsndfile/libsndfile.css
>

--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE