Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Dec 2023 12:39:06 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Antoine Brodin <antoine@FreeBSD.org>
Cc:        Gleb Smirnoff <glebius@freebsd.org>, Richard Scheffenegger <rscheff@freebsd.org>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: a8b70cf26030 - main - netpfil: Use accessor functions and named constants for all tcphdr flags
Message-ID:  <0452FE2C-00E9-4E06-880B-6F7B56751728@FreeBSD.org>
In-Reply-To: <24134FF7-8C03-490D-A476-4EFF4EAD8132@FreeBSD.org>
References:  <202312270143.3BR1hMQf085312@gitrepo.freebsd.org> <CAALwa8n%2BSs397icBLsYEPZM0ynnou=1Kxc5dV5FAa_CofjpT4A@mail.gmail.com> <ZY34hIExot089sPR@FreeBSD.org> <CAALwa8nf3x6ipG3hBv%2B3j0cHyYq%2BiGUjeMOW1qip%2BNMAXaZL%2Bw@mail.gmail.com> <24134FF7-8C03-490D-A476-4EFF4EAD8132@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 29 Dec 2023, at 11:17, Dimitry Andric <dim@FreeBSD.org> wrote:
>=20
> On 29 Dec 2023, at 08:35, Antoine Brodin <antoine@FreeBSD.org> wrote:
>>=20
>> On Thu, Dec 28, 2023 at 10:37=E2=80=AFPM Gleb Smirnoff =
<glebius@freebsd.org> wrote:
>>>=20
>>> Antoine,
>>>=20
>>> 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'
>>>=20
>>> Definitely some ports that use some strange compilers :)
>>>=20
>>> Can you please give at least port names?
>>=20
>> Some examples:
>>=20
>> =
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
>=20
> The culprit is likely the "-ansi" option. Just get rid of that, it is =
not really useful:
>=20
> cc -o prmapopt.o -c -fvisibility=3Dhidden -O2 -pipe =
-fstack-protector-strong -fno-strict-aliasing -ansi -Wall -fPIC -UDEBUG =
-DPACKAGE_NAME=3D\"\" -DPACKAGE_TARNAME=3D\"\" -DPACKAGE_VERSION=3D\"\" =
-DPACKAGE_STRING=3D\"\" -DPACKAGE_BUGREPORT=3D\"\" -DPACKAGE_URL=3D\"\" =
-DNDEBUG=3D1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=3D1 =
-DHAVE_VISIBILITY_PRAGMA=3D1 -DXP_UNIX=3D1 -DFREEBSD=3D1 =
-DHAVE_BSD_FLOCK=3D1 -DHAVE_SOCKLEN_T=3D1 -DHAVE_POINTER_LOCALTIME_R=3D1 =
-DHAVE_DLADDR=3D1 -DHAVE_LCHOWN=3D1 -DHAVE_SETPRIORITY=3D1 =
-DHAVE_STRERROR=3D1 -DHAVE_SYSCALL=3D1 -DHAVE_SECURE_GETENV=3D1 =
-D_REENTRANT=3D1 -D_THREAD_SAFE=3D1 -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.

-Dimitry




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0452FE2C-00E9-4E06-880B-6F7B56751728>