Re: [PATCH] kbuild, deb-pkg: fix Architecture field when cross compiling

Sam Ravnborg
2010-11-04T05:58:05Z

On Thu, Nov 04, 2010 at 03:44:04AM +0000, Asbjoern Sloth Toennesen wrote:
> Attempt to guess the correct value of the Architecture control
> field, based on the ARCH environment variable. Fallback to letting
> deb-gencontrol use the host platform's architecture.
>
> With this patch the following make command:
>
> make ARCH=i386 deb-pkg
>
> will output an i386 Debian package instead of an amd64 one,
> when run on amd64 machine.
>
> Signed-off-by: Asbjoern Sloth Toennesen <asbjorn@asbjorn.biz>
> ---
> scripts/package/builddeb | 17 ++++++++++++++++-
> 1 files changed, 16 insertions(+), 1 deletions(-)
>
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index 5f1e2fc..43b8826 100644
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -25,8 +25,23 @@ create_package() {
> chown -R root:root "$pdir"
> chmod -R go-w "$pdir"
>
> + # Attempt to find the correct Debian architecture
> + local forcearch="" debarch=""
> + case "$ARCH" in
> + i386|ia64)
> + debarch="$ARCH" ;;
> + x86_64)
> + debarch="amd64" ;;

On the commandline I can say ARCH=x86 - will it do the right thing then?

> + *)
> + grep -q CONFIG_ARM=y .config &&
> + debarch=arm$(grep -q CONFIG_AEABI=y .config && echo el)
> + esac

sparc may be know as sparc32, sparc64 and sparc these days.
I recall that at least in the past debian supported sparc.

Sam