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
On Mar 13 13:08:09, jca@wxcvbn.org wrote:
> On Sun, Mar 11 2018, Jan Stary <hans@stare.cz> 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 <hans@stare.cz>
> > -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
>
No comments:
Post a Comment