commit: c5d15ae7a8562758324929aec51ee08c6c8b8ac5 Author: Marek Szuba <marecki <AT> gentoo <DOT> org> AuthorDate: Mon Jul 5 16:43:37 2021 +0000 Commit: Marek Szuba <marecki <AT> gentoo <DOT> org> CommitDate: Mon Jul 5 16:53:22 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5d15ae7
sys-process/numactl: keyword 2.0.14 for ~riscv Needed a backported upstream patch to link against libatomic but with that in place, builds and installs just fine. Signed-off-by: Marek Szuba <marecki <AT> gentoo.org> .../numactl/files/numactl-2.0.14-latomic.patch | 50 ++++++++++++++++++++++ sys-process/numactl/numactl-2.0.14.ebuild | 3 +- 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/sys-process/numactl/files/numactl-2.0.14-latomic.patch b/sys-process/numactl/files/numactl-2.0.14-latomic.patch new file mode 100644 index 00000000000..61655f40996 --- /dev/null +++ b/sys-process/numactl/files/numactl-2.0.14-latomic.patch @@ -0,0 +1,50 @@ +From e0de0d9e981ddb53bdeb4a4b9dc43046c9ff4ff9 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <[email protected]> +Date: Thu, 6 May 2021 23:08:36 +0200 +Subject: [PATCH] link with -latomic if needed + +numactl unconditionally uses __atomic_fetch_and but some architectures +(e.g. sparc) needs to link with -latomic to be able to use it. So check +if -latomic is needed and update numa.pc accordingly + +Signed-off-by: Fabrice Fontaine <[email protected]> +--- + Makefile.am | 1 + + configure.ac | 2 ++ + numa.pc.in | 1 + + 3 files changed, 4 insertions(+) + +diff --git a/Makefile.am b/Makefile.am +index 44d0d76..34f6815 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -151,6 +151,7 @@ SED_PROCESS = \ + -e 's,@exec_prefix\@,$(exec_prefix),g' \ + -e 's,@libdir\@,$(libdir),g' \ + -e 's,@includedir\@,$(includedir),g' \ ++ -e 's,@LIBS\@,$(LIBS),g' \ + < $< > $@ || rm $@ + + %.pc: %.pc.in Makefile +diff --git a/configure.ac b/configure.ac +index 659a765..e3b0eb3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -24,6 +24,8 @@ AM_CONDITIONAL([HAVE_TREE_VECTORIZE], [test x"${tree_vectorize}" = x"true"]) + + AC_CONFIG_FILES([Makefile]) + ++AC_SEARCH_LIBS([__atomic_fetch_and_1], [atomic]) ++ + # GCC tries to be "helpful" and only issue a warning for unrecognized + # attributes. So we compile the test with Werror, so that if the + # attribute is not recognized the compilation fails +diff --git a/numa.pc.in b/numa.pc.in +index 8a0f202..cc04d50 100644 +--- a/numa.pc.in ++++ b/numa.pc.in +@@ -8,3 +8,4 @@ Description: NUMA policy library + Version: @VERSION@ + Cflags: -I${includedir} + Libs: -L${libdir} -lnuma ++Libs.Private: @LIBS@ diff --git a/sys-process/numactl/numactl-2.0.14.ebuild b/sys-process/numactl/numactl-2.0.14.ebuild index 05dee9031d2..e6f89bb776d 100644 --- a/sys-process/numactl/numactl-2.0.14.ebuild +++ b/sys-process/numactl/numactl-2.0.14.ebuild @@ -13,7 +13,7 @@ if [[ "${PV}" == 9999 ]] ; then else SRC_URI="https://github.com/numactl/numactl/releases/download/v${PV}/${P}.tar.gz" # ARM lacks the __NR_migrate_pages syscall. - KEYWORDS="~alpha amd64 -arm arm64 ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux" + KEYWORDS="~alpha amd64 -arm arm64 ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux" fi LICENSE="GPL-2" @@ -21,6 +21,7 @@ SLOT="0" IUSE="static-libs" PATCHES=( + "${FILESDIR}"/${PN}-2.0.14-latomic.patch "${FILESDIR}"/${PN}-2.0.14-numademo-cflags.patch #540856 )
