commit:     1a038df6df11743fe6ff4eaad6c029c974949ea2
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 26 08:40:43 2016 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Oct 26 09:04:03 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a038df6

net-libs/libpcap: Version bump.

Package-Manager: portage-2.3.2

 net-libs/libpcap/Manifest                          |  1 +
 .../files/libpcap-1.8.1-cross-compile.patch        | 16 +++++
 net-libs/libpcap/files/libpcap-1.8.1-darwin.patch  | 15 ++++
 net-libs/libpcap/files/libpcap-1.8.1-libnl.patch   | 22 ++++++
 net-libs/libpcap/libpcap-1.8.1.ebuild              | 84 ++++++++++++++++++++++
 5 files changed, 138 insertions(+)

diff --git a/net-libs/libpcap/Manifest b/net-libs/libpcap/Manifest
index d433f59..5359869 100644
--- a/net-libs/libpcap/Manifest
+++ b/net-libs/libpcap/Manifest
@@ -1,2 +1,3 @@
 DIST libpcap-1.7.4.tar.gz 663021 SHA256 
7ad3112187e88328b85e46dce7a9b949632af18ee74d97ffc3f2b41fe7f448b0 SHA512 
83c55aa4173a90e8080a63dc6f0faeb4339d5def998abb9a578f08210c1784a1787ac6975f8bd27b02f8854dd18f03a23c1cd5fa611f46247090b2cc13943cf9
 WHIRLPOOL 
b74cb9f55fd58f4521b0c074ae71448af8bc9e3d66577b6631b5ee59e27cca40f38519b9f2ab097755bd5a86a298bb3edb6d37aad9d0530060eb7ec9dc6221a8
 DIST libpcap-1.8.0.tar.gz 698506 SHA256 
aef925af509cfe8c50224299a2748b0fbf85e4ae6cf1c5ce332f9eb240d8761f SHA512 
1d8d455f64c67627e12e9b4e8fa7d311fa71e63db1864f7287bb8cf598f0b51a178cf92e0ad8c1c6d0229b8b8d23aa493450e324af1ec5f35acee9a9fd0254f7
 WHIRLPOOL 
2ec86289dd18e807a96b54475b6651e12c7920594494f43dc31bdb29713c5208ccacace33954a23031b5dbd3984a91d85deca7bd54daccf7a4460ef2589b1764
+DIST libpcap-1.8.1.tar.gz 753405 SHA256 
35c45ce725933894878707a00f60bb271244902363ec7097f8fa016dae278c5d SHA512 
7e6a7351bb4213e1c3dd95ef7a460e91f733d933e39ba518ad8ba6d2f86b6e7cfa50ae667c8dc1300ef47bf8693ac8a1f18e068f41175ca5d0147a0b72278882
 WHIRLPOOL 
dfc172bdecff1b93e549d0fe80068ccf6fcbd5dcf4a1cda0a1c34c2bfd702237988655f5e6bb91fec32299e0517593b192fde2a8179df17ab35b8db98f024cef

diff --git a/net-libs/libpcap/files/libpcap-1.8.1-cross-compile.patch 
b/net-libs/libpcap/files/libpcap-1.8.1-cross-compile.patch
new file mode 100644
index 00000000..361cdeb
--- /dev/null
+++ b/net-libs/libpcap/files/libpcap-1.8.1-cross-compile.patch
@@ -0,0 +1,16 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -291,7 +291,12 @@
+ dnl XXX This could be done for cross-compiling, but for now it's not.
+ dnl
+ if test -z "$with_pcap" && test "$cross_compiling" = yes; then
+-      AC_MSG_ERROR(pcap type not determined when cross-compiling; use 
--with-pcap=...)
++      if test -z "$with_pcap" ; then
++              case $host in
++                      *-linux*) with_pcap="linux";;
++                      *) AC_MSG_ERROR(pcap type not determined when 
cross-compiling; use --with-pcap=...);;
++              esac
++      fi
+ fi
+ AC_ARG_WITH(pcap,
+ AC_HELP_STRING([--with-pcap=TYPE],[use packet capture TYPE]))

