diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index be4b967a47..c87243b93c 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 bff88a69cc..9e89837a99 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