Hello,
The merge request on Salsa (debian/net-tools !6) fixes this FTBFS by
building net-tools without ROSE. May I suggest a fix that keeps ROSE
support instead?
ROSE is still in use on amateur radio packet nodes, mine among them.
After its removal from Linux 7.1 the code lives on out of tree
(linux-netdev/mod-orphan) with the same user-space interface, and
Debian stable and older releases still ship kernels that include it.
With ROSE compiled out, "netstat --rose" and "route -A rose" disappear
and rose0 shows up as an unknown hardware type in ifconfig.
Only lib/rose.c depends on <linux/rose.h>. glibc ships its own
<netrose/rose.h> (and <netax25/ax25.h>), which does not depend on the
kernel headers and defines everything rose.c needs; ax25.c and netrom.c
already use <netax25/ax25.h> this way. The attached patch makes rose.c
include the glibc header when __has_include() finds it, and fall back
to <linux/rose.h> otherwise, so builds with another C library behave as
before.
It applies to 2.10-2 (offset 2 lines) and needs no change in
debian/config.h or debian/config.make. Tested on amd64 with GCC and
glibc 2.43, on the 2.10 tree with the Debian configuration:
- with an include tree from which linux/rose.h and linux/netrom.h were
removed (as in linux-libc-dev 7.3): before the patch, rose.c:41
"fatal error: linux/rose.h"; after, the whole build succeeds;
- with the normal headers: unchanged;
- on a live ROSE node (kernel 7.0): ifconfig rose0, netstat --rose and
route -A rose give the expected output;
- with musl-gcc, rose.c behaves as before the patch.
The same change has been proposed upstream as ecki/net-tools pull
request 72. Upstream disabled ROSE in its default
https://www.google.com/url?q=http://config.in&source=gmail&ust=1792171441590000&sa=E
in July
(#70); the patch does not change that default, it only lets
distributions that enable ROSE, as Debian does, keep building it.
Thanks,
Bernard Pidoux, F6BVP