package/exim: use libnsl only with glibc
authorBernd Kuhls <bernd.kuhls@t-online.de>
Sun, 12 Apr 2015 14:21:46 +0000 (16:21 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 30 Jun 2015 21:07:15 +0000 (23:07 +0200)
Only (e)glibc provides libnsl, uclibc provides only a stub, and musl
doesn't implement it at all.

Fixes compilation using this defconfig

    BR2_arm=y
    BR2_cortex_a7=y
    BR2_STATIC_LIBS=y
    BR2_TOOLCHAIN_EXTERNAL=y
    BR2_PACKAGE_OPENSSL=y
    BR2_PACKAGE_EXIM=y

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/exim/exim.mk

index b85279357403f9a7a38ace6250aa3b6df016878c..8ad0328d342bf59b2f19c0c225f3095f071c0ea8 100644 (file)
@@ -72,6 +72,14 @@ define EXIM_USE_DEFAULT_CONFIG_FILE_OPENSSL
 endef
 endif
 
+# only (e)glibc provides libnsl, remove -lnsl for all other toolchains
+# http://bugs.exim.org/show_bug.cgi?id=1564
+ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),)
+define EXIM_REMOVE_LIBNSL_FROM_MAKEFILE
+       $(SED) 's/-lnsl//g' $(@D)/OS/Makefile-Linux
+endef
+endif
+
 define EXIM_CONFIGURE_TOOLCHAIN
        $(call exim-config-add,CC,$(TARGET_CC))
        $(call exim-config-add,CFLAGS,$(TARGET_CFLAGS))