Browse Source

bc: Add missing params to getopt/getenv signatures

Fix build with GCC 15 on musl

(From OE-Core rev: 22418116d6dd7b3475d074ecb6a0b1d5c00b229b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj 2 months ago
parent
commit
d56592776d

+ 40 - 0
meta/recipes-extended/bc/bc/0001-getopt-Add-missing-params-to-getopt-getenv-signature.patch

@@ -0,0 +1,40 @@
+From 493997b0d2c3dc6469f967d8f619ed934667c71e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Mar 2025 18:33:08 -0700
+Subject: [PATCH] getopt: Add missing params to getopt/getenv signatures
+
+This ensures it can compile with GCC 15 on musl
+
+Upstream-Status: Submitted [sent to bug-bc@gnu.org]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ h/getopt.h   | 2 +-
+ lib/getopt.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/h/getopt.h b/h/getopt.h
+index cc45f46..5ea5eac 100644
+--- a/h/getopt.h
++++ b/h/getopt.h
+@@ -141,7 +141,7 @@ struct option
+    errors, only prototype getopt for the GNU C library.  */
+ extern int getopt (int ___argc, char *const *___argv, const char *__shortopts);
+ #else /* not __GNU_LIBRARY__ */
+-extern int getopt ();
++extern int getopt (int,  char * const*, const char *);
+ #endif /* __GNU_LIBRARY__ */
+ 
+ #ifndef __need_getopt
+diff --git a/lib/getopt.c b/lib/getopt.c
+index b270074..3e6d071 100644
+--- a/lib/getopt.c
++++ b/lib/getopt.c
+@@ -197,7 +197,7 @@ static char *posixly_correct;
+    whose names are inconsistent.  */
+ 
+ #ifndef getenv
+-extern char *getenv ();
++extern char *getenv (const char*);
+ #endif
+ 
+ #endif /* not __GNU_LIBRARY__ */

+ 1 - 0
meta/recipes-extended/bc/bc_1.08.1.bb

@@ -13,6 +13,7 @@ SECTION = "base"
 DEPENDS = "flex-native"
 
 SRC_URI = "${GNU_MIRROR}/${BPN}/${BP}.tar.gz \
+           file://0001-getopt-Add-missing-params-to-getopt-getenv-signature.patch \
            file://run-ptest"
 SRC_URI[sha256sum] = "b71457ffeb210d7ea61825ff72b3e49dc8f2c1a04102bbe23591d783d1bfe996"