multimedia/smpeg: fix build with clang 16

Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
Because multimedia/smpeg's configure scripts and Makefiles do not
explicitly set the C++ standard, this leads to several errors:

  In file included from MPEGaudio.cpp:24:
  ../MPEGaudio.h:129:7: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register int r=(buffer[bitindex>>3]>>(7-(bitindex&7)))&1;
        ^~~~~~~~~
  ../MPEGaudio.h:135:7: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register unsigned short a;
        ^~~~~~~~~
  MPEGaudio.cpp:317:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
    register int r=(_buffer[bitindex>>3]>>(7-(bitindex&7)))&1;
    ^~~~~~~~~
  MPEGaudio.cpp:326:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
    register unsigned short a;
    ^~~~~~~~~
  MPEGaudio.cpp:339:3: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
    register unsigned short a;
    ^~~~~~~~~

Because smpeg uses a rather strange configure script, it does not
process CXXFLAGS correctly, so set CXX to include -std=gnu++98.

Also remove the REAL_CC patch which is no longer necessary.

PR:		271353
Approved by:	portmgr (build fix blanket)
MFH:		2023Q2
This commit is contained in:
Dimitry Andric 2023-05-10 21:02:32 +02:00
parent baf5218c3b
commit 967c8049e1
2 changed files with 2 additions and 10 deletions

View file

@ -1,6 +1,6 @@
PORTNAME= smpeg PORTNAME= smpeg
PORTVERSION= 0.4.4 PORTVERSION= 0.4.4
PORTREVISION= 16 PORTREVISION= 17
CATEGORIES= multimedia CATEGORIES= multimedia
MASTER_SITES= GENTOO MASTER_SITES= GENTOO
@ -17,7 +17,7 @@ USE_LDCONFIG= yes
GNU_CONFIGURE= yes GNU_CONFIGURE= yes
CONFIGURE_ENV= GLBASE="${LOCALBASE}" \ CONFIGURE_ENV= GLBASE="${LOCALBASE}" \
CC="${CXX}" REAL_CC="${CC}" \ CC="${CC}" CXX="${CXX} -std=gnu++98" \
SDL_CONFIG="${SDL_CONFIG}" SDL_CONFIG="${SDL_CONFIG}"
#If you want to try the opengl/gtk player (which doesn't seem to work) #If you want to try the opengl/gtk player (which doesn't seem to work)
#comment out the following line. #comment out the following line.

View file

@ -9,11 +9,3 @@
EOF EOF
if { (eval echo configure:1061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:1061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes ac_cv_prog_cc_works=yes
@@ -2335,6 +2332,7 @@ rm -f conftest*
CFLAGS="$CFLAGS $SDL_CFLAGS"
LIBS="$LIBS $SDL_LIBS"
+CC="$REAL_CC"
echo $ac_n "checking for sqrt in -lm""... $ac_c" 1>&6
echo "configure:2341: checking for sqrt in -lm" >&5