From 9db0d719d5539b108cec9492c4db5df2d0ceb62f Mon Sep 17 00:00:00 2001 From: Andrew Gaffney Date: Sat, 21 Feb 2009 11:06:57 -0600 Subject: Apply patch from gentoo bug #255793 for enhanced sh/arm support --- arch/arm.py | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------- arch/sh.py | 20 +++++++++++++++-- 2 files changed, 81 insertions(+), 11 deletions(-) (limited to 'arch') diff --git a/arch/arm.py b/arch/arm.py index f3639f33..aa6e616a 100644 --- a/arch/arm.py +++ b/arch/arm.py @@ -8,7 +8,6 @@ class generic_arm(builder.generic): builder.generic.__init__(self,myspec) self.settings["CHROOT"]="chroot" self.settings["CFLAGS"]="-O2 -pipe" - self.settings["CXXFLAGS"]="-O1 -pipe" class generic_armeb(builder.generic): "Abstract base class for all arm (big endian) builders" @@ -16,7 +15,6 @@ class generic_armeb(builder.generic): builder.generic.__init__(self,myspec) self.settings["CHROOT"]="chroot" self.settings["CFLAGS"]="-O2 -pipe" - self.settings["CXXFLAGS"]="-O1 -pipe" class arch_arm(generic_arm): "Builder class for arm (little endian) target" @@ -31,25 +29,81 @@ class arch_armeb(generic_armeb): self.settings["CHOST"]="armeb-unknown-linux-gnu" class arch_armv4l(generic_arm): - "Builder class for armv4l (StrongArm-110) target" + "Builder class for armv4l target" def __init__(self,myspec): generic_arm.__init__(self,myspec) - self.settings["CFLAGS"]+=" -mcpu=strongarm110" self.settings["CHOST"]="armv4l-unknown-linux-gnu" -class arch_armv5b(generic_arm): - "Builder class for armv5b (XScale) target" +class arch_armv4tl(generic_arm): + "Builder class for armv4tl target" def __init__(self,myspec): generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv4tl-softfloat-linux-gnueabi" + +class arch_armv5l(generic_arm): + "Builder class for armv5l target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv5l-softfloat-linux-gnueabi" + +class arch_armv5tl(generic_arm): + "Builder class for armv5tl target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv5tl-softfloat-linux-gnueabi" + +class arch_armv5tel(generic_arm): + "Builder class for armv5tel target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv5tel-softfloat-linux-gnueabi" + +class arch_armv5tejl(generic_arm): + "Builder class for armv5tejl target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv5tejl-softfloat-linux-gnueabi" + +class arch_armv6l(generic_arm): + "Builder class for armv6l target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv6l-softloat-linux-gnueabi" + +class arch_armv7l(generic_arm): + "Builder class for armv7l target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv7l-softfloat-linux-gnueabi" + +class arch_armv7al(generic_armeb): + "Builder class for armv7al target" + def __init__(self,myspec): + generic_arm.__init__(self,myspec) + self.settings["CHOST"]="armv7al-softfloat-linux-gnueabi" + +class arch_armv5teb(generic_armeb): + "Builder class for armv5teb (XScale) target" + def __init__(self,myspec): + generic_armeb.__init__(self,myspec) self.settings["CFLAGS"]+=" -mcpu=xscale" - self.settings["CHOST"]="armv5b-unknown-linux-gnu" + self.settings["CHOST"]="armv5teb-softfloat-linux-gnueabi" def register(): "Inform main catalyst program of the contents of this plugin." return ({ "arm" : arch_arm, "armv4l" : arch_armv4l, + "armv4tl": arch_armv4tl, + "armv5l" : arch_armv5l, + "armv5tl": arch_armv5tl, + "armv5tel": arch_armv5tel, + "armv5tejl": arch_armv5tejl, + "armv6l" : arch_armv6l, + "armv7l" : arch_armv7l, + "armv7al" : arch_armv7al, "armeb" : arch_armeb, - "armv5b" : arch_armv5b - }, ("arm", "armv4l", "armeb", "armv5b", "armv5tel") ) + "armv5teb" : arch_armv5teb + }, ("arm", "armv4l", "armv4tl", "armv5l", "armv5tl", "armv5tel", "armv5tejl", "armv6l", +"armv7l", "armv7al", "armeb", "armv5teb") ) diff --git a/arch/sh.py b/arch/sh.py index 8fb97056..a1057c9c 100644 --- a/arch/sh.py +++ b/arch/sh.py @@ -42,6 +42,13 @@ class arch_sh4(generic_sh): self.settings["CFLAGS"]="-O2 -m4 -pipe" self.settings["CHOST"]="sh4-unknown-linux-gnu" +class arch_sh4a(generic_sh): + "Builder class for SH-4a [Little-endian]" + def __init__(self,myspec): + generic_sh.__init__(self,myspec) + self.settings["CFLAGS"]="-O2 -m4a -pipe" + self.settings["CHOST"]="sh4a-unknown-linux-gnu" + class arch_sheb(generic_sheb): "Builder class for SH [Big-endian]" def __init__(self,myspec): @@ -70,6 +77,13 @@ class arch_sh4eb(generic_sheb): self.settings["CFLAGS"]="-O2 -m4 -pipe" self.settings["CHOST"]="sh4eb-unknown-linux-gnu" +class arch_sh4aeb(generic_sheb): + "Builder class for SH-4a [Big-endian]" + def __init__(self,myspec): + generic_sheb.__init__(self,myspec) + self.settings["CFLAGS"]="-O2 -m4a -pipe" + self.settings["CHOST"]="sh4aeb-unknown-linux-gnu" + def register(): "Inform main catalyst program of the contents of this plugin." return ({ @@ -77,8 +91,10 @@ def register(): "sh2" :arch_sh2, "sh3" :arch_sh3, "sh4" :arch_sh4, + "sh4a" :arch_sh4a, "sheb" :arch_sheb, "sh2eb" :arch_sh2eb, "sh3eb" :arch_sh3eb, - "sh4eb" :arch_sh4eb - }, ("sh2","sh3","sh4","sh2eb","sh3eb","sh4eb")) + "sh4eb" :arch_sh4eb, + "sh4aeb" :arch_sh4aeb + }, ("sh2","sh3","sh4","sh4a","sh2eb","sh3eb","sh4eb","sh4aeb")) -- cgit v1.2.3-65-gdbad