Apply modified patch from gentoo bug #255793 for enhanced sh/arm support
authorAndrew Gaffney <agaffney@gentoo.org>
Sat, 21 Feb 2009 17:21:39 +0000 (11:21 -0600)
committerAndrew Gaffney <agaffney@gentoo.org>
Sat, 21 Feb 2009 17:21:39 +0000 (11:21 -0600)
ChangeLog
modules/catalyst/arch/arm.py
modules/catalyst/arch/sh.py

index 99166607499ecaa31793b898bb7a0807a588ff0b..3eddc99893a6ee6feeb5222b2d663036b800b933 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,10 @@
 # Copyright 2002-2009 Gentoo Foundation; 2008-2009 Various authors (see AUTHORS)
 # Distributed under the GPL v2
 
+  21 Feb 2009; Andrew Gaffney <agaffney@gentoo.org>
+  modules/catalyst/arch/arm.py, modules/catalyst/arch/sh.py:
+  Apply modified patch from gentoo bug #255793 for enhanced sh/arm support
+
   30 Jan 2009; Andrew Gaffney <agaffney@gentoo.org> TODO:
   Add note to TODO about enhanced catalystrc support
 
index e7005aa2dd844b074ed1c1aa12ef55518e3af7c0..87b6c5ecb3c5305b1d62d0adc9ee31e0e8364e4f 100644 (file)
@@ -7,7 +7,6 @@ class generic_arm(catalyst.arch.generic_arch):
                catalyst.arch.generic_arch.__init__(self,myspec)
                self.settings["CHROOT"]="chroot"
                self.settings["CFLAGS"]="-O2 -pipe"
-               self.settings["CXXFLAGS"]="-O1 -pipe"
 
 class generic_armeb(catalyst.arch.generic_arch):
        "Abstract base class for all arm (big endian) builders"
@@ -15,7 +14,6 @@ class generic_armeb(catalyst.arch.generic_arch):
                catalyst.arch.generic_arch.__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"
@@ -30,26 +28,79 @@ 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"
 
 _subarch_map = {
        "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
 }
 
-_machine_map = ("arm", "armv4l", "armeb", "armv5b", "armv5tel")
-
-
+_machine_map = ("arm", "armv4l", "armv4tl", "armv5l", "armv5tl", "armv5tel", "armv5tejl", "armv6l", "armv7l", "armv7al", "armeb", "armv5teb")
index 8f4ce71ced4d2bcc89dc6aaaa81f5a7a053d282b..7f65c44ab606a25ca205bac0a01d7f83b03910e0 100644 (file)
@@ -41,6 +41,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):
@@ -48,6 +55,13 @@ class arch_sheb(generic_sheb):
                self.settings["CFLAGS"]="-O2 -pipe"
                self.settings["CHOST"]="sheb-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"
+
 class arch_sh2eb(generic_sheb):
        "Builder class for SH-2 [Big-endian]"
        def __init__(self,myspec):
@@ -74,11 +88,12 @@ _subarch_map = {
        "sh2"   :arch_sh2,
        "sh3"   :arch_sh3,
        "sh4"   :arch_sh4,
+       "sh4a"  :arch_sh4a,
        "sheb"  :arch_sheb,
        "sh2eb" :arch_sh2eb,
        "sh3eb" :arch_sh3eb,
        "sh4eb" :arch_sh4eb
 }
 
-_machine_map = ("sh2","sh3","sh4","sh2eb","sh3eb","sh4eb")
+_machine_map = ("sh2","sh3","sh4","sh4a","sh2eb","sh3eb","sh4eb","sh4aeb")