package/iwd: fix static build with readline
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Wed, 16 Dec 2020 07:04:09 +0000 (08:04 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 31 Dec 2020 16:31:17 +0000 (17:31 +0100)
Fixes:
 - http://autobuild.buildroot.org/results/8fb1341f2f5094c346456b43b4fc04996c2e1485

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/iwd/0001-configure.ac-fix-static-build-with-readline.patch [new file with mode: 0644]

diff --git a/package/iwd/0001-configure.ac-fix-static-build-with-readline.patch b/package/iwd/0001-configure.ac-fix-static-build-with-readline.patch
new file mode 100644 (file)
index 0000000..37dbdb1
--- /dev/null
@@ -0,0 +1,61 @@
+From 358e0755c3a434d7a815519b8c10ae5d347caad0 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Wed, 16 Dec 2020 07:51:04 +0100
+Subject: [PATCH] configure.ac: fix static build with readline
+
+Retrieve the dependencies of readline through pkg-config (and fallback
+to -lreadline) to avoid the following build failure:
+
+/nvme/rc-buildroot-test/scripts/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-uclibc/8.3.0/../../../../x86_64-buildroot-linux-uclibc/bin/ld: /nvme/rc-buildroot-test/scripts/instance-0/output-1/host/bin/../x86_64-buildroot-linux-uclibc/sysroot/usr/lib/libreadline.a(display.o): in function `cr':
+display.c:(.text+0x1ab): undefined reference to `tputs'
+
+Fixes:
+ - http://autobuild.buildroot.org/results/8fb1341f2f5094c346456b43b4fc04996c2e1485
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status:
+https://lists.01.org/hyperkitty/list/iwd@lists.01.org/thread/NFI4P52Y65T6XX7S7DGIVDMZISNQWUUC/]
+---
+ Makefile.am  | 4 ++--
+ configure.ac | 3 +++
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 3cd7eaa6..493d06cc 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -288,7 +288,7 @@ client_iwctl_SOURCES = client/main.c \
+                       client/network.h client/network.c \
+                       client/properties.h client/properties.c \
+                       client/wsc.c client/station.c
+-client_iwctl_LDADD = $(ell_ldadd) -lreadline
++client_iwctl_LDADD = $(ell_ldadd) $(READLINE_LIBS)
+ if MANUAL_PAGES
+ man_MANS += client/iwctl.1
+@@ -504,7 +504,7 @@ unit_test_client_SOURCES = unit/test-client.c \
+                               client/display.h client/display.c \
+                               client/network.h client/network.c \
+                               client/properties.h client/properties.c
+-unit_test_client_LDADD = $(ell_ldadd) -lreadline
++unit_test_client_LDADD = $(ell_ldadd) $(READLINE_LIBS)
+ endif
+ unit_test_sae_SOURCES = unit/test-sae.c \
+diff --git a/configure.ac b/configure.ac
+index 7bd917a4..52f27ed9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -154,6 +154,9 @@ AC_ARG_ENABLE([client], AC_HELP_STRING([--disable-client],
+ if (test "${enable_client}" != "no"); then
+       AC_CHECK_HEADERS(readline/readline.h, enable_readline=yes,
+                       AC_MSG_ERROR(readline header files are required))
++      PKG_CHECK_MODULES(READLINE, readline, dummy=yes, READLINE_LIBS=-lreadline)
++      AC_SUBST(READLINE_CFLAGS)
++      AC_SUBST(READLINE_LIBS)
+ fi
+ AM_CONDITIONAL(CLIENT, test "${enable_client}" != "no")
+-- 
+2.29.2
+