123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- #!/bin/sh -e
- okabi | (
- while read abi
- do
- rm -f cpucycles.o cpucycles.h
-
- (
- case "$abi" in
- ppc*)
- echo powerpccpuinfo
- echo powerpcmacos
- ;;
- amd64*)
- echo amd64tscfreq
- echo amd64cpuinfo
- echo amd64cpuspeed
- ;;
- x86*)
- echo x86tscfreq
- echo x86cpuinfo
- echo x86cpuspeed
- echo x86estimate
- ;;
- cell*)
- echo celllinux
- ;;
- sparc*)
- echo sparccpuinfo
- echo sparc32cpuinfo
- ;;
- mips*)
- echo mips
- ;;
- hppa*)
- echo hppapstat
- ;;
- alpha*)
- echo alpha
- ;;
- sgi*)
- echo sgi
- ;;
- arm*)
- echo cortex
- echo dev4ns
- ;;
- esac
- echo amd64tscfreq
- echo amd64cpuinfo
- echo amd64cpuspeed
- echo x86tscfreq
- echo x86cpuinfo
- echo x86cpuspeed
- echo x86estimate
- echo ia64cpuinfo
- echo powerpccpuinfo
- echo powerpcmacos
- echo celllinux
- echo sparccpuinfo
- echo sparc32cpuinfo
- echo mips
- echo hppapstat
- echo alpha
- echo sgi
- echo cortex
- echo dev4ns
- echo monotoniccpuinfo
- echo monotonic
- echo gettimeofday
- ) | (
- while read n
- do
- okc-$abi | (
- while read c
- do
- echo "=== `date` === Trying $n.c with $c..." >&2
- rm -f test cpucycles-impl.o cpucycles-impl.h cpucycles-impl.c
- cp $n.c cpucycles-impl.c || continue
- cp $n.h cpucycles-impl.h || continue
- $c -c cpucycles-impl.c || continue
- $c -o test test.c cpucycles-impl.o || continue
- ./test || continue
- echo "=== `date` === Success. Using $n.c." >&2
- mkdir -p lib/$abi
- mv cpucycles-impl.o lib/$abi/cpucycles.o
- mkdir -p include/$abi
- mv cpucycles-impl.h include/$abi/cpucycles.h
- exit 0
- done
- exit 111
- ) && exit 0
- done
- exit 111
- ) || (
- echo ===== Giving up. >&2
- rm -f test cpucycles-impl.o cpucycles-impl.h cpucycles-impl.c
- exit 111
- ) || exit 0
- done
- exit 0
- ) || exit 111
|