4 from catalyst import builder
5 from catalyst.support import *
7 class generic_sh(builder.generic):
8 "Abstract base class for all sh builders [Little-endian]"
9 def __init__(self,myspec):
10 builder.generic.__init__(self,myspec)
11 self.settings["CHROOT"]="chroot"
13 class generic_sheb(builder.generic):
14 "Abstract base class for all sheb builders [Big-endian]"
15 def __init__(self,myspec):
16 builder.generic.__init__(self,myspec)
17 self.settings["CHROOT"]="chroot"
19 class arch_sh(generic_sh):
20 "Builder class for SH [Little-endian]"
21 def __init__(self,myspec):
22 generic_sh.__init__(self,myspec)
23 self.settings["CFLAGS"]="-O2 -pipe"
24 self.settings["CHOST"]="sh-unknown-linux-gnu"
26 class arch_sh2(generic_sh):
27 "Builder class for SH-2 [Little-endian]"
28 def __init__(self,myspec):
29 generic_sh.__init__(self,myspec)
30 self.settings["CFLAGS"]="-O2 -m2 -pipe"
31 self.settings["CHOST"]="sh2-unknown-linux-gnu"
33 class arch_sh2a(generic_sh):
34 "Builder class for SH-2A [Little-endian]"
35 def __init__(self,myspec):
36 generic_sh.__init__(self,myspec)
37 self.settings["CFLAGS"]="-O2 -m2a -pipe"
38 self.settings["CHOST"]="sh2a-unknown-linux-gnu"
40 class arch_sh3(generic_sh):
41 "Builder class for SH-3 [Little-endian]"
42 def __init__(self,myspec):
43 generic_sh.__init__(self,myspec)
44 self.settings["CFLAGS"]="-O2 -m3 -pipe"
45 self.settings["CHOST"]="sh3-unknown-linux-gnu"
47 class arch_sh4(generic_sh):
48 "Builder class for SH-4 [Little-endian]"
49 def __init__(self,myspec):
50 generic_sh.__init__(self,myspec)
51 self.settings["CFLAGS"]="-O2 -m4 -pipe"
52 self.settings["CHOST"]="sh4-unknown-linux-gnu"
54 class arch_sh4a(generic_sh):
55 "Builder class for SH-4A [Little-endian]"
56 def __init__(self,myspec):
57 generic_sh.__init__(self,myspec)
58 self.settings["CFLAGS"]="-O2 -m4a -pipe"
59 self.settings["CHOST"]="sh4a-unknown-linux-gnu"
61 class arch_sheb(generic_sheb):
62 "Builder class for SH [Big-endian]"
63 def __init__(self,myspec):
64 generic_sheb.__init__(self,myspec)
65 self.settings["CFLAGS"]="-O2 -pipe"
66 self.settings["CHOST"]="sheb-unknown-linux-gnu"
68 class arch_sh2eb(generic_sheb):
69 "Builder class for SH-2 [Big-endian]"
70 def __init__(self,myspec):
71 generic_sheb.__init__(self,myspec)
72 self.settings["CFLAGS"]="-O2 -m2 -pipe"
73 self.settings["CHOST"]="sh2eb-unknown-linux-gnu"
75 class arch_sh2aeb(generic_sheb):
76 "Builder class for SH-2A [Big-endian]"
77 def __init__(self,myspec):
78 generic_sheb.__init__(self,myspec)
79 self.settings["CFLAGS"]="-O2 -m2a -pipe"
80 self.settings["CHOST"]="sh2aeb-unknown-linux-gnu"
82 class arch_sh3eb(generic_sheb):
83 "Builder class for SH-3 [Big-endian]"
84 def __init__(self,myspec):
85 generic_sheb.__init__(self,myspec)
86 self.settings["CFLAGS"]="-O2 -m3 -pipe"
87 self.settings["CHOST"]="sh3eb-unknown-linux-gnu"
89 class arch_sh4eb(generic_sheb):
90 "Builder class for SH-4 [Big-endian]"
91 def __init__(self,myspec):
92 generic_sheb.__init__(self,myspec)
93 self.settings["CFLAGS"]="-O2 -m4 -pipe"
94 self.settings["CHOST"]="sh4eb-unknown-linux-gnu"
96 class arch_sh4aeb(generic_sheb):
97 "Builder class for SH-4A [Big-endian]"
98 def __init__(self,myspec):
99 generic_sheb.__init__(self,myspec)
100 self.settings["CFLAGS"]="-O2 -m4a -pipe"
101 self.settings["CHOST"]="sh4aeb-unknown-linux-gnu"
104 "Inform main catalyst program of the contents of this plugin."
114 "sh2aeb" :arch_sh2aeb,
117 "sh4aeb" :arch_sh4aeb
118 }, ("sh2","sh2a","sh3","sh4","sh4a","sh2eb","sh2aeb","sh3eb","sh4eb","sh4aeb"))