mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 14:34:27 -05:00 
			
		
		
		
	libnl: update to 3.5.0
Update libnl to 3.5.0 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
This commit is contained in:
		
							parent
							
								
									b2fdfe0727
								
							
						
					
					
						commit
						2d00cf7515
					
				@ -8,12 +8,12 @@
 | 
			
		||||
include $(TOPDIR)/rules.mk
 | 
			
		||||
 | 
			
		||||
PKG_NAME:=libnl
 | 
			
		||||
PKG_VERSION:=3.4.0
 | 
			
		||||
PKG_RELEASE:=2
 | 
			
		||||
PKG_VERSION:=3.5.0
 | 
			
		||||
PKG_RELEASE:=1
 | 
			
		||||
 | 
			
		||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 | 
			
		||||
PKG_SOURCE_URL:=https://github.com/thom311/libnl/releases/download/libnl3_4_0
 | 
			
		||||
PKG_HASH:=b7287637ae71c6db6f89e1422c995f0407ff2fe50cecd61a312b6a9b0921f5bf
 | 
			
		||||
PKG_SOURCE_URL:=https://github.com/thom311/libnl/releases/download/libnl$(subst .,_,$(PKG_VERSION))
 | 
			
		||||
PKG_HASH:=352133ec9545da76f77e70ccb48c9d7e5324d67f6474744647a7ed382b5e05fa
 | 
			
		||||
PKG_LICENSE:=LGPL-2.1
 | 
			
		||||
 | 
			
		||||
PKG_INSTALL:=1
 | 
			
		||||
 | 
			
		||||
@ -1,101 +0,0 @@
 | 
			
		||||
--- a/include/linux-private/linux/if_ether.h
 | 
			
		||||
+++ b/include/linux-private/linux/if_ether.h
 | 
			
		||||
@@ -22,6 +22,7 @@
 | 
			
		||||
 #define _LINUX_IF_ETHER_H
 | 
			
		||||
 
 | 
			
		||||
 #include <linux/types.h>
 | 
			
		||||
+#include <linux/libc-compat.h>
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
  *	IEEE 802.3 Ethernet magic constants.  The frame sizes omit the preamble
 | 
			
		||||
@@ -117,10 +118,12 @@
 | 
			
		||||
  *	This is an Ethernet frame header.
 | 
			
		||||
  */
 | 
			
		||||
 
 | 
			
		||||
+#if __UAPI_DEF_ETHHDR
 | 
			
		||||
 struct ethhdr {
 | 
			
		||||
 	unsigned char	h_dest[ETH_ALEN];	/* destination eth addr	*/
 | 
			
		||||
 	unsigned char	h_source[ETH_ALEN];	/* source ether addr	*/
 | 
			
		||||
 	__be16		h_proto;		/* packet type ID field	*/
 | 
			
		||||
 } __attribute__((packed));
 | 
			
		||||
+#endif
 | 
			
		||||
 
 | 
			
		||||
 #endif	/* _LINUX_IF_ETHER_H */
 | 
			
		||||
--- a/include/linux-private/linux/libc-compat.h
 | 
			
		||||
+++ b/include/linux-private/linux/libc-compat.h
 | 
			
		||||
@@ -48,10 +48,18 @@
 | 
			
		||||
 #ifndef _LIBC_COMPAT_H
 | 
			
		||||
 #define _LIBC_COMPAT_H
 | 
			
		||||
 
 | 
			
		||||
-/* We have included glibc headers... */
 | 
			
		||||
-#if defined(__GLIBC__)
 | 
			
		||||
+/* We're used from userspace... */
 | 
			
		||||
+#if !defined(__KERNEL__)
 | 
			
		||||
 
 | 
			
		||||
-/* Coordinate with glibc netinet/in.h header. */
 | 
			
		||||
+/* Coordinate with libc netinet/if_ether.h */
 | 
			
		||||
+#ifdef _NETINET_IF_ETHER_H /* musl */
 | 
			
		||||
+#define __UAPI_DEF_ETHHDR 0
 | 
			
		||||
+#else
 | 
			
		||||
+/* glibc uses __NETINET_IF_ETHER_H, and uses the uapi header. */
 | 
			
		||||
+#define __UAPI_DEF_ETHHDR 1
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
+/* Coordinate with libc netinet/in.h header. */
 | 
			
		||||
 #if defined(_NETINET_IN_H)
 | 
			
		||||
 
 | 
			
		||||
 /* GLIBC headers included first so don't define anything
 | 
			
		||||
@@ -64,15 +72,7 @@
 | 
			
		||||
 #define __UAPI_DEF_IN_CLASS		0
 | 
			
		||||
 
 | 
			
		||||
 #define __UAPI_DEF_IN6_ADDR		0
 | 
			
		||||
-/* The exception is the in6_addr macros which must be defined
 | 
			
		||||
- * if the glibc code didn't define them. This guard matches
 | 
			
		||||
- * the guard in glibc/inet/netinet/in.h which defines the
 | 
			
		||||
- * additional in6_addr macros e.g. s6_addr16, and s6_addr32. */
 | 
			
		||||
-#if defined(__USE_MISC) || defined (__USE_GNU)
 | 
			
		||||
 #define __UAPI_DEF_IN6_ADDR_ALT		0
 | 
			
		||||
-#else
 | 
			
		||||
-#define __UAPI_DEF_IN6_ADDR_ALT		1
 | 
			
		||||
-#endif
 | 
			
		||||
 #define __UAPI_DEF_SOCKADDR_IN6		0
 | 
			
		||||
 #define __UAPI_DEF_IPV6_MREQ		0
 | 
			
		||||
 #define __UAPI_DEF_IPPROTO_V6		0
 | 
			
		||||
@@ -83,7 +83,7 @@
 | 
			
		||||
 #else
 | 
			
		||||
 
 | 
			
		||||
 /* Linux headers included first, and we must define everything
 | 
			
		||||
- * we need. The expectation is that glibc will check the
 | 
			
		||||
+ * we need. The expectation is that libc will check the
 | 
			
		||||
  * __UAPI_DEF_* defines and adjust appropriately. */
 | 
			
		||||
 #define __UAPI_DEF_IN_ADDR		1
 | 
			
		||||
 #define __UAPI_DEF_IN_IPPROTO		1
 | 
			
		||||
@@ -93,7 +93,7 @@
 | 
			
		||||
 #define __UAPI_DEF_IN_CLASS		1
 | 
			
		||||
 
 | 
			
		||||
 #define __UAPI_DEF_IN6_ADDR		1
 | 
			
		||||
-/* We unconditionally define the in6_addr macros and glibc must
 | 
			
		||||
+/* We unconditionally define the in6_addr macros and libc must
 | 
			
		||||
  * coordinate. */
 | 
			
		||||
 #define __UAPI_DEF_IN6_ADDR_ALT		1
 | 
			
		||||
 #define __UAPI_DEF_SOCKADDR_IN6		1
 | 
			
		||||
@@ -115,7 +115,10 @@
 | 
			
		||||
 /* If we did not see any headers from any supported C libraries,
 | 
			
		||||
  * or we are being included in the kernel, then define everything
 | 
			
		||||
  * that we need. */
 | 
			
		||||
-#else /* !defined(__GLIBC__) */
 | 
			
		||||
+#else /* defined(__KERNEL__) */
 | 
			
		||||
+
 | 
			
		||||
+/* Definitions for if/ether.h */
 | 
			
		||||
+#define  __UAPI_DEF_ETHHDR		1
 | 
			
		||||
 
 | 
			
		||||
 /* Definitions for in.h */
 | 
			
		||||
 #define __UAPI_DEF_IN_ADDR		1
 | 
			
		||||
@@ -138,6 +141,6 @@
 | 
			
		||||
 /* Definitions for xattr.h */
 | 
			
		||||
 #define __UAPI_DEF_XATTR		1
 | 
			
		||||
 
 | 
			
		||||
-#endif /* __GLIBC__ */
 | 
			
		||||
+#endif /* defined(__KERNEL__) */
 | 
			
		||||
 
 | 
			
		||||
 #endif /* _LIBC_COMPAT_H */
 | 
			
		||||
@ -1,106 +0,0 @@
 | 
			
		||||
From 68f8393bd356a3d0598cf77e1044b7e8b98aa4d8 Mon Sep 17 00:00:00 2001
 | 
			
		||||
Message-Id: <68f8393bd356a3d0598cf77e1044b7e8b98aa4d8.1493920165.git.baruch@tkos.co.il>
 | 
			
		||||
From: Baruch Siach <baruch@tkos.co.il>
 | 
			
		||||
Date: Thu, 4 May 2017 15:56:14 +0300
 | 
			
		||||
Subject: [PATCH] Revert "build: enable building cli during tests"
 | 
			
		||||
 | 
			
		||||
This reverts commit 3cb28534d34392ceec4adead0cfa97039796ccb7.
 | 
			
		||||
 | 
			
		||||
Contrary to what 3cb28534d commit log claims, the cli programs depend on
 | 
			
		||||
dynamic libraries support of the toolchain. Enabling cli programs
 | 
			
		||||
unconditionally breaks static build as follows:
 | 
			
		||||
 | 
			
		||||
In file included from lib/cli/cls/basic.c:12:0:
 | 
			
		||||
./include/netlink/cli/utils.h:25:19: fatal error: dlfcn.h: No such file or directory
 | 
			
		||||
compilation terminated.
 | 
			
		||||
Makefile:3666: recipe for target 'lib/cli/cls/lib_cli_cls_basic_la-basic.lo' failed
 | 
			
		||||
make[1]: *** [lib/cli/cls/lib_cli_cls_basic_la-basic.lo] Error 1
 | 
			
		||||
 | 
			
		||||
Revert that commit to restore the ability of static only build of libnl, and
 | 
			
		||||
its dependencies.
 | 
			
		||||
 | 
			
		||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
 | 
			
		||||
---
 | 
			
		||||
Upstream status: https://github.com/thom311/libnl/pull/141
 | 
			
		||||
 | 
			
		||||
 Makefile.am | 21 ++++++---------------
 | 
			
		||||
 1 file changed, 6 insertions(+), 15 deletions(-)
 | 
			
		||||
 | 
			
		||||
--- a/Makefile.am
 | 
			
		||||
+++ b/Makefile.am
 | 
			
		||||
@@ -3,8 +3,6 @@
 | 
			
		||||
 ACLOCAL_AMFLAGS = -I m4
 | 
			
		||||
 
 | 
			
		||||
 lib_LTLIBRARIES =
 | 
			
		||||
-noinst_LTLIBRARIES =
 | 
			
		||||
-check_LTLIBRARIES =
 | 
			
		||||
 
 | 
			
		||||
 check_PROGRAMS =
 | 
			
		||||
 check_programs =
 | 
			
		||||
@@ -511,6 +509,8 @@ EXTRA_lib_libnl_xfrm_3_la_DEPENDENCIES =
 | 
			
		||||
 lib_libnl_xfrm_3_la_LIBADD = \
 | 
			
		||||
 	lib/libnl-3.la
 | 
			
		||||
 
 | 
			
		||||
+if ENABLE_CLI
 | 
			
		||||
+
 | 
			
		||||
 lib_cli_ltlibraries_cls = \
 | 
			
		||||
 	lib/cli/cls/basic.la \
 | 
			
		||||
 	lib/cli/cls/cgroup.la
 | 
			
		||||
@@ -524,15 +524,11 @@ lib_cli_ltlibraries_qdisc = \
 | 
			
		||||
 	lib/cli/qdisc/pfifo.la \
 | 
			
		||||
 	lib/cli/qdisc/plug.la
 | 
			
		||||
 
 | 
			
		||||
-if ENABLE_CLI
 | 
			
		||||
 pkglib_clsdir = $(pkglibdir)/cli/cls
 | 
			
		||||
 pkglib_qdiscdir = $(pkglibdir)/cli/qdisc
 | 
			
		||||
 pkglib_cls_LTLIBRARIES = $(lib_cli_ltlibraries_cls)
 | 
			
		||||
 pkglib_qdisc_LTLIBRARIES = $(lib_cli_ltlibraries_qdisc)
 | 
			
		||||
-else
 | 
			
		||||
-check_LTLIBRARIES += \
 | 
			
		||||
-	$(lib_cli_ltlibraries_cls) \
 | 
			
		||||
-	$(lib_cli_ltlibraries_qdisc)
 | 
			
		||||
+
 | 
			
		||||
 endif
 | 
			
		||||
 
 | 
			
		||||
 lib_cli_ldflags = \
 | 
			
		||||
@@ -565,9 +561,6 @@ src_lib_ldflags =
 | 
			
		||||
 
 | 
			
		||||
 if ENABLE_CLI
 | 
			
		||||
 lib_LTLIBRARIES += src/lib/libnl-cli-3.la
 | 
			
		||||
-src_lib_ldflags += -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
 | 
			
		||||
-else
 | 
			
		||||
-check_LTLIBRARIES += src/lib/libnl-cli-3.la
 | 
			
		||||
 endif
 | 
			
		||||
 
 | 
			
		||||
 src_lib_libnl_cli_3_la_SOURCES = \
 | 
			
		||||
@@ -594,7 +587,7 @@ src_lib_libnl_cli_3_la_CPPFLAGS = \
 | 
			
		||||
 	-I$(srcdir)/include \
 | 
			
		||||
 	-I$(builddir)/include
 | 
			
		||||
 src_lib_libnl_cli_3_la_LDFLAGS = \
 | 
			
		||||
-	$(src_lib_ldflags) \
 | 
			
		||||
+	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \
 | 
			
		||||
 	-Wl,--version-script=$(srcdir)/libnl-cli-3.sym
 | 
			
		||||
 src_lib_libnl_cli_3_la_LIBADD = \
 | 
			
		||||
 	lib/libnl-3.la \
 | 
			
		||||
@@ -679,8 +672,6 @@ else
 | 
			
		||||
 noinst_PROGRAMS += $(cli_programs)
 | 
			
		||||
 endif
 | 
			
		||||
 endif
 | 
			
		||||
-else
 | 
			
		||||
-check_PROGRAMS += $(cli_programs)
 | 
			
		||||
 endif
 | 
			
		||||
 
 | 
			
		||||
 src_genl_ctrl_list_CPPFLAGS =       $(src_cppflags)
 | 
			
		||||
@@ -858,10 +849,12 @@ tests_test_complex_HTB_with_hash_filters
 | 
			
		||||
 tests_test_u32_filter_with_actions_CPPFLAGS       = $(tests_cppflags)
 | 
			
		||||
 tests_test_u32_filter_with_actions_LDADD          = $(tests_ldadd)
 | 
			
		||||
 
 | 
			
		||||
+if ENABLE_CLI
 | 
			
		||||
 check_PROGRAMS += \
 | 
			
		||||
 	tests/test-cache-mngr \
 | 
			
		||||
 	tests/test-genl \
 | 
			
		||||
 	tests/test-nf-cache-mngr
 | 
			
		||||
+endif
 | 
			
		||||
 
 | 
			
		||||
 tests_cli_ldadd = \
 | 
			
		||||
 	$(tests_ldadd) \
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user