On Tue, Jul 08, 2025 at 03:09:32PM -0400, John Baldwin wrote:
> On 7/7/25 15:28, Konstantin Belousov wrote:
> > The branch main has been updated by kib:
> > 
> > URL: 
> > https://cgit.FreeBSD.org/src/commit/?id=01a679715f68d5e32efecafc1f158eecec3f781b
> > 
> > commit 01a679715f68d5e32efecafc1f158eecec3f781b
> > Author:     Konstantin Belousov <k...@freebsd.org>
> > AuthorDate: 2025-06-16 21:26:22 +0000
> > Commit:     Konstantin Belousov <k...@freebsd.org>
> > CommitDate: 2025-07-07 18:44:22 +0000
> > 
> >      err(3): print extended error if available
> >      Reviewed by:    asomers, brooks
> >      Sponsored by:   The FreeBSD Foundation
> >      Differential revision:  https://reviews.freebsd.org/D51141
> 
> It looks like this broke cross-building as all of the GitHub cross-build
> actions are failing now after this commit, e.g.:
> 
> https://github.com/freebsd/freebsd-src/actions/runs/16126095376/job/45503237749
> 
> /home/runner/work/freebsd-src/freebsd-src/lib/libc//gen/err.c:33:10: fatal 
> error: sys/exterrvar.h: No such file or directory
>    33 | #include <sys/exterrvar.h>
>       |          ^~~~~~~~~~~~~~~~~
> compilation terminated.
> --- err.o ---
> *** [err.o] Error code 1
> 
> bmake[3]: stopped making "all" in 
> /home/runner/work/freebsd-src/freebsd-src/tools/build
> bmake[3]: 1 error
> 
> bmake[3]: stopped making "all" in 
> /home/runner/work/freebsd-src/freebsd-src/tools/build
> --- legacy ---
> *** [legacy] Error code 2
> 
> bmake[2]: stopped making "legacy" in /home/runner/work/freebsd-src/freebsd-src
> bmake[2]: 1 error
> 
> bmake[2]: stopped making "legacy" in /home/runner/work/freebsd-src/freebsd-src
> Command exited with non-zero status 2
> 3.30user 0.79system 0:01.27elapsed 321%CPU (0avgtext+0avgdata 
> 71296maxresident)k
> 1200inputs+2984outputs (8major+109216minor)pagefaults 0swaps
> --- _legacy ---
> 
> bmake[1]: stopped making "kernel-toolchain" in 
> /home/runner/work/freebsd-src/freebsd-src
> --- kernel-toolchain ---
> 
> bmake: stopped making "kernel-toolchain" in 
> /home/runner/work/freebsd-src/freebsd-src
> Error: Process completed with exit code 2.
> 
> Presumably we are building a native libegacy on Linux that includes err.c, so 
> we
> need to either guard the new #include or add a compat <sys/exterrvar.h> 
> header with
> a stub implementation?

I think that the guard would be not enough, the real compat header with some
content like

#define UEXTERROR_MAXLEN 128

static inline int
uexterr_gettext(char *buf, size_t len)
{
        if (len > 0)
                buf[0] = '\0';
        return (0);
}
should work better.

Reply via email to