]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - test/stdint/test-includes.sh
ARM: keystone2: Cleanup PLL init code
[karo-tx-uboot.git] / test / stdint / test-includes.sh
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