tcpdump: misc recipe cleanup + drop obsolete workarounds

Remove obsolete workarounds and improve the workarounds that remain.
For example, it hasn't been necessary to set ac_cv_linux_vers since
tcpdump 4.6.0:

  a42fc6e764

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Andre McCurdy 2019-01-15 14:17:42 -08:00 committed by Khem Raj
parent ddb7541472
commit 9e669a4cbc
3 changed files with 54 additions and 26 deletions

View File

@ -0,0 +1,30 @@
From a2bfd28034d9aa48d8ff109c1314e53bc9779752 Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com>
Date: Wed, 24 Oct 2018 22:26:08 -0700
Subject: [PATCH] avoid absolute path when searching for libdlpi
Let the build environment control library search paths.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
configure.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.in b/configure.in
index c882909..52aefd6 100644
--- a/configure.in
+++ b/configure.in
@@ -542,7 +542,7 @@ don't.])
fi
# libdlpi is needed for Solaris 11 and later.
-AC_CHECK_LIB(dlpi, dlpi_walk, LIBS="$LIBS -ldlpi" LDFLAGS="-L/lib $LDFLAGS", ,-L/lib)
+AC_CHECK_LIB(dlpi, dlpi_walk, LIBS="$LIBS -ldlpi")
dnl
dnl Check for "pcap_list_datalinks()", "pcap_set_datalink()",
--
1.9.1

View File

@ -1,10 +1,8 @@
From 741d77e42fc4af49804f7ee43b7237e01633cbcd Mon Sep 17 00:00:00 2001 From dd023c133980fcc0cff5896e85377675e0571894 Mon Sep 17 00:00:00 2001
From: Roy Li <rongqing.li@windriver.com> From: Roy Li <rongqing.li@windriver.com>
Date: Tue, 8 Jul 2014 13:20:47 +0800 Date: Tue, 8 Jul 2014 13:20:47 +0800
Subject: [PATCH] unnecessary to check libpcap Subject: [PATCH] unnecessary to check libpcap
Upstream-Status: Pending
since the check of libpcap did not consider the cross-compile, lead to the since the check of libpcap did not consider the cross-compile, lead to the
below error: below error:
This autoconf log indicates errors, it looked at host include and/or This autoconf log indicates errors, it looked at host include and/or
@ -13,22 +11,29 @@ below error:
In fact, the libpcap has been added into the tcpdump's DEPENDS, not need to In fact, the libpcap has been added into the tcpdump's DEPENDS, not need to
check if libpcap existed. check if libpcap existed.
Signed-off-by: Roy Li <rongqing.li@windriver.com> Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
--- ---
configure.in | 2 +- configure.in | 4 +++-
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/configure.in b/configure.in diff --git a/configure.in b/configure.in
index b2305a5..b3b5dbf 100644 index b2305a5..c882909 100644
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -418,7 +418,7 @@ dnl Some platforms may need -lnsl for getrpcbynumber. @@ -418,7 +418,9 @@ dnl Some platforms may need -lnsl for getrpcbynumber.
AC_SEARCH_LIBS(getrpcbynumber, nsl, AC_SEARCH_LIBS(getrpcbynumber, nsl,
AC_DEFINE(HAVE_GETRPCBYNUMBER, 1, [define if you have getrpcbynumber()])) AC_DEFINE(HAVE_GETRPCBYNUMBER, 1, [define if you have getrpcbynumber()]))
-AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS) -AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS)
+#AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS) +# Simplified (more cross compile friendly) check for libpcap. All we really
+# need is to sanity check that libpcap is available and add -lpcap to LIBS.
+AC_CHECK_LIB(pcap, pcap_compile, LIBS="$LIBS -lpcap")
# #
# Check for these after AC_LBL_LIBPCAP, so we link with the appropriate # Check for these after AC_LBL_LIBPCAP, so we link with the appropriate
--
1.9.1

View File

@ -1,13 +1,15 @@
SUMMARY = "A sophisticated network protocol analyzer" SUMMARY = "A sophisticated network protocol analyzer"
HOMEPAGE = "http://www.tcpdump.org/" HOMEPAGE = "http://www.tcpdump.org/"
SECTION = "net"
LICENSE = "BSD" LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867" LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867"
SECTION = "net"
DEPENDS = "libpcap" DEPENDS = "libpcap"
SRC_URI = " \ SRC_URI = " \
http://www.tcpdump.org/release/${BP}.tar.gz \ http://www.tcpdump.org/release/${BP}.tar.gz \
file://unnecessary-to-check-libpcap.patch \ file://unnecessary-to-check-libpcap.patch \
file://avoid-absolute-path-when-searching-for-libdlpi.patch \
file://add-ptest.patch \ file://add-ptest.patch \
file://run-ptest \ file://run-ptest \
" "
@ -15,34 +17,25 @@ SRC_URI = " \
SRC_URI[md5sum] = "9bbc1ee33dab61302411b02dd0515576" SRC_URI[md5sum] = "9bbc1ee33dab61302411b02dd0515576"
SRC_URI[sha256sum] = "798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79" SRC_URI[sha256sum] = "798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79"
export LIBS=" -lpcap"
inherit autotools-brokensep ptest inherit autotools-brokensep ptest
CACHED_CONFIGUREVARS = "ac_cv_linux_vers=${ac_cv_linux_vers=2}"
PACKAGECONFIG ??= "openssl" PACKAGECONFIG ?= "openssl"
PACKAGECONFIG[openssl] = "--with-crypto=yes, --without-openssl --without-crypto, openssl"
PACKAGECONFIG[smi] = "--with-smi, --without-smi,libsmi"
PACKAGECONFIG[libcap-ng] = "--with-cap-ng=yes,--with-cap-ng=no,libcap-ng"
EXTRA_AUTORECONF += " -I m4" PACKAGECONFIG[libcap-ng] = "--with-cap-ng,--without-cap-ng,libcap-ng"
PACKAGECONFIG[openssl] = "--with-crypto,--without-openssl --without-crypto,openssl"
PACKAGECONFIG[smi] = "--with-smi,--without-smi,libsmi"
EXTRA_AUTORECONF += "-I m4"
do_configure_prepend() { do_configure_prepend() {
mkdir -p ${S}/m4 mkdir -p ${S}/m4
if [ -f aclocal.m4 ]; then if [ -f aclocal.m4 ]; then
mv aclocal.m4 ${S}/m4 mv aclocal.m4 ${S}/m4
fi fi
# AC_CHECK_LIB(dlpi.. was looking to host /lib
sed -i 's:-L/lib::g' ./configure.in
}
do_configure_append() {
sed -i 's:-L/usr/lib::' ./Makefile
sed -i 's:-Wl,-rpath,${STAGING_LIBDIR}::' ./Makefile
sed -i 's:-I/usr/include::' ./Makefile
} }
do_install_append() { do_install_append() {
# tcpdump 4.0.0 installs a copy to /usr/sbin/tcpdump.4.0.0 # make install installs an unneeded extra copy of the tcpdump binary
rm -f ${D}${sbindir}/tcpdump.${PV} rm -f ${D}${sbindir}/tcpdump.${PV}
} }