Commit f8ce239d authored by Ben Hutchings's avatar Ben Hutchings Committed by Michal Marek

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: cd8d60a2 ('kbuild: create linux-headers package in deb-pkg')
Reported-and-tested-by: default avatar"Niew, Sh." <shniew@gmail.com>
Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent 79f0345f
...@@ -62,7 +62,7 @@ create_package() { ...@@ -62,7 +62,7 @@ create_package() {
fi fi
# Create the package # 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" .. dpkg --build "$pdir" ..
} }
...@@ -298,15 +298,14 @@ mkdir -p "$destdir" ...@@ -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 (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" ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build"
rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles" rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles"
arch=$(dpkg --print-architecture)
cat <<EOF >> debian/control cat <<EOF >> debian/control
Package: $kernel_headers_packagename Package: $kernel_headers_packagename
Provides: linux-headers, linux-headers-2.6 Provides: linux-headers, linux-headers-2.6
Architecture: $arch Architecture: any
Description: Linux kernel headers for $KERNELRELEASE on $arch Description: Linux kernel headers for $KERNELRELEASE on \${kernel:debarch}
This package provides kernel header files for $KERNELRELEASE on $arch This package provides kernel header files for $KERNELRELEASE on \${kernel:debarch}
. .
This is useful for people who need to build external modules This is useful for people who need to build external modules
EOF EOF
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment