freebsd-ports/multimedia/smpeg/Makefile
Dimitry Andric 967c8049e1 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
2023-05-18 13:34:31 +02:00

33 lines
879 B
Makefile

PORTNAME= smpeg
PORTVERSION= 0.4.4
PORTREVISION= 17
CATEGORIES= multimedia
MASTER_SITES= GENTOO
MAINTAINER= acm@FreeBSD.org
COMMENT= Free MPEG1 video player library with sound support
WWW= https://www.lokigames.com/development/smpeg.php3
LICENSE= LGPL20
LICENSE_FILE= ${WRKSRC}/COPYING
USES= compiler gmake libtool:build sdl
USE_SDL= sdl
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ENV= GLBASE="${LOCALBASE}" \
CC="${CC}" CXX="${CXX} -std=gnu++98" \
SDL_CONFIG="${SDL_CONFIG}"
#If you want to try the opengl/gtk player (which doesn't seem to work)
#comment out the following line.
CONFIGURE_ARGS= --disable-opengl-player \
--disable-gtk-player \
--enable-mmx
CFLAGS+= ${CFLAGS_${CHOSEN_COMPILER_TYPE}}
CFLAGS_clang= -Wno-c++11-narrowing
LDFLAGS_i386= -Wl,-znotext
MAKE_ARGS= LIBTOOL=${LOCALBASE}/bin/libtool
INSTALL_TARGET= install-strip
.include <bsd.port.mk>