On Fri, Dec 29, 2023 at 7:33 PM Warner Losh <i...@bsdimp.com> wrote: > On Fri, Dec 29, 2023, 4:39 AM Dimitry Andric <d...@freebsd.org> wrote: >> >> On 29 Dec 2023, at 11:17, Dimitry Andric <d...@freebsd.org> wrote: >> > >> > On 29 Dec 2023, at 08:35, Antoine Brodin <anto...@freebsd.org> wrote: >> >> >> >> On Thu, Dec 28, 2023 at 10:37 PM Gleb Smirnoff <gleb...@freebsd.org> >> >> wrote: >> >>> >> >>> Antoine, >> >>> >> >>> On Thu, Dec 28, 2023 at 08:48:36PM +0000, Antoine Brodin wrote: >> >>> A> > netpfil: Use accessor functions and named constants for all >> >>> tcphdr flags >> >>> A> > >> >>> ... >> >>> A> This breaks some ports: >> >>> A> /usr/include/netinet/tcp.h:82:8: error: unknown type name 'inline' >> >>> >> >>> Definitely some ports that use some strange compilers :) >> >>> >> >>> Can you please give at least port names? >> >> >> >> Some examples: >> >> >> >> https://pkg-status.freebsd.org/gohan04/data/mainamd64PR275986-default-foo/2023-12-28_20h35m41s/logs/errors/nspr-4.35.log >> >> https://pkg-status.freebsd.org/gohan04/data/mainamd64PR275986-default-foo/2023-12-28_20h35m41s/logs/errors/opusfile-0.12_1.log >> > >> > The culprit is likely the "-ansi" option. Just get rid of that, it is not >> > really useful: >> > >> > cc -o prmapopt.o -c -fvisibility=hidden -O2 -pipe -fstack-protector-strong >> > -fno-strict-aliasing -ansi -Wall -fPIC -UDEBUG -DPACKAGE_NAME=\"\" >> > -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" >> > -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DNDEBUG=1 >> > -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=1 -DHAVE_VISIBILITY_PRAGMA=1 >> > -DXP_UNIX=1 -DFREEBSD=1 -DHAVE_BSD_FLOCK=1 -DHAVE_SOCKLEN_T=1 >> > -DHAVE_POINTER_LOCALTIME_R=1 -DHAVE_DLADDR=1 -DHAVE_LCHOWN=1 >> > -DHAVE_SETPRIORITY=1 -DHAVE_STRERROR=1 -DHAVE_SYSCALL=1 >> > -DHAVE_SECURE_GETENV=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DFORCE_PR_LOG >> > -D_PR_PTHREADS -UHAVE_CVAR_BUILT_ON_SEM -D_NSPR_BUILD_ >> > -I../../../dist/include/nspr -I../../../pr/include >> > -I../../../pr/include/private prmapopt.c >> > In file included from prmapopt.c:46: >> > In file included from prmapopt.c:46: >> > /usr/include/netinet/tcp.h:82:8: error: unknown type name 'inline' >> > 82 | static inline uint16_t >> > | ^ >> >> Hm, I may have spoken too soon here. If this port has always compiled >> successfully with -ansi, then indeed it may not be that handy to directly >> use the 'inline' keyword in system headers. I think most other system >> headers use '__inline', which is supported by both gcc and clang, even in >> ANSI mode And if the compiler somehow does not support __inline, sys/cdefs.h >> can make sure all those keywords get removed. > > > Yes. You have to use __inline in system headers.
Yes I confirm that using __inline instead of inline fixes both nspr and opusfile. Antoine