]>
Commit | Line | Data |
---|---|---|
b01495e6 SG |
1 | #!/bin/bash |
2 | ||
3 | # Test script to check uintptr_t and 64-bit types for warnings | |
4 | # | |
5 | # It builds a few boards with different toolchains. If there are no warnings | |
6 | # then all is well. | |
7 | # | |
8 | # Usage: | |
9 | # | |
10 | # Make sure that your toolchains are correct at the bottom of this file | |
11 | # | |
12 | # Then: | |
13 | # ./test/stdint/test-includes.sh | |
14 | ||
15 | out=/tmp/test-includes.tmp | |
16 | ||
17 | try_test() { | |
18 | local board=$1 | |
19 | local arch=$2 | |
20 | local soc=$3 | |
21 | local gcc=$4 | |
22 | local flags="$5" | |
23 | ||
24 | echo $@ | |
25 | if ! which ${gcc} >/dev/null 2>&1; then | |
26 | echo "Not found: ${gcc}" | |
27 | return | |
28 | fi | |
29 | ||
30 | rm -rf ${out} | |
31 | mkdir -p ${out} | |
32 | touch ${out}/config.h | |
33 | mkdir -p ${out}/generated | |
34 | touch ${out}/generated/generic-asm-offsets.h | |
35 | mkdir -p ${out}/include/asm | |
36 | ln -s $(pwd)/arch/${arch}/include/asm/arch-${soc} \ | |
37 | ${out}/include/asm/arch | |
38 | ||
39 | cmd="${gcc} -c -D__KERNEL__ ${flags} \ | |
40 | -fno-builtin -ffreestanding \ | |
41 | -Iarch/${arch}/include \ | |
42 | -Iinclude \ | |
43 | -I${out} -I${out}/include \ | |
44 | -include configs/${board}.h test/stdint/int-types.c \ | |
45 | -o /dev/null" | |
46 | $cmd | |
47 | } | |
48 | ||
49 | # Run a test with and without CONFIG_USE_STDINT | |
50 | try_both() { | |
51 | try_test $@ | |
52 | try_test $@ -DCONFIG_USE_STDINT | |
53 | } | |
54 | ||
55 | # board arch soc path-to-gcc | |
56 | try_both sandbox sandbox - gcc | |
57 | try_both coreboot x86 - x86_64-linux-gnu-gcc | |
58 | try_both seaboard arm tegra20 /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.08_linux/bin/arm-linux-gnueabihf-gcc |