blob: 221943f8f27eade8ee4e94e3a2bcfe07aa237e39 (
plain)
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
--- configure.old 2004-04-29 23:56:20.926581760 +0200
+++ configure 2004-04-30 00:04:54.743469720 +0200
@@ -732,21 +732,27 @@
# check that gcc supports our CPU, if not, fall back to earlier ones
# LGB: check -mcpu and -march swithing step by step with enabling
# to fall back till 386.
-
+# gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
+if [ "$_cc_major" -gt 3 ] || ( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ]) ; then
+ cpuopt=-mtune
+ else
+ cpuopt=-mcpu
+ fi
+
echocheck "GCC & CPU optimization abilities"
cat > $TMPC << EOF
int main(void) { return 0; }
EOF
if test "$_runtime_cpudetection" = no ; then
if test "$proc" = "athlon-xp" || test "$proc" = "athlon-4" || test "$proc" = "athlon-tbird"; then
- cc_check -march=$proc -mcpu=$proc || proc=athlon
+ cc_check -march=$proc $cpuopt=$proc || proc=athlon
fi
if test "$proc" = "k6-3" || test "$proc" = "k6-2"; then
- cc_check -march=$proc -mcpu=$proc || proc=k6
+ cc_check -march=$proc $cpuopt=$proc || proc=k6
fi
if test "$proc" = "k6"; then
- if not cc_check -march=$proc -mcpu=$proc; then
- if cc_check -march=i586 -mcpu=i686; then
+ if not cc_check -march=$proc -$cpuopt=$proc; then
+ if cc_check -march=i586 $cpuopt=i686; then
proc=i586-i686
else
proc=i586
@@ -754,37 +760,37 @@
fi
fi
if test "$proc" = "pentium4" || test "$proc" = "pentium3" || test "$proc" = "pentium2" || test "$proc" = "athlon"; then
- cc_check -march=$proc -mcpu=$proc || proc=i686
+ cc_check -march=$proc $cpuopt=$proc || proc=i686
fi
if test "$proc" = "i686" || test "$proc" = "pentium-mmx"; then
- cc_check -march=$proc -mcpu=$proc || proc=i586
+ cc_check -march=$proc $cpuopt=$proc || proc=i586
fi
if test "$proc" = "i586" ; then
- cc_check -march=$proc -mcpu=$proc || proc=i486
+ cc_check -march=$proc $cpuopt=$proc || proc=i486
fi
if test "$proc" = "i486" ; then
- cc_check -march=$proc -mcpu=$proc || proc=i386
+ cc_check -march=$proc $cpuopt=$proc || proc=i386
fi
if test "$proc" = "i386" ; then
- cc_check -march=$proc -mcpu=$proc || proc=error
+ cc_check -march=$proc $cpuopt=$proc || proc=error
fi
if test "$proc" = "error" ; then
- echores "Your $_cc does not even support \"i386\" for '-march' and '-mcpu'."
+ echores "Your $_cc does not even support \"i386\" for '-march' and '$cpuopt'."
_mcpu=""
_march=""
_optimizing=""
elif test "$proc" = "i586-i686"; then
_march="-march=i586"
- _mcpu="-mcpu=i686"
+ _mcpu="$cpuopt=i686"
_optimizing="$proc"
else
_march="-march=$proc"
- _mcpu="-mcpu=$proc"
+ _mcpu="$cpuopt=$proc"
_optimizing="$proc"
fi
else
# i686 is probably the most common CPU - optimize for it
- _mcpu="-mcpu=i686"
+ _mcpu="$cpuopt=i686"
# at least i486 required, for bswap instruction
_march="-march=i486"
cc_check $_mcpu || _mcpu=""
@@ -797,10 +803,10 @@
# TODO: it may be a good idea to check GCC and fall back in all cases
if test "$host_arch" = "i586-i686"; then
_march="-march=i586"
- _mcpu="-mcpu=i686"
+ _mcpu="$cpuopt=i686"
else
_march="-march=$host_arch"
- _mcpu="-mcpu=$host_arch"
+ _mcpu="$cpuopt=$host_arch"
fi
proc="$host_arch"
|