summaryrefslogtreecommitdiffstats
path: root/package/libs
diff options
context:
space:
mode:
Diffstat (limited to 'package/libs')
-rw-r--r--package/libs/gettext-full/Makefile8
-rw-r--r--package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch17
-rw-r--r--package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch22
-rw-r--r--package/libs/gettext-full/patches/160-eglibc_stdio.patch36
-rw-r--r--package/libs/libbsd/Makefile2
-rw-r--r--package/libs/libevent2/Makefile7
-rw-r--r--package/libs/libiconv-full/Makefile5
-rw-r--r--package/libs/libiconv/Makefile2
-rw-r--r--package/libs/libmnl/Makefile4
-rw-r--r--package/libs/libnetfilter-conntrack/Makefile8
-rw-r--r--package/libs/libnfnetlink/Makefile8
-rw-r--r--package/libs/libnl-tiny/files/libnl-tiny.pc2
-rw-r--r--package/libs/libnl/Makefile16
-rw-r--r--package/libs/libnl/patches/110-offsetof.patch12
-rw-r--r--package/libs/libnl/patches/160-update_includes_for_iw.patch34
-rw-r--r--package/libs/libpcap/Config.in8
-rw-r--r--package/libs/libpcap/Makefile16
-rw-r--r--package/libs/libpcap/patches/100-debian_shared_lib.patch130
-rw-r--r--package/libs/libpcap/patches/102-makefile_disable_manpages.patch37
-rw-r--r--package/libs/libpcap/patches/202-protocol_api.patch43
-rw-r--r--package/libs/libubox/Makefile22
-rw-r--r--package/libs/libusb-compat/Makefile49
-rw-r--r--package/libs/libusb/Makefile49
-rw-r--r--package/libs/libusb/patches/001-timerfd.patch33
-rw-r--r--package/libs/lzo/Makefile56
-rw-r--r--package/libs/ncurses/Makefile13
-rw-r--r--package/libs/ncurses/patches/100-ncurses-5.6-20080112-urxvt.patch4
-rw-r--r--package/libs/ncurses/patches/101-ncurses-5.6-20080628-kbs.patch16
-rw-r--r--package/libs/ncurses/patches/200-fix_missing_include.patch14
-rw-r--r--package/libs/openssl/Config.in2
-rw-r--r--package/libs/openssl/Makefile11
-rw-r--r--package/libs/openssl/patches/110-optimize-for-size.patch2
-rw-r--r--package/libs/openssl/patches/120-cisco-dtls-fix.patch31
-rw-r--r--package/libs/openssl/patches/150-no_engines.patch18
-rw-r--r--package/libs/openssl/patches/160-disable_doc_tests.patch4
-rw-r--r--package/libs/openssl/patches/200-etrax_support.patch13
-rw-r--r--package/libs/openssl/patches/210-fix_aes_mips.patch64
-rw-r--r--package/libs/polarssl/Makefile81
-rw-r--r--package/libs/polarssl/patches/100-disable-testsuites.patch21
-rw-r--r--package/libs/polarssl/patches/200-reduce_config.patch112
-rw-r--r--package/libs/polarssl/patches/300-openssl_cipher_name_compat.patch53
-rw-r--r--package/libs/polarssl/patches/310-fix_blowfish_key_len.patch29
-rw-r--r--package/libs/uclibc++/Makefile1
-rw-r--r--package/libs/ustream-ssl/Makefile59
44 files changed, 779 insertions, 395 deletions
diff --git a/package/libs/gettext-full/Makefile b/package/libs/gettext-full/Makefile
index 3444e6b2f..20c234ef3 100644
--- a/package/libs/gettext-full/Makefile
+++ b/package/libs/gettext-full/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2012 OpenWrt.org
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=gettext-full
-PKG_VERSION:=0.18.1.1
-PKG_RELEASE:=2
+PKG_VERSION:=0.18.2.1
+PKG_RELEASE:=1
PKG_SOURCE:=gettext-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/gettext
-PKG_MD5SUM:=3dd55b952826d2b32f51308f2f91aa89
+PKG_MD5SUM:=034c8103b14654ebd300fadac44d6f14
PKG_BUILD_DIR:=$(BUILD_DIR)/gettext-$(PKG_VERSION)
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/gettext-$(PKG_VERSION)
diff --git a/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch b/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch
deleted file mode 100644
index 051c3747f..000000000
--- a/package/libs/gettext-full/patches/004-gnulib-uclibc-sched_param-def.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-uclibc defines __GLIBC__ but it does not expose struct shed_param as much as glibc
-and is not needed too per standard. gnulib attempts to use it but we have to account
-for it because in this case uclibc does not behave like glibc.
-
--Khem
-
---- a/gettext-tools/gnulib-lib/spawn.in.h
-+++ b/gettext-tools/gnulib-lib/spawn.in.h
-@@ -31,7 +31,7 @@
-
- /* Get definitions of 'struct sched_param' and 'sigset_t'.
- But avoid namespace pollution on glibc systems. */
--#ifndef __GLIBC__
-+#if !defined __GLIBC__ || defined __UCLIBC__
- # include <sched.h>
- # include <signal.h>
- #endif
diff --git a/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch b/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch
deleted file mode 100644
index dafa79c46..000000000
--- a/package/libs/gettext-full/patches/005-uclibc-0.9.30-compat.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/gettext-runtime/intl/localename.c
-+++ b/gettext-runtime/intl/localename.c
-@@ -2607,7 +2607,7 @@ gl_locale_name_thread_unsafe (int catego
- locale_t thread_locale = uselocale (NULL);
- if (thread_locale != LC_GLOBAL_LOCALE)
- {
--# if __GLIBC__ >= 2
-+# if __GLIBC__ >= 2 && !defined __UCLIBC__
- /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in
- glibc < 2.12.
- See <http://sourceware.org/bugzilla/show_bug.cgi?id=10968>. */
---- a/gettext-tools/gnulib-lib/localename.c
-+++ b/gettext-tools/gnulib-lib/localename.c
-@@ -2607,7 +2607,7 @@ gl_locale_name_thread_unsafe (int catego
- locale_t thread_locale = uselocale (NULL);
- if (thread_locale != LC_GLOBAL_LOCALE)
- {
--# if __GLIBC__ >= 2
-+# if __GLIBC__ >= 2 && !defined __UCLIBC__
- /* Work around an incorrect definition of the _NL_LOCALE_NAME macro in
- glibc < 2.12.
- See <http://sourceware.org/bugzilla/show_bug.cgi?id=10968>. */
diff --git a/package/libs/gettext-full/patches/160-eglibc_stdio.patch b/package/libs/gettext-full/patches/160-eglibc_stdio.patch
deleted file mode 100644
index a4c4f926d..000000000
--- a/package/libs/gettext-full/patches/160-eglibc_stdio.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- a/gettext-runtime/gnulib-lib/stdio.in.h
-+++ b/gettext-runtime/gnulib-lib/stdio.in.h
-@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
- #undef gets
-+#if HAVE_RAW_DECL_GETS
- _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-+#endif
-
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
---- a/gettext-tools/gnulib-lib/stdio.in.h
-+++ b/gettext-tools/gnulib-lib/stdio.in.h
-@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
- #undef gets
-+#if HAVE_RAW_DECL_GETS
- _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-+#endif
-
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
---- a/gettext-tools/libgettextpo/stdio.in.h
-+++ b/gettext-tools/libgettextpo/stdio.in.h
-@@ -141,7 +141,9 @@ _GL_WARN_ON_USE (fflush, "fflush is not
- so any use of gets warrants an unconditional warning. Assume it is
- always declared, since it is required by C89. */
- #undef gets
-+#if HAVE_RAW_DECL_GETS
- _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
-+#endif
-
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
diff --git a/package/libs/libbsd/Makefile b/package/libs/libbsd/Makefile
index ce1de4bb3..7db1fc708 100644
--- a/package/libs/libbsd/Makefile
+++ b/package/libs/libbsd/Makefile
@@ -18,7 +18,7 @@ PKG_INSTALL:=1
define Package/libbsd
SECTION:=libs
CATEGORY:=Libraries
- DEPENDS:=@!(USE_UCLIBC||USE_MUSL)
+ DEPENDS:=@USE_EGLIBC
TITLE:=common BSD library
endef
diff --git a/package/libs/libevent2/Makefile b/package/libs/libevent2/Makefile
index feb90715e..e260e120d 100644
--- a/package/libs/libevent2/Makefile
+++ b/package/libs/libevent2/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2011-2012 OpenWrt.org
+# Copyright (C) 2011-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,14 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libevent2
-PKG_VERSION:=2.0.19
+PKG_VERSION:=2.0.21
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/libevent-$(PKG_VERSION)-stable
PKG_SOURCE:=libevent-$(PKG_VERSION)-stable.tar.gz
PKG_SOURCE_URL:=http://www.monkey.org/~provos/ \
@SF/levent
-PKG_MD5SUM:=91111579769f46055b0a438f5cc59572
+PKG_MD5SUM:=b2405cc9ebf264aa47ff615d9de527a2
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
PKG_FIXUP:=autoreconf
@@ -29,7 +29,6 @@ define Package/libevent2/Default
CATEGORY:=Libraries
TITLE:=Event notification
URL:=http://www.monkey.org/~provos/libevent/
- DEPENDS:=+USE_EGLIBC:librt
endef
define Package/libevent2/Default/description
diff --git a/package/libs/libiconv-full/Makefile b/package/libs/libiconv-full/Makefile
index 6ce058903..75bca8334 100644
--- a/package/libs/libiconv-full/Makefile
+++ b/package/libs/libiconv-full/Makefile
@@ -83,6 +83,11 @@ define Package/libiconv-full/install
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libiconv.so* $(1)/usr/lib/
endef
+define Package/iconv/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(CP) $(PKG_INSTALL_DIR)/usr/bin/iconv $(1)/usr/bin/
+endef
+
$(eval $(call BuildPackage,libcharset))
$(eval $(call BuildPackage,libiconv-full))
$(eval $(call BuildPackage,iconv))
diff --git a/package/libs/libiconv/Makefile b/package/libs/libiconv/Makefile
index 66d1cfb3b..d2f5b7edd 100644
--- a/package/libs/libiconv/Makefile
+++ b/package/libs/libiconv/Makefile
@@ -36,7 +36,7 @@ define Build/Configure
endef
define Build/Compile
- $(TARGET_CC) -c $(PKG_BUILD_DIR)/iconv.c -o $(PKG_BUILD_DIR)/iconv.o -I$(PKG_BUILD_DIR)/include $(FPIC)
+ $(TARGET_CC) $(TARGET_CFLAGS) -c $(PKG_BUILD_DIR)/iconv.c -o $(PKG_BUILD_DIR)/iconv.o -I$(PKG_BUILD_DIR)/include $(FPIC)
$(TARGET_CROSS)ar rcs $(PKG_BUILD_DIR)/libiconv.a $(PKG_BUILD_DIR)/iconv.o
endef
diff --git a/package/libs/libmnl/Makefile b/package/libs/libmnl/Makefile
index 42958e75c..fa5fc1e2e 100644
--- a/package/libs/libmnl/Makefile
+++ b/package/libs/libmnl/Makefile
@@ -8,14 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libmnl
-PKG_VERSION:=1.0.1
+PKG_VERSION:=1.0.3
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \
http://www.netfilter.org/projects/libmnl/files \
ftp://ftp.netfilter.org/pub/libmnl
-PKG_MD5SUM:=e936236bb57a2375afa4e70e75dc3ba9
+PKG_MD5SUM:=7d95fc3bea3365bc03c48e484224f65f
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
diff --git a/package/libs/libnetfilter-conntrack/Makefile b/package/libs/libnetfilter-conntrack/Makefile
index 849927799..43413a713 100644
--- a/package/libs/libnetfilter-conntrack/Makefile
+++ b/package/libs/libnetfilter-conntrack/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2009-2012 OpenWrt.org
+# Copyright (C) 2009-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,14 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libnetfilter_conntrack
-PKG_VERSION:=0.9.1
+PKG_VERSION:=1.0.3
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \
http://www.netfilter.org/projects/libnetfilter_conntrack/files/ \
ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/
-PKG_MD5SUM:=b7506cbb7580433859809d8eac53a199
+PKG_MD5SUM:=73394a3d8d0cfecc6abb6027b4792d52
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
PKG_FIXUP:=autoreconf
@@ -27,7 +27,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/libnetfilter-conntrack
SECTION:=libs
CATEGORY:=Libraries
- DEPENDS:=+libnfnetlink +kmod-nf-conntrack-netlink
+ DEPENDS:=+libnfnetlink +kmod-nf-conntrack-netlink +libmnl
TITLE:=API to the in-kernel connection tracking state table
URL:=http://www.netfilter.org/projects/libnetfilter_conntrack/
endef
diff --git a/package/libs/libnfnetlink/Makefile b/package/libs/libnfnetlink/Makefile
index 9afdde89c..f9ade14bc 100644
--- a/package/libs/libnfnetlink/Makefile
+++ b/package/libs/libnfnetlink/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2007-2012 OpenWrt.org
+# Copyright (C) 2007-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,15 +8,15 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libnfnetlink
-PKG_VERSION:=1.0.0
-PKG_RELEASE:=2
+PKG_VERSION:=1.0.1
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \
http://www.netfilter.org/projects/libnfnetlink/files/ \
ftp://ftp.netfilter.org/pub/libnfnetlink/ \
http://mirrors.evolva.ro/netfilter.org/libnfnetlink/
-PKG_MD5SUM:=016fdec8389242615024c529acc1adb8
+PKG_MD5SUM:=98927583d2016a9fb1936fed992e2c5e
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
PKG_FIXUP:=autoreconf
diff --git a/package/libs/libnl-tiny/files/libnl-tiny.pc b/package/libs/libnl-tiny/files/libnl-tiny.pc
index 8c1bf6f2b..af79cd301 100644
--- a/package/libs/libnl-tiny/files/libnl-tiny.pc
+++ b/package/libs/libnl-tiny/files/libnl-tiny.pc
@@ -7,4 +7,4 @@ Name: libnl-tiny
Description: Convenience library for netlink sockets
Version: 2.0
Libs: -L${libdir} -lnl-tiny
-Cflags:
+Cflags: -I${includedir}
diff --git a/package/libs/libnl/Makefile b/package/libs/libnl/Makefile
index 13756995f..5488065c4 100644
--- a/package/libs/libnl/Makefile
+++ b/package/libs/libnl/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2009 OpenWrt.org
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libnl
-PKG_VERSION:=2.0
+PKG_VERSION:=3.2.21
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.infradead.org/~tgr/libnl/files/
-PKG_MD5SUM:=6aaf1e9802a17a7d702bb0638044ffa7
+PKG_MD5SUM:=6fe7136558a9071e70673dcda38545b3
include $(INCLUDE_DIR)/package.mk
@@ -21,6 +21,7 @@ define Package/libnl
SECTION:=libs
CATEGORY:=Libraries
TITLE:=netlink socket library
+ DEPENDS:=+libpthread
URL:=http://people.suug.ch/~tgr/libnl/
endef
@@ -46,11 +47,10 @@ endef
define Package/libnl/install
$(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route.so.* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl.so.* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf.so.* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route.so.* $(1)/usr/lib/
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl.so.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-route-3.so.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-genl-3.so.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-nf-3.so.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnl-3.so.* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libnl))
diff --git a/package/libs/libnl/patches/110-offsetof.patch b/package/libs/libnl/patches/110-offsetof.patch
deleted file mode 100644
index fa944a9c4..000000000
--- a/package/libs/libnl/patches/110-offsetof.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/include/netlink-local.h
-+++ b/include/netlink-local.h
-@@ -337,7 +337,9 @@ static inline int nl_cb_call(struct nl_c
- }
-
- #define ARRAY_SIZE(X) (sizeof(X) / sizeof((X)[0]))
-+#ifndef offsetof
- #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
-+#endif
-
- #define __init __attribute__ ((constructor))
- #define __exit __attribute__ ((destructor))
diff --git a/package/libs/libnl/patches/160-update_includes_for_iw.patch b/package/libs/libnl/patches/160-update_includes_for_iw.patch
deleted file mode 100644
index ad36dab4b..000000000
--- a/package/libs/libnl/patches/160-update_includes_for_iw.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/include/linux/genetlink.h
-+++ b/include/linux/genetlink.h
-@@ -39,6 +39,9 @@ enum {
- CTRL_CMD_NEWOPS,
- CTRL_CMD_DELOPS,
- CTRL_CMD_GETOPS,
-+ CTRL_CMD_NEWMCAST_GRP,
-+ CTRL_CMD_DELMCAST_GRP,
-+ CTRL_CMD_GETMCAST_GRP, /* unused */
- __CTRL_CMD_MAX,
- };
-
-@@ -52,6 +55,7 @@ enum {
- CTRL_ATTR_HDRSIZE,
- CTRL_ATTR_MAXATTR,
- CTRL_ATTR_OPS,
-+ CTRL_ATTR_MCAST_GROUPS,
- __CTRL_ATTR_MAX,
- };
-
-@@ -66,4 +70,13 @@ enum {
-
- #define CTRL_ATTR_OP_MAX (__CTRL_ATTR_OP_MAX - 1)
-
-+enum {
-+ CTRL_ATTR_MCAST_GRP_UNSPEC,
-+ CTRL_ATTR_MCAST_GRP_NAME,
-+ CTRL_ATTR_MCAST_GRP_ID,
-+ __CTRL_ATTR_MCAST_GRP_MAX,
-+};
-+
-+#define CTRL_ATTR_MCAST_GRP_MAX (__CTRL_ATTR_MCAST_GRP_MAX - 1)
-+
- #endif /* __LINUX_GENERIC_NETLINK_H */
diff --git a/package/libs/libpcap/Config.in b/package/libs/libpcap/Config.in
index ef32c1bc0..5fee75a59 100644
--- a/package/libs/libpcap/Config.in
+++ b/package/libs/libpcap/Config.in
@@ -1,15 +1,15 @@
menu "Configuration"
- depends PACKAGE_libpcap
+ depends on PACKAGE_libpcap
config PCAP_HAS_USB
bool "Include USB support"
- depends PACKAGE_kmod-usb-core
+ depends on PACKAGE_kmod-usb-core
default n
config PCAP_HAS_BT
bool "Include bluetooth support"
- depends PACKAGE_kmod-bluetooth
- depends BROKEN
+ depends on PACKAGE_kmod-bluetooth
+ depends on BROKEN
default n
endmenu
diff --git a/package/libs/libpcap/Makefile b/package/libs/libpcap/Makefile
index de77c0018..f1d287225 100644
--- a/package/libs/libpcap/Makefile
+++ b/package/libs/libpcap/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2011 OpenWrt.org
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libpcap
-PKG_VERSION:=1.1.1
-PKG_RELEASE:=2
+PKG_VERSION:=1.3.0
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.tcpdump.org/release/
-PKG_MD5SUM:=1bca27d206970badae248cfa471bbb47
+PKG_MD5SUM:=f78455a92622b7a3c05c58b6ad1cec7e
PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
@@ -45,7 +45,10 @@ TARGET_CFLAGS += \
-fdata-sections
CONFIGURE_VARS += \
- ac_cv_linux_vers=$(LINUX_VERSION)
+ ac_cv_linux_vers=$(LINUX_VERSION) \
+ ac_cv_header_libusb_1_0_libusb_h=no \
+ ac_cv_netfilter_can_compile=no
+
CONFIGURE_ARGS += \
--enable-shared \
@@ -56,7 +59,8 @@ CONFIGURE_ARGS += \
--with-pcap=linux \
--without-septel \
--without-dag \
- --without-libnl
+ --without-libnl \
+ --disable-can
MAKE_FLAGS += \
CCOPT="$(TARGET_CFLAGS) -I$(BUILD_DIR)/linux/include"
diff --git a/package/libs/libpcap/patches/100-debian_shared_lib.patch b/package/libs/libpcap/patches/100-debian_shared_lib.patch
index 5be33b0c6..30cb10ae3 100644
--- a/package/libs/libpcap/patches/100-debian_shared_lib.patch
+++ b/package/libs/libpcap/patches/100-debian_shared_lib.patch
@@ -1,20 +1,15 @@
Debian-specific modifications to the upstream Makefile.in to
build a shared library.
----
- Makefile.in | 45 ++++++++++++++++++++++++++++++++++++++++++---
- configure | 2 +-
- configure.in | 2 +-
- 3 files changed, 44 insertions(+), 5 deletions(-)
--- a/Makefile.in
+++ b/Makefile.in
-@@ -40,6 +40,14 @@ mandir = @mandir@
+@@ -40,6 +40,14 @@
srcdir = @srcdir@
VPATH = @srcdir@
+# some defines for shared library compilation
-+MAJ=1.1
-+LIBVERSION=$(MAJ).1
++MAJ=1.3
++LIBVERSION=$(MAJ).0
+LIBNAME=pcap
+LIBRARY=lib$(LIBNAME).a
+SOLIBRARY=lib$(LIBNAME).so
@@ -23,28 +18,30 @@ build a shared library.
#
# You shouldn't need to edit anything below.
#
-@@ -59,6 +67,7 @@ PROG=libpcap
+@@ -60,7 +68,8 @@
+ PROG=libpcap
# Standard CFLAGS
- CFLAGS = $(CCOPT) $(INCLS) $(DEFS)
+-FULL_CFLAGS = $(CCOPT) $(INCLS) $(DEFS) $(CFLAGS)
++FULL_CFLAGS = $(CCOPT) $(INCLS) $(DEFS) $(CFLAGS) $(CPPFLAGS)
+CFLAGS_SHARED = -shared -Wl,-soname,$(SOLIBRARY).$(MAJ)
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
-@@ -78,7 +87,11 @@ YACC = @V_YACC@
+@@ -80,7 +89,11 @@
# problem if you don't own the file but can write to the directory.
.c.o:
@rm -f $@
-- $(CC) $(CFLAGS) -c $(srcdir)/$*.c
-+ $(CC) $(CFLAGS) -c -o $@ $(srcdir)/$*.c
+- $(CC) $(FULL_CFLAGS) -c $(srcdir)/$*.c
++ $(CC) $(FULL_CFLAGS) -c -o $@ $(srcdir)/$*.c
+
+%_pic.o: %.c
+ @rm -f $@
-+ $(CC) -fPIC $(CFLAGS) -c -o $@ $(srcdir)/$*.c
++ $(CC) -fPIC $(FULL_CFLAGS) -c -o $@ $(srcdir)/$*.c
- PSRC = pcap-@V_PCAP@.c @USB_SRC@ @BT_SRC@ @CAN_SRC@
+ PSRC = pcap-@V_PCAP@.c @USB_SRC@ @BT_SRC@ @CAN_SRC@ @NETFILTER_SRC@ @CANUSB_SRC@
FSRC = fad-@V_FINDALLDEVS@.c
-@@ -94,6 +107,7 @@ SRC = $(PSRC) $(FSRC) $(CSRC) $(SSRC) $(
+@@ -96,6 +109,7 @@
# We would like to say "OBJ = $(SRC:.c=.o)" but Ultrix's make cannot
# hack the extra indirection
OBJ = $(PSRC:.c=.o) $(FSRC:.c=.o) $(CSRC:.c=.o) $(SSRC:.c=.o) $(GENSRC:.c=.o) $(LIBOBJS)
@@ -52,97 +49,77 @@ build a shared library.
PUBHDR = \
pcap.h \
pcap-bpf.h \
-@@ -131,7 +145,7 @@ TAGFILES = \
+@@ -148,7 +162,7 @@
- CLEANFILES = $(OBJ) libpcap.* filtertest findalldevstest selpolltest \
- opentest $(PROG)-`cat $(srcdir)/VERSION`.tar.gz $(GENSRC) $(GENHDR) \
+ CLEANFILES = $(OBJ) libpcap.* $(TESTS) \
+ $(PROG)-`cat $(srcdir)/VERSION`.tar.gz $(GENSRC) $(GENHDR) \
- lex.yy.c pcap-config
+ lex.yy.c pcap-config $(OBJ_PIC)
MAN1 = pcap-config.1
-@@ -324,21 +338,14 @@ EXTRA_DIST = \
- Win32/Src/inet_net.c \
- Win32/Src/inet_pton.c
-
--all: libpcap.a shared pcap-config
-+all: libpcap.a shared pcap-config $(SHAREDLIB)
-
- libpcap.a: $(OBJ)
- @rm -f $@
- ar rc $@ $(OBJ) $(ADDLARCHIVEOBJS)
+@@ -352,7 +366,7 @@
+ $(AR) rc $@ $(OBJ) $(ADDLARCHIVEOBJS)
$(RANLIB) $@
-shared: libpcap.$(DYEXT)
--
--libpcap.so: $(OBJ)
-- @rm -f $@
-- VER=`cat $(srcdir)/VERSION`; \
-- MAJOR_VER=`sed 's/\([0-9][0-9]*\)\..*/\1/' $(srcdir)/VERSION`; \
-- @V_SHLIB_CMD@ @V_SHLIB_OPT@ @V_SONAME_OPT@$@.$$MAJOR_VER $(LDFLAGS) \
-- -o $@.$$VER $(OBJ) $(ADDLOBJS) $(LIBS)
+shared: $(SHAREDLIB)
- #
- # The following rule succeeds, but the result is untested.
-@@ -409,6 +416,13 @@ libpcap.shareda: $(OBJ)
+ libpcap.so: $(OBJ)
+ @rm -f $@
+@@ -430,6 +444,13 @@
#
libpcap.none:
+$(SHAREDLIB): $(OBJ_PIC)
+ -@rm -f $@
+ -@rm -f $(SOLIBRARY) $(SOLIBRARY).$(MAJ)
-+ $(CC) $(CFLAGS_SHARED) -o $(SHAREDLIB) $(OBJ_PIC) -lc
++ $(CC) $(CFLAGS_SHARED) $(LDFLAGS) -o $(SHAREDLIB) $(OBJ_PIC) -lc $(LIBS)
+ ln -s $(SHAREDLIB) $(SOLIBRARY).$(MAJ)
+ ln -s $(SOLIBRARY).$(MAJ) $(SOLIBRARY)
+
scanner.c: $(srcdir)/scanner.l
@rm -f $@
$(srcdir)/runlex.sh $(LEX) -o$@ $<
-@@ -416,6 +430,9 @@ scanner.c: $(srcdir)/scanner.l
+@@ -437,6 +458,9 @@
scanner.o: scanner.c tokdefs.h
- $(CC) $(CFLAGS) -c scanner.c
+ $(CC) $(FULL_CFLAGS) -c scanner.c
+scanner_pic.o: scanner.c tokdefs.h
-+ $(CC) -fPIC $(CFLAGS) -o $@ -c scanner.c
++ $(CC) -fPIC $(FULL_CFLAGS) -o $@ -c scanner.c
+
pcap.o: version.h
tokdefs.h: grammar.c
-@@ -429,9 +446,17 @@ grammar.o: grammar.c
+@@ -450,9 +474,16 @@
@rm -f $@
- $(CC) $(CFLAGS) -Dyylval=pcap_lval -c grammar.c
+ $(CC) $(FULL_CFLAGS) -Dyylval=pcap_lval -c grammar.c
+grammar_pic.o: grammar.c
+ @rm -f $@
-+ $(CC) -fPIC $(CFLAGS) -Dyylval=pcap_lval -o $@ -c grammar.c
++ $(CC) -fPIC $(FULL_CFLAGS) -Dyylval=pcap_lval -o $@ -c grammar.c
+
version.o: version.c
- $(CC) $(CFLAGS) -c version.c
+ $(CC) $(FULL_CFLAGS) -c version.c
+version_pic.o: version.c
-+ $(CC) -fPIC $(CFLAGS) -c version.c -o $@
-+
++ $(CC) -fPIC $(FULL_CFLAGS) -c version.c -o $@
+
snprintf.o: $(srcdir)/missing/snprintf.c
- $(CC) $(CFLAGS) -o $@ -c $(srcdir)/missing/snprintf.c
+ $(CC) $(FULL_CFLAGS) -o $@ -c $(srcdir)/missing/snprintf.c
-@@ -469,6 +494,9 @@ bpf_filter.c: $(srcdir)/bpf/net/bpf_filt
+@@ -490,6 +521,9 @@
bpf_filter.o: bpf_filter.c
- $(CC) $(CFLAGS) -c bpf_filter.c
+ $(CC) $(FULL_CFLAGS) -c bpf_filter.c
+bpf_filter_pic.o: bpf_filter.c
-+ $(CC) -fPIC $(CFLAGS) -c bpf_filter.c -o $@
++ $(CC) -fPIC $(FULL_CFLAGS) -c bpf_filter.c -o $@
+
#
# Generate the pcap-config script.
#
-@@ -562,14 +590,12 @@ install: install-shared install-archive
- $(DESTDIR)$(mandir)/man@MAN_MISC_INFO@/`echo $$i | sed 's/.manmisc.in/.@MAN_MISC_INFO@/'`; done
-
- install-shared: install-shared-$(DYEXT)
--install-shared-so: libpcap.so
-+install-shared-so: $(SHAREDLIB)
+@@ -607,11 +641,9 @@
+ install-shared-so: libpcap.so
[ -d $(DESTDIR)$(libdir) ] || \
(mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir))
- VER=`cat $(srcdir)/VERSION`; \
@@ -156,18 +133,18 @@ build a shared library.
install-shared-dylib: libpcap.dylib
[ -d $(DESTDIR)$(libdir) ] || \
(mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir))
---- a/configure
-+++ b/configure
-@@ -3229,7 +3229,7 @@ _ACEOF
- # or accepts command-line arguments like
- # those the GNU linker accepts.
- #
-- V_CCOPT="$V_CCOPT -fpic"
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -262,7 +262,7 @@
+ esac
+ ;;
+ esac
+- V_CCOPT="$V_CCOPT $PIC_OPT"
+ V_CCOPT="$V_CCOPT"
V_SONAME_OPT="-Wl,-soname,"
V_RPATH_OPT="-Wl,-rpath,"
;;
-@@ -3292,7 +3292,7 @@ _ACEOF
+@@ -325,7 +325,7 @@
#
# "cc" is GCC.
#
@@ -176,3 +153,22 @@ build a shared library.
V_SHLIB_CMD="\$(CC)"
V_SHLIB_OPT="-shared"
V_SONAME_OPT="-Wl,-soname,"
+--- a/pcap-config.in
++++ b/pcap-config.in
+@@ -36,16 +36,6 @@
+ esac
+ shift
+ done
+-if [ "$V_RPATH_OPT" != "" ]
+-then
+- #
+- # If libdir isn't /usr/lib, add it to the run-time linker path.
+- #
+- if [ "$libdir" != "/usr/lib" ]
+- then
+- RPATH=$V_RPATH_OPT$libdir
+- fi
+-fi
+ if [ "$static" = 1 ]
+ then
+ #
diff --git a/package/libs/libpcap/patches/102-makefile_disable_manpages.patch b/package/libs/libpcap/patches/102-makefile_disable_manpages.patch
index 4674df51e..50ea2211a 100644
--- a/package/libs/libpcap/patches/102-makefile_disable_manpages.patch
+++ b/package/libs/libpcap/patches/102-makefile_disable_manpages.patch
@@ -1,6 +1,6 @@
--- a/Makefile.in
+++ b/Makefile.in
-@@ -532,62 +532,12 @@ install: install-shared install-archive
+@@ -571,71 +571,12 @@ install: install-shared install-archive
(mkdir -p $(DESTDIR)$(includedir); chmod 755 $(DESTDIR)$(includedir))
[ -d $(DESTDIR)$(includedir)/pcap ] || \
(mkdir -p $(DESTDIR)$(includedir)/pcap; chmod 755 $(DESTDIR)$(includedir)/pcap)
@@ -33,12 +33,21 @@
- rm -f $(DESTDIR)$(mandir)/man3/pcap_dump_fopen.3pcap
- ln $(DESTDIR)$(mandir)/man3/pcap_dump_open.3pcap \
- $(DESTDIR)$(mandir)/man3/pcap_dump_fopen.3pcap
+- rm -f $(DESTDIR)$(mandir)/man3/pcap_freealldevs.3pcap
+- ln $(DESTDIR)$(mandir)/man3/pcap_findalldevs.3pcap \
+- $(DESTDIR)$(mandir)/man3/pcap_freealldevs.3pcap
- rm -f $(DESTDIR)$(mandir)/man3/pcap_perror.3pcap
- ln $(DESTDIR)$(mandir)/man3/pcap_geterr.3pcap \
- $(DESTDIR)$(mandir)/man3/pcap_perror.3pcap
- rm -f $(DESTDIR)$(mandir)/man3/pcap_sendpacket.3pcap
- ln $(DESTDIR)$(mandir)/man3/pcap_inject.3pcap \
- $(DESTDIR)$(mandir)/man3/pcap_sendpacket.3pcap
+- rm -f $(DESTDIR)$(mandir)/man3/pcap_free_datalinks.3pcap
+- ln $(DESTDIR)$(mandir)/man3/pcap_list_datalinks.3pcap \
+- $(DESTDIR)$(mandir)/man3/pcap_free_datalinks.3pcap
+- rm -f $(DESTDIR)$(mandir)/man3/pcap_free_tstamp_types.3pcap
+- ln $(DESTDIR)$(mandir)/man3/pcap_list_tstamp_types.3pcap \
+- $(DESTDIR)$(mandir)/man3/pcap_free_tstamp_types.3pcap
- rm -f $(DESTDIR)$(mandir)/man3/pcap_dispatch.3pcap
- ln $(DESTDIR)$(mandir)/man3/pcap_loop.3pcap \
- $(DESTDIR)$(mandir)/man3/pcap_dispatch.3pcap
@@ -62,28 +71,4 @@
- $(DESTDIR)$(mandir)/man@MAN_MISC_INFO@/`echo $$i | sed 's/.manmisc.in/.@MAN_MISC_INFO@/'`; done
install-shared: install-shared-$(DYEXT)
- install-shared-so: $(SHAREDLIB)
-@@ -642,23 +592,6 @@ uninstall: uninstall-shared
- rm -f $(DESTDIR)$(includedir)/$$i; done
- -rmdir $(DESTDIR)$(includedir)/pcap
- rm -f $(DESTDIR)/$(bindir)/pcap-config
-- for i in $(MAN1); do \
-- rm -f $(DESTDIR)$(mandir)/man1/$$i; done
-- for i in $(MAN3PCAP); do \
-- rm -f $(DESTDIR)$(mandir)/man3/$$i; done
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_datalink_val_to_description.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_dump_fopen.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_perror.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_sendpacket.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_dispatch.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_minor_version.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_next.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_fopen_offline.3pcap
-- rm -f $(DESTDIR)$(mandir)/man3/pcap_getnonblock.3pcap
-- for i in $(MANFILE); do \
-- rm -f $(DESTDIR)$(mandir)/man@MAN_FILE_FORMATS@/`echo $$i | sed 's/.manfile.in/.@MAN_FILE_FORMATS@/'`; done
-- for i in $(MANMISC); do \
-- rm -f $(DESTDIR)$(mandir)/man@MAN_MISC_INFO@/`echo $$i | sed 's/.manmisc.in/.@MAN_MISC_INFO@/'`; done
-
- uninstall-shared: uninstall-shared-$(DYEXT)
- uninstall-shared-so:
+ install-shared-so: libpcap.so
diff --git a/package/libs/libpcap/patches/202-protocol_api.patch b/package/libs/libpcap/patches/202-protocol_api.patch
index 892aeb7e0..fabbac73f 100644
--- a/package/libs/libpcap/patches/202-protocol_api.patch
+++ b/package/libs/libpcap/patches/202-protocol_api.patch
@@ -4,13 +4,13 @@
char *source;
int promisc;
int rfmon;
-+ int proto; /* protocol for packet socket (linux) */
++ int proto; /* protocol for packet socket (linux) */
+ int tstamp_type;
};
- /*
--- a/pcap-linux.c
+++ b/pcap-linux.c
-@@ -335,7 +335,7 @@ static int iface_get_id(int fd, const ch
+@@ -363,7 +363,7 @@ static int iface_get_id(int fd, const ch
static int iface_get_mtu(int fd, const char *device, char *ebuf);
static int iface_get_arptype(int fd, const char *device, char *ebuf);
#ifdef HAVE_PF_PACKET_SOCKETS
@@ -19,7 +19,7 @@
#ifdef IW_MODE_MONITOR
static int has_wext(int sock_fd, const char *device, char *ebuf);
#endif /* IW_MODE_MONITOR */
-@@ -881,7 +881,7 @@ pcap_can_set_rfmon_linux(pcap_t *handle)
+@@ -980,7 +980,7 @@ pcap_can_set_rfmon_linux(pcap_t *handle)
* (We assume that if we have Wireless Extensions support
* we also have PF_PACKET support.)
*/
@@ -28,7 +28,7 @@
if (sock_fd == -1) {
(void)snprintf(handle->errbuf, PCAP_ERRBUF_SIZE,
"socket: %s", pcap_strerror(errno));
-@@ -1128,6 +1128,9 @@ pcap_activate_linux(pcap_t *handle)
+@@ -1266,6 +1266,9 @@ pcap_activate_linux(pcap_t *handle)
handle->read_op = pcap_read_linux;
handle->stats_op = pcap_stats_linux;
@@ -38,7 +38,7 @@
/*
* The "any" device is a special device which causes us not
* to bind to a particular device and thus to look at all
-@@ -2684,8 +2687,8 @@ activate_new(pcap_t *handle)
+@@ -2897,8 +2900,8 @@ activate_new(pcap_t *handle)
* try a SOCK_RAW socket for the raw interface.
*/
sock_fd = is_any_device ?
@@ -48,8 +48,8 @@
+ socket(PF_PACKET, SOCK_RAW, handle->opt.proto);
if (sock_fd == -1) {
- snprintf(handle->errbuf, PCAP_ERRBUF_SIZE, "socket: %s",
-@@ -2783,7 +2786,7 @@ activate_new(pcap_t *handle)
+ if (errno == EINVAL || errno == EAFNOSUPPORT) {
+@@ -3015,7 +3018,7 @@ activate_new(pcap_t *handle)
return PCAP_ERROR;
}
sock_fd = socket(PF_PACKET, SOCK_DGRAM,
@@ -58,7 +58,7 @@
if (sock_fd == -1) {
snprintf(handle->errbuf, PCAP_ERRBUF_SIZE,
"socket: %s", pcap_strerror(errno));
-@@ -2835,7 +2838,7 @@ activate_new(pcap_t *handle)
+@@ -3078,7 +3081,7 @@ activate_new(pcap_t *handle)
}
if ((err = iface_bind(sock_fd, handle->md.ifindex,
@@ -67,7 +67,7 @@
close(sock_fd);
if (err < 0)
return err;
-@@ -3640,7 +3643,7 @@ iface_get_id(int fd, const char *device,
+@@ -4149,7 +4152,7 @@ iface_get_id(int fd, const char *device,
* or a PCAP_ERROR_ value on a hard error.
*/
static int
@@ -76,7 +76,7 @@
{
struct sockaddr_ll sll;
int err;
-@@ -3649,7 +3652,7 @@ iface_bind(int fd, int ifindex, char *eb
+@@ -4158,7 +4161,7 @@ iface_bind(int fd, int ifindex, char *eb
memset(&sll, 0, sizeof(sll));
sll.sll_family = AF_PACKET;
sll.sll_ifindex = ifindex;
@@ -85,7 +85,7 @@
if (bind(fd, (struct sockaddr *) &sll, sizeof(sll)) == -1) {
if (errno == ENETDOWN) {
-@@ -4359,7 +4362,7 @@ activate_old(pcap_t *handle)
+@@ -5040,7 +5043,7 @@ activate_old(pcap_t *handle)
/* Open the socket */
@@ -96,20 +96,18 @@
"socket: %s", pcap_strerror(errno));
--- a/pcap.c
+++ b/pcap.c
-@@ -258,6 +258,8 @@ pcap_create_common(const char *source, c
+@@ -309,6 +309,7 @@ pcap_create_common(const char *source, c
pcap_set_snaplen(p, 65535); /* max packet size */
p->opt.promisc = 0;
p->opt.buffer_size = 0;
+ p->opt.proto = -1;
-+
+ p->opt.tstamp_type = -1; /* default to not setting time stamp type */
return (p);
}
-
-@@ -317,6 +319,15 @@ pcap_set_buffer_size(pcap_t *p, int buff
- return 0;
+@@ -405,6 +406,15 @@ pcap_set_buffer_size(pcap_t *p, int buff
}
-+int
+ int
+pcap_set_protocol(pcap_t *p, unsigned short proto)
+{
+ if (pcap_check_activated(p))
@@ -118,9 +116,10 @@
+ return 0;
+}
+
- int
++int
pcap_activate(pcap_t *p)
{
+ int status;
--- a/pcap/pcap.h
+++ b/pcap/pcap.h
@@ -68,6 +68,7 @@ extern "C" {
@@ -131,11 +130,11 @@
/*
* Compatibility for systems that have a bpf.h that
-@@ -276,6 +277,7 @@ int pcap_can_set_rfmon(pcap_t *);
- int pcap_set_rfmon(pcap_t *, int);
+@@ -280,6 +281,7 @@ int pcap_set_rfmon(pcap_t *, int);
int pcap_set_timeout(pcap_t *, int);
+ int pcap_set_tstamp_type(pcap_t *, int);
int pcap_set_buffer_size(pcap_t *, int);
+int pcap_set_protocol(pcap_t *, unsigned short);
int pcap_activate(pcap_t *);
- pcap_t *pcap_open_live(const char *, int, int, int, char *);
+ int pcap_list_tstamp_types(pcap_t *, int **);
diff --git a/package/libs/libubox/Makefile b/package/libs/libubox/Makefile
index a3291692e..9865dc2be 100644
--- a/package/libs/libubox/Makefile
+++ b/package/libs/libubox/Makefile
@@ -1,18 +1,18 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=libubox
-PKG_VERSION:=2012-12-02
+PKG_VERSION:=2013-04-15
PKG_RELEASE=$(PKG_SOURCE_VERSION)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=git://nbd.name/luci2/libubox.git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=9d8f2dd47b27d372c319ef7e334feb2b47cfa5f9
+PKG_SOURCE_VERSION:=dcf93f332270bdaddb5d24fdba6e3eb5b1f7d80a
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
-PKG_MIRROR_MD5SUM:=8eb9929fc74397ac199a012791d51b3a
+PKG_MIRROR_MD5SUM:=
CMAKE_INSTALL:=1
-PKG_LICENSE:=GPLv2
+PKG_LICENSE:=ISC BSD-3c
PKG_LICENSE_FILES:=
PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
@@ -47,6 +47,13 @@ define Package/jshn/description
Library for parsing and generating JSON from shell scripts
endef
+define Package/libjson-script
+ SECTION:=utils
+ CATEGORY:=Utilities
+ DEPENDS:=+libubox
+ TITLE:=Minimalistic JSON based scripting engine
+endef
+
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
CMAKE_OPTIONS = \
-DLUAPATH=/usr/lib/lua
@@ -67,7 +74,12 @@ define Package/jshn/install
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/libubox/jshn.sh $(1)/usr/share/libubox
endef
+define Package/libjson-script/install
+ $(INSTALL_DIR) $(1)/lib/
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libjson_script.so $(1)/lib/
+endef
+
$(eval $(call BuildPackage,libubox))
$(eval $(call BuildPackage,libblobmsg-json))
$(eval $(call BuildPackage,jshn))
-
+$(eval $(call BuildPackage,libjson-script))
diff --git a/package/libs/libusb-compat/Makefile b/package/libs/libusb-compat/Makefile
new file mode 100644
index 000000000..e80f80bf6
--- /dev/null
+++ b/package/libs/libusb-compat/Makefile
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2010-2013 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:=libusb-compat
+PKG_VERSION:=0.1.4
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=@SF/libusb
+PKG_MD5SUM:=2ca521fffadd0c28fdf174e6ec73865b
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+PKG_MAINTAINER := Felix Fietkau <nbd@openwrt.org>
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libusb-compat
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=libusb-0.1 compatibility library
+ DEPENDS:=+libusb-1.0
+ URL:=http://libusb.wiki.sourceforge.net/
+endef
+
+define Package/libusb-compat/description
+ libusb is a C library that gives applications easy access to USB devices on
+ many different operating systems.
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+define Build/InstallDev
+ $(CP) $(PKG_INSTALL_DIR)/* $(1)/
+endef
+
+define Package/libusb-compat/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libusb-0.1.so* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libusb-compat))
diff --git a/package/libs/libusb/Makefile b/package/libs/libusb/Makefile
new file mode 100644
index 000000000..d1bdb010f
--- /dev/null
+++ b/package/libs/libusb/Makefile
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2010-2013 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:=libusb
+PKG_VERSION:=1.0.9
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=@SF/$(PKG_NAME)
+PKG_MD5SUM:=7f5a02375ad960d4e33a6dae7d63cfcb
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+PKG_MAINTAINER := Felix Fietkau <nbd@openwrt.org>
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libusb-1.0
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=A library for accessing Linux USB devices
+ DEPENDS:=+libpthread +librt
+ URL:=http://libusb.wiki.sourceforge.net/
+endef
+
+define Package/libusb-1.0/description
+ libusb is a C library that gives applications easy access to USB devices on
+ many different operating systems.
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+define Build/InstallDev
+ $(CP) $(PKG_INSTALL_DIR)/* $(1)/
+endef
+
+define Package/libusb-1.0/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libusb*.so* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libusb-1.0))
diff --git a/package/libs/libusb/patches/001-timerfd.patch b/package/libs/libusb/patches/001-timerfd.patch
new file mode 100644
index 000000000..de48a7fd9
--- /dev/null
+++ b/package/libs/libusb/patches/001-timerfd.patch
@@ -0,0 +1,33 @@
+commit cadb77d99e314e42c3eb02d016e9d90136ec6959
+Author: Alexander Gordeev <lasaine@lvk.cs.msu.su>
+Date: Thu Jan 27 06:39:16 2011 +0300
+
+ fix timerfd initialization
+
+ sys/timerfd.h defines TFD_NONBLOCK as 0x800 but in kernel TFD_NONBLOCK
+ is an alias for O_NONBLOCK which is defined in arch-specific fcntl.h.
+ While it's still 0x800 for most of archs but for mips it's 0x80. So
+ timerfd_create(..., TFD_NONBLOCK) returns -EINVAL because of that. Fix
+ this by using O_NONBLOCK instead.
+
+ Signed-off-by: Alexander Gordeev <lasaine@lvk.cs.msu.su>
+
+--- a/libusb/io.c
++++ b/libusb/io.c
+@@ -20,6 +20,7 @@
+
+ #include <config.h>
+ #include <errno.h>
++#include <fcntl.h>
+ #include <signal.h>
+ #include <stdint.h>
+ #include <stdlib.h>
+@@ -1072,7 +1073,7 @@ int usbi_io_init(struct libusb_context *
+
+ #ifdef USBI_TIMERFD_AVAILABLE
+ ctx->timerfd = timerfd_create(usbi_backend->get_timerfd_clockid(),
+- TFD_NONBLOCK);
++ O_NONBLOCK);
+ if (ctx->timerfd >= 0) {
+ usbi_dbg("using timerfd for timeouts");
+ r = usbi_add_pollfd(ctx, ctx->timerfd, POLLIN);
diff --git a/package/libs/lzo/Makefile b/package/libs/lzo/Makefile
new file mode 100644
index 000000000..87e858e90
--- /dev/null
+++ b/package/libs/lzo/Makefile
@@ -0,0 +1,56 @@
+#
+# Copyright (C) 2006-2012 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:=lzo
+PKG_VERSION:=2.06
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://www.oberhumer.com/opensource/lzo/download/
+PKG_MD5SUM:=95380bd4081f85ef08c5209f4107e9f8
+
+PKG_FIXUP:=autoreconf
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/liblzo
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=A real-time data compression library
+ URL:=http://www.oberhumer.com/opensource/lzo/
+endef
+
+define Package/liblzo/description
+ LZO is a data compression library which is suitable for data de-/compression
+ in real-time. This means it favours speed over compression ratio.
+endef
+
+define Build/Configure
+ $(call Build/Configure/Default, \
+ --enable-shared \
+ --enable-static \
+ )
+endef
+
+TARGET_CFLAGS += $(FPIC)
+MAKE_FLAGS += CFLAGS_O="$(TARGET_CFLAGS)"
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/lzo $(1)/usr/include/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblzo2.{a,so*} $(1)/usr/lib/
+endef
+
+define Package/liblzo/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblzo2.so* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,liblzo))
diff --git a/package/libs/ncurses/Makefile b/package/libs/ncurses/Makefile
index 465b60cae..62ffdfb0a 100644
--- a/package/libs/ncurses/Makefile
+++ b/package/libs/ncurses/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2011 OpenWrt.org
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ncurses
-PKG_VERSION:=5.7
-PKG_RELEASE:=5
+PKG_VERSION:=5.9
+PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@GNU/ncurses
-PKG_MD5SUM:=cce05daf61a64501ef6cd8da1f727ec6
+PKG_MD5SUM:=8cb9c412e5f2d96bc6f459aa8c6282a1
PKG_LICENSE:=FREE
PKG_LICENSE_FILES:=README
@@ -67,11 +67,6 @@ CONFIGURE_ARGS += \
--with-terminfo-dirs=/usr/share/terminfo \
--with-default-terminfo-dir=/usr/share/terminfo
-ifneq ($(INSTALL_LIBSTDCPP),y)
-CONFIGURE_ARGS += \
- --without-cxx-binding
-endif
-
ifeq ($(HOST_OS),FreeBSD)
CONFIGURE_ARGS +=
--with-terminfo=/usr/share/terminfo.db
diff --git a/package/libs/ncurses/patches/100-ncurses-5.6-20080112-urxvt.patch b/package/libs/ncurses/patches/100-ncurses-5.6-20080112-urxvt.patch
index 39e60ba98..20a6b43c1 100644
--- a/package/libs/ncurses/patches/100-ncurses-5.6-20080112-urxvt.patch
+++ b/package/libs/ncurses/patches/100-ncurses-5.6-20080112-urxvt.patch
@@ -1,6 +1,6 @@
--- a/misc/terminfo.src
+++ b/misc/terminfo.src
-@@ -3965,6 +3965,172 @@ rxvt-cygwin-native|rxvt terminal emulato
+@@ -4208,6 +4208,172 @@ rxvt-cygwin-native|rxvt terminal emulato
rxvt-16color|xterm with 16 colors like aixterm,
ncv#32, use=ibm+16color, use=rxvt,
@@ -170,6 +170,6 @@
+ fsl=\007,
+ dsl=\E]2;\007,
+
- # mrxvt 0.5.3
+ # mrxvt 0.5.4
#
# mrxvt is based on rxvt 2.7.11, but has by default XTERM_FKEYS defined, which
diff --git a/package/libs/ncurses/patches/101-ncurses-5.6-20080628-kbs.patch b/package/libs/ncurses/patches/101-ncurses-5.6-20080628-kbs.patch
index 3b3abd7b0..779fa44bd 100644
--- a/package/libs/ncurses/patches/101-ncurses-5.6-20080628-kbs.patch
+++ b/package/libs/ncurses/patches/101-ncurses-5.6-20080628-kbs.patch
@@ -1,6 +1,6 @@
--- a/misc/terminfo.src
+++ b/misc/terminfo.src
-@@ -3054,6 +3054,7 @@ xterm-xfree86|xterm terminal emulator (X
+@@ -3274,6 +3274,7 @@ xterm-xfree86|xterm terminal emulator (X
# This version reflects the current xterm features.
xterm-new|modern xterm terminal emulator,
npc,
@@ -8,15 +8,15 @@
indn=\E[%p1%dS, kDC=\E[3;2~, kEND=\E[1;2F, kHOM=\E[1;2H,
kIC=\E[2;2~, kNXT=\E[6;2~, kPRV=\E[5;2~, kb2=\EOE,
kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
-@@ -3818,6 +3819,7 @@ mlterm+pcfkeys|fragment for PC-style fke
+@@ -4061,6 +4062,7 @@ mlterm-256color|mlterm 3.0 with xterm 25
rxvt-basic|rxvt terminal base (X Window System),
- OTbs, am, bce, eo, mir, msgr, xenl, xon,
+ OTbs, am, bce, eo, mir, msgr, xenl, xon, XT,
cols#80, it#8, lines#24,
+ kbs=\177,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, civis=\E[?25l,
clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M,
-@@ -3828,7 +3830,7 @@ rxvt-basic|rxvt terminal base (X Window
+@@ -4071,7 +4073,7 @@ rxvt-basic|rxvt terminal base (X Window
enacs=\E(B\E)0, flash=\E[?5h\E[?5l, home=\E[H, ht=^I,
hts=\EH, ich=\E[%p1%d@, ich1=\E[@, il=\E[%p1%dL, il1=\E[L,
ind=^J, is1=\E[?47l\E=\E[?1l,
@@ -25,15 +25,15 @@
kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m,
rmul=\E[24m,
-@@ -4541,6 +4543,7 @@ eterm|gnu emacs term.el terminal emulati
+@@ -4840,6 +4842,7 @@ eterm-color|Emacs term.el terminal emula
screen|VT 100/ANSI X3.64 virtual terminal,
OTbs, OTpt, am, km, mir, msgr, xenl, G0,
- colors#8, cols#80, it#8, lines#24, pairs#64,
+ colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
+ kbs=\177,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
-@@ -4550,7 +4553,7 @@ screen|VT 100/ANSI X3.64 virtual termina
+@@ -4849,7 +4852,7 @@ screen|VT 100/ANSI X3.64 virtual termina
cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
@@ -42,7 +42,7 @@
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
-@@ -4655,6 +4658,7 @@ screen.xterm-r6|screen customized for X1
+@@ -4955,6 +4958,7 @@ screen.xterm-r6|screen customized for X1
# on Solaris because Sun's curses implementation gets confused.
screen.teraterm|disable ncv in teraterm,
ncv#127,
diff --git a/package/libs/ncurses/patches/200-fix_missing_include.patch b/package/libs/ncurses/patches/200-fix_missing_include.patch
new file mode 100644
index 000000000..c5d48d4dd
--- /dev/null
+++ b/package/libs/ncurses/patches/200-fix_missing_include.patch
@@ -0,0 +1,14 @@
+--- a/ncurses/curses.priv.h
++++ b/ncurses/curses.priv.h
+@@ -54,6 +54,11 @@ extern "C" {
+
+ #include <ncurses_cfg.h>
+
++#if NEED_WCHAR_H
++#include <stdarg.h>
++#include <wchar.h>
++#endif
++
+ #if USE_RCS_IDS
+ #define MODULE_ID(id) static const char Ident[] = id;
+ #else
diff --git a/package/libs/openssl/Config.in b/package/libs/openssl/Config.in
index 11591de04..70d520cd1 100644
--- a/package/libs/openssl/Config.in
+++ b/package/libs/openssl/Config.in
@@ -7,7 +7,7 @@ config OPENSSL_ENGINE_CRYPTO
config OPENSSL_ENGINE_DIGEST
bool
- depends OPENSSL_ENGINE_CRYPTO
+ depends on OPENSSL_ENGINE_CRYPTO
prompt "Digests acceleration support"
endmenu
diff --git a/package/libs/openssl/Makefile b/package/libs/openssl/Makefile
index 7ee44408d..009157998 100644
--- a/package/libs/openssl/Makefile
+++ b/package/libs/openssl/Makefile
@@ -8,15 +8,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=openssl
-PKG_VERSION:=1.0.1c
+PKG_VERSION:=1.0.1e
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.openssl.org/source/ \
- ftp://ftp.funet.fi/pub/crypt/cryptography/libs/openssl/source/ \
- ftp://ftp.webmonster.de/pub/openssl/source/ \
+ ftp://ftp.funet.fi/pub/crypt/mirrors/ftp.openssl.org/source \
ftp://ftp.sunet.se/pub/security/tools/net/openssl/source/
-PKG_MD5SUM:=ae412727c8c15b67880aef7bd2999b2e
+PKG_MD5SUM:=66bf6f10f060d561929de96f9dfe5b8c
PKG_LICENSE:=SSLEAY OPENSSL
PKG_LICENSE_FILES:=LICENSE
@@ -112,7 +111,7 @@ define Build/Configure
)
endef
-TARGET_CFLAGS += $(FPIC)
+TARGET_CFLAGS := $(filter-out -mips16 -minterlink-mips16,$(TARGET_CFLAGS)) $(FPIC)
define Build/Compile
# XXX: OpenSSL "make depend" will look for installed headers before its own,
@@ -125,6 +124,7 @@ define Build/Compile
depend
$(_SINGLE)$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
+ ASFLAGS="$(TARGET_ASFLAGS) -c" \
AR="$(TARGET_CROSS)ar r" \
RANLIB="$(TARGET_CROSS)ranlib" \
OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
@@ -132,6 +132,7 @@ define Build/Compile
all
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
+ ASFLAGS="$(TARGET_ASFLAGS) -c" \
AR="$(TARGET_CROSS)ar r" \
RANLIB="$(TARGET_CROSS)ranlib" \
OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
diff --git a/package/libs/openssl/patches/110-optimize-for-size.patch b/package/libs/openssl/patches/110-optimize-for-size.patch
index f30101786..85dba1ebb 100644
--- a/package/libs/openssl/patches/110-optimize-for-size.patch
+++ b/package/libs/openssl/patches/110-optimize-for-size.patch
@@ -1,6 +1,6 @@
--- a/Configure
+++ b/Configure
-@@ -401,6 +401,10 @@ my %table=(
+@@ -402,6 +402,10 @@ my %table=(
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
diff --git a/package/libs/openssl/patches/120-cisco-dtls-fix.patch b/package/libs/openssl/patches/120-cisco-dtls-fix.patch
new file mode 100644
index 000000000..11e6bb5f2
--- /dev/null
+++ b/package/libs/openssl/patches/120-cisco-dtls-fix.patch
@@ -0,0 +1,31 @@
+From 9fe4603b8245425a4c46986ed000fca054231253 Mon Sep 17 00:00:00 2001
+From: David Woodhouse <dwmw2@infradead.org>
+Date: Tue, 12 Feb 2013 14:55:32 +0000
+Subject: [PATCH] Check DTLS_BAD_VER for version number.
+
+The version check for DTLS1_VERSION was redundant as
+DTLS1_VERSION > TLS1_1_VERSION, however we do need to
+check for DTLS1_BAD_VER for compatibility.
+
+PR:2984
+(cherry picked from commit d980abb22e22661e98e5cee33d760ab0c7584ecc)
+---
+ ssl/s3_cbc.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ssl/s3_cbc.c b/ssl/s3_cbc.c
+index 02edf3f..443a31e 100644
+--- a/ssl/s3_cbc.c
++++ b/ssl/s3_cbc.c
+@@ -148,7 +148,7 @@ int tls1_cbc_remove_padding(const SSL* s,
+ unsigned padding_length, good, to_check, i;
+ const unsigned overhead = 1 /* padding length byte */ + mac_size;
+ /* Check if version requires explicit IV */
+- if (s->version >= TLS1_1_VERSION || s->version == DTLS1_VERSION)
++ if (s->version >= TLS1_1_VERSION || s->version == DTLS1_BAD_VER)
+ {
+ /* These lengths are all public so we can test them in
+ * non-constant time.
+--
+1.8.1.2
+
diff --git a/package/libs/openssl/patches/150-no_engines.patch b/package/libs/openssl/patches/150-no_engines.patch
index 62aacc1e4..8e93970fe 100644
--- a/package/libs/openssl/patches/150-no_engines.patch
+++ b/package/libs/openssl/patches/150-no_engines.patch
@@ -1,6 +1,6 @@
--- a/Configure
+++ b/Configure
-@@ -2000,6 +2000,11 @@ EOF
+@@ -2003,6 +2003,11 @@ EOF
close(OUT);
}
@@ -14,7 +14,7 @@
Configured for $target.
--- a/util/libeay.num
+++ b/util/libeay.num
-@@ -2071,7 +2071,6 @@ PKCS7_ATTR_SIGN_it
+@@ -2071,7 +2071,6 @@ PKCS7_ATTR_SIGN_it
UI_add_error_string 2633 EXIST::FUNCTION:
KRB5_CHECKSUM_free 2634 EXIST::FUNCTION:
OCSP_REQUEST_get_ext 2635 EXIST::FUNCTION:
@@ -22,7 +22,7 @@
ENGINE_register_all_digests 2637 EXIST::FUNCTION:ENGINE
PKEY_USAGE_PERIOD_it 2638 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKEY_USAGE_PERIOD_it 2638 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
-@@ -2545,7 +2544,6 @@ OCSP_RESPONSE_new
+@@ -2545,7 +2544,6 @@ OCSP_RESPONSE_new
AES_set_encrypt_key 3024 EXIST::FUNCTION:AES
OCSP_resp_count 3025 EXIST::FUNCTION:
KRB5_CHECKSUM_new 3026 EXIST::FUNCTION:
@@ -30,7 +30,7 @@
OCSP_onereq_get0_id 3028 EXIST::FUNCTION:
ENGINE_set_default_ciphers 3029 EXIST::FUNCTION:ENGINE
NOTICEREF_it 3030 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
-@@ -2576,7 +2574,6 @@ ASN1_primitive_free
+@@ -2576,7 +2574,6 @@ ASN1_primitive_free
i2d_EXTENDED_KEY_USAGE 3052 EXIST::FUNCTION:
i2d_OCSP_SIGNATURE 3053 EXIST::FUNCTION:
asn1_enc_save 3054 EXIST::FUNCTION:
@@ -38,7 +38,7 @@
_ossl_old_des_pcbc_encrypt 3056 EXIST::FUNCTION:DES
PKCS12_MAC_DATA_it 3057 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
PKCS12_MAC_DATA_it 3057 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
-@@ -2600,7 +2597,6 @@ asn1_get_choice_selector
+@@ -2600,7 +2597,6 @@ asn1_get_choice_selector
i2d_KRB5_CHECKSUM 3072 EXIST::FUNCTION:
ENGINE_set_table_flags 3073 EXIST::FUNCTION:ENGINE
AES_options 3074 EXIST::FUNCTION:AES
@@ -46,7 +46,7 @@
OCSP_id_cmp 3076 EXIST::FUNCTION:
OCSP_BASICRESP_new 3077 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_by_NID 3078 EXIST::FUNCTION:
-@@ -2667,7 +2663,6 @@ OCSP_CRLID_it
+@@ -2667,7 +2663,6 @@ OCSP_CRLID_it
OCSP_CRLID_it 3127 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
i2d_KRB5_AUTHENTBODY 3128 EXIST::FUNCTION:
OCSP_REQUEST_get_ext_count 3129 EXIST::FUNCTION:
@@ -54,7 +54,7 @@
X509_NAME_it 3131 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
X509_NAME_it 3131 EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
USERNOTICE_it 3132 EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
-@@ -2762,8 +2757,6 @@ DES_read_2passwords
+@@ -2762,8 +2757,6 @@ DES_read_2passwords
DES_read_password 3207 EXIST::FUNCTION:DES
UI_UTIL_read_pw 3208 EXIST::FUNCTION:
UI_UTIL_read_pw_string 3209 EXIST::FUNCTION:
@@ -63,7 +63,7 @@
OPENSSL_add_all_algorithms_noconf 3212 EXIST:!VMS:FUNCTION:
OPENSSL_add_all_algo_noconf 3212 EXIST:VMS:FUNCTION:
OPENSSL_add_all_algorithms_conf 3213 EXIST:!VMS:FUNCTION:
-@@ -2772,7 +2765,6 @@ OPENSSL_load_builtin_modules
+@@ -2772,7 +2765,6 @@ OPENSSL_load_builtin_modules
AES_ofb128_encrypt 3215 EXIST::FUNCTION:AES
AES_ctr128_encrypt 3216 EXIST::FUNCTION:AES
AES_cfb128_encrypt 3217 EXIST::FUNCTION:AES
@@ -71,7 +71,7 @@
_ossl_096_des_random_seed 3219 EXIST::FUNCTION:DES
EVP_aes_256_ofb 3220 EXIST::FUNCTION:AES
EVP_aes_192_ofb 3221 EXIST::FUNCTION:AES
-@@ -3107,7 +3099,6 @@ EC_GFp_nist_method
+@@ -3107,7 +3099,6 @@ EC_GFp_nist_method
STORE_meth_set_modify_fn 3530 NOEXIST::FUNCTION:
STORE_method_set_modify_function 3530 NOEXIST::FUNCTION:
STORE_parse_attrs_next 3531 NOEXIST::FUNCTION:
diff --git a/package/libs/openssl/patches/160-disable_doc_tests.patch b/package/libs/openssl/patches/160-disable_doc_tests.patch
index b6dacc1f7..d0bf19a3e 100644
--- a/package/libs/openssl/patches/160-disable_doc_tests.patch
+++ b/package/libs/openssl/patches/160-disable_doc_tests.patch
@@ -36,7 +36,7 @@
build_libs: build_crypto build_ssl build_engines
-@@ -539,7 +539,7 @@ dist:
+@@ -539,7 +539,7 @@ dist:
dist_pem_h:
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
@@ -47,7 +47,7 @@
@$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \
--- a/Makefile.org
+++ b/Makefile.org
-@@ -537,7 +537,7 @@ dist:
+@@ -537,7 +537,7 @@ dist:
dist_pem_h:
(cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean)
diff --git a/package/libs/openssl/patches/200-etrax_support.patch b/package/libs/openssl/patches/200-etrax_support.patch
deleted file mode 100644
index 9bd155e37..000000000
--- a/package/libs/openssl/patches/200-etrax_support.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/Configure
-+++ b/Configure
-@@ -440,6 +440,10 @@ my %table=(
- "beos-x86-r5", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lnet:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC -DPIC:-shared:.so",
- "beos-x86-bone", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lbind -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC:-shared:.so",
-
-+# cris
-+"linux-cris", "\$(TARGET_CC):-DL_ENDIAN -DTERMIO -fomit-frame-pointer::-D_REENTRANT::-ldl:BN_LLONG THIRTY_TWO_BIT RC4_CHAR::::::::::::dlfcn:linux-shared:-fpic::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)::",
-+
-+
- #### SCO/Caldera targets.
- #
- # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc.
diff --git a/package/libs/openssl/patches/210-fix_aes_mips.patch b/package/libs/openssl/patches/210-fix_aes_mips.patch
deleted file mode 100644
index bbfc63a41..000000000
--- a/package/libs/openssl/patches/210-fix_aes_mips.patch
+++ /dev/null
@@ -1,64 +0,0 @@
---- a/crypto/aes/asm/aes-mips.pl
-+++ b/crypto/aes/asm/aes-mips.pl
-@@ -1036,9 +1036,9 @@ _mips_AES_set_encrypt_key:
- nop
- .end _mips_AES_set_encrypt_key
-
--.globl AES_set_encrypt_key
--.ent AES_set_encrypt_key
--AES_set_encrypt_key:
-+.globl private_AES_set_encrypt_key
-+.ent private_AES_set_encrypt_key
-+private_AES_set_encrypt_key:
- .frame $sp,$FRAMESIZE,$ra
- .mask $SAVED_REGS_MASK,-$SZREG
- .set noreorder
-@@ -1060,7 +1060,7 @@ $code.=<<___ if ($flavour =~ /nubi/i); #
- ___
- $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification
- .cplocal $Tbl
-- .cpsetup $pf,$zero,AES_set_encrypt_key
-+ .cpsetup $pf,$zero,private_AES_set_encrypt_key
- ___
- $code.=<<___;
- .set reorder
-@@ -1083,7 +1083,7 @@ ___
- $code.=<<___;
- jr $ra
- $PTR_ADD $sp,$FRAMESIZE
--.end AES_set_encrypt_key
-+.end private_AES_set_encrypt_key
- ___
-
- my ($head,$tail)=($inp,$bits);
-@@ -1091,9 +1091,9 @@ my ($tp1,$tp2,$tp4,$tp8,$tp9,$tpb,$tpd,$
- my ($m,$x80808080,$x7f7f7f7f,$x1b1b1b1b)=($at,$t0,$t1,$t2);
- $code.=<<___;
- .align 5
--.globl AES_set_decrypt_key
--.ent AES_set_decrypt_key
--AES_set_decrypt_key:
-+.globl private_AES_set_decrypt_key
-+.ent private_AES_set_decrypt_key
-+private_AES_set_decrypt_key:
- .frame $sp,$FRAMESIZE,$ra
- .mask $SAVED_REGS_MASK,-$SZREG
- .set noreorder
-@@ -1115,7 +1115,7 @@ $code.=<<___ if ($flavour =~ /nubi/i); #
- ___
- $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification
- .cplocal $Tbl
-- .cpsetup $pf,$zero,AES_set_decrypt_key
-+ .cpsetup $pf,$zero,private_AES_set_decrypt_key
- ___
- $code.=<<___;
- .set reorder
-@@ -1226,7 +1226,7 @@ ___
- $code.=<<___;
- jr $ra
- $PTR_ADD $sp,$FRAMESIZE
--.end AES_set_decrypt_key
-+.end private_AES_set_decrypt_key
- ___
- }}}
-
diff --git a/package/libs/polarssl/Makefile b/package/libs/polarssl/Makefile
new file mode 100644
index 000000000..2a8a33c07
--- /dev/null
+++ b/package/libs/polarssl/Makefile
@@ -0,0 +1,81 @@
+#
+# Copyright (C) 2011-2013 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:=polarssl
+PKG_VERSION:=1.2.6
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-gpl.tgz
+PKG_SOURCE_URL:=https://polarssl.org/code/releases
+PKG_MD5SUM:=e00d55ddda1e68a16af766dd92d69ce6
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/polarssl/Default
+ SUBMENU:=SSL
+ TITLE:=Embedded SSL
+ URL:=http://polarssl.org/
+endef
+
+define Package/polarssl/Default/description
+The aim of the PolarSSL project is to provide a quality, open-source
+cryptographic library written in C and targeted at embedded systems.
+endef
+
+define Package/libpolarssl
+$(call Package/polarssl/Default)
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE+= (library)
+endef
+
+define Package/libpolarssl/description
+$(call Package/polarssl/Default/description)
+This package contains the PolarSSL library.
+endef
+
+define Package/polarssl-progs
+$(call Package/polarssl/Default)
+ SECTION:=utils
+ CATEGORY:=Utilities
+ DEPENDS:=+libpolarssl
+ TITLE+= (programs)
+endef
+
+define Package/polarssl-progs/description
+$(call Package/polarssl/Default/description)
+This package contains the PolarSSL programs.
+endef
+
+PKG_INSTALL:=1
+
+CMAKE_OPTIONS += \
+ -DCMAKE_BUILD_TYPE:String="Release" \
+ -DUSE_SHARED_POLARSSL_LIBRARY:Bool=ON \
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/polarssl $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpolarssl.so* $(1)/usr/lib/
+endef
+
+define Package/libpolarssl/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpolarssl.so* $(1)/usr/lib/
+endef
+
+define Package/polarssl-progs/install
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
+endef
+
+$(eval $(call BuildPackage,libpolarssl))
+$(eval $(call BuildPackage,polarssl-progs))
diff --git a/package/libs/polarssl/patches/100-disable-testsuites.patch b/package/libs/polarssl/patches/100-disable-testsuites.patch
new file mode 100644
index 000000000..cf9485e6c
--- /dev/null
+++ b/package/libs/polarssl/patches/100-disable-testsuites.patch
@@ -0,0 +1,21 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,7 +38,7 @@ add_subdirectory(library)
+ add_subdirectory(include)
+
+ if(CMAKE_COMPILER_IS_GNUCC)
+- add_subdirectory(tests)
++# add_subdirectory(tests)
+ endif(CMAKE_COMPILER_IS_GNUCC)
+
+ add_subdirectory(programs)
+--- a/programs/CMakeLists.txt
++++ b/programs/CMakeLists.txt
+@@ -3,6 +3,6 @@ add_subdirectory(hash)
+ add_subdirectory(pkey)
+ add_subdirectory(random)
+ add_subdirectory(ssl)
+-add_subdirectory(test)
++#add_subdirectory(test)
+ add_subdirectory(x509)
+ add_subdirectory(util)
diff --git a/package/libs/polarssl/patches/200-reduce_config.patch b/package/libs/polarssl/patches/200-reduce_config.patch
new file mode 100644
index 000000000..c66bb3fb8
--- /dev/null
+++ b/package/libs/polarssl/patches/200-reduce_config.patch
@@ -0,0 +1,112 @@
+--- a/include/polarssl/config.h
++++ b/include/polarssl/config.h
+@@ -177,8 +177,8 @@
+ * Requires: POLARSSL_BIGNUM_C, POLARSSL_RSA_C
+ *
+ * Enable the RSA prime-number generation code.
+- */
+ #define POLARSSL_GENPRIME
++ */
+
+ /**
+ * \def POLARSSL_FS_IO
+@@ -235,8 +235,8 @@
+ * \def POLARSSL_SELF_TEST
+ *
+ * Enable the checkup functions (*_self_test).
+- */
+ #define POLARSSL_SELF_TEST
++ */
+
+ /**
+ * \def POLARSSL_SSL_ALL_ALERT_MESSAGES
+@@ -425,8 +425,8 @@
+ * TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256
+ * TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256
+ * TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256
+- */
+ #define POLARSSL_CAMELLIA_C
++ */
+
+ /**
+ * \def POLARSSL_CERTS_C
+@@ -437,8 +437,8 @@
+ * Caller:
+ *
+ * This module is used for testing (ssl_client/server).
+- */
+ #define POLARSSL_CERTS_C
++ */
+
+ /**
+ * \def POLARSSL_CIPHER_C
+@@ -477,8 +477,8 @@
+ * library/ssl_tls.c
+ *
+ * This module provides debugging functions.
+- */
+ #define POLARSSL_DEBUG_C
++ */
+
+ /**
+ * \def POLARSSL_DES_C
+@@ -560,8 +560,8 @@
+ * enabled as well):
+ * TLS_RSA_WITH_AES_128_GCM_SHA256
+ * TLS_RSA_WITH_AES_256_GCM_SHA384
+- */
+ #define POLARSSL_GCM_C
++ */
+
+ /**
+ * \def POLARSSL_HAVEGE_C
+@@ -574,8 +574,8 @@
+ * Requires: POLARSSL_TIMING_C
+ *
+ * This module enables the HAVEGE random number generator.
+- */
+ #define POLARSSL_HAVEGE_C
++ */
+
+ /**
+ * \def POLARSSL_MD_C
+@@ -649,8 +649,8 @@
+ * Caller: library/aes.c
+ *
+ * This modules adds support for the VIA PadLock on x86.
+- */
+ #define POLARSSL_PADLOCK_C
++ */
+
+ /**
+ * \def POLARSSL_PBKDF2_C
+@@ -763,8 +763,8 @@
+ * Caller:
+ *
+ * Requires: POLARSSL_SSL_CACHE_C
+- */
+ #define POLARSSL_SSL_CACHE_C
++ */
+
+ /**
+ * \def POLARSSL_SSL_CLI_C
+@@ -818,8 +818,8 @@
+ * Caller: library/havege.c
+ *
+ * This module is used by the HAVEGE random number generator.
+- */
+ #define POLARSSL_TIMING_C
++ */
+
+ /**
+ * \def POLARSSL_VERSION_C
+@@ -868,8 +868,8 @@
+ *
+ * Module: library/xtea.c
+ * Caller:
+- */
+ #define POLARSSL_XTEA_C
++ */
+ /* \} name */
+
+ #endif /* config.h */
diff --git a/package/libs/polarssl/patches/300-openssl_cipher_name_compat.patch b/package/libs/polarssl/patches/300-openssl_cipher_name_compat.patch
new file mode 100644
index 000000000..6ca43c312
--- /dev/null
+++ b/package/libs/polarssl/patches/300-openssl_cipher_name_compat.patch
@@ -0,0 +1,53 @@
+--- a/library/cipher.c
++++ b/library/cipher.c
+@@ -279,15 +279,21 @@ const cipher_info_t *cipher_info_from_st
+ #if defined(POLARSSL_BLOWFISH_C)
+ if( !strcasecmp( "BLOWFISH-CBC", cipher_name ) )
+ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CBC );
++ if( !strcasecmp( "BF-CBC", cipher_name ) )
++ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CBC );
+
+ #if defined(POLARSSL_CIPHER_MODE_CFB)
+ if( !strcasecmp( "BLOWFISH-CFB64", cipher_name ) )
+ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CFB64 );
++ if( !strcasecmp( "BF-CFB64", cipher_name ) )
++ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CFB64 );
+ #endif /* defined(POLARSSL_CIPHER_MODE_CFB) */
+
+ #if defined(POLARSSL_CIPHER_MODE_CTR)
+ if( !strcasecmp( "BLOWFISH-CTR", cipher_name ) )
+ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CTR );
++ if( !strcasecmp( "BF-CTR", cipher_name ) )
++ return cipher_info_from_type( POLARSSL_CIPHER_BLOWFISH_CTR );
+ #endif /* defined(POLARSSL_CIPHER_MODE_CTR) */
+ #endif
+
+--- a/library/cipher_wrap.c
++++ b/library/cipher_wrap.c
+@@ -643,7 +643,7 @@ const cipher_info_t blowfish_cbc_info =
+ POLARSSL_CIPHER_BLOWFISH_CBC,
+ POLARSSL_MODE_CBC,
+ 32,
+- "BLOWFISH-CBC",
++ "BF-CBC",
+ 8,
+ 8,
+ &blowfish_info
+@@ -654,7 +654,7 @@ const cipher_info_t blowfish_cfb64_info
+ POLARSSL_CIPHER_BLOWFISH_CFB64,
+ POLARSSL_MODE_CFB,
+ 32,
+- "BLOWFISH-CFB64",
++ "BF-CFB64",
+ 8,
+ 8,
+ &blowfish_info
+@@ -666,7 +666,7 @@ const cipher_info_t blowfish_ctr_info =
+ POLARSSL_CIPHER_BLOWFISH_CTR,
+ POLARSSL_MODE_CTR,
+ 32,
+- "BLOWFISH-CTR",
++ "BF-CTR",
+ 8,
+ 8,
+ &blowfish_info
diff --git a/package/libs/polarssl/patches/310-fix_blowfish_key_len.patch b/package/libs/polarssl/patches/310-fix_blowfish_key_len.patch
new file mode 100644
index 000000000..0b4878e19
--- /dev/null
+++ b/package/libs/polarssl/patches/310-fix_blowfish_key_len.patch
@@ -0,0 +1,29 @@
+--- a/library/cipher_wrap.c
++++ b/library/cipher_wrap.c
+@@ -642,7 +642,7 @@ const cipher_base_t blowfish_info = {
+ const cipher_info_t blowfish_cbc_info = {
+ POLARSSL_CIPHER_BLOWFISH_CBC,
+ POLARSSL_MODE_CBC,
+- 32,
++ 128,
+ "BF-CBC",
+ 8,
+ 8,
+@@ -653,7 +653,7 @@ const cipher_info_t blowfish_cbc_info =
+ const cipher_info_t blowfish_cfb64_info = {
+ POLARSSL_CIPHER_BLOWFISH_CFB64,
+ POLARSSL_MODE_CFB,
+- 32,
++ 128,
+ "BF-CFB64",
+ 8,
+ 8,
+@@ -665,7 +665,7 @@ const cipher_info_t blowfish_cfb64_info
+ const cipher_info_t blowfish_ctr_info = {
+ POLARSSL_CIPHER_BLOWFISH_CTR,
+ POLARSSL_MODE_CTR,
+- 32,
++ 128,
+ "BF-CTR",
+ 8,
+ 8,
diff --git a/package/libs/uclibc++/Makefile b/package/libs/uclibc++/Makefile
index 2dd8f6507..15c2bce54 100644
--- a/package/libs/uclibc++/Makefile
+++ b/package/libs/uclibc++/Makefile
@@ -26,7 +26,6 @@ define Package/uclibcxx
NAME:=uclibc++
SECTION:=libs
CATEGORY:=Libraries
- DEPENDS:=@INSTALL_LIBSTDCPP
TITLE:=C++ library for embedded systems
URL:=http://cxx.uclibc.org/src/
endef
diff --git a/package/libs/ustream-ssl/Makefile b/package/libs/ustream-ssl/Makefile
new file mode 100644
index 000000000..28b9a99e7
--- /dev/null
+++ b/package/libs/ustream-ssl/Makefile
@@ -0,0 +1,59 @@
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=ustream-ssl
+PKG_VERSION:=2013-01-22
+PKG_RELEASE=$(PKG_SOURCE_VERSION)
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=git://nbd.name/ustream-ssl.git
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE_VERSION:=da607e6272d789ed5dae3b0efff90912fda6f81f
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
+CMAKE_INSTALL:=1
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR)
+
+PKG_LICENSE:=ISC
+PKG_LICENSE_FILES:=
+
+PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/libustream/default
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=ustream SSL Library
+ DEPENDS:=+libubox
+endef
+
+define Package/libustream-openssl
+ $(Package/libustream/default)
+ TITLE += (openssl)
+ DEPENDS += +libopenssl
+ VARIANT:=openssl
+endef
+
+define Package/libustream-cyassl
+ $(Package/libustream/default)
+ TITLE += (cyassl)
+ DEPENDS += +libcyassl
+ VARIANT:=cyassl
+endef
+
+ifeq ($(BUILD_VARIANT),cyassl)
+ TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include/cyassl
+ CMAKE_OPTIONS += -DCYASSL=on
+endif
+
+define Package/libustream/default/install
+ $(INSTALL_DIR) $(1)/lib/
+ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libustream-ssl.so $(1)/lib/
+endef
+
+Package/libustream-openssl/install = $(Package/libustream/default/install)
+Package/libustream-cyassl/install = $(Package/libustream/default/install)
+
+$(eval $(call BuildPackage,libustream-cyassl))
+$(eval $(call BuildPackage,libustream-openssl))