1#! /bin/sh
2
3# This script determines which platforms that this Valgrind installation
4# supports.
5# We return:
6# - 0 if the machine matches the asked-for platform
7# - 1 if it didn't match, but did match the name of another platform
8# - 2 otherwise
9
10# Nb: When updating this file for a new platform, add the name to
11# 'all_platforms'.
12
13all_platforms=
14all_platforms="$all_platforms x86-linux amd64-linux ppc32-linux ppc64-linux"
15all_platforms="$all_platforms arm-linux"
16all_platforms="$all_platforms s390x-linux mips32-linux mips64-linux"
17all_platforms="$all_platforms x86-darwin amd64-darwin"
18
19if [ $# -ne 2 ] ; then
20    echo "usage: platform_test <arch-type> <OS-type>"
21    exit 2;
22fi
23
24# Get the directory holding the arch_test and os_test, which will be the same
25# as the one holding this script.
26dir=`dirname $0`
27
28if $dir/arch_test $1 && $dir/os_test $2 ; then
29    exit 0;         # Matches this platform.
30fi
31
32for p in $all_platforms ; do
33    if [ $1-$2 = $p ] ; then
34        exit 1;     # Matches another Valgrind-supported platform.
35    fi
36done
37
38exit 2;             # Doesn't match any Valgrind-supported platform.
39