Message ID | 20210801214601.566970-1-fontaine.fabrice@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [1/2] package/irqbalance: use pkg-config to find numa | expand |
On 01/08/2021 23:46, Fabrice Fontaine wrote: > Use pkg-config to find numa to avoid the following build failure when > checking for numa_available: > > configure:9667: checking for numa_available in -lnuma > configure:9692: /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c -lnuma >&5 > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v1': > (.text+0x2a80): undefined reference to `__atomic_fetch_and_1' > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v2': > (.text+0x2ddc): undefined reference to `__atomic_fetch_and_1' > collect2: error: ld returned 1 exit status > > Fixes: > - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521 > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Both applied to master, thanks. I've applied as-is even though what got merged upstream is actually a bit different. The fallback mechanism is however harmless for us, and it's easier for me this way :-) Regards, Arnout > --- > ...igure.ac-use-pkg-config-to-find-numa.patch | 38 +++++++++++++++++++ > 1 file changed, 38 insertions(+) > create mode 100644 package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch > > diff --git a/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch > new file mode 100644 > index 0000000000..751367ccfb > --- /dev/null > +++ b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch > @@ -0,0 +1,38 @@ > +From 274cb8ea470a10ce46b783e77784b0eb08cf20d8 Mon Sep 17 00:00:00 2001 > +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> > +Date: Sun, 1 Aug 2021 23:26:01 +0200 > +Subject: [PATCH] configure.ac: use pkg-config to find numa > + > +Use pkg-config to find numa and fallback to current mechanism. > +Thanks to pkg-config, numa dependencies such as -latomic will be > +retrieved. > + > +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > +[Upstream status: https://github.com/Irqbalance/irqbalance/pull/188] > +--- > + configure.ac | 9 ++++++++- > + 1 file changed, 8 insertions(+), 1 deletion(-) > + > +diff --git a/configure.ac b/configure.ac > +index c45b9ce..50c62ba 100644 > +--- a/configure.ac > ++++ b/configure.ac > +@@ -23,7 +23,14 @@ AC_CHECK_HEADERS([numa.h]) > + > + AC_CHECK_FUNCS(getopt_long) > + > +-AC_CHECK_LIB(numa, numa_available) > ++PKG_CHECK_MODULES([NUMA], [numa], [has_numa=yes], [AC_CHECK_LIB(numa, numa_available)]) > ++AS_IF([test "x$has_numa" = "xyes"], [ > ++ AC_SUBST([NUMA_CFLAGS]) > ++ AC_SUBST([NUMA_LIBS]) > ++ LIBS="$LIBS $NUMA_LIBS" > ++ AC_SUBST([LIBS]) > ++]) > ++ > + AC_CHECK_LIB(m, floor) > + > + PKG_CHECK_MODULES([GLIB2], [glib-2.0], [], [AC_MSG_ERROR([glib-2.0 is required])]) > +-- > +2.30.2 > + >
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes: > Use pkg-config to find numa to avoid the following build failure when > checking for numa_available: > configure:9667: checking for numa_available in -lnuma > configure:9692: > /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest > -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os > -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE > -D_FILE_OFFSET_BITS=64 -static conftest.c -lnuma >&5 > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: > /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): > in function `numa_node_to_cpus_v1': > (.text+0x2a80): undefined reference to `__atomic_fetch_and_1' > /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: > /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): > in function `numa_node_to_cpus_v2': > (.text+0x2ddc): undefined reference to `__atomic_fetch_and_1' > collect2: error: ld returned 1 exit status > Fixes: > - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521 > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Committed to 2021.02.x and 2021.05.x, thanks.
diff --git a/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch new file mode 100644 index 0000000000..751367ccfb --- /dev/null +++ b/package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch @@ -0,0 +1,38 @@ +From 274cb8ea470a10ce46b783e77784b0eb08cf20d8 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Sun, 1 Aug 2021 23:26:01 +0200 +Subject: [PATCH] configure.ac: use pkg-config to find numa + +Use pkg-config to find numa and fallback to current mechanism. +Thanks to pkg-config, numa dependencies such as -latomic will be +retrieved. + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Upstream status: https://github.com/Irqbalance/irqbalance/pull/188] +--- + configure.ac | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index c45b9ce..50c62ba 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -23,7 +23,14 @@ AC_CHECK_HEADERS([numa.h]) + + AC_CHECK_FUNCS(getopt_long) + +-AC_CHECK_LIB(numa, numa_available) ++PKG_CHECK_MODULES([NUMA], [numa], [has_numa=yes], [AC_CHECK_LIB(numa, numa_available)]) ++AS_IF([test "x$has_numa" = "xyes"], [ ++ AC_SUBST([NUMA_CFLAGS]) ++ AC_SUBST([NUMA_LIBS]) ++ LIBS="$LIBS $NUMA_LIBS" ++ AC_SUBST([LIBS]) ++]) ++ + AC_CHECK_LIB(m, floor) + + PKG_CHECK_MODULES([GLIB2], [glib-2.0], [], [AC_MSG_ERROR([glib-2.0 is required])]) +-- +2.30.2 +
Use pkg-config to find numa to avoid the following build failure when checking for numa_available: configure:9667: checking for numa_available in -lnuma configure:9692: /tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -static conftest.c -lnuma >&5 /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v1': (.text+0x2a80): undefined reference to `__atomic_fetch_and_1' /tmp/instance-7/output-1/host/opt/ext-toolchain/bin/../lib/gcc/microblazeel-buildroot-linux-uclibc/9.3.0/../../../../microblazeel-buildroot-linux-uclibc/bin/ld: /tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/libnuma.a(libnuma.o): in function `numa_node_to_cpus_v2': (.text+0x2ddc): undefined reference to `__atomic_fetch_and_1' collect2: error: ld returned 1 exit status Fixes: - http://autobuild.buildroot.org/results/577a63432fba2f9ae1ed2c6c2a77c5ce54ac5521 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- ...igure.ac-use-pkg-config-to-find-numa.patch | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 package/irqbalance/0002-configure.ac-use-pkg-config-to-find-numa.patch