commit:     12e0d0b2fc06ce2623e3f88ed7c6e47f62f17c29
Author:     Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com>
AuthorDate: Tue Jun 11 14:41:39 2024 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Jul 13 07:34:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12e0d0b2

sys-apps/usermode-utilities: Fix passing incompatible pointer types

and update EAPI 7 -> 8

Closes: https://bugs.gentoo.org/933391
Signed-off-by: Brahmajit Das <brahmajit.xyz <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/37057
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 .../files/usermode-utilities-gcc14-build-fix.patch | 13 ++++++
 .../usermode-utilities-20070815-r6.ebuild          | 48 ++++++++++++++++++++++
 2 files changed, 61 insertions(+)

diff --git 
a/sys-apps/usermode-utilities/files/usermode-utilities-gcc14-build-fix.patch 
b/sys-apps/usermode-utilities/files/usermode-utilities-gcc14-build-fix.patch
new file mode 100644
index 000000000000..f2c06d031f96
--- /dev/null
+++ b/sys-apps/usermode-utilities/files/usermode-utilities-gcc14-build-fix.patch
@@ -0,0 +1,13 @@
+Bug: https://bugs.gentoo.org/933391
+--- a/umlfs/uml_mount.c
++++ b/umlfs/uml_mount.c
+@@ -11,7 +11,8 @@ static int init_fuse(int argc, char **argv)
+ 
+       if (fuse_parse_cmdline(&args, &mountpoint, NULL, NULL) == -1)
+               return -EINVAL;
+-        return fuse_mount(mountpoint, &args);
++
++      return fuse_mount(mountpoint, (char *)&args);
+ }
+ 
+ int main(int argc, char **argv)

diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild 
b/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild
new file mode 100644
index 000000000000..8c825ff1cd61
--- /dev/null
+++ b/sys-apps/usermode-utilities/usermode-utilities-20070815-r6.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit toolchain-funcs
+
+DESCRIPTION="Tools for use with Usermode Linux virtual machines"
+HOMEPAGE="http://user-mode-linux.sourceforge.net/";
+SRC_URI="http://user-mode-linux.sourceforge.net/uml_utilities_${PV}.tar.bz2";
+
+S="${WORKDIR}"/tools-${PV}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="fuse"
+
+RDEPEND="
+       fuse? ( sys-fs/fuse:0= )
+       sys-libs/readline:0=
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       # Merge previous patches with fix for bug #331099
+       "${FILESDIR}"/${P}-rollup.patch
+       # Fix owner of humfsify; bug #364531
+       "${FILESDIR}"/${P}-humfsify-owner.patch
+       "${FILESDIR}"/${P}-headers.patch #580816
+       # Fix build /w clang-16, bug #898550
+       "${FILESDIR}"/${PN}-fix-memset.patch
+       "${FILESDIR}"/${PN}-gcc14-build-fix.patch
+)
+
+src_prepare() {
+       default
+       sed -i -e 's:-o \$(BIN):$(LDFLAGS) -o $(BIN):' "${S}"/*/Makefile || die 
"LDFLAGS sed failed"
+       sed -i -e 's:-o \$@:$(LDFLAGS) -o $@:' "${S}"/moo/Makefile || die 
"LDFLAGS sed (moo) failed"
+       if ! use fuse; then
+               einfo "Skipping build of umlmount to avoid sys-fs/fuse 
dependency."
+               sed -i -e 's/\<umlfs\>//' Makefile || die "sed to remove 
sys-fs/fuse dependency failed"
+       fi
+}
+
+src_compile() {
+       tc-export AR CC
+       emake CFLAGS="${CFLAGS} ${CPPFLAGS} -DTUNTAP -D_FILE_OFFSET_BITS=64 
-D_LARGEFILE64_SOURCE -g -Wall" all
+}

Reply via email to