--- /dev/null
+From e186ca9ebda181f62504a1922559ef3ddae5e3b6 Mon Sep 17 00:00:00 2001
+From: Laurent Charpentier <laurent_pubs@yahoo.com>
+Date: Mon, 15 Jan 2018 11:24:45 +0100
+Subject: [PATCH] get inline functions work with both gnu11 and gnu89
+
+After gcc upgraded to gcc5, and if the codes are compiled without optimization(-O0), and the below error will happen:
+
+./include/lldp_8021qaz.h:237:12: error: inline function 'ieee8021qaz_clif_cmd' declared but never defined [-Werror]
+ inline int ieee8021qaz_clif_cmd(void *data, struct sockaddr_un *from,
+ ^
+./include/lldp_8021qaz.h:222:13: error: inline function 'set_prio_map' declared but never defined [-Werror]
+ inline void set_prio_map(u32 *prio_map, u8 prio, int tc);
+ ^
+./include/lldp_8021qaz.h:221:12: error: inline function 'get_prio_map' declared but never defined [-Werror]
+ inline int get_prio_map(u32 prio_map, int tc);
+
+gcc5 defaults to -std=gnu11 instead of -std=gnu89, and it requires that exactly one C source file has the callable copy of the inline function.
+
+Signed-off-by: Laurent Charpentier <laurent_pubs@yahoo.com>
+---
+ include/lldp_8021qaz.h | 6 ------
+ lldp_8021qaz.c | 4 ++--
+ 2 files changed, 2 insertions(+), 8 deletions(-)
+
+diff --git a/include/lldp_8021qaz.h b/include/lldp_8021qaz.h
+index 55353b8..09dee20 100644
+--- a/include/lldp_8021qaz.h
++++ b/include/lldp_8021qaz.h
+@@ -218,9 +218,6 @@ int ieee8021qaz_mod_app(struct app_tlv_head *head, int peer,
+ u8 prio, u8 sel, u16 proto, u32 ops);
+ int ieee8021qaz_app_sethw(char *ifname, struct app_tlv_head *head);
+
+-inline int get_prio_map(u32 prio_map, int tc);
+-inline void set_prio_map(u32 *prio_map, u8 prio, int tc);
+-
+ struct ieee8021qaz_tlvs *ieee8021qaz_data(const char *);
+
+ int ieee8021qaz_tlvs_rxed(const char *ifname);
+@@ -234,9 +231,6 @@ int ieee8021qaz_rchange(struct port *port, struct lldp_agent *,
+ void ieee8021qaz_ifup(char *ifname, struct lldp_agent *);
+ void ieee8021qaz_ifdown(char *ifname, struct lldp_agent *);
+ u8 ieee8021qaz_mibDeleteObject(struct port *port, struct lldp_agent *);
+-inline int ieee8021qaz_clif_cmd(void *data, struct sockaddr_un *from,
+- socklen_t fromlen, char *ibuf, int ilen,
+- char *rbuf);
+ int ieee8021qaz_check_operstate(void);
+ int get_dcbx_hw(const char *ifname, __u8 *dcbx);
+
+diff --git a/lldp_8021qaz.c b/lldp_8021qaz.c
+index 094676d..f154317 100644
+--- a/lldp_8021qaz.c
++++ b/lldp_8021qaz.c
+@@ -396,7 +396,7 @@ static int read_cfg_file(char *ifname, struct lldp_agent *agent,
+ return 0;
+ }
+
+-inline int get_prio_map(u32 prio_map, int prio)
++static inline int get_prio_map(u32 prio_map, int prio)
+ {
+ if (prio > 7)
+ return 0;
+@@ -404,7 +404,7 @@ inline int get_prio_map(u32 prio_map, int prio)
+ return (prio_map >> (4 * (7-prio))) & 0xF;
+ }
+
+-inline void set_prio_map(u32 *prio_map, u8 prio, int tc)
++static inline void set_prio_map(u32 *prio_map, u8 prio, int tc)
+ {
+ u32 mask = ~(0xffffffff & (0xF << (4 * (7-prio))));
+ *prio_map &= mask;
+--
+2.14.3
+
--- /dev/null
+################################################################################
+#
+# open-lldp
+#
+################################################################################
+
+OPEN_LLDP_VERSION = 036e314bd93602f7388262cc37faf8b626980af1
+OPEN_LLDP_SITE = git://open-lldp.org/open-lldp.git
+OPEN_LLDP_DEPENDENCIES = readline libnl libconfig host-pkgconf
+OPEN_LLDP_LICENSE = GPL-2.0
+OPEN_LLDP_LICENSE_FILES = COPYING
+
+# Fetching from git, need to generate configure/Makefile.in
+OPEN_LLDP_AUTORECONF = YES
+
+# Create the m4 directory (missing from the archive).
+# This is required for autoconf.
+define OPEN_LLDP_CREATE_M4
+ mkdir -p $(@D)/m4
+endef
+
+OPEN_LLDP_PRE_CONFIGURE_HOOKS += OPEN_LLDP_CREATE_M4
+
+$(eval $(autotools-package))