diff options
Diffstat (limited to 'nacl/cpuid/do')
-rwxr-xr-x | nacl/cpuid/do | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/nacl/cpuid/do b/nacl/cpuid/do new file mode 100755 index 00000000..8a3a6f7b --- /dev/null +++ b/nacl/cpuid/do | |||
@@ -0,0 +1,37 @@ | |||
1 | #!/bin/sh -e | ||
2 | |||
3 | mkdir include | ||
4 | |||
5 | ( | ||
6 | echo x86 | ||
7 | echo unknown | ||
8 | ) | ( | ||
9 | while read n | ||
10 | do | ||
11 | okabi | ( | ||
12 | while read abi | ||
13 | do | ||
14 | okc-$abi | ( | ||
15 | while read c | ||
16 | do | ||
17 | echo "=== `date` === Trying $n.c with $c..." >&2 | ||
18 | rm -f cpuid.c | ||
19 | cp $n.c cpuid.c || continue | ||
20 | $c -o cpuid cpuid.c || continue | ||
21 | $c -o cbytes cbytes.c || continue | ||
22 | ./cpuid > cpuid.out || continue | ||
23 | echo 'static const char cpuid[] = {' > cpuid.h || continue | ||
24 | ./cbytes < cpuid.out >> cpuid.h || continue | ||
25 | echo '} ;' >> cpuid.h || continue | ||
26 | cp cpuid.h include/cpuid.h || continue | ||
27 | cat cpuid.out | ||
28 | exit 0 | ||
29 | done | ||
30 | exit 111 | ||
31 | ) && exit 0 | ||
32 | done | ||
33 | exit 111 | ||
34 | ) && exit 0 | ||
35 | done | ||
36 | exit 111 | ||
37 | ) | ||