[dpdk-dev] [RFC PATCH] build: use libpcap only from pkg-config

Luca Boccassi bluca at debian.org
Fri Oct 9 11:09:11 CEST 2020


On Thu, 2020-10-08 at 18:08 +0100, Bruce Richardson wrote:
> On Thu, Oct 08, 2020 at 06:05:36PM +0100, Bruce Richardson wrote:
> > All recent linux distro's - including RHEL 8 and Ubuntu 18.04 - provide a
> > pkg-config file for libpcap, and using other methods of finding the library
> > can cause issues when cross-compiling, so we can limit build support for
> > pcap versions without a .pc file.
> > 
> > Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> > ---
> >  config/meson.build | 8 +-------
> >  1 file changed, 1 insertion(+), 7 deletions(-)
> > 
> > diff --git a/config/meson.build b/config/meson.build
> > index 69f2aeb60..edc6c195a 100644
> > --- a/config/meson.build
> > +++ b/config/meson.build
> > @@ -163,13 +163,7 @@ if libbsd.found()
> >  endif
> >  
> >  # check for pcap
> > -pcap_dep = dependency('pcap', required: false)
> > -if pcap_dep.found()
> > -	# pcap got a pkg-config file only in 1.9.0 and before that meson uses
> > -	# an internal pcap-config finder, which is not compatible with
> > -	# cross-compilation, so try to fallback to find_library
> > -	pcap_dep = cc.find_library('pcap', required: false)
> > -endif
> > +pcap_dep = dependency('libpcap', required: false, method: 'pkg-config')
> >  if pcap_dep.found() and cc.has_header('pcap.h', dependencies: pcap_dep)
> >  	dpdk_conf.set('RTE_PORT_PCAP', 1)
> >  	dpdk_extra_ldflags += '-lpcap'
> 
> Just sending this as an RFC for consideration, since I hit problems with
> the pcap code when testing 32-bit (x32) builds, and remembered having hit
> it previously too.
> 
> Does anyone see an issue with limiting our pcap detection to pkg-config
> only in this case?
> 
> /Bruce

Sadly it's not yet available in Debian stable:

https://packages.debian.org/buster/amd64/libpcap0.8-dev/filelist

Also for Ubuntu 18.04, it's only available with the bionic-updates
repository, and only for the past month - it shipped without it.

I'm absolutely keen on using only pkg-config (so much that I did the
packaging changes myself to ship it in libpcap-dev [1][2]) but perhaps
in the interest of compatibility it's better to wait next year, so that
the new Debian stable supports it, and the Ubuntu 18.04 LTS fix had the
chance to rollout everywhere?

-- 
Kind regards,
Luca Boccassi

[1] http://changelogs.ubuntu.com/changelogs/pool/main/libp/libpcap/libpcap_1.8.1-6ubuntu1.18.04.2/changelog
[2] https://metadata.ftp-master.debian.org/changelogs//main/libp/libpcap/libpcap_1.9.1-4_changelog


More information about the dev mailing list