|
|
@@ -0,0 +1,58 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
# Test script to check uintptr_t and 64-bit types for warnings |
|
|
|
# |
|
|
|
# It builds a few boards with different toolchains. If there are no warnings |
|
|
|
# then all is well. |
|
|
|
# |
|
|
|
# Usage: |
|
|
|
# |
|
|
|
# Make sure that your toolchains are correct at the bottom of this file |
|
|
|
# |
|
|
|
# Then: |
|
|
|
# ./test/stdint/test-includes.sh |
|
|
|
|
|
|
|
out=/tmp/test-includes.tmp |
|
|
|
|
|
|
|
try_test() { |
|
|
|
local board=$1 |
|
|
|
local arch=$2 |
|
|
|
local soc=$3 |
|
|
|
local gcc=$4 |
|
|
|
local flags="$5" |
|
|
|
|
|
|
|
echo $@ |
|
|
|
if ! which ${gcc} >/dev/null 2>&1; then |
|
|
|
echo "Not found: ${gcc}" |
|
|
|
return |
|
|
|
fi |
|
|
|
|
|
|
|
rm -rf ${out} |
|
|
|
mkdir -p ${out} |
|
|
|
touch ${out}/config.h |
|
|
|
mkdir -p ${out}/generated |
|
|
|
touch ${out}/generated/generic-asm-offsets.h |
|
|
|
mkdir -p ${out}/include/asm |
|
|
|
ln -s $(pwd)/arch/${arch}/include/asm/arch-${soc} \ |
|
|
|
${out}/include/asm/arch |
|
|
|
|
|
|
|
cmd="${gcc} -c -D__KERNEL__ ${flags} \ |
|
|
|
-fno-builtin -ffreestanding \ |
|
|
|
-Iarch/${arch}/include \ |
|
|
|
-Iinclude \ |
|
|
|
-I${out} -I${out}/include \ |
|
|
|
-include configs/${board}.h test/stdint/int-types.c \ |
|
|
|
-o /dev/null" |
|
|
|
$cmd |
|
|
|
} |
|
|
|
|
|
|
|
# Run a test with and without CONFIG_USE_STDINT |
|
|
|
try_both() { |
|
|
|
try_test $@ |
|
|
|
try_test $@ -DCONFIG_USE_STDINT |
|
|
|
} |
|
|
|
|
|
|
|
# board arch soc path-to-gcc |
|
|
|
try_both sandbox sandbox - gcc |
|
|
|
try_both coreboot x86 - x86_64-linux-gnu-gcc |
|
|
|
try_both seaboard arm tegra20 /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.08_linux/bin/arm-linux-gnueabihf-gcc |