Signed-off-by: Khem Raj <[email protected]>
---
 .../0001-always-use-glibc-basename.patch      | 38 +++++++++++++
 ...program_name-to-have-const-attribute.patch | 56 +++++++++++++++++++
 .../overlayfs/overlayfs-tools_v2024.07.bb     |  2 +
 3 files changed, 96 insertions(+)
 create mode 100644 
meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0001-always-use-glibc-basename.patch
 create mode 100644 
meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0002-Change-program_name-to-have-const-attribute.patch

diff --git 
a/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0001-always-use-glibc-basename.patch
 
b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0001-always-use-glibc-basename.patch
new file mode 100644
index 0000000000..78802e39ab
--- /dev/null
+++ 
b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0001-always-use-glibc-basename.patch
@@ -0,0 +1,38 @@
+From 2fa94fc7adf05fae46204f4665216c8b019010f3 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Fri, 5 Jul 2024 23:16:38 -0700
+Subject: [PATCH 1/2] always use glibc basename()
+
+There is a use of basename() which expects it to be GNU version of
+basename, which is not available in other libcs e.g. musl on Linux
+therefore provide a version for such cases
+
+Upstream-Status: Submitted [https://github.com/kmxz/overlayfs-tools/pull/26]
+Signed-off-by: Khem Raj <[email protected]>
+---
+ main.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/main.c b/main.c
+index 7b669eb..ea0f5a5 100644
+--- a/main.c
++++ b/main.c
+@@ -30,6 +30,18 @@ bool brief;
+ bool ignore;
+ extern char *program_name;
+ 
++#ifndef __GLIBC__
++/*
++ * GNU basename implementation
++ */
++static const char *__basename(const char *filename) {
++    char *p = strrchr(filename, '/');
++    return p ? p + 1 : filename;
++}
++
++#define basename(x) __basename(x)
++#endif
++
+ void print_help(const char *program) {
+     printf("Usage: %s command options\n", program);
+     puts("");
diff --git 
a/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0002-Change-program_name-to-have-const-attribute.patch
 
b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0002-Change-program_name-to-have-const-attribute.patch
new file mode 100644
index 0000000000..845306292e
--- /dev/null
+++ 
b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools/0002-Change-program_name-to-have-const-attribute.patch
@@ -0,0 +1,56 @@
+From be694ba90aa2e0fed3a4e9b53ad7a61efd0430c5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Fri, 5 Jul 2024 23:18:07 -0700
+Subject: [PATCH 2/2] Change program_name to have const attribute
+
+This is how it is used in all places and it also avoids a const to
+non-const conversion warning
+
+Upstream-Status: Submitted [https://github.com/kmxz/overlayfs-tools/pull/26]
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+ common.c | 2 +-
+ fsck.c   | 2 +-
+ main.c   | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/common.c b/common.c
+index eaf24a8..a15b66f 100644
+--- a/common.c
++++ b/common.c
+@@ -29,7 +29,7 @@
+ #include "common.h"
+ #include "config.h"
+ 
+-char *program_name;
++const char *program_name;
+ 
+ /* #define DEBUG 1 */
+ #ifdef DEBUG
+diff --git a/fsck.c b/fsck.c
+index 4e513f5..285b9f1 100644
+--- a/fsck.c
++++ b/fsck.c
+@@ -46,7 +46,7 @@
+ #include "mount.h"
+ #include "overlayfs.h"
+ 
+-extern char *program_name;
++extern const char *program_name;
+ 
+ struct ovl_fs ofs = {};
+ int flags = 0;                /* user input option flags */
+diff --git a/main.c b/main.c
+index ea0f5a5..1a8b239 100644
+--- a/main.c
++++ b/main.c
+@@ -28,7 +28,7 @@
+ bool verbose;
+ bool brief;
+ bool ignore;
+-extern char *program_name;
++extern const char *program_name;
+ 
+ #ifndef __GLIBC__
+ /*
diff --git 
a/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools_v2024.07.bb 
b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools_v2024.07.bb
index 0ca6477f45..d11ee0c479 100644
--- a/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools_v2024.07.bb
+++ b/meta-filesystems/recipes-utils/overlayfs/overlayfs-tools_v2024.07.bb
@@ -5,6 +5,8 @@ LIC_FILES_CHKSUM = 
"file://LICENSE.txt;md5=f312a7c4d02230e8f2b537295d375c69"
 
 SRC_URI = "\
     git://github.com/kmxz/overlayfs-tools.git;protocol=https;branch=master \
+    file://0001-always-use-glibc-basename.patch \
+    file://0002-Change-program_name-to-have-const-attribute.patch \
 "
 
 SRCREV = "7a4a0c4f2c6c86aa46a40e3468e394fd4a237491"
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#111260): 
https://lists.openembedded.org/g/openembedded-devel/message/111260
Mute This Topic: https://lists.openembedded.org/mt/107066320/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to