Re: git: 01a679715f68 - main - err(3): print extended error if available

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Tue, 08 Jul 2025 19:09:32 UTC
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 <kib@FreeBSD.org>
> AuthorDate: 2025-06-16 21:26:22 +0000
> Commit:     Konstantin Belousov <kib@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?

-- 
John Baldwin