commit:     4b0abe03311391d346cd1c5a80f1b96318585d64
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 28 12:10:42 2024 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sun Apr 28 12:11:48 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b0abe03

sys-apps/attr: Add musl-1.2.5 build fix

Closes: https://bugs.gentoo.org/926294
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 sys-apps/attr/attr-2.5.2-r1.ebuild                 |  4 ++++
 sys-apps/attr/attr-9999.ebuild                     |  4 ++++
 sys-apps/attr/files/attr-2.5.2-r1-musl-1.2.5.patch | 23 ++++++++++++++++++++++
 3 files changed, 31 insertions(+)

diff --git a/sys-apps/attr/attr-2.5.2-r1.ebuild 
b/sys-apps/attr/attr-2.5.2-r1.ebuild
index 850befff79d5..2ba543d8d0e8 100644
--- a/sys-apps/attr/attr-2.5.2-r1.ebuild
+++ b/sys-apps/attr/attr-2.5.2-r1.ebuild
@@ -24,6 +24,10 @@ IUSE="debug nls static-libs"
 
 BDEPEND="nls? ( sys-devel/gettext )"
 
+PATCHES=(
+       "${FILESDIR}/${PN}-2.5.2-r1-musl-1.2.5.patch"
+)
+
 src_prepare() {
        default
 

diff --git a/sys-apps/attr/attr-9999.ebuild b/sys-apps/attr/attr-9999.ebuild
index 8aac35056b3e..f240734877d9 100644
--- a/sys-apps/attr/attr-9999.ebuild
+++ b/sys-apps/attr/attr-9999.ebuild
@@ -24,6 +24,10 @@ IUSE="debug nls static-libs"
 
 BDEPEND="nls? ( sys-devel/gettext )"
 
+PATCHES=(
+       "${FILESDIR}/${PN}-2.5.2-r1-musl-1.2.5.patch"
+)
+
 src_prepare() {
        default
 

diff --git a/sys-apps/attr/files/attr-2.5.2-r1-musl-1.2.5.patch 
b/sys-apps/attr/files/attr-2.5.2-r1-musl-1.2.5.patch
new file mode 100644
index 000000000000..6a1200ad2f17
--- /dev/null
+++ b/sys-apps/attr/files/attr-2.5.2-r1-musl-1.2.5.patch
@@ -0,0 +1,23 @@
+
+If we're not building with glibc, then add its basename definition manually
+
+diff --git a/tools/attr.c b/tools/attr.c
+index f12e4af..d321b37 100644
+--- a/tools/attr.c
++++ b/tools/attr.c
+@@ -33,6 +33,15 @@
+ 
+ #include "misc.h"
+ 
++#if !defined(__GLIBC__)
++char *
++basename (const char *filename)
++{
++  char *p = strrchr (filename, '/');
++  return p ? p + 1 : (char *) filename;
++}
++#endif
++
+ #define       SETOP           1               /* do a SET operation */
+ #define       GETOP           2               /* do a GET operation */
+ #define       REMOVEOP        3               /* do a REMOVE operation */

Reply via email to