GNU bug report logs - #34728
[PATCH] Update Wireshark to 3.0.0

Previous Next

Package: guix-patches;

Reported by: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>

Date: Mon, 4 Mar 2019 10:04:01 UTC

Severity: normal

Tags: patch

Done: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 34728 in the body.
You can then email your comments to 34728 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#34728; Package guix-patches. (Mon, 04 Mar 2019 10:04:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 04 Mar 2019 10:04:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: guix-patches <at> gnu.org
Subject: [PATCH] Update Wireshark to 3.0.0
Date: Mon, 04 Mar 2019 11:03:12 +0100
[Message part 1 (text/plain, inline)]
Hello,

The following patch updates Wireshark to 3.0.0. 

This change is not trivial. In particular, upstream switched build
system (GNU to CMake) and it seems to annoy `validate-runpath' phase.
I tried various things to make it pass, e.g., removing "INSTALL_RPATH"
settings in various "CMakeLists.txt", or re-build rpath, à la
"powertabeditor", to no avail. 

Out of ideas, I disabled the phase. Wireshark seems to run anyway, even
though I didn't thoroughly tested it.

Let me know if you have better ideas.

Regards,

-- 
Nicolas Goaziou
[0001-gnu-wireshark-Update-to-3.0.0.patch (text/x-diff, inline)]
From dbaee4641e329bbdd44b0645acb4ec5a97ee5eaa Mon Sep 17 00:00:00 2001
From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Date: Sun, 3 Mar 2019 01:33:44 +0100
Subject: [PATCH] gnu: wireshark: Update to 3.0.0.

* gnu/packages/networking.scm (wireshark): Update to 3.0.0.
---
 gnu/packages/networking.scm | 101 ++++++++++++++++++------------------
 1 file changed, 50 insertions(+), 51 deletions(-)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index f7477230a6..ebfdcfc345 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -591,7 +591,7 @@ of the same name.")
 (define-public wireshark
   (package
     (name "wireshark")
-    (version "2.6.6")
+    (version "3.0.0")
     (source
      (origin
        (method url-fetch)
@@ -599,59 +599,58 @@ of the same name.")
                            version ".tar.xz"))
        (sha256
         (base32
-         "0qz8a1ays63712pq1v7nnw7c57zlqkcifq7himfv5nsv0zm36ya8"))))
-    (build-system gnu-build-system)
-    (inputs `(("c-ares" ,c-ares)
-              ("glib" ,glib)
-              ("gnutls" ,gnutls)
-              ("libcap" ,libcap)
-              ("libgcrypt" ,libgcrypt)
-              ("libnl" ,libnl)
-              ("libpcap" ,libpcap)
-              ("libssh" ,libssh)
-              ("libxml2" ,libxml2)
-              ("lz4" ,lz4)
-              ("lua" ,lua-5.2)          ;Lua 5.3 unsupported
-              ("krb5" ,mit-krb5)
-              ("portaudio" ,portaudio)
-              ("qtbase" ,qtbase)
-              ("qtmultimedia" ,qtmultimedia)
-              ("sbc" ,sbc)
-              ("snappy" ,snappy)
-              ("zlib" ,zlib)))
-    (native-inputs `(("perl" ,perl)
-                     ("pkg-config" ,pkg-config)
-                     ("python" ,python-wrapper)
-                     ("qttools" ,qttools)))
+         "17h0ixq7yr6scscjkidaj3dh5x6dfd3f97ggdxlklkz9nbsk0kxw"))))
+    (build-system cmake-build-system)
     (arguments
-     `(#:configure-flags
-       (list (string-append "--with-c-ares=" (assoc-ref %build-inputs "c-ares"))
-             (string-append "--with-krb5=" (assoc-ref %build-inputs "krb5"))
-             (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap"))
-             (string-append "--with-libssh=" (assoc-ref %build-inputs "libssh"))
-             (string-append "--with-lua=" (assoc-ref %build-inputs "lua"))
-             (string-append "--with-lz4=" (assoc-ref %build-inputs "lz4"))
-             (string-append "--with-pcap=" (assoc-ref %build-inputs "libpcap"))
-             (string-append "--with-portaudio="
-                            (assoc-ref %build-inputs "portaudio"))
-             (string-append "--with-sbc=" (assoc-ref %build-inputs "sbc"))
-             (string-append "--with-snappy=" (assoc-ref %build-inputs "snappy"))
-             (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib")))
-       #:phases
+     `(#:phases
        (modify-phases %standard-phases
-         (add-after 'unpack 'patch-source
+         (add-after 'unpack 'remove-failing-test
+           ;; Test 31/32 fails with errors like "Program reassemble_test is
+           ;; not available".  Skipping it for now.
            (lambda _
-             ;; Fix build against Qt 5.11.
-             (substitute* "ui/qt/packet_format_group_box.cpp"
-               (("#include <QStyle>") "#include <QStyle>
-#include <QStyleOption>"))
-             (substitute* "ui/qt/time_shift_dialog.cpp"
-               (("#include <ui/time_shift.h>") "#include <ui/time_shift.h>
-#include <QStyleOption>"))
-             (substitute* "ui/qt/wireless_frame.cpp"
-               (("#include <QProcess>") "#include <QProcess>
-#include <QAbstractItemView>"))
-             #t)))))
+             (substitute* "CMakeLists.txt"
+               (("suite_unittests" all) (string-append "# " all)))
+             #t)))
+       ;; "CMakeLists.txt" uses $ORIGIN, which seems to confuse
+       ;; `validate-runpath' phase.
+       ;;
+       ;; Errors are like the following:
+       ;; "/gnu/store/...wireshark-3.0.0/lib/wireshark/plugins/3.0/epan/ethercat.so:
+       ;; error: depends on 'libwireshark.so.12', which cannot be found in
+       ;; RUNPATH".  That is, "/gnu/store/...wireshark-3.0.0./lib" doesn't
+       ;; seem to belong to RUNPATH.
+       ;;
+       ;; For now, we disable this phase, as Wireshark seems to run properly
+       ;; anyway.
+       #:validate-runpath? #f))
+    (inputs
+     `(("c-ares" ,c-ares)
+       ("glib" ,glib)
+       ("gnutls" ,gnutls)
+       ("libcap" ,libcap)
+       ("libgcrypt" ,libgcrypt)
+       ("libnl" ,libnl)
+       ("libpcap" ,libpcap)
+       ("libssh" ,libssh)
+       ("libxml2" ,libxml2)
+       ("lz4" ,lz4)
+       ("lua" ,lua-5.2)                 ;Lua 5.3 unsupported
+       ("krb5" ,mit-krb5)
+       ("qtbase" ,qtbase)
+       ("qtmultimedia" ,qtmultimedia)
+       ("qtsvg" ,qtsvg)
+       ("sbc" ,sbc)
+       ("snappy" ,snappy)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("doxygen" ,doxygen)
+       ("flex" ,flex)
+       ("gettext" ,gettext-minimal)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)
+       ("qttools" ,qttools)))
     (synopsis "Network traffic analyzer")
     (description "Wireshark is a network protocol analyzer, or @dfn{packet
 sniffer}, that lets you capture and interactively browse the contents of
-- 
2.21.0


Information forwarded to guix-patches <at> gnu.org:
bug#34728; Package guix-patches. (Mon, 11 Mar 2019 21:35:02 GMT) Full text and rfc822 format available.

Message #8 received at 34728 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 34728 <at> debbugs.gnu.org
Subject: Re: [bug#34728] [PATCH] Update Wireshark to 3.0.0
Date: Mon, 11 Mar 2019 22:34:23 +0100
Hi Nicolas,

Nicolas Goaziou <mail <at> nicolasgoaziou.fr> skribis:

> The following patch updates Wireshark to 3.0.0. 
>
> This change is not trivial. In particular, upstream switched build
> system (GNU to CMake) and it seems to annoy `validate-runpath' phase.
> I tried various things to make it pass, e.g., removing "INSTALL_RPATH"
> settings in various "CMakeLists.txt", or re-build rpath, à la
> "powertabeditor", to no avail. 
>
> Out of ideas, I disabled the phase. Wireshark seems to run anyway, even
> though I didn't thoroughly tested it.

Weird.

>>From dbaee4641e329bbdd44b0645acb4ec5a97ee5eaa Mon Sep 17 00:00:00 2001
> From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
> Date: Sun, 3 Mar 2019 01:33:44 +0100
> Subject: [PATCH] gnu: wireshark: Update to 3.0.0.
>
> * gnu/packages/networking.scm (wireshark): Update to 3.0.0.

Overall LGTM!  If you’re confident you can go ahead and push, no need to
wait until the update is outdated.  ;-)

> +       ;; "CMakeLists.txt" uses $ORIGIN, which seems to confuse
> +       ;; `validate-runpath' phase.
> +       ;;
> +       ;; Errors are like the following:
> +       ;; "/gnu/store/...wireshark-3.0.0/lib/wireshark/plugins/3.0/epan/ethercat.so:
> +       ;; error: depends on 'libwireshark.so.12', which cannot be found in
> +       ;; RUNPATH".  That is, "/gnu/store/...wireshark-3.0.0./lib" doesn't
> +       ;; seem to belong to RUNPATH.

What’s the RUNPATH on ethercat.so?

  readelf -a ethercat.so | grep RUNPATH

And where is libwireshark.so.12?

‘validate-runpath’ does interpret $ORIGIN, but maybe there’s a but
there.

Thanks,
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#34728; Package guix-patches. (Tue, 12 Mar 2019 11:20:01 GMT) Full text and rfc822 format available.

Message #11 received at 34728 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 34728 <at> debbugs.gnu.org
Subject: Re: [bug#34728] [PATCH] Update Wireshark to 3.0.0
Date: Tue, 12 Mar 2019 12:19:22 +0100
Hello,

Thank you for the review.

Ludovic Courtès <ludo <at> gnu.org> writes:

> Nicolas Goaziou <mail <at> nicolasgoaziou.fr> skribis:
>
>> +       ;; "CMakeLists.txt" uses $ORIGIN, which seems to confuse
>> +       ;; `validate-runpath' phase.
>> +       ;;
>> +       ;; Errors are like the following:
>> +       ;; "/gnu/store/...wireshark-3.0.0/lib/wireshark/plugins/3.0/epan/ethercat.so:
>> +       ;; error: depends on 'libwireshark.so.12', which cannot be found in
>> +       ;; RUNPATH".  That is, "/gnu/store/...wireshark-3.0.0./lib" doesn't
>> +       ;; seem to belong to RUNPATH.
>
> What’s the RUNPATH on ethercat.so?
>
>   readelf -a ethercat.so | grep RUNPATH

 0x000000000000001d (RUNPATH)            Bibliothèque runpath:[:/gnu/store/...-glibc-2.28/lib:/gnu/store/...-gcc-5.5.0-lib/lib:/gnu/store/...-glib-2.56.3/lib:/gnu/store/...-libpcap-1.9.0/lib:/gnu/store/...-libgcrypt-1.8.3/lib:/gnu/store/...-libgpg-error-1.32/lib:/gnu/store/...-gnutls-3.6.5/lib:/gnu/store/...-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../..]

> And where is libwireshark.so.12?

In "/gnu/store/...wireshark-3.0.0/lib".

I don't understand why this is getting removed.

> ‘validate-runpath’ does interpret $ORIGIN, but maybe there’s a but
> there.

Then my remark about $ORIGIN is wrong. 

Regards,

-- 
Nicolas Goaziou




Information forwarded to guix-patches <at> gnu.org:
bug#34728; Package guix-patches. (Wed, 13 Mar 2019 10:11:01 GMT) Full text and rfc822 format available.

Message #14 received at 34728 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 34728 <at> debbugs.gnu.org
Subject: Re: [bug#34728] [PATCH] Update Wireshark to 3.0.0
Date: Wed, 13 Mar 2019 11:10:39 +0100
Hi Nicolas,

Nicolas Goaziou <mail <at> nicolasgoaziou.fr> skribis:

> Ludovic Courtès <ludo <at> gnu.org> writes:
>
>> Nicolas Goaziou <mail <at> nicolasgoaziou.fr> skribis:
>>
>>> +       ;; "CMakeLists.txt" uses $ORIGIN, which seems to confuse
>>> +       ;; `validate-runpath' phase.
>>> +       ;;
>>> +       ;; Errors are like the following:
>>> +       ;; "/gnu/store/...wireshark-3.0.0/lib/wireshark/plugins/3.0/epan/ethercat.so:
>>> +       ;; error: depends on 'libwireshark.so.12', which cannot be found in
>>> +       ;; RUNPATH".  That is, "/gnu/store/...wireshark-3.0.0./lib" doesn't
>>> +       ;; seem to belong to RUNPATH.
>>
>> What’s the RUNPATH on ethercat.so?
>>
>>   readelf -a ethercat.so | grep RUNPATH
>
>  0x000000000000001d (RUNPATH)            Bibliothèque runpath:[:/gnu/store/...-glibc-2.28/lib:/gnu/store/...-gcc-5.5.0-lib/lib:/gnu/store/...-glib-2.56.3/lib:/gnu/store/...-libpcap-1.9.0/lib:/gnu/store/...-libgcrypt-1.8.3/lib:/gnu/store/...-libgpg-error-1.32/lib:/gnu/store/...-gnutls-3.6.5/lib:/gnu/store/...-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../..]

Look, there’s no $ORIGIN in there!  :-)

So the problem is really that /gnu/store/…-wireshark-3.0.0/lib is
missing.

That’s not a problem in practice because ethercat.so is a plugin, so
it’s dlopen’d by a process that already provides libwireshark.  (It’s
still bad style IMO.)

Anyway you can keep #:validate-runpath? #f and adjust the comment.

Thank you,
Ludo’.




Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Wed, 13 Mar 2019 11:34:01 GMT) Full text and rfc822 format available.

Notification sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
bug acknowledged by developer. (Wed, 13 Mar 2019 11:34:02 GMT) Full text and rfc822 format available.

Message #19 received at 34728-done <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 34728-done <at> debbugs.gnu.org
Subject: Re: [bug#34728] [PATCH] Update Wireshark to 3.0.0
Date: Wed, 13 Mar 2019 12:33:04 +0100
Hello,

Ludovic Courtès <ludo <at> gnu.org> writes:

> Look, there’s no $ORIGIN in there!  :-)

Indeed. The supposed $ORIGIN issue was a guess of mine. I guessed it
wrong.

> So the problem is really that /gnu/store/…-wireshark-3.0.0/lib is
> missing.
>
> That’s not a problem in practice because ethercat.so is a plugin, so
> it’s dlopen’d by a process that already provides libwireshark.  (It’s
> still bad style IMO.)
>
> Anyway you can keep #:validate-runpath? #f and adjust the comment.

I updated the comment, and pushed as
2b6ab17f7d61bcee92194d8b155a709481a95244.

Thank you.

Regards,

-- 
Nicolas Goaziou




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 11 Apr 2019 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 9 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.