kbuild: deb-pkg: set version for linux-headers paths

Message ID 4a55805c694cff4cc9281961f2d457262bea48e6.1679423785.git.kevin@kevinlocke.name
State New
Headers
Series kbuild: deb-pkg: set version for linux-headers paths |

Commit Message

Kevin Locke March 21, 2023, 6:36 p.m. UTC
  As a result of the switch to dh_listpackages, $version is no longer set
when install_kernel_headers() is called.  This causes files in the
linux-headers deb package to be installed to a path with an empty
$version (e.g. /usr/src/linux-headers-/scripts/sign-file rather than
/usr/src/linux-headers-6.3.0-rc3/scripts/sign-file).

To avoid this, while continuing to use the version information from
dh_listpackages, set $version from $package.

Fixes: 36862e14e316 ("kbuild: deb-pkg: use dh_listpackages to know enabled packages")
Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
---
 scripts/package/builddeb | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Masahiro Yamada March 21, 2023, 9:21 p.m. UTC | #1
On Wed, Mar 22, 2023 at 3:36 AM Kevin Locke <kevin@kevinlocke.name> wrote:
>
> As a result of the switch to dh_listpackages, $version is no longer set
> when install_kernel_headers() is called.  This causes files in the
> linux-headers deb package to be installed to a path with an empty
> $version (e.g. /usr/src/linux-headers-/scripts/sign-file rather than
> /usr/src/linux-headers-6.3.0-rc3/scripts/sign-file).
>
> To avoid this, while continuing to use the version information from
> dh_listpackages, set $version from $package.
>
> Fixes: 36862e14e316 ("kbuild: deb-pkg: use dh_listpackages to know enabled packages")
> Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
> ---
>  scripts/package/builddeb | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index c5ae57167d7c..6fd590437f47 100755
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -229,6 +229,7 @@ do
>         linux-libc-dev)
>                 install_libc_headers debian/linux-libc-dev;;
>         linux-headers-*)
> +               version=${package#linux-headers-}
>                 install_kernel_headers debian/linux-headers;;

Thank you for catching this.
Can you pass it as the second argument to the function?


   install_kerne_headers debian/linux-headers ${package#linux-headers-}



>         esac
>  done
> --
> 2.39.2
>
  

Patch

diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index c5ae57167d7c..6fd590437f47 100755
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -229,6 +229,7 @@  do
 	linux-libc-dev)
 		install_libc_headers debian/linux-libc-dev;;
 	linux-headers-*)
+		version=${package#linux-headers-}
 		install_kernel_headers debian/linux-headers;;
 	esac
 done