From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 60895158091 for ; Thu, 16 Jun 2022 22:10:45 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A9793E0824; Thu, 16 Jun 2022 22:10:44 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8D94FE0824 for ; Thu, 16 Jun 2022 22:10:44 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 5CB0D341EE1 for ; Thu, 16 Jun 2022 22:10:43 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id B6A80471 for ; Thu, 16 Jun 2022 22:10:41 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1655417426.515ec4557c56cf0e82b95873056c40d8c6269694.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/lvm2/, sys-fs/lvm2/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-fs/lvm2/files/lvm2-2.03.14-r1-add-fcntl.patch sys-fs/lvm2/files/lvm2-2.03.14-r1-fopen-to-freopen.patch sys-fs/lvm2/files/lvm2-2.03.14-r1-mallinfo.patch sys-fs/lvm2/lvm2-2.03.14-r1.ebuild X-VCS-Directories: sys-fs/lvm2/ sys-fs/lvm2/files/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 515ec4557c56cf0e82b95873056c40d8c6269694 X-VCS-Branch: master Date: Thu, 16 Jun 2022 22:10:41 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 545eebf2-8c93-47d7-a8aa-74d765538e4c X-Archives-Hash: c6c6c7c37a7bb9d461007eb02367d2b3 commit: 515ec4557c56cf0e82b95873056c40d8c6269694 Author: Alfred Persson Forsberg catcream org> AuthorDate: Thu Jun 16 22:03:41 2022 +0000 Commit: Sam James gentoo org> CommitDate: Thu Jun 16 22:10:26 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=515ec455 sys-fs/lvm2: fix building on musl A few changes to make lvm2 build on musl. Each patch file is commented in more detail, see those. The mallinfo patch should be looked back to. Closes: https://bugs.gentoo.org/712336 Closes: https://bugs.gentoo.org/549506 Signed-off-by: Alfred Persson Forsberg catcream.org> Closes: https://github.com/gentoo/gentoo/pull/25883 Signed-off-by: Sam James gentoo.org> sys-fs/lvm2/files/lvm2-2.03.14-r1-add-fcntl.patch | 24 ++++++++++++ .../files/lvm2-2.03.14-r1-fopen-to-freopen.patch | 43 ++++++++++++++++++++++ sys-fs/lvm2/files/lvm2-2.03.14-r1-mallinfo.patch | 18 +++++++++ sys-fs/lvm2/lvm2-2.03.14-r1.ebuild | 3 ++ 4 files changed, 88 insertions(+) diff --git a/sys-fs/lvm2/files/lvm2-2.03.14-r1-add-fcntl.patch b/sys-fs/lvm2/files/lvm2-2.03.14-r1-add-fcntl.patch new file mode 100644 index 000000000000..1b5524a61405 --- /dev/null +++ b/sys-fs/lvm2/files/lvm2-2.03.14-r1-add-fcntl.patch @@ -0,0 +1,24 @@ +https://bugs.gentoo.org/712336 +https://bugs.gentoo.org/549506 + +Adds fcntl.h into daemon-server.c to define fcntl and some constants. + +--- + libdaemon/server/daemon-server.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libdaemon/server/daemon-server.c b/libdaemon/server/daemon-server.c +index 88905a7..771b021 100644 +--- a/libdaemon/server/daemon-server.c ++++ b/libdaemon/server/daemon-server.c +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + + #include /* FIXME. For the global closelog(). */ + +-- +2.35.1 + diff --git a/sys-fs/lvm2/files/lvm2-2.03.14-r1-fopen-to-freopen.patch b/sys-fs/lvm2/files/lvm2-2.03.14-r1-fopen-to-freopen.patch new file mode 100644 index 000000000000..56248e10e5d6 --- /dev/null +++ b/sys-fs/lvm2/files/lvm2-2.03.14-r1-fopen-to-freopen.patch @@ -0,0 +1,43 @@ +In musl stdout, stdin and stderr are read-only unlike in glibc. +This patch changes std* = fopen(...) to freopen(..., std*). + +See: https://www.gnu.org/software/libc/manual/html_node/Standard-Streams.html and https://wiki.gentoo.org/wiki/User:Sam/Musl_porting_notes + +--- + tools/lvmcmdline.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c +index 1e12bed..19da1e5 100644 +--- a/tools/lvmcmdline.c ++++ b/tools/lvmcmdline.c +@@ -3384,7 +3384,7 @@ static int _check_standard_fds(void) + int err = is_valid_fd(STDERR_FILENO); + + if (!is_valid_fd(STDIN_FILENO) && +- !(stdin = fopen(_PATH_DEVNULL, "r"))) { ++ !freopen(_PATH_DEVNULL, "r", stdin)) { + if (err) + perror("stdin stream open"); + else +@@ -3394,7 +3394,7 @@ static int _check_standard_fds(void) + } + + if (!is_valid_fd(STDOUT_FILENO) && +- !(stdout = fopen(_PATH_DEVNULL, "w"))) { ++ !freopen(_PATH_DEVNULL, "w", stdout)) { + if (err) + perror("stdout stream open"); + /* else no stdout */ +@@ -3402,7 +3402,7 @@ static int _check_standard_fds(void) + } + + if (!is_valid_fd(STDERR_FILENO) && +- !(stderr = fopen(_PATH_DEVNULL, "w"))) { ++ !freopen(_PATH_DEVNULL, "w", stderr)) { + printf("stderr stream open: %s\n", + strerror(errno)); + return 0; +-- +2.35.1 + diff --git a/sys-fs/lvm2/files/lvm2-2.03.14-r1-mallinfo.patch b/sys-fs/lvm2/files/lvm2-2.03.14-r1-mallinfo.patch new file mode 100644 index 000000000000..af4cbc0d5aab --- /dev/null +++ b/sys-fs/lvm2/files/lvm2-2.03.14-r1-mallinfo.patch @@ -0,0 +1,18 @@ +https://git.alpinelinux.org/aports/tree/main/lvm2/mallinfo.patch + +Patch from Alpine, disables _allocate_memory since mallinfo isn't defined in musl. +19:17 <@sam_> your caution is well-advised, but it should be safe enough given it's only affecting the non-glibc path + +Should be looked back to! + +--- ./lib/mm/memlock.c.orig 2015-03-09 11:18:41.560028850 -0100 ++++ ./lib/mm/memlock.c 2015-03-09 11:19:54.504373309 -0100 +@@ -137,7 +137,7 @@ + + static void _allocate_memory(void) + { +-#ifndef VALGRIND_POOL ++#if !defined(VALGRIND_POOL) && defined(__GLIBC__) + void *stack_mem; + struct rlimit limit; + int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks; diff --git a/sys-fs/lvm2/lvm2-2.03.14-r1.ebuild b/sys-fs/lvm2/lvm2-2.03.14-r1.ebuild index f3bc54eebc36..66b2184868ed 100644 --- a/sys-fs/lvm2/lvm2-2.03.14-r1.ebuild +++ b/sys-fs/lvm2/lvm2-2.03.14-r1.ebuild @@ -70,6 +70,9 @@ PATCHES=( "${FILESDIR}"/${PN}-2.03.05-dmeventd-no-idle-exit.patch #"${FILESDIR}"/${PN}-2.02.184-allow-reading-metadata-with-invalid-creation_time.patch #682380 # merged upstream "${FILESDIR}"/${PN}-2.02.184-mksh_build.patch #686652 + "${FILESDIR}"/${PN}-2.03.14-r1-add-fcntl.patch + "${FILESDIR}"/${PN}-2.03.14-r1-fopen-to-freopen.patch + "${FILESDIR}"/${PN}-2.03.14-r1-mallinfo.patch ) pkg_setup() {