Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
Because net/norm's build system does not explicitly set the C++
standard, this leads to several errors:
../src/common/normEncoderRS8.cpp:264:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
USE_GF_MULC ;
^
../src/common/normEncoderRS8.cpp:136:21: note: expanded from macro 'USE_GF_MULC'
#define USE_GF_MULC register gf * __gf_mulc_
^
../src/common/normEncoderRS8.cpp:265:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
register gf* dst = dst1;
^~~~~~~~~
../src/common/normEncoderRS8.cpp:266:5: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
register gf* src = src1 ;
^~~~~~~~~
Add USE_CXXSTD=gnu++98 to compile for C++98 with GNU extensions instead,
as net/norm does not seem to use any C++11 or later constructs.
PR: 271415
Approved by: portmgr (build fix blanket)
MFH: 2023Q2
36 lines
1015 B
Makefile
36 lines
1015 B
Makefile
PORTNAME= norm
|
|
PORTVERSION= 1.5r6
|
|
PORTREVISION= 3
|
|
CATEGORIES= net
|
|
MASTER_SITES= http://downloads.pf.itd.nrl.navy.mil/norm/archive/:norm \
|
|
https://waf.io/:waf
|
|
DISTNAME= src-norm-${DISTVERSION}
|
|
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:norm \
|
|
waf-2.0.19:waf
|
|
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
|
|
|
|
PATCH_SITES= https://github.com/USNavalResearchLaboratory/protolib/commit/
|
|
PATCHFILES= ba9ca1ca7d73592268ebfd5a43271303e76f461e.patch:-p1
|
|
PATCH_DIST_ARGS= -d protolib
|
|
|
|
MAINTAINER= hd@oc.dk
|
|
COMMENT= NACK-Oriented Reliable Multicast (NORM)
|
|
WWW= https://www.nrl.navy.mil/itd/ncs/products/norm
|
|
|
|
WRKSRC= ${WRKDIR}/norm-${DISTVERSION}
|
|
|
|
USES= libtool tar:tgz waf
|
|
USE_CXXSTD= gnu++98
|
|
USE_LDCONFIG= yes
|
|
PLIST_FILES= include/normApi.h lib/libnorm.so lib/libnorm.so.1 \
|
|
lib/libnorm.so.1.0.0
|
|
|
|
post-extract:
|
|
${CP} ${DISTDIR}/waf-2.0.19 ${WRKSRC}/waf
|
|
|
|
post-install:
|
|
${INSTALL_DATA} ${WRKSRC}/include/normApi.h ${STAGEDIR}${PREFIX}/include/
|
|
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libnorm.so.1.0.0
|
|
|
|
.include <bsd.port.mk>
|