On Fri, Nov 05, 2010 at 12:32:41PM +0000, Asbjoern Sloth Toennesen wrote:
> Instead of creating the debian package for the compiling userland,
> create it for a userland matching the kernel thats being compiled.
> 
> This patch supports all Lenny release architectures,
> and Linux-based architecture candidates for Squeeze.
> 
> If it can't find a proper Debian userspace it displays a warning,
> and fallback to let deb-gencontrol use the host's userspace arch.
> 
> Eg. 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 an amd64 machine.
> 
> Signed-off-by: Asbjoern Sloth Toennesen <asbj...@asbjorn.biz>

thank you, indeed very cool.

Acked-by: maximilian attems <m...@stro.at>
> ---
>  scripts/package/builddeb |   33 ++++++++++++++++++++++++++++++++-
>  1 files changed, 32 insertions(+), 1 deletions(-)
> 
> diff --git a/scripts/package/builddeb b/scripts/package/builddeb
> index 5f1e2fc..1df1cc0 100644
> --- a/scripts/package/builddeb
> +++ b/scripts/package/builddeb
> @@ -25,8 +25,39 @@ create_package() {
>       chown -R root:root "$pdir"
>       chmod -R go-w "$pdir"
>  
> +     # Attempt to find the correct Debian architecture
> +     local forcearch="" debarch=""
> +     case "$UTS_MACHINE" in
> +     i386|ia64|alpha|hppa)
> +             debarch="$UTS_MACHINE" ;;

small nitpick parisc* != hppa


> +     x86_64)
> +             debarch=amd64 ;;
> +     sparc*)
> +             debarch=sparc ;;
> +     s390*)
> +             debarch=s390 ;;
> +     ppc*)
> +             debarch=powerpc ;;
> +     mips*)
> +             debarch=mips$(grep -q CPU_LITTLE_ENDIAN=y .config && echo el) ;;
> +     arm*)
> +             debarch=arm$(grep -q CONFIG_AEABI=y .config && echo el) ;;
> +     *)
> +             echo "" >&2
> +             echo "** ** **  WARNING  ** ** **" >&2
> +             echo "" >&2
> +             echo "Your architecture doesn't have it's equivalent" >&2
> +             echo "Debian userspace architecture defined!" >&2
> +             echo "Falling back to using your current userspace instead!" >&2
> +             echo "Please add support for $UTS_MACHINE to ${0} ..." >&2
> +             echo "" >&2
> +     esac
> +     if [ -n "$debarch" ] ; then
> +             forcearch="-DArchitecture=$debarch"
> +     fi
> +
>       # Create the package
> -     dpkg-gencontrol -isp -p$pname -P"$pdir"
> +     dpkg-gencontrol -isp $forcearch -p$pname -P"$pdir"
>       dpkg --build "$pdir" ..
>  }
>  
> -- 
> 1.7.2.3
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20101105124129.go15...@vostochny.stro.at

Reply via email to