From: Hannu Nyman Date: Tue, 16 Jun 2015 18:50:04 +0000 (+0300) Subject: vsftpd: fix musl compatibility X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=bc7c3799d4a406ece96e74418b2df2734f571bfc;p=feed%2Fpackages.git vsftpd: fix musl compatibility Make vsftpd to compile with musl, while preserving uclibc compatibility. When using musl: * disable UTMPX functionality * disable -lnsl option in upstream Makefile Signed-off-by: Hannu Nyman --- diff --git a/net/vsftpd/Makefile b/net/vsftpd/Makefile index a5c55ad061..f24a79b8b1 100644 --- a/net/vsftpd/Makefile +++ b/net/vsftpd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vsftpd PKG_VERSION:=3.0.2 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://security.appspot.com/downloads/ @@ -49,8 +49,15 @@ endef Package/vsftpd-tls/conffiles=$(Package/vsftpd/conffiles) +ifneq ($(CONFIG_USE_MUSL),) + NLSSTRING:=-lcrypt +else + NLSSTRING:=-lcrypt -lnsl +endif + ifeq ($(BUILD_VARIANT),notls) define Build/Compile + $(SED) 's/-lcrypt -lnsl/$(NLSSTRING)/' $(PKG_BUILD_DIR)/Makefile $(MAKE) -C $(PKG_BUILD_DIR) \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ @@ -63,6 +70,7 @@ ifeq ($(BUILD_VARIANT),tls) define Build/Compile $(SED) 's/#undef VSF_BUILD_SSL/#define VSF_BUILD_SSL/' $(PKG_BUILD_DIR)/builddefs.h $(SED) 's/-lcrypt -lnsl/-lcrypt -lnsl -lssl -lcrypto/' $(PKG_BUILD_DIR)/Makefile + $(SED) 's/-lcrypt -lnsl/$(NLSSTRING)/' $(PKG_BUILD_DIR)/Makefile $(MAKE) -C $(PKG_BUILD_DIR) \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ diff --git a/net/vsftpd/patches/006-musl-compatibility.patch b/net/vsftpd/patches/006-musl-compatibility.patch new file mode 100644 index 0000000000..9eefec79d3 --- /dev/null +++ b/net/vsftpd/patches/006-musl-compatibility.patch @@ -0,0 +1,13 @@ +--- a/sysdeputil.c ++++ b/sysdeputil.c +@@ -58,7 +58,9 @@ + #define VSF_SYSDEP_HAVE_SHADOW + #define VSF_SYSDEP_HAVE_USERSHELL + #define VSF_SYSDEP_HAVE_LIBCAP +-#define VSF_SYSDEP_HAVE_UTMPX ++#if defined(__GLIBC__) || defined(__UCLIBC__) ++ #define VSF_SYSDEP_HAVE_UTMPX ++#endif + + #define __USE_GNU + #include