On Sun, 2019-05-19 at 00:34 +0100, Ben Hutchings wrote: > Package: src:linux > Version: 4.19.37-3 > Severity: serious > > We currently use $(make kernelversion) to generate the soversion, > resulting in 3 components of the upstream version (currently > 4.19.37), > whereas the package name only uses 2 components (currently 4.19). We > really want the latter as we don't expect the ABI to change in a > stable update. > > There is an additional bug that building perf also rebuilds libbpf. > This seems to set some environment variables such that the soversion > changes again, duplicating the second component and resulting in > 4.19.19.37! [...]
In fact, perf seems to successfully build libbpf.a in its own output directory, so it's not at fault. However, the default "all" target in the libbpf Makefile somehow loses the output directory, so we end up with an in-tree build! This results in object files being present in the linux-source package. The "install" target doesn't do this, so I think this results in the library being built yet again, finally in the right directory. I'm not entirely sure. Ben. -- Ben Hutchings If the facts do not conform to your theory, they must be disposed of.
signature.asc
Description: This is a digitally signed message part