commit:     e0e175a627ca55478fb4ffae9349eb607a18b64f
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 16 09:56:13 2018 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Tue Jan 16 09:56:28 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0e175a6

net-analyzer/wireshark: Add upstream patch for libsmi configure check (bug 
#644734 by Bob Johnson).

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 .../wireshark/files/wireshark-2.4.3-libsmi.patch   | 233 +++++++++++++++++++++
 net-analyzer/wireshark/wireshark-2.4.3.ebuild      |   1 +
 net-analyzer/wireshark/wireshark-2.4.4.ebuild      |   1 +
 3 files changed, 235 insertions(+)

diff --git a/net-analyzer/wireshark/files/wireshark-2.4.3-libsmi.patch 
b/net-analyzer/wireshark/files/wireshark-2.4.3-libsmi.patch
new file mode 100644
index 00000000000..288efb7d66f
--- /dev/null
+++ b/net-analyzer/wireshark/files/wireshark-2.4.3-libsmi.patch
@@ -0,0 +1,233 @@
+From 72c2e53981a204d746737d8c01c4ad3738cd4880 Mon Sep 17 00:00:00 2001
+From: =?utf8?q?Jo=C3=A3o=20Valverde?= <joao.valve...@tecnico.ulisboa.pt>
+Date: Sun, 5 Nov 2017 12:05:43 +0000
+Subject: [PATCH 1/1] autotools: Use pkg-config to configure Libsmi
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+Change-Id: Icecea743739aa7e1a65753f623f311514260d373
+Reviewed-on: https://code.wireshark.org/review/24252
+Petri-Dish: João Valverde <j...@v6e.pt>
+Tested-by: Petri Dish Buildbot
+Reviewed-by: João Valverde <j...@v6e.pt>
+---
+ Makefile.am      |   2 +-
+ configure.ac     |  27 +++++++++---
+ epan/Makefile.am |   2 +-
+ m4/libsmi.m4     | 125 -------------------------------------------------------
+ 4 files changed, 24 insertions(+), 132 deletions(-)
+ delete mode 100644 m4/libsmi.m4
+
+diff --git a/Makefile.am b/Makefile.am
+index a2851e0..e6ed5eb 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -422,7 +422,7 @@ EPAN_EXTRA_LIBS = \
+       @KRB5_LIBS@                     \
+       @LIBGCRYPT_LIBS@                \
+       @LIBGNUTLS_LIBS@                \
+-      @LIBSMI_LDFLAGS@
++      @LIBSMI_LIBS@
+ 
+ # Libraries and plugin flags with which to link wireshark.
+ #
+diff --git a/configure.ac b/configure.ac
+index 3b3475b..326561c 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -432,10 +432,6 @@ linux*)
+       fi
+ esac
+ 
+-# libsmi
+-# FIXME: currently the path argument to with-libsmi is being ignored
+-AX_LIBSMI
+-
+ #
+ # Check if we should build the Wireshark User's Guide
+ #
+@@ -2427,6 +2423,27 @@ else
+ fi
+ AM_CONDITIONAL(HAVE_LIBXML2, test "x$have_libxml2" = "xyes")
+ 
++#
++# Libsmi check
++#
++AC_ARG_WITH(libsmi,
++  AC_HELP_STRING([--with-libsmi=@<:@yes/no@:>@],
++               [use libsmi MIB/PIB library @<:@default=yes, if 
available@:>@]),
++               [], [with_libsmi="if_available"])
++
++have_libsmi=no
++if test "x$with_libsmi" != "xno"; then
++      PKG_CHECK_MODULES(LIBSMI, libsmi,
++              [have_libsmi=yes
++               AC_DEFINE(HAVE_LIBSMI, 1, [Define if you have libsmi])
++              ],
++              [if test "x$with_libsmi" = "xyes"; then
++                      # Error out if the user explicitly requested libsmi
++                      AC_MSG_ERROR([Libsmi was requested, but is not 
installed for development])
++               fi
++              ]
++      )
++fi
+ 
+ dnl
+ dnl check whether plugins should be enabled
+@@ -3012,7 +3029,7 @@ echo "                   Use pcap library : $want_pcap"
+ echo "                   Use zlib library : $zlib_message"
+ echo "               Use kerberos library : $krb5_message"
+ echo "                 Use c-ares library : $c_ares_message"
+-echo "                Use SMI MIB library : $libsmi_message"
++echo "                Use SMI MIB library : $have_libsmi"
+ echo "             Use GNU gcrypt library : yes"
+ echo "                 Use GnuTLS library : $tls_message"
+ echo "     Use POSIX capabilities library : $libcap_message"
+diff --git a/epan/Makefile.am b/epan/Makefile.am
+index 9f7de62..e85f97b 100644
+--- a/epan/Makefile.am
++++ b/epan/Makefile.am
+@@ -330,7 +330,7 @@ libwireshark_la_LIBADD = \
+       @KRB5_LIBS@             \
+       @LIBGCRYPT_LIBS@        \
+       @LIBGNUTLS_LIBS@        \
+-      @LIBSMI_LDFLAGS@        \
++      @LIBSMI_LIBS@   \
+       @LZ4_LIBS@              \
+       @NGHTTP2_LIBS@          \
+       @SNAPPY_LIBS@           \
+diff --git a/m4/libsmi.m4 b/m4/libsmi.m4
+deleted file mode 100644
+index d719438..0000000
+--- a/m4/libsmi.m4
++++ /dev/null
+@@ -1,125 +0,0 @@
+-# Configure paths for libsmi
+-# Shamelessly stolen from http://autoconf-archive.cryp.to/ax_lib_sqlite3.html
+-
+-# Synopsis: AX_LIBSMI([minimum library version])
+-# The default minimum library version is 2
+-
+-# This macro sets/substitutes the following:
+-# AC_DEFINE(HAVE_LIBSMI)
+-# AC_SUBST(LIBSMI_CFLAGS)
+-# AC_SUBST(LIBSMI_LDFLAGS)
+-# AC_SUBST(LIBSMI_VERSION)
+-# $libsmi_message is set to "yes" or "no"
+-
+-AC_DEFUN([AX_LIBSMI],
+-[
+-    AC_ARG_WITH([libsmi],
+-        AC_HELP_STRING(
+-            [--with-libsmi=@<:@DIR@:>@],
+-            [use libsmi MIB/PIB library @<:@default=yes@:>@, optionally 
specify the prefix for libsmi]
+-        ),
+-        [
+-        if test "$withval" = "no"; then
+-            WANT_LIBSMI="no"
+-        elif test "$withval" = "yes"; then
+-            WANT_LIBSMI="yes"
+-            ac_libsmi_path=""
+-        else
+-            WANT_LIBSMI="yes"
+-            ac_libsmi_path="$withval"
+-        fi
+-        ],
+-        [WANT_LIBSMI="yes"]
+-    )
+-
+-    libsmi_message="no"
+-    LIBSMI_CFLAGS=""
+-    LIBSMI_LDFLAGS=""
+-    LIBSMI_VERSION=""
+-
+-    if test "x$WANT_LIBSMI" = "xyes"; then
+-
+-        ac_libsmi_header="smi.h"
+-
+-        libsmi_version_req=ifelse([$1], [], [2], [$1])
+-
+-        AC_MSG_CHECKING([for libsmi >= $libsmi_version_req])
+-
+-        if test "$ac_libsmi_path" != ""; then
+-            ac_libsmi_ldflags="-L$ac_libsmi_path/lib"
+-            ac_libsmi_cflags="-I$ac_libsmi_path/include"
+-        else
+-            for ac_libsmi_path_tmp in /usr /usr/local /opt $prefix; do
+-                if test -f "$ac_libsmi_path_tmp/include/$ac_libsmi_header" \
+-                    && test -r 
"$ac_libsmi_path_tmp/include/$ac_libsmi_header"; then
+-                    ac_libsmi_path=$ac_libsmi_path_tmp
+-                    ac_libsmi_ldflags="-L$ac_libsmi_path_tmp/lib"
+-                    ac_libsmi_cflags="-I$ac_libsmi_path_tmp/include"
+-                    break;
+-                fi
+-            done
+-        fi
+-
+-        ac_libsmi_ldflags="$ac_libsmi_ldflags -lsmi"
+-
+-        saved_CFLAGS="$CFLAGS"
+-        CFLAGS="$CFLAGS $ac_libsmi_cflags"
+-
+-        AC_LANG_PUSH(C)
+-        AC_COMPILE_IFELSE(
+-            [
+-            AC_LANG_PROGRAM([[@%:@include <smi.h>]],
+-                [[
+-  int current, revision, age, n;
+-  const int required = $libsmi_version_req;
+-  if (smiInit(""))
+-    exit(1);
+-  if (strcmp(SMI_LIBRARY_VERSION, smi_library_version))
+-    exit(2);
+-  n = sscanf(smi_library_version, "%d:%d:%d", &current, &revision, &age);
+-  if (n != 3)
+-    exit(3);
+-  if (required < current - age || required > current)
+-    exit(4);
+-                ]]
+-            )
+-            ],
+-            [
+-            AC_MSG_RESULT([yes])
+-            libsmi_message="yes"
+-            ],
+-            [
+-            AC_MSG_RESULT([not found])
+-            libsmi_message="no"
+-            ]
+-        )
+-        AC_LANG_POP([C])
+-
+-        CFLAGS="$saved_CFLAGS"
+-
+-        if test "$libsmi_message" = "yes"; then
+-
+-            LIBSMI_CFLAGS="$ac_libsmi_cflags"
+-            LIBSMI_LDFLAGS="$ac_libsmi_ldflags"
+-
+-            ac_libsmi_header_path="$ac_libsmi_path/include/$ac_libsmi_header"
+-
+-            dnl Retrieve libsmi release version
+-            if test "x$ac_libsmi_header_path" != "x"; then
+-                ac_libsmi_version=`cat $ac_libsmi_header_path \
+-                    | grep '#define.*SMI_LIBRARY_VERSION.*\"' | sed -e 's/.* 
"//' \
+-                        | sed -e 's/"//'`
+-                if test $ac_libsmi_version != ""; then
+-                    LIBSMI_VERSION=$ac_libsmi_version
+-                else
+-                    AC_MSG_WARN([Can not find SMI_LIBRARY_VERSION macro in 
smi.h header to retrieve libsmi version!])
+-                fi
+-            fi
+-
+-            AC_SUBST(LIBSMI_CFLAGS)
+-            AC_SUBST(LIBSMI_LDFLAGS)
+-            AC_SUBST(LIBSMI_VERSION)
+-            AC_DEFINE(HAVE_LIBSMI, 1, [Define to 1 if you have the `smi' 
library (-lsmi).])
+-        fi
+-    fi
+-])
+-- 
+2.7.4
+

diff --git a/net-analyzer/wireshark/wireshark-2.4.3.ebuild 
b/net-analyzer/wireshark/wireshark-2.4.3.ebuild
index 24633327717..e63e4d8f74f 100644
--- a/net-analyzer/wireshark/wireshark-2.4.3.ebuild
+++ b/net-analyzer/wireshark/wireshark-2.4.3.ebuild
@@ -98,6 +98,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-2.1.0-sse4_2-r1.patch
        "${FILESDIR}"/${PN}-2.4-androiddump.patch
        "${FILESDIR}"/${PN}-99999999-androiddump.patch
+       "${FILESDIR}"/${PN}-2.4.3-libsmi.patch
 )
 
 pkg_setup() {

diff --git a/net-analyzer/wireshark/wireshark-2.4.4.ebuild 
b/net-analyzer/wireshark/wireshark-2.4.4.ebuild
index c62ae1cfa0b..b56e421d4d1 100644
--- a/net-analyzer/wireshark/wireshark-2.4.4.ebuild
+++ b/net-analyzer/wireshark/wireshark-2.4.4.ebuild
@@ -98,6 +98,7 @@ PATCHES=(
        "${FILESDIR}"/${PN}-2.1.0-sse4_2-r1.patch
        "${FILESDIR}"/${PN}-2.4-androiddump.patch
        "${FILESDIR}"/${PN}-99999999-androiddump.patch
+       "${FILESDIR}"/${PN}-2.4.3-libsmi.patch
 )
 
 pkg_setup() {

Reply via email to