Message ID | 20241031132630.24667-3-t.boehler@kunbus.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Resolve some lintian errors/warnings | expand |
Please use "kbuild: deb-pkg:" as the commit subject. On Thu, Oct 31, 2024 at 10:26 PM Thomas Böhler <t.boehler@kunbus.com> wrote: > > The linux-headers package is missing a dependency to libc. Lintian > complains about this as well: > > W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/asn1_compiler] > W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/basic/fixdep] > W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/kallsyms] > W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/mod/modpost] > W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/sorttable] Could you add log messages based on linux-headers-6.12.0-rc6 instead? Then, the line length will become shorter. Also, please rebase this on the mainline. > Fix this by introducing "dh_shlibdeps" into the build process. It > calculates shared library dependencies for packages and creates a > substvar entry for them, making them usable in "debian/control" by > specifying "${shlibs:Depends}" in the "Depends" field. > > "dh_shlibdeps" detects the dependency on libc for the linux-headers > package and by specifying the substvar for the linux-headers package in > "debian/control" this dependency is correctly declared and lintian won't > complain about it anymore. > > Signed-off-by: Thomas Böhler <t.boehler@kunbus.com> -- Best Regards Masahiro Yamada
diff --git a/scripts/package/debian/rules b/scripts/package/debian/rules index 0c75319acae1..2a51564128ff 100755 --- a/scripts/package/debian/rules +++ b/scripts/package/debian/rules @@ -52,6 +52,7 @@ define binary $(Q)dh_installchangelogs $(DH_OPTIONS) $(Q)dh_compress $(DH_OPTIONS) $(Q)dh_fixperms $(DH_OPTIONS) + $(Q)dh_shlibdeps $(DH_OPTIONS) $(Q)dh_gencontrol $(DH_OPTIONS) -- -f$(call mk-files,$@) $(Q)dh_md5sums $(DH_OPTIONS) $(Q)dh_builddeb $(DH_OPTIONS) -- $(addprefix -Z,$(KDEB_COMPRESS)) diff --git a/scripts/package/mkdebian b/scripts/package/mkdebian index 10637d403777..5d96cb0d0bf8 100755 --- a/scripts/package/mkdebian +++ b/scripts/package/mkdebian @@ -224,6 +224,7 @@ cat <<EOF >> debian/control Package: linux-headers-$version Architecture: $debarch +Depends: \${shlibs:Depends} Description: Linux kernel headers for $version on $debarch This package provides kernel header files for $version on $debarch .
The linux-headers package is missing a dependency to libc. Lintian complains about this as well: W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/asn1_compiler] W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/basic/fixdep] W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/kallsyms] W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/mod/modpost] W: linux-headers-6.12.0-rc4-g7e04fcfc6195: undeclared-elf-prerequisites (libc.so.6) [usr/src/linux-headers-6.12.0-rc4-g7e04fcfc6195/scripts/sorttable] Fix this by introducing "dh_shlibdeps" into the build process. It calculates shared library dependencies for packages and creates a substvar entry for them, making them usable in "debian/control" by specifying "${shlibs:Depends}" in the "Depends" field. "dh_shlibdeps" detects the dependency on libc for the linux-headers package and by specifying the substvar for the linux-headers package in "debian/control" this dependency is correctly declared and lintian won't complain about it anymore. Signed-off-by: Thomas Böhler <t.boehler@kunbus.com> --- scripts/package/debian/rules | 1 + scripts/package/mkdebian | 1 + 2 files changed, 2 insertions(+)