busybox: Move libresolv detection to LEDE Makefile
authorFlorian Fainelli <f.fainelli@gmail.com>
Wed, 12 Apr 2017 16:02:30 +0000 (09:02 -0700)
committerFlorian Fainelli <f.fainelli@gmail.com>
Wed, 12 Apr 2017 16:12:18 +0000 (09:12 -0700)
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 <f.fainelli@gmail.com>
package/utils/busybox/Makefile
package/utils/busybox/patches/230-add_nslookup_lede.patch

index be4b967a47d4818961ab88172d978e942f9faec7..c87243b93c1ff0aaaead42b5dc9c16f645fdb7ae 100644 (file)
@@ -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)" \
index bff88a69ccc06c380194349150cf0e50e59faa79..9e89837a9924fb405547d2f2829b41693c2aff21 100644 (file)
@@ -12,28 +12,10 @@ and the libresolv primitives to parse received DNS responses.
 
 Signed-off-by: Jo-Philipp Wich <jo@mein.io>
 ---
- 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