1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
import builder
class generic_amd64(builder.generic):
"abstract base class for all amd64 builders"
def __init__(self,myspec):
builder.generic.__init__(self,myspec)
self.settings["CHROOT"]="chroot"
class arch_amd64(generic_amd64):
"builder class for generic amd64 (Intel and AMD)"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2"]
class arch_nocona(generic_amd64):
"improved version of Intel Pentium 4 CPU with 64-bit extensions, MMX, SSE, SSE2 and SSE3 support"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -march=nocona -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2"]
# Requires gcc 4.3 to use this class
class arch_core2(generic_amd64):
"Intel Core 2 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3 and SSSE3 support"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -march=core2 -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2","ssse3"]
class arch_k8(generic_amd64):
"generic k8, opteron and athlon64 support"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -march=k8 -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2","3dnow"]
class arch_k8_sse3(generic_amd64):
"improved versions of k8, opteron and athlon64 with SSE3 support"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -march=k8-sse3 -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2","3dnow"]
class arch_amdfam10(generic_amd64):
"AMD Family 10h core based CPUs with x86-64 instruction set support"
def __init__(self,myspec):
generic_amd64.__init__(self,myspec)
self.settings["CFLAGS"]="-O2 -march=amdfam10 -pipe"
self.settings["CHOST"]="x86_64-pc-linux-gnu"
self.settings["HOSTUSE"]=["mmx","sse","sse2","3dnow"]
def register():
"inform main catalyst program of the contents of this plugin"
return ({
"amd64" : arch_amd64,
"k8" : arch_k8,
"opteron" : arch_k8,
"athlon64" : arch_k8,
"athlonfx" : arch_k8,
"nocona" : arch_nocona,
"core2" : arch_core2,
"k8-sse3" : arch_k8_sse3,
"opteron-sse3" : arch_k8_sse3,
"athlon64-sse3" : arch_k8_sse3,
"amdfam10" : arch_amdfam10,
"barcelona" : arch_amdfam10
}, ("x86_64","amd64","nocona"))
|