diff options
author | Brahmajit Das <brahmajit.xyz@gmail.com> | 2023-06-13 14:41:57 +0000 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2023-06-18 15:16:39 +0300 |
commit | 9bcedfbc12dbdf490ae87e06eba372c5a8626d1d (patch) | |
tree | dc473e72bca83f7a26b2a2191385507765d56a8d /sys-apps | |
parent | media-gfx/scrot: add v1.10 (diff) | |
download | gentoo-9bcedfbc12dbdf490ae87e06eba372c5a8626d1d.tar.gz gentoo-9bcedfbc12dbdf490ae87e06eba372c5a8626d1d.tar.bz2 gentoo-9bcedfbc12dbdf490ae87e06eba372c5a8626d1d.zip |
sys-apps/usermode-utilities: Fix call to undeclared library function
A lot of functions from string.h (including memset) couldn't be found.
Resulting in error: call to undeclared library function memset type
error.
Closes: https://bugs.gentoo.org/898550
Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31415
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch | 44 | ||||
-rw-r--r-- | sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild | 47 |
2 files changed, 91 insertions, 0 deletions
diff --git a/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch b/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch new file mode 100644 index 000000000000..39c036ae52ba --- /dev/null +++ b/sys-apps/usermode-utilities/files/usermode-utilities-fix-memset.patch @@ -0,0 +1,44 @@ +Fix building with clang-16, as lot of functions from string.h (including +memset) couldn't be found. Resulting in error: call to undeclared library +function memset type error. +Bug: https://bugs.gentoo.org/898550 +--- a/port-helper/port-helper.c ++++ b/port-helper/port-helper.c +@@ -13,6 +13,7 @@ for read and write, and the console is functional. + #include <stdio.h> + #include <stdlib.h> + #include <signal.h> ++#include <string.h> + #include <errno.h> + #include <unistd.h> + #include <sys/ioctl.h> +--- a/uml_switch/port.c ++++ b/uml_switch/port.c +@@ -1,6 +1,7 @@ + #include <stdio.h> + #include <stdlib.h> + #include <unistd.h> ++#include <string.h> + #include <errno.h> + #include <sys/socket.h> + #include <sys/un.h> +--- a/uml_switch/uml_switch.c ++++ b/uml_switch/uml_switch.c +@@ -6,6 +6,7 @@ + #include <errno.h> + #include <stdlib.h> + #include <signal.h> ++#include <string.h> + #include <fcntl.h> + #include <stdint.h> + #include <sys/socket.h> +--- a/watchdog/uml_watchdog.c ++++ b/watchdog/uml_watchdog.c +@@ -2,6 +2,7 @@ + #include <stdlib.h> + #include <unistd.h> + #include <signal.h> ++#include <string.h> + #include <errno.h> + #include <sys/socket.h> + #include <sys/un.h> diff --git a/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild b/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild new file mode 100644 index 000000000000..4231042d1b43 --- /dev/null +++ b/sys-apps/usermode-utilities/usermode-utilities-20070815-r5.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +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" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="fuse" + +RDEPEND=" + fuse? ( sys-fs/fuse:0= ) + sys-libs/readline:0= +" +DEPEND="${RDEPEND}" + +S="${WORKDIR}"/tools-${PV} + +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 +) + +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 +} |