relibc: implement error()/error_at_line() as real symbols (not header inlines)

The header-only static-inline error()/error_at_line() collided with gnulib's own
lib/error.c ('redefinition of error', building m4): autotools link-detects a
system error(), skips its replacement, then the inline in <error.h> clashes with
gnulib's definition. Implement them properly in relibc (src/header/error) with
the glibc globals (error_message_count, error_one_per_line, error_print_progname)
and make <error.h> a pure extern declaration. Fixes m4/gnulib and keeps
mesa/libelf (the original <error.h> consumers) working via the real symbol.
This commit is contained in:
2026-08-01 04:30:41 +03:00
parent 29752835c2
commit 1a6d3221b2
3 changed files with 163 additions and 41 deletions
+1
View File
@@ -93,6 +93,7 @@ pub mod dlfcn;
pub mod elf;
pub mod endian;
pub mod err;
pub mod error;
pub mod errno;
pub mod fcntl;
pub mod linux_kd;