Skip to content

WIP: Package bpftool

Noah Meyerhans requested to merge noahm/linux:package-bpftool into master

Basic packaging is ready, and I'd like some feedback at this point. There are a couple of issues, the biggest is related to the libbpf.so library. It doesn't have a SONAME, and I'm not sure of the best thing to do about that. Additionally, I've put everything (executables, library, and headers) in a single package. It could be split into two or more packages (libbpf, libbpf-dev, and bpftool), but that seems of dubious value.

In addition to bpftool, the package includes the bpf_asm and bpf_dbg tools, but not bpf_jit_disasm, as that would create an undistributable GPLv2/v3 mix.

This PR includes cherry-picked commit 88995ec0 from the sid branch in order to fix BPF feature detection with -Werror=unused.

Package content

lore:kernel$ dpkg --contents bpftool-4.19_4.19.2-1\~exp1_amd64.deb      
drwxr-xr-x root/root         0 2018-10-08 10:45 ./
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/bin/
-rwxr-xr-x root/root     51504 2018-10-08 10:45 ./usr/bin/bpf_asm
-rwxr-xr-x root/root     31232 2018-10-08 10:45 ./usr/bin/bpf_dbg
-rwxr-xr-x root/root    142536 2018-10-08 10:45 ./usr/bin/bpftool
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/include/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/include/bpf/
-rw-r--r-- root/root      4440 2018-10-08 10:45 ./usr/include/bpf/bpf.h
-rw-r--r-- root/root       775 2018-10-08 10:45 ./usr/include/bpf/btf.h
-rw-r--r-- root/root     10683 2018-10-08 10:45 ./usr/include/bpf/libbpf.h
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/lib/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/lib/x86_64-linux-gnu/
-rw-r--r-- root/root     68432 2018-10-08 10:45 ./usr/lib/x86_64-linux-gnu/libbpf.so
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/doc/bpftool-4.19/
-rw-r--r-- root/root    173890 2018-10-08 10:45 ./usr/share/doc/bpftool-4.19/changelog.Debian.gz
-rw-r--r-- root/root     11923 2018-10-08 10:45 ./usr/share/doc/bpftool-4.19/copyright
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/man/
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/man/man7/
-rw-r--r-- root/root     22937 2018-10-08 10:45 ./usr/share/man/man7/bpf-helpers.7.gz
drwxr-xr-x root/root         0 2018-10-08 10:45 ./usr/share/man/man8/
-rw-r--r-- root/root      1877 2018-10-08 10:45 ./usr/share/man/man8/bpftool-cgroup.8.gz
-rw-r--r-- root/root      2206 2018-10-08 10:45 ./usr/share/man/man8/bpftool-map.8.gz
-rw-r--r-- root/root      1199 2018-10-08 10:45 ./usr/share/man/man8/bpftool-perf.8.gz
-rw-r--r-- root/root      2566 2018-10-08 10:45 ./usr/share/man/man8/bpftool-prog.8.gz
-rw-r--r-- root/root       953 2018-10-08 10:45 ./usr/share/man/man8/bpftool.8.gz

Lintian report

lore:kernel$ lintian bpftool-4.19_4.19.2-1\~exp1_amd64.deb 
W: bpftool-4.19: binary-without-manpage usr/bin/bpf_asm
W: bpftool-4.19: binary-without-manpage usr/bin/bpf_dbg
E: bpftool-4.19: sharedobject-in-library-directory-missing-soname usr/lib/x86_64-linux-gnu/libbpf.so

Merge request reports

Loading