ASR_BASE
Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
diff --git a/external/subpack/libs/cyrus-sasl/Makefile b/external/subpack/libs/cyrus-sasl/Makefile
new file mode 100644
index 0000000..ae036b5
--- /dev/null
+++ b/external/subpack/libs/cyrus-sasl/Makefile
@@ -0,0 +1,148 @@
+#
+# Copyright (C) 2006-2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=cyrus-sasl
+PKG_VERSION:=2.1.28
+PKG_RELEASE:=3
+
+PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-2.1.28/
+PKG_HASH:=7ccfc6abd01ed67c1a0924b353e526f1b766b21f42d4562ee635a8ebfc5bb38c
+
+PKG_LICENSE:=BSD-4c BSD
+PKG_LICENSE_FILES:=COPYING cmulocal/COPYING saslauthd/COPYING
+PKG_CPE_ID:=cpe:/a:cmu:cyrus-sasl
+
+PKG_FIXUP:=autoreconf
+PKG_MACRO_PATHS:=cmulocal config ../cmulocal ../config
+PKG_AUTOMAKE_PATHS:=. saslauthd sasldb
+PKG_REMOVE_FILES:=aclocal.m4 saslauthd/aclocal.m4 config/libtool.m4
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libsasl2/Default
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=A general purpose authentication library
+ URL:=http://asg.web.cmu.edu/sasl/
+endef
+
+define Package/libsasl2
+ $(call Package/libsasl2/Default)
+ DEPENDS:=+libopenssl
+ TITLE+= (libraries)
+endef
+
+define Package/libsasl2-sasldb
+ $(call Package/libsasl2/Default)
+ DEPENDS:=+libsasl2 +libdb47
+ TITLE+= (sasldb libraries)
+endef
+
+define Package/libsasl2-utils
+ $(call Package/libsasl2/Default)
+ DEPENDS:=+libsasl2 +libdb47
+ TITLE+= (sasldb utilities)
+endef
+
+TARGET_CFLAGS += $(FPIC)
+CONFIGURE_ARGS += \
+ --enable-shared \
+ --enable-static \
+ --disable-sample \
+ --enable-staticdlopen \
+ --disable-java \
+ --disable-alwaystrue \
+ --disable-checkapop \
+ --enable-cram \
+ --enable-digest \
+ --enable-auth-sasldb \
+ --disable-otp \
+ --disable-srp \
+ --disable-srp-setpass \
+ --disable-krb4 \
+ --disable-gssapi \
+ --disable-gss_mutexes \
+ --enable-plain \
+ --enable-anon \
+ --disable-login \
+ --disable-ntlm \
+ --disable-sql \
+ --disable-ldapdb \
+ --with-dblib=berkeley \
+ --without-gdbm \
+ --with-devrandom="/dev/urandom" \
+ --without-pam \
+ --without-saslauthd \
+ --without-authdaemond \
+ --without-pwcheck \
+ --with-ipctype=unix \
+ --with-openssl="$(STAGING_DIR)/usr" \
+ --without-des \
+ --without-opie \
+ --without-ldap \
+ --without-mysql \
+ --without-pgsql \
+ --without-sqlite \
+ --without-rc4 \
+ --without-dmalloc \
+ --without-sfio \
+ --disable-sample
+
+define Build/Compile
+ $(MAKE) -C $(PKG_BUILD_DIR)/include \
+ CC="$(HOSTCC)" \
+ LINK="$(HOSTCC) -o makemd5 -lc" \
+ CFLAGS="" \
+ CPPFLAGS="" \
+ makemd5
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ DESTDIR="$(PKG_INSTALL_DIR)" \
+ all install
+endef
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include/
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/sasl $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsasl2.{a,so*} $(1)/usr/lib/
+ ln -sf libsasl2.a $(1)/usr/lib/libsasl.a
+ ln -sf libsasl2.so $(1)/usr/lib/libsasl.so
+ $(INSTALL_DIR) $(1)/usr/lib/sasl2
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/lib*.{a,so*} $(1)/usr/lib/sasl2/
+ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libsasl2.pc $(1)/usr/lib/pkgconfig/
+endef
+
+define Package/libsasl2/install
+ $(INSTALL_DIR) $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsasl2.so.* $(1)/usr/lib/
+ $(INSTALL_DIR) $(1)/usr/lib/sasl2
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libanonymous.so* $(1)/usr/lib/sasl2/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libplain.so* $(1)/usr/lib/sasl2/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libcrammd5.so* $(1)/usr/lib/sasl2/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libdigestmd5.so* $(1)/usr/lib/sasl2/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libscram.so* $(1)/usr/lib/sasl2/
+endef
+
+define Package/libsasl2-sasldb/install
+ $(INSTALL_DIR) $(1)/usr/lib/sasl2
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/sasl2/libsasldb.so* $(1)/usr/lib/sasl2/
+endef
+
+define Package/libsasl2-utils/install
+ $(INSTALL_DIR) $(1)/usr/sbin/
+ $(CP) $(PKG_INSTALL_DIR)/usr/sbin/{pluginviewer,sasldblistusers2,saslpasswd2} $(1)/usr/sbin/
+endef
+
+$(eval $(call BuildPackage,libsasl2))
+$(eval $(call BuildPackage,libsasl2-sasldb))
+$(eval $(call BuildPackage,libsasl2-utils))
diff --git a/external/subpack/libs/cyrus-sasl/patches/010-gcc14.patch b/external/subpack/libs/cyrus-sasl/patches/010-gcc14.patch
new file mode 100644
index 0000000..0ef2dad
--- /dev/null
+++ b/external/subpack/libs/cyrus-sasl/patches/010-gcc14.patch
@@ -0,0 +1,32 @@
+--- a/lib/saslutil.c
++++ b/lib/saslutil.c
+@@ -59,9 +59,7 @@
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
+-#ifdef HAVE_TIME_H
+ #include <time.h>
+-#endif
+ #include "saslint.h"
+ #include <saslutil.h>
+
+--- a/plugins/cram.c
++++ b/plugins/cram.c
+@@ -48,6 +48,7 @@
+ #include <string.h>
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <time.h>
+ #ifndef macintosh
+ #include <sys/stat.h>
+ #endif
+--- a/plugins/digestmd5.c
++++ b/plugins/digestmd5.c
+@@ -50,6 +50,7 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
++#include <time.h>
+ #ifndef macintosh
+ #include <sys/types.h>
+ #include <sys/stat.h>