Re: NanoBSD: CURRENT unable to compile 13-STABLE : error: a function definition without a prototype is deprecated ... in C

From: Shawn Webb <shawn.webb_at_hardenedbsd.org>
Date: Mon, 27 Feb 2023 20:40:41 UTC
On Mon, Feb 27, 2023 at 08:57:19PM +0100, Dimitry Andric wrote:
> On 27 Feb 2023, at 19:19, FreeBSD User <freebsd@walstatt-de.de> wrote:
> > 
> > Running recent CURRENT as host (FreeBSD 14.0-CURRENT #23 main-n261147-b8bb73ab724b: Sun Feb 26
> > 17:39:38 CET 2023 amd64), and nanoBSD (recent 13-STABLE, git stable/13).
> > 
> > Building an appliance based on 13-STABLE sources, a customized kernel via nanoBSD, since a
> > couple of weeks for now building the sources fails in kernel sources:
> > 
> > [...]
> > --- modules-all ---
> > --- all_subdir_an ---
> > /pool/home/ohartmann/Projects/router/router/apu2c4/src/sys/dev/an/if_an_pci.c:143:1: error: a
> > function definition without a prototype is deprecated in all versions of C and is not
> > supported in C2x [-Werror,-Wdeprecated-non-prototype]
> > [..]
> > 
> > Disabling all wireless options in the kernel config starts dropping errors of a similar kind
> > on other kernel places.
> > 
> > Compiling on FBSD 13-STABLE seems to be all right.
> > 
> > Can this be fixed. please? What causes the error and how can this be resolved if the subtree
> > of FreeBSD's sources is a submodule?
> 
> Not sure what you mean with "subtree is a submodule", but this is likely
> caused by skipping the cross-tools stage somehow. Do you have any
> specific make.conf or src.conf settings for that?

FWIW, HardenedBSD is also impacted by this. We set
WITH_SYSTEM_COMPILER and WITH_SYSTEM_LINKER by default, which I think
might be a contributing factor.

Thanks,

-- 
Shawn Webb
Cofounder / Security Engineer
HardenedBSD

https://git.hardenedbsd.org/hardenedbsd/pubkeys/-/raw/master/Shawn_Webb/03A4CBEBB82EA5A67D9F3853FF2E67A277F8E1FA.pub.asc