summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/libnl/Makefile13
-rw-r--r--package/libnl/patches/patch-configure_ac11
-rw-r--r--package/libnl/patches/patch-lib_utils_c34
-rw-r--r--package/libnl/patches/patch-src_lib_utils_c25
4 files changed, 78 insertions, 5 deletions
diff --git a/package/libnl/Makefile b/package/libnl/Makefile
index 6c6becb17..ee584f099 100644
--- a/package/libnl/Makefile
+++ b/package/libnl/Makefile
@@ -4,23 +4,26 @@
include ${ADK_TOPDIR}/rules.mk
PKG_NAME:= libnl
-PKG_VERSION:= 3.2.25
+PKG_VERSION:= 3.2.29
PKG_RELEASE:= 1
-PKG_HASH:= 8beb7590674957b931de6b7f81c530b85dc7c1ad8fbda015398bc1e8d1ce8ec5
+PKG_HASH:= 5a30dc4986158c6c2b1309f4a15a283d50cc938108a675e3d822e24debcd229d
PKG_DESCR:= netlink library
PKG_SECTION:= libs/net
PKG_BUILDDEP:= m4-host flex-host
-PKG_URL:= http://www.infradead.org/~tgr/libnl/
-PKG_SITES:= http://www.infradead.org/~tgr/libnl/files/
+PKG_SITES:= https://github.com/thom311/libnl/archive/
PKG_NOPARALLEL:= 1
PKG_OPTS:= dev
-DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
+DISTFILES:= ${PKG_NAME}3_2_29.tar.gz
+WRKDIST= $(WRKDIR)/$(PKG_NAME)-${PKG_NAME}3_2_29
include ${ADK_TOPDIR}/mk/package.mk
$(eval $(call PKG_template,LIBNL,libnl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
+AUTOTOOL_STYLE:= autogen
+CONFIGURE_ARGS+= --disable-cli
+
libnl-install:
${INSTALL_DIR} ${IDIR_LIBNL}/etc/libnl
$(CP) ${WRKINST}/etc/libnl/* ${IDIR_LIBNL}/etc/libnl
diff --git a/package/libnl/patches/patch-configure_ac b/package/libnl/patches/patch-configure_ac
new file mode 100644
index 000000000..c480cb9ef
--- /dev/null
+++ b/package/libnl/patches/patch-configure_ac
@@ -0,0 +1,11 @@
+--- libnl-libnl3_2_29.orig/configure.ac 2016-12-30 15:57:01.000000000 +0100
++++ libnl-libnl3_2_29/configure.ac 2017-04-26 20:09:18.129932699 +0200
+@@ -126,6 +126,8 @@ fi
+
+ AC_CONFIG_SUBDIRS([doc])
+
++AC_CHECK_FUNCS([strerror_l])
++
+ AC_CONFIG_FILES([
+ Makefile
+ libnl-3.0.pc
diff --git a/package/libnl/patches/patch-lib_utils_c b/package/libnl/patches/patch-lib_utils_c
new file mode 100644
index 000000000..3e14d4739
--- /dev/null
+++ b/package/libnl/patches/patch-lib_utils_c
@@ -0,0 +1,34 @@
+--- libnl-libnl3_2_29.orig/lib/utils.c 2016-12-30 15:57:01.000000000 +0100
++++ libnl-libnl3_2_29/lib/utils.c 2017-04-26 20:09:18.137933191 +0200
+@@ -30,7 +30,9 @@
+ #include <netlink/utils.h>
+ #include <linux/socket.h>
+ #include <stdlib.h> /* exit() */
++#ifdef HAVE_STRERROR_L
+ #include <locale.h>
++#endif
+
+ /**
+ * Global variable indicating the desired level of debugging output.
+@@ -123,9 +125,10 @@ int __nl_read_num_str_file(const char *p
+
+ const char *nl_strerror_l(int err)
+ {
++ const char *buf;
++#ifdef HAVE_STRERROR_L
+ int errno_save = errno;
+ locale_t loc = newlocale(LC_MESSAGES_MASK, "", (locale_t)0);
+- const char *buf;
+
+ if (loc == (locale_t)0) {
+ if (errno == ENOENT)
+@@ -140,6 +143,9 @@ const char *nl_strerror_l(int err)
+ }
+
+ errno = errno_save;
++#else
++ buf = strerror(err);
++#endif
+ return buf;
+ }
+ /** @endcond */
diff --git a/package/libnl/patches/patch-src_lib_utils_c b/package/libnl/patches/patch-src_lib_utils_c
new file mode 100644
index 000000000..6d75c3acf
--- /dev/null
+++ b/package/libnl/patches/patch-src_lib_utils_c
@@ -0,0 +1,25 @@
+--- libnl-libnl3_2_29.orig/src/lib/utils.c 2016-12-30 15:57:01.000000000 +0100
++++ libnl-libnl3_2_29/src/lib/utils.c 2017-04-26 20:09:18.149933980 +0200
+@@ -81,6 +81,7 @@ void nl_cli_fatal(int err, const char *f
+ fprintf(stderr, "\n");
+ } else {
+ char *buf;
++#ifdef HAVE_STRERROR_L
+ locale_t loc = newlocale(LC_MESSAGES_MASK, "", (locale_t)0);
+ if (loc == (locale_t)0) {
+ if (errno == ENOENT)
+@@ -91,9 +92,14 @@ void nl_cli_fatal(int err, const char *f
+ }
+ if (loc != (locale_t)0)
+ buf = strerror_l(err, loc);
++#else
++ buf = strerror(err);
++#endif
+ fprintf(stderr, "%s\n", buf);
++#ifdef HAVE_STRERROR_L
+ if (loc != (locale_t)0)
+ freelocale(loc);
++#endif
+ }
+
+ exit(abs(err));