* [PATCH] kbuild, deb-pkg: set host machine $arch correctly when cross-compiling or not
@ 2011-05-04 6:27 Robert Gordon
0 siblings, 0 replies; only message in thread
From: Robert Gordon @ 2011-05-04 6:27 UTC (permalink / raw)
To: linux-kbuild; +Cc: Robert Nelson, maximilian attems, Robert Gordon
scripts/package/builddeb script was setting the host machine $arch
in the KERNEL/debian/control prior to an invocation of dpkg-gencontrol.
The existing method is appropriate for i386/x86_64 but fails when
cross-compiling for non-intel. The patch modifies the script to
guarantee the correct $arch for the target is written to the control
file. This patch has been tested building x86_64 on an i386 machine
and also when cross-compiling for ARM on an i386 machine.
The issue first arose in the 2.6.38 release.
Signed-off-by: Robert Gordon <robert@greenroomsoftware.com>
---
scripts/package/builddeb | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/scripts/package/builddeb b/scripts/package/builddeb
index f6cbc3d..91ced36 100644
--- a/scripts/package/builddeb
+++ b/scripts/package/builddeb
@@ -246,7 +246,23 @@ mkdir -p "$destdir"
(cd $srctree; tar -c -f - -T /tmp/files$$) | (cd $destdir; tar -xf -)
(cd $objtree; tar -c -f - -T /tmp/objfiles$$) | (cd $destdir; tar -xf -)
rm -f /tmp/files$$ /tmp/objfiles$$
-arch=$(dpkg --print-architecture)
+
+case "$UTS_MACHINE" in
+sparc*)
+ arch=sparc ;;
+s390*)
+ arch=s390 ;;
+ppc*)
+ arch=powerpc ;;
+parisc*)
+ arch=hppa ;;
+mips*)
+ arch=mips$(grep -q CPU_LITTLE_ENDIAN=y .config && echo el) ;;
+arm*)
+ arch=arm$(grep -q CONFIG_AEABI=y .config && echo el) ;;
+i386|ia64|alpha|x86_64|*)
+ arch=$(dpkg --print-architecture) ;;
+esac
cat <<EOF >> debian/control
--
1.7.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2011-05-04 6:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-04 6:27 [PATCH] kbuild, deb-pkg: set host machine $arch correctly when cross-compiling or not Robert Gordon
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox