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:
		 DENG Qingfang
					DENG Qingfang
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							b2fdfe0727
						
					
				
				
					commit
					2d00cf7515
				
			| @@ -8,12 +8,12 @@ | |||||||
| include $(TOPDIR)/rules.mk | include $(TOPDIR)/rules.mk | ||||||
|  |  | ||||||
| PKG_NAME:=libnl | PKG_NAME:=libnl | ||||||
| PKG_VERSION:=3.4.0 | PKG_VERSION:=3.5.0 | ||||||
| PKG_RELEASE:=2 | PKG_RELEASE:=1 | ||||||
|  |  | ||||||
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | ||||||
| PKG_SOURCE_URL:=https://github.com/thom311/libnl/releases/download/libnl3_4_0 | PKG_SOURCE_URL:=https://github.com/thom311/libnl/releases/download/libnl$(subst .,_,$(PKG_VERSION)) | ||||||
| PKG_HASH:=b7287637ae71c6db6f89e1422c995f0407ff2fe50cecd61a312b6a9b0921f5bf | PKG_HASH:=352133ec9545da76f77e70ccb48c9d7e5324d67f6474744647a7ed382b5e05fa | ||||||
| PKG_LICENSE:=LGPL-2.1 | PKG_LICENSE:=LGPL-2.1 | ||||||
|  |  | ||||||
| PKG_INSTALL:=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) \ |  | ||||||
		Reference in New Issue
	
	Block a user