Update AUTHORS to review credit and split the list of people in original authors...
[catalyst.git] / catalyst / arch / sh.py
1
2 import builder,os
3 from catalyst_support import *
4
5 class generic_sh(builder.generic):
6         "Abstract base class for all sh builders [Little-endian]"
7         def __init__(self,myspec):
8                 builder.generic.__init__(self,myspec)
9                 self.settings["CHROOT"]="chroot"
10
11 class generic_sheb(builder.generic):
12         "Abstract base class for all sheb builders [Big-endian]"
13         def __init__(self,myspec):
14                 builder.generic.__init__(self,myspec)
15                 self.settings["CHROOT"]="chroot"
16
17 class arch_sh(generic_sh):
18         "Builder class for SH [Little-endian]"
19         def __init__(self,myspec):
20                 generic_sh.__init__(self,myspec)
21                 self.settings["CFLAGS"]="-O2 -pipe"
22                 self.settings["CHOST"]="sh-unknown-linux-gnu"
23
24 class arch_sh2(generic_sh):
25         "Builder class for SH-2 [Little-endian]"
26         def __init__(self,myspec):
27                 generic_sh.__init__(self,myspec)
28                 self.settings["CFLAGS"]="-O2 -m2 -pipe"
29                 self.settings["CHOST"]="sh2-unknown-linux-gnu"
30
31 class arch_sh2a(generic_sh):
32         "Builder class for SH-2A [Little-endian]"
33         def __init__(self,myspec):
34                 generic_sh.__init__(self,myspec)
35                 self.settings["CFLAGS"]="-O2 -m2a -pipe"
36                 self.settings["CHOST"]="sh2a-unknown-linux-gnu"
37
38 class arch_sh3(generic_sh):
39         "Builder class for SH-3 [Little-endian]"
40         def __init__(self,myspec):
41                 generic_sh.__init__(self,myspec)
42                 self.settings["CFLAGS"]="-O2 -m3 -pipe"
43                 self.settings["CHOST"]="sh3-unknown-linux-gnu"
44
45 class arch_sh4(generic_sh):
46         "Builder class for SH-4 [Little-endian]"
47         def __init__(self,myspec):
48                 generic_sh.__init__(self,myspec)
49                 self.settings["CFLAGS"]="-O2 -m4 -pipe"
50                 self.settings["CHOST"]="sh4-unknown-linux-gnu"
51
52 class arch_sh4a(generic_sh):
53         "Builder class for SH-4A [Little-endian]"
54         def __init__(self,myspec):
55                 generic_sh.__init__(self,myspec)
56                 self.settings["CFLAGS"]="-O2 -m4a -pipe"
57                 self.settings["CHOST"]="sh4a-unknown-linux-gnu"
58
59 class arch_sheb(generic_sheb):
60         "Builder class for SH [Big-endian]"
61         def __init__(self,myspec):
62                 generic_sheb.__init__(self,myspec)
63                 self.settings["CFLAGS"]="-O2 -pipe"
64                 self.settings["CHOST"]="sheb-unknown-linux-gnu"
65
66 class arch_sh2eb(generic_sheb):
67         "Builder class for SH-2 [Big-endian]"
68         def __init__(self,myspec):
69                 generic_sheb.__init__(self,myspec)
70                 self.settings["CFLAGS"]="-O2 -m2 -pipe"
71                 self.settings["CHOST"]="sh2eb-unknown-linux-gnu"
72
73 class arch_sh2aeb(generic_sheb):
74         "Builder class for SH-2A [Big-endian]"
75         def __init__(self,myspec):
76                 generic_sheb.__init__(self,myspec)
77                 self.settings["CFLAGS"]="-O2 -m2a -pipe"
78                 self.settings["CHOST"]="sh2aeb-unknown-linux-gnu"
79
80 class arch_sh3eb(generic_sheb):
81         "Builder class for SH-3 [Big-endian]"
82         def __init__(self,myspec):
83                 generic_sheb.__init__(self,myspec)
84                 self.settings["CFLAGS"]="-O2 -m3 -pipe"
85                 self.settings["CHOST"]="sh3eb-unknown-linux-gnu"
86
87 class arch_sh4eb(generic_sheb):
88         "Builder class for SH-4 [Big-endian]"
89         def __init__(self,myspec):
90                 generic_sheb.__init__(self,myspec)
91                 self.settings["CFLAGS"]="-O2 -m4 -pipe"
92                 self.settings["CHOST"]="sh4eb-unknown-linux-gnu"
93
94 class arch_sh4aeb(generic_sheb):
95         "Builder class for SH-4A [Big-endian]"
96         def __init__(self,myspec):
97                 generic_sheb.__init__(self,myspec)
98                 self.settings["CFLAGS"]="-O2 -m4a -pipe"
99                 self.settings["CHOST"]="sh4aeb-unknown-linux-gnu"
100
101 def register():
102         "Inform main catalyst program of the contents of this plugin."
103         return ({
104                         "sh"    :arch_sh,
105                         "sh2"   :arch_sh2,
106                         "sh2a"  :arch_sh2a,
107                         "sh3"   :arch_sh3,
108                         "sh4"   :arch_sh4,
109                         "sh4a"  :arch_sh4a,
110                         "sheb"  :arch_sheb,
111                         "sh2eb" :arch_sh2eb,
112                         "sh2aeb" :arch_sh2aeb,
113                         "sh3eb" :arch_sh3eb,
114                         "sh4eb" :arch_sh4eb,
115                         "sh4aeb" :arch_sh4aeb
116         }, ("sh2","sh2a","sh3","sh4","sh4a","sh2eb","sh2aeb","sh3eb","sh4eb","sh4aeb"))