--- /dev/null
+From ff3dcc4ad71c1105bd8ea11afe7e07efd48c038d Mon Sep 17 00:00:00 2001
+From: Vincent Bernat <vincent@bernat.ch>
+Date: Tue, 25 Sep 2018 10:57:49 +0200
+Subject: [PATCH] build: ability to disable libbsd with --without-libbsd
+
+This is useful when user wants to ensure reproducibility of the build
+whatever libbsd is present or not.
+
+Signed-off-by: Trent Piepho <tpiepho@impinj.com>
+---
+ configure.ac | 59 +++++++++++++++++++++++++++++++++++++++--------------------
+ src/marshal.h | 1 +
+ 2 files changed, 40 insertions(+), 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9b40473..589cd96 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -173,26 +173,44 @@ AC_FUNC_REALLOC
+ AC_FUNC_FORK
+
+ # Some functions can be in libbsd
+-PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
+- _save_CFLAGS="$CFLAGS"
+- _save_LIBS="$LIBS"
+- CFLAGS="$CFLAGS $libbsd_CFLAGS"
+- LIBS="$LIBS $libbsd_LIBS"
+- AC_MSG_CHECKING([if libbsd can be linked correctly])
+- AC_TRY_LINK([
+-@%:@include <sys/time.h>
+-@%:@include <sys/types.h>
+-],[],
+- [
+- AC_MSG_RESULT(yes)
+- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
+- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
+- ],[
+- AC_MSG_RESULT(no)
+- CFLAGS="$_save_CFLAGS"
+- LIBS="$_save_LIBS"
+- ])
+-], [:])
++AC_ARG_WITH([libbsd],
++ AS_HELP_STRING(
++ [--with-libbsd],
++ [Use libbsd @<:@default=auto@:>@]),
++ [],
++ [with_libbsd=auto])
++if test x"$with_libbsd" != x"no"; then
++ PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
++ _save_CFLAGS="$CFLAGS"
++ _save_LIBS="$LIBS"
++ CFLAGS="$CFLAGS $libbsd_CFLAGS"
++ LIBS="$LIBS $libbsd_LIBS"
++ AC_MSG_CHECKING([if libbsd can be linked correctly])
++ AC_TRY_LINK([
++ @%:@include <sys/time.h>
++ @%:@include <sys/types.h>
++ ],[],
++ [
++ AC_MSG_RESULT(yes)
++ LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
++ LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
++ with_libbsd=yes
++ ],[
++ AC_MSG_RESULT(no)
++ CFLAGS="$_save_CFLAGS"
++ LIBS="$_save_LIBS"
++ if test x"$with_libbsd" = x"yes"; then
++ AC_MSG_FAILURE([*** no libbsd support found])
++ fi
++ with_libbsd=no
++ ])
++ ], [
++ if test x"$with_libbsd" = x"yes"; then
++ AC_MSG_FAILURE([*** no libbsd support found])
++ fi
++ with_libbsd=no
++ ])
++fi
+
+ # setproctitle may have an _init function
+ AC_REPLACE_FUNCS([setproctitle])
+@@ -412,6 +430,7 @@ cat <<EOF
+ XML output.....: ${with_xml-no}
+ Oldies support.: $enable_oldies
+ seccomp........: ${with_seccomp-no}
++ libbsd.........: ${with_libbsd-no}
+
+ Privilege separation:
+ Enabled........: $enable_privsep
+diff --git a/src/marshal.h b/src/marshal.h
+index b0e8032..0a782d5 100644
+--- a/src/marshal.h
++++ b/src/marshal.h
+@@ -19,6 +19,7 @@
+ #define _MARSHAL_H
+
+ #include <stddef.h>
++#include <stdint.h>
+ #include <sys/types.h>
+
+ struct marshal_info;
+--
+2.14.4
+
+++ /dev/null
-From 106aa50d4e5b336f7dd2d5cf4d882e692d205e91 Mon Sep 17 00:00:00 2001
-From: Vincent Bernat <vincent@bernat.im>
-Date: Sat, 18 Jun 2016 22:18:41 +0200
-Subject: [PATCH] build: make generation of atom-glue compatible with older gcc
- versions
-
-With old versions, cpp doesn't accept several files as input. See #186.
-
-Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
----
- src/lib/Makefile.am | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
-index 250e32a..2a5cdb3 100644
---- a/src/lib/Makefile.am
-+++ b/src/lib/Makefile.am
-@@ -20,8 +20,9 @@ nodist_liblldpctl_la_SOURCES = atom-glue.c
- liblldpctl_la_LIBADD = $(top_builddir)/src/libcommon-daemon-lib.la libfixedpoint.la
-
- atom-glue.c: $(ATOM_FILES) Makefile
-- $(AM_V_GEN)($(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
-+ $(AM_V_GEN)(for f in $(ATOM_FILES:%=$(srcdir)/%); do \
-+ $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
- $(SED) -n 's+^void init_atom_builder_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
- sort | \
- $(AWK) '{ atoms[$$2] = 1 } \
-@@ -30,8 +31,9 @@ atom-glue.c: $(ATOM_FILES) Makefile
- print " static int init = 0; if (init) return; init++;"; \
- for (atom in atoms) { print " init_atom_builder_"atom"();" } \
- print "}"; }' && \
-+ for f in $(ATOM_FILES:%=$(srcdir)/%); do \
- $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(ATOM_FILES:%=$(srcdir)/%) | \
-+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $$f; done | \
- $(SED) -n 's+^void init_atom_map_\([^(]*\)().*, \([0-9]*\)).*+\2 \1+p' | \
- sort -n | \
- $(AWK) '{ atoms[$$2] = 1 } \
---
-2.9.0
-
+++ /dev/null
-From 0801a066cd4a24a858ddfa7c62c7802e0f5533a8 Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN" <yann.morin.1998@free.fr>
-Date: Sun, 14 Aug 2016 12:15:17 +0200
-Subject: [PATCH] configure: do not check for libbsd
-
-libbsd causes build issues because its libbsd-overlay.pc file is borked:
-it contains -isystem in CFLAGS, which is not munged by pkgconf, so we
-end up using the headers of the build machine, causing all sorts of
-hard-to-debug trouble at build time.
-
-lldpd uses libbsd-overlay for a few helper functions, but has fallbacks
-in case it is not available. The only feature that is lost when not using
-it is that the neighbour name is no longer displayed in /proc/self/cmdline.
-As the author of lldpd said on IRC: "people should survive! ;-)"
-
-So we just remove the detection of libbsd altogether.
-
-Fixes:
- http://autobuild.buildroot.org/results/6b7/6b70fa379e834ec71cc260ba6af771b531ca3511/
- http://autobuild.buildroot.org/results/769/769074c4bb67336ae6679f2c1cd2a8220d2bec24/
- http://autobuild.buildroot.org/results/c8a/c8a6001f437701ecc75f6c9252935645bda8a8c8/
- [...]
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
- configure.ac | 19 -------------------
- 1 file changed, 19 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index dd723b0..45498ce 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -165,25 +165,6 @@ AC_FUNC_MALLOC
- AC_FUNC_REALLOC
- AC_FUNC_FORK
-
--# Some functions can be in libbsd
--PKG_CHECK_MODULES([libbsd], [libbsd-overlay], [
-- _save_CFLAGS="$CFLAGS"
-- _save_LIBS="$LIBS"
-- CFLAGS="$CFLAGS $libbsd_CFLAGS"
-- LIBS="$LIBS $libbsd_LIBS"
-- AC_MSG_CHECKING([if libbsd can be linked correctly])
-- AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { return 0; }]])],
-- [
-- AC_MSG_RESULT(yes)
-- LLDP_CFLAGS="$LLDP_CFLAGS $libbsd_CFLAGS"
-- LLDP_LDFLAGS="$LLDP_LDFLAGS $libbsd_LIBS"
-- ],[
-- AC_MSG_RESULT(no)
-- CFLAGS="$_save_CFLAGS"
-- LIBS="$_save_LIBS"
-- ])
--], [:])
--
- # setproctitle may have an _init function
- AC_REPLACE_FUNCS([setproctitle])
- AC_CHECK_FUNCS([setproctitle_init])
---
-2.7.4
-
+++ /dev/null
-From d28b3bfa1b224f7770004dddf4dfaf10ad7ad6c9 Mon Sep 17 00:00:00 2001
-From: Damien Riegel <damien.riegel@savoirfairelinux.com>
-Date: Mon, 18 Dec 2017 14:37:08 -0500
-Subject: [PATCH] configure: remove check on CXX compiler
-
-lldpd fails to build if the toolchain doesn't have a C++ compiler
-because configure fails with the following error:
-
- checking how to run the C++ preprocessor... /lib/cpp
- configure: error: in `/home/dkc/src/buildroot/build-zii/build/lldpd-0.9.4':
- configure: error: C++ preprocessor "/lib/cpp" fails sanity check
-
-Since "8d92800b: build: cleaner way to not alter CFLAGS/CPPFLAGS/LDFLAGS",
-it seems that the dependency on C++ is not required anymore, so there
-is no reason to keep this restriction. Dropping AC_PROG_CXX allows to
-build with a toolchain that doesn't have C++ just fine.
----
- configure.ac | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0edceb1..5afe8f2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -48,7 +48,6 @@ AC_PROG_CC_C99
- if test x"$ac_cv_prog_cc_c99" = x"no"; then
- AC_MSG_FAILURE([*** C99 support is mandatory])
- fi
--AC_PROG_CXX
- AM_PROG_CC_C_O
- AC_PROG_LIBTOOL
- AC_PROG_LN_S
---
-2.15.1
-
# Locally computed
-sha256 eb1f5beff2ff5c13c5e0342b5b9da815ed4a63866262445e1168a79ee65c9079 lldpd-0.9.4.tar.gz
+sha256 450b622aac7ae1758f1ef82f3b7b94ec47f2ff33abfb0e6ac82555b9ee55f151 lldpd-1.0.1.tar.gz
#
################################################################################
-LLDPD_VERSION = 0.9.4
+LLDPD_VERSION = 1.0.1
LLDPD_SITE = http://media.luffy.cx/files/lldpd
LLDPD_DEPENDENCIES = host-pkgconf libevent
LLDPD_LICENSE = ISC
LLDPD_CONF_ENV = ac_cv_prog_cc_c99=-std=gnu99
LLDPD_CONF_OPTS = \
- --without-readline \
--without-embedded-libevent \
--without-snmp \
--without-xml \
--without-json \
--without-seccomp \
+ --without-libbsd \
--disable-hardening \
--disable-privsep \
+ $(if $(BR2_PACKAGE_READLINE),--with-readline,--without-readline) \
$(if $(BR2_PACKAGE_LLDPD_CDP),--enable-cdp,--disable-cdp) \
$(if $(BR2_PACKAGE_LLDPD_FDP),--enable-fdp,--disable-fdp) \
$(if $(BR2_PACKAGE_LLDPD_EDP),--enable-edp,--disable-edp) \
$(TARGET_DIR)/etc/init.d/S60lldpd
endef
+define LLDPD_INSTALL_INIT_SYSTEMD
+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+ ln -sf ../../../../usr/lib/systemd/system/lldpd.service \
+ $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/lldpd.service
+endef
+
$(eval $(autotools-package))