Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Feb 2023 16:23:40 -0500
From:      Paul Mather <paul@gromit.dlib.vt.edu>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        FreeBSD User <freebsd@walstatt-de.de>, FreeBSD CURRENT <freebsd-current@freebsd.org>
Subject:   Re: NanoBSD: CURRENT unable to compile 13-STABLE : error: a function definition without a prototype is deprecated ... in C
Message-ID:  <720721A7-B1ED-405B-98EB-04A3AFCA7FD5@gromit.dlib.vt.edu>
In-Reply-To: <E2AFBCE9-4467-4E75-B7E4-4C6E0B03C0AA@FreeBSD.org>
References:  <20230227192011.08f7aa8e@thor.intern.walstatt.dynvpn.de> <E2AFBCE9-4467-4E75-B7E4-4C6E0B03C0AA@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Feb 27, 2023, at 2:57 PM, Dimitry Andric <dim@FreeBSD.org> wrote:

> On 27 Feb 2023, at 19:19, FreeBSD User <freebsd@walstatt-de.de> wrote:
>>=20
>> 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).
>>=20
>> 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:
>>=20
>> [...]
>> --- modules-all ---
>> --- all_subdir_an ---
>> =
/pool/home/ohartmann/Projects/router/router/apu2c4/src/sys/dev/an/if_an_pc=
i.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]
>> [..]
>>=20
>> Disabling all wireless options in the kernel config starts dropping =
errors of a similar kind
>> on other kernel places.
>>=20
>> Compiling on FBSD 13-STABLE seems to be all right.
>>=20
>> 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?
>=20
> 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?


I got bitten by this recently.  In my case, it was Poudriere (running on =
14-CURRENT) trying to build a 13-STABLE jail.  The Poudriere jail's =
"src.conf" was taken from the actual system for which Poudriere builds =
packages.  It had (amongst others) these two options:

WITH_SYSTEM_COMPILER=3Dyes
WITHOUT_CROSS_COMPILER=3Dyes


When I commented these out in the jail-src.conf Poudriere file the jail =
built correctly.

I figure the system built fine because its system compiler is LLVM 14.x. =
 The Poudriere system compiler is LLVM 15.x, which has the breaking =
change wrt. old-style prototypes.

Cheers,

Paul.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?720721A7-B1ED-405B-98EB-04A3AFCA7FD5>