diff --git a/net-libs/libpcap/files/libpcap-1.8.1-darwin.patch 
b/net-libs/libpcap/files/libpcap-1.8.1-darwin.patch
new file mode 100644
index 00000000..650bea8
--- /dev/null
+++ b/net-libs/libpcap/files/libpcap-1.8.1-darwin.patch
@@ -0,0 +1,15 @@
+Prefix' Darwin systems are single arch, hijack Darwin7 case which assumes this 
setup
+Check for bluetooth/mgmt.h before use
+
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -1117,7 +1117,7 @@
+       if test "$enable_universal" != "no"; then
+               case "$host_os" in
+ 
+-              darwin[0-7].*)
++              darwin**)
+                       #
+                       # Pre-Tiger.  Build only for 32-bit PowerPC; no
+                       # need for any special compiler or linker flags.

diff --git a/net-libs/libpcap/files/libpcap-1.8.1-libnl.patch 
b/net-libs/libpcap/files/libpcap-1.8.1-libnl.patch
new file mode 100644
index 00000000..61dfc4e
--- /dev/null
+++ b/net-libs/libpcap/files/libpcap-1.8.1-libnl.patch
@@ -0,0 +1,22 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -453,10 +453,6 @@
+ 
+                 incdir=-I/usr/include/libnl3
+                 libnldir=
+-                if test x$withval != x ; then
+-                  libnldir=-L${withval}/lib/.libs
+-                  incdir=-I${withval}/include
+-                fi
+ 
+               #
+               # Try libnl 3.x first.
+@@ -471,7 +467,7 @@
+                       AC_DEFINE(HAVE_LIBNL_3_x,1,[if libnl exists and is 
version 3.x])
+                       AC_DEFINE(HAVE_LIBNL_NLE,1,[libnl has NLE_FAILURE])
+                       AC_DEFINE(HAVE_LIBNL_SOCKETS,1,[libnl has new-style 
socket api])
+-                      V_INCLS="$V_INCLS ${incdir}"
++                      V_INCLS="${incdir} $V_INCLS"
+                       have_any_nl="yes"
+               ],[], ${incdir} ${libnldir} -lnl-genl-3 -lnl-3 )
+ 

diff --git a/net-libs/libpcap/libpcap-1.8.1.ebuild 
b/net-libs/libpcap/libpcap-1.8.1.ebuild
new file mode 100644
index 00000000..96ea6bc
--- /dev/null
+++ b/net-libs/libpcap/libpcap-1.8.1.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit autotools eutils multilib-minimal
+
+DESCRIPTION="A system-independent library for user-level network packet 
capture"
+HOMEPAGE="
+       http://www.tcpdump.org/
+       https://github.com/the-tcpdump-group/libpcap
+"
+SRC_URI="
+       https://github.com/the-tcpdump-group/${PN}/archive/${P}.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh 
~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos 
~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="bluetooth dbus netlink static-libs usb"
+
+RDEPEND="
+       bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] )
+       dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+       netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] )
+       usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+       sys-devel/flex
+       virtual/yacc
+       dbus? ( virtual/pkgconfig[${MULTILIB_USEDEP}] )
+"
+
+S=${WORKDIR}/${PN}-${P}
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.6.1-prefix-solaris.patch
+       "${FILESDIR}"/${PN}-1.8.1-cross-compile.patch
+       "${FILESDIR}"/${PN}-1.8.1-darwin.patch
+       "${FILESDIR}"/${PN}-1.8.1-libnl.patch
+)
+
+src_prepare() {
+       default
+
+       mkdir bluetooth || die
+       cp "${FILESDIR}"/mgmt.h bluetooth/ || die
+
+       eapply_user
+
+       echo ${PV} > VERSION || die
+
+       eautoreconf
+}
+
+multilib_src_configure() {
+       ECONF_SOURCE="${S}" \
+       econf \
+               $(use_enable bluetooth) \
+               $(use_enable usb) \
+               $(use_enable dbus) \
+               $(use_with netlink libnl) \
+               --enable-ipv6
+}
+
+multilib_src_compile() {
+       emake all shared
+}
+
+multilib_src_install_all() {
+       dodoc CREDITS CHANGES VERSION TODO README{,.dag,.linux,.macosx,.septel}
+
+       # remove static libraries (--disable-static does not work)
+       if ! use static-libs; then
+               find "${ED}" -name '*.a' -exec rm {} + || die
+       fi
+       prune_libtool_files
+
+       # We need this to build pppd on G/FBSD systems
+       if [[ "${USERLAND}" == "BSD" ]]; then
+               insinto /usr/include
+               doins pcap-int.h
+       fi
+}

Reply via email to