new file mode 100644
@@ -0,0 +1,46 @@
+From c47fdcc0a900aea93b1967c20db42743171ab1ac Mon Sep 17 00:00:00 2001
+From: "mark.yang" <mark.yang@lge.com>
+Date: Thu, 27 Mar 2025 16:46:42 +0900
+Subject: [PATCH] fix getopt.c too many arguments to function 'write' error in
+ gcc-15.0.1
+
+In the original code, write() was declared as 'extern int write();',
+which is interpreted as a function taking no parameters.
+This caused errors when actually calling it with 3 parameters.
+The current fix to declare it as 'extern int write(int, const void *, unsigned);'
+is the correct solution.
+This properly defines the write function to accept 3 parameters.
+
+../git/getopt.c: In function 'x_getopt':
+../git/getopt.c:51:16: error: too many arguments to function 'write'; expected 0, have 3
+ 51 | (void) write(2, argv[0], (unsigned)strlen(argv[0]));\
+ | ^~~~~ ~
+../git/getopt.c:78:17: note: in expansion of macro 'ERR'
+ 78 | ERR(": illegal option -- ", c);
+ | ^~~
+../git/getopt.c:48:20: note: declared here
+ 48 | extern int write();\
+ | ^~~~~
+
+Upstream-Status: Submitted [https://github.com/bmc/daemonize/pull/37]
+Signed-off-by: mark.yang <mark.yang@lge.com>
+---
+ getopt.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/getopt.c b/getopt.c
+index 3f37c55..f298da7 100644
+--- a/getopt.c
++++ b/getopt.c
+@@ -45,7 +45,7 @@
+ #include <string.h>
+
+ #define ERR(s, c) if(x_opterr){\
+- extern int write();\
++ extern int write(int, const void *, unsigned);\
+ char errbuf[2];\
+ errbuf[0] = c; errbuf[1] = '\n';\
+ (void) write(2, argv[0], (unsigned)strlen(argv[0]));\
+--
+2.34.1
+
@@ -7,7 +7,9 @@ PV = "1.7.8"
inherit autotools
SRCREV = "18869a797dab12bf1c917ba3b4782fef484c407c"
-SRC_URI = "git://github.com/bmc/daemonize.git;branch=master;protocol=https \
+SRC_URI = " \
+ git://github.com/bmc/daemonize.git;branch=master;protocol=https \
+ file://0001-fix-getopt.c-too-many-arguments-to-function-write-er.patch \
"
S = "${WORKDIR}/git"