Subject: Re: [bug#34728] [PATCH] Update Wireshark to 3.0.0

From: Ludovic Courtès <[email-masked]>
Date: Mon, 11 Mar 2019 22:34:23 +0100

Hi Nicolas,

Nicolas Goaziou <[email-masked]> 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 <[email-masked]>
> 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’.