forked from Openwrt/openwrt
Fedora 42 updated to GCC15 which now defaults to GNU23 as the default instead of GNU17[1], and this breaks cpio compilation. Its been reported upstream [2], so import the patch attached to the bug report that fixes compilation with GCC15. [1] https://gcc.gnu.org/gcc-15/porting_to.html#c23 [2] https://savannah.gnu.org/bugs/?66297 Link: https://github.com/openwrt/openwrt/pull/18506 Signed-off-by: Robert Marko <robimarko@gmail.com>
24 lines
756 B
Diff
24 lines
756 B
Diff
--- a/src/extern.h
|
|
+++ b/src/extern.h
|
|
@@ -97,7 +97,8 @@ extern char input_is_special;
|
|
extern char output_is_special;
|
|
extern char input_is_seekable;
|
|
extern char output_is_seekable;
|
|
-extern int (*xstat) ();
|
|
+//void not good enough
|
|
+extern int (*xstat) (const char * restrict, struct stat * restrict);
|
|
extern void (*copy_function) ();
|
|
extern char *change_directory_option;
|
|
|
|
--- a/src/global.c
|
|
+++ b/src/global.c
|
|
@@ -185,7 +185,7 @@ bool to_stdout_option = false;
|
|
|
|
/* A pointer to either lstat or stat, depending on whether
|
|
dereferencing of symlinks is done for input files. */
|
|
-int (*xstat) ();
|
|
+int (*xstat) (const char * restrict, struct stat * restrict);
|
|
|
|
/* Which copy operation to perform. (-i, -o, -p) */
|
|
void (*copy_function) () = 0;
|