summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2013-12-05 14:37:35 +0000
committerMichal Marek <mmarek@suse.cz>2014-01-03 17:17:38 +0100
commitf8ce239dfc7ba9add41d9ecdc5e7810738f839fa (patch)
treeb95e054a48c2d6e442ec38553eaa93094bd0934a
parent79f0345fefaafb7cde301a830471edd21a37989b (diff)
downloadlinux-f8ce239dfc7ba9add41d9ecdc5e7810738f839fa.tar.gz
linux-f8ce239dfc7ba9add41d9ecdc5e7810738f839fa.tar.bz2
linux-f8ce239dfc7ba9add41d9ecdc5e7810738f839fa.zip
deb-pkg: Fix cross-building linux-headers package
builddeb generates a control file that says the linux-headers package can only be built for the build system primary architecture. This breaks cross-building configurations. We should use $debarch for this instead. Since $debarch is not yet set when generating the control file, set Architecture: any and use control file variables to fill in the description. Fixes: cd8d60a20a45 ('kbuild: create linux-headers package in deb-pkg') Reported-and-tested-by: "Niew, Sh." <shniew@gmail.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Michal Marek <mmarek@suse.cz>
-rw-r--r--scripts/package/builddeb9
1 files changed, 4 insertions, 5 deletions
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index 65014e1495bf..5fcfc33dd5ba 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -62,7 +62,7 @@ create_package() {
fi
# Create the package
- dpkg-gencontrol -isp $forcearch -p$pname -P"$pdir"
+ dpkg-gencontrol -isp $forcearch -Vkernel:debarch="${debarch:-$(dpkg --print-architecture)}" -p$pname -P"$pdir"
dpkg --build "$pdir" ..
}
@@ -298,15 +298,14 @@ mkdir -p "$destdir"
(cd $objtree; cp $KCONFIG_CONFIG $destdir/.config) # copy .config manually to be where it's expected to be
ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build"
rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles"
-arch=$(dpkg --print-architecture)
cat <<EOF >> debian/control
Package: $kernel_headers_packagename
Provides: linux-headers, linux-headers-2.6
-Architecture: $arch
-Description: Linux kernel headers for $KERNELRELEASE on $arch
- This package provides kernel header files for $KERNELRELEASE on $arch
+Architecture: any
+Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch}
+ This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch}
.
This is useful for people who need to build external modules
EOF