Re: devel/nspr: Fails to build on 1500008 5f71f9636efa

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Fri, 29 Dec 2023 12:50:34 UTC
The problem is really that our kernel headers (those under sys/) require C99. The only thing that https://cgit.freebsd.org/src/commit/?id=a8b70cf26030d68631200619bd1b0ad35b34b6b8 did was move two static inline functions from sys/netinet/tcp_var.h to sys/netinet/tcp.h, and it looks like the former header is never directly included by ports. The latter is, so those ports should be switched to C99, or the sys/netinet/tcp.h header should be fixed to use __inline instead.

-Dimitry

> On 29 Dec 2023, at 13:30, Nuno Teixeira <eduardo@freebsd.org> wrote:
> 
> (...)
> -ansi == Same as -std=c89
> 
> So it seems correct to remove it when -std=c99 is used.
> 
> Nuno Teixeira <eduardo@freebsd.org> escreveu no dia sexta, 29/12/2023 à(s) 12:03:
> 
> 
> 
> I think we have two options:
> 1. Build the ports with a C version of at least C99.
> 
> - Adding USE_CSTD=c99
> - Removing -ansi:
> --- configure.orig     2023-12-29 11:54:11 UTC
> +++ configure
> -    CFLAGS="$CFLAGS $(DSO_CFLAGS) -ansi -Wall"
> +    CFLAGS="$CFLAGS $(DSO_CFLAGS) -Wall"
> 
> Fix build.
> 
> Notes:
> 
> Adding USE_CSTD=c99 doesn't fix build by itself like we seen on some ports that were fixed by it.
> 
> Something have changed from current 1500007 to 1500008.
> 
>   2. Remove the inline from tcp_[gs]et_flags().
> 
> Best regards
> Michael
> > -- 
> > Nuno Teixeira
> > FreeBSD Committer (ports)
> 
> 
> 
> -- 
> Nuno Teixeira
> FreeBSD Committer (ports)
> 
> 
> -- 
> Nuno Teixeira
> FreeBSD Committer (ports)