From: Fabrice Fontaine Date: Fri, 7 May 2021 17:07:01 +0000 (+0200) Subject: package/numactl: add -latomic to numa.pc X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a699a667bd64a52ad3c30210c4756953232cc9cc;p=buildroot.git package/numactl: add -latomic to numa.pc Instead of passing -latomic through LDFLAGS as done in commit 4ed540ddf59bec4b389be44d7f42820d2466904f, properly check for it in configure.ac and add it to numa.pc or numactl users won't be able to get it Signed-off-by: Fabrice Fontaine Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- diff --git a/package/numactl/0002-link-with-latomic-if-needed.patch b/package/numactl/0002-link-with-latomic-if-needed.patch new file mode 100644 index 0000000000..6dff0cb233 --- /dev/null +++ b/package/numactl/0002-link-with-latomic-if-needed.patch @@ -0,0 +1,52 @@ +From e0de0d9e981ddb53bdeb4a4b9dc43046c9ff4ff9 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +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 +[Retrieved from: +https://github.com/numactl/numactl/commit/e0de0d9e981ddb53bdeb4a4b9dc43046c9ff4ff9] +--- + 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/package/numactl/numactl.mk b/package/numactl/numactl.mk index 3364f6c5c3..cf9c759693 100644 --- a/package/numactl/numactl.mk +++ b/package/numactl/numactl.mk @@ -12,8 +12,4 @@ NUMACTL_INSTALL_STAGING = YES NUMACTL_AUTORECONF = YES NUMACTL_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -fPIC" -ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) -NUMACTL_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -latomic" -endif - $(eval $(autotools-package))