Re: update libsndfile to 1.0.28
On Sun, Mar 18 2018, Jan Stary wrote: > On Mar 13 13:08:09, j...@wxcvbn.org wrote: >> On Sun, Mar 11 2018, Jan Stary 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 - 1.31 > +++ Makefile 18 Mar 2018 11:43:43 - > @@ -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 > -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 - > +++ patches/patch-configure 18 Mar 2018 11:43:43 - > @@ -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-declaration
Re: update libsndfile to 1.0.28
On Mar 13 13:08:09, j...@wxcvbn.org wrote: > On Sun, Mar 11 2018, Jan Stary 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 --- Makefile7 Nov 2016 21:52:53 - 1.31 +++ Makefile18 Mar 2018 11:43:43 - @@ -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 -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 - +++ patches/patch-configure 18 Mar 2018 11:43:43 - @@ -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
Re: update libsndfile to 1.0.28
On Mar 13 21:58:50, s...@spacehopper.org wrote: > On 2018/03/11 20:53, Jan Stary wrote: > > On Mar 11 13:57:13, h...@stare.cz 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
Re: update libsndfile to 1.0.28
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 :-)
Re: update libsndfile to 1.0.28
On 2018/03/11 20:53, Jan Stary wrote: > On Mar 11 13:57:13, h...@stare.cz 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.
Re: update libsndfile to 1.0.28
On Mar 11 13:57:13, h...@stare.cz wrote: > Tested on current amd64, macppc and armv7; please test everywhere. sox works fine happy with the new version Jan