From 7ae58bebc811a0ac6734405e9bc47533939d61d7 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Wed, 12 Apr 2017 09:02:30 -0700 Subject: [PATCH] busybox: Move libresolv detection to LEDE Makefile Since the LEDE nslookup applet is already specific to LEDE, move the libresolv detection into the busybox Makefile that LEDE uses. This fixes builds with external toolchains that don't automatically search for headers and/or libraries without being told so. Fixes: de5b8e5d2fe1 ("busybox: add musl compatible nslookup replacement") Signed-off-by: Florian Fainelli --- package/utils/busybox/Makefile | 6 ++++++ .../patches/230-add_nslookup_lede.patch | 18 ------------------ 2 files changed, 6 insertions(+), 18 deletions(-) diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index be4b967a47d4..c87243b93c1f 100644 --- a/package/utils/busybox/Makefile +++ b/package/utils/busybox/Makefile @@ -85,6 +85,12 @@ ifdef CONFIG_BUSYBOX_CONFIG_PAM LDLIBS += pam pam_misc pthread endif +ifdef CONFIG_BUSYBOX_DEFAULT_NSLOOKUP_LEDE + ifeq ($(CONFIG_USE_GLIBC),y) + LDLIBS += resolv + endif +endif + define Build/Compile +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ CC="$(TARGET_CC)" \ diff --git a/package/utils/busybox/patches/230-add_nslookup_lede.patch b/package/utils/busybox/patches/230-add_nslookup_lede.patch index bff88a69ccc0..9e89837a9924 100644 --- a/package/utils/busybox/patches/230-add_nslookup_lede.patch +++ b/package/utils/busybox/patches/230-add_nslookup_lede.patch @@ -12,28 +12,10 @@ and the libresolv primitives to parse received DNS responses. Signed-off-by: Jo-Philipp Wich --- - Makefile.flags | 6 + networking/nslookup_lede.c | 869 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 875 insertions(+) create mode 100644 networking/nslookup_lede.c -diff --git a/Makefile.flags b/Makefile.flags -index 65021de..096ab77 100644 ---- a/Makefile.flags -+++ b/Makefile.flags -@@ -134,6 +134,12 @@ else - LDLIBS += m - endif - -+# nslookup_lede might need the resolv library -+RESOLV_AVAILABLE := $(shell echo 'int main(void){res_init();return 0;}' >resolvtest.c; $(CC) $(CFLAGS) -include resolv.h -lresolv -o /dev/null resolvtest.c >/dev/null 2>&1 && echo "y"; rm resolvtest.c) -+ifeq ($(RESOLV_AVAILABLE),y) -+LDLIBS += resolv -+endif -+ - # libpam may use libpthread, libdl and/or libaudit. - # On some platforms that requires an explicit -lpthread, -ldl, -laudit. - # However, on *other platforms* it fails when some of those flags diff --git a/networking/nslookup_lede.c b/networking/nslookup_lede.c new file mode 100644 index 0000000..fe927ad -- 2.30.2