ソースを参照

libnl: update to 3.2.29, add patch from buildroot

Waldemar Brodkorb 8 年 前
コミット
0510be4cc4

+ 8 - 5
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

+ 11 - 0
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

+ 34 - 0
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 */

+ 25 - 0
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));