Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 466792

Summary: net-analyzer/wireshark: dumpcap linked against libcap but missing from RDEPEND ?
Product: Gentoo Linux Reporter: René 'Necoro' Neumann <gentoo>
Component: EclassesAssignee: Gentoo Netmon project <netmon>
Status: RESOLVED FIXED    
Severity: normal CC: vapier, zerochaos
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description René 'Necoro' Neumann 2013-04-22 12:31:06 UTC
With USE=filecaps, net-analyzer/wireshark-1.8.6 DEPENDs on sys-libs/libcap (via the fcaps.eclass). But dumpcap links against it:

$ ldd =dumpcap
	linux-vdso.so.1 (0x00007fff64ab6000)
	libwsutil.so.2 => /usr/lib64/libwsutil.so.2 (0x00007f4f42d40000)
	libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f4f42a1b000)
	libpcap.so.1 => /usr/lib64/libpcap.so.1 (0x00007f4f427dd000)
	libcap.so.2 => /lib64/libcap.so.2 (0x00007f4f425b0000)
	libz.so.1 => /lib64/libz.so.1 (0x00007f4f4239a000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4f4217d000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f4f41dd5000)
	librt.so.1 => /lib64/librt.so.1 (0x00007f4f41bcc000)
	libattr.so.1 => /lib64/libattr.so.1 (0x00007f4f419c7000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f4f42f46000)

Therefore wireshark needs to RDEPEND on sys-libs/libcap, too.

(Else things break after an 'emerge --depclean --with-bdeps=n').
Comment 1 SpanKY gentoo-dev 2013-04-23 16:19:01 UTC
mmm, no.  if a package links against libcap, then it needs to express that dependency (both in configure & DEPEND) themselves.  fcaps.eclass is not a paper over ebuild bugs.

that said, wireshark does include libcap already in RDEPEND & DEPEND.  so i don't see what you're talking about.  you didn't provide `emerge --info` like you need to with every bug report.

wireshark-1.6.13.ebuild:
RDEPEND=... caps? ( qsys-libs/libcap ) ...
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2013-04-23 16:29:48 UTC
(In reply to comment #1)
> wireshark-1.6.13.ebuild:
> RDEPEND=... caps? ( qsys-libs/libcap ) ...

  10 Mar 2013; Jeroen Roovers <jer@gentoo.org> -wireshark-1.6.13.ebuild,
  -wireshark-1.8.5.ebuild:
  Old.
Comment 3 SpanKY gentoo-dev 2013-04-23 17:32:10 UTC
mmm, the change is incorrect.  ebuilds should not be messing with USE=filecaps.  wireshark should only be using USE=caps.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2013-04-23 17:37:07 UTC
(In reply to comment #3)
> mmm, the change is incorrect.  ebuilds should not be messing with
> USE=filecaps.  wireshark should only be using USE=caps.

Provide a patch or argue how it is now wrong, please.
Comment 5 SpanKY gentoo-dev 2013-04-23 18:12:21 UTC
(In reply to comment #4)

the patch is simple: revert what you committed.  as for the why, read the Gentoo thread on the eclass.  this USE flag is *only* for the eclass.  ebuilds should only be using USE=caps.
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2013-04-23 18:33:38 UTC
(In reply to comment #5)
> (In reply to comment #4)
> 
> the patch is simple: revert what you committed.  as for the why, read the
> Gentoo thread on the eclass.  this USE flag is *only* for the eclass. 
> ebuilds should only be using USE=caps.

Now you need to explain
   1) why USE=filecaps cannot be used in ebuilds (especially since it is
      exposed by the eclass to its users anyway - it's not like an internal
      variable or something)
   2) why users should be juggling both IUSE="caps filecaps" when a single USE
      flag covers the entire issue.
   3) why reverting to the former incorrect state is better than what is there
      now.
   4) how the result of the "Gentoo thread" (gentoo-dev@ mailing list?) is
      reflected in the eclass itself (which is what I read to figure out how to
      use it, not some flamewar on a mailing list).
Comment 7 SpanKY gentoo-dev 2013-04-23 18:44:46 UTC
(In reply to comment #6)

like i already told you, read the gentoo dev thread on the topic.  i'm not going to copy & paste the thread for you.

considering i authored the eclass, i don't know what else you need: USE=filecaps is *only* for the eclass, and USE=caps is only for the ebuilds.
Comment 8 René 'Necoro' Neumann 2013-04-23 18:53:44 UTC
(In reply to comment #1)
> wireshark-1.6.13.ebuild:
> RDEPEND=... caps? ( qsys-libs/libcap ) ...
Uh - that's why I explicitly stated 'wireshark-1.8.6'. And this did _not_ include this dep (it does now, but it's up to you discussing the right way to handle it).

If emerge --info is still needed, I can supply it tomorrow (I just thought it being useless, as the error seemed obvious and easily verifiable -- I was wrong obviously).
Comment 9 Jeroen Roovers (RETIRED) gentoo-dev 2013-05-01 11:50:48 UTC
I have no idea whether it is fixed now, but let's say that it is and that people can file duplicate bug reports asking what the difference between caps and filecaps is supposed to accomplish.
Comment 10 SpanKY gentoo-dev 2013-05-13 01:54:42 UTC
(In reply to comment #9)

yes, the current ebuild looks correct, thanks