commit: 1ae04cdfda5f7923c42ddf21e4267b12f7ed6135 Author: orbea <orbea <AT> riseup <DOT> net> AuthorDate: Fri Nov 22 17:28:19 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Nov 22 18:44:53 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ae04cdf
sys-fs/lvm2: fix build with musl Fixes implicit declaration of function basename on musl systems. [sam: Add revbump for modern C fixes.] Closes: https://bugs.gentoo.org/937239 Upstream-Commit: https://github.com/lvmteam/lvm2/commit/f98d2ffe8753895c84160a7abce4223bd127cd9e Signed-off-by: orbea <orbea <AT> riseup.net> Closes: https://github.com/gentoo/gentoo/pull/39416 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-fs/lvm2/files/lvm2-2.03.22-basename-musl.patch | 34 ++++++++++++++++++++++ ...m2-2.03.22-r6.ebuild => lvm2-2.03.22-r7.ebuild} | 1 + 2 files changed, 35 insertions(+) diff --git a/sys-fs/lvm2/files/lvm2-2.03.22-basename-musl.patch b/sys-fs/lvm2/files/lvm2-2.03.22-basename-musl.patch new file mode 100644 index 000000000000..2dd9f8ff524c --- /dev/null +++ b/sys-fs/lvm2/files/lvm2-2.03.22-basename-musl.patch @@ -0,0 +1,34 @@ +https://bugs.gentoo.org/937239 +https://github.com/lvmteam/lvm2/commit/f98d2ffe8753895c84160a7abce4223bd127cd9e + +From f98d2ffe8753895c84160a7abce4223bd127cd9e Mon Sep 17 00:00:00 2001 +From: Zdenek Kabelac <[email protected]> +Date: Wed, 27 Mar 2024 00:28:14 +0100 +Subject: [PATCH] device_id: use dm_basename + +Avoid problems for other libc like muslc and use dm_basename. + +Prototype for basename has been removed from string.h from latest musl [1] +compilers e.g. clang-18 flags the absense of prototype as error. therefore +include libgen.h for providing it. + +[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7 + +Reported-by: Khem Raj <[email protected]> +--- + lib/device/device_id.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/device/device_id.c b/lib/device/device_id.c +index 7d67a1cb7..200d39432 100644 +--- a/lib/device/device_id.c ++++ b/lib/device/device_id.c +@@ -740,7 +740,7 @@ static int _dev_read_sys_serial(struct cmd_context *cmd, struct device *dev, + int ret; + + /* /dev/vda to vda */ +- base = basename(devname); ++ base = dm_basename(devname); + + /* vda1 to vda */ + for (i = 0; i < strlen(base); i++) { diff --git a/sys-fs/lvm2/lvm2-2.03.22-r6.ebuild b/sys-fs/lvm2/lvm2-2.03.22-r7.ebuild similarity index 99% rename from sys-fs/lvm2/lvm2-2.03.22-r6.ebuild rename to sys-fs/lvm2/lvm2-2.03.22-r7.ebuild index 28276a453367..ac084f2eed9c 100644 --- a/sys-fs/lvm2/lvm2-2.03.22-r6.ebuild +++ b/sys-fs/lvm2/lvm2-2.03.22-r7.ebuild @@ -74,6 +74,7 @@ PATCHES=( "${FILESDIR}"/${PN}-2.03.22-autoconf-2.72-egrep.patch "${FILESDIR}"/${PN}-2.03.22-thin-version-checking.patch "${FILESDIR}"/${PN}-2.03.22-thin-autodetect.patch + "${FILESDIR}"/${PN}-2.03.22-basename-musl.patch ) pkg_setup() {
