6a1e6b
#!/bin/bash
6a1e6b
6a1e6b
usage() {
6a1e6b
    echo "usage: `basename $0` [OPTIONS]"
6a1e6b
    echo "  --threads NUM         The number of threads to use for running tests."
6a1e6b
    echo "  --multilib-arch ARCH  Use this option to test 32-bit libs/binaries on"
6a1e6b
    echo "                        64-bit hosts."
6a1e6b
}
6a1e6b
6a1e6b
threads_arg=''
6a1e6b
6a1e6b
while [ $# -gt 0 ]; do
6a1e6b
    case $1 in
6a1e6b
        --threads)
6a1e6b
            shift
6a1e6b
            threads_arg="--threads $1"
6a1e6b
            ;;
6a1e6b
	--multilib-arch)
6a1e6b
            shift
6a1e6b
	    ARCH=$1
6a1e6b
	    ;;
6a1e6b
        * )
6a1e6b
            echo "unknown option: $1"
6a1e6b
            echo ""
6a1e6b
            usage
6a1e6b
            exit 1
6a1e6b
            ;;
6a1e6b
    esac
6a1e6b
    shift
6a1e6b
done
6a1e6b
6a1e6b
set -xe
6a1e6b
6a1e6b
if [ -z "$ARCH" ]; then
6a1e6b
    ARCH=`rpm --eval '%_arch'`
6a1e6b
fi
6a1e6b
6a1e6b
case $ARCH in
6a1e6b
    arm)
6a1e6b
	;&
6a1e6b
    i686)
6a1e6b
        LIB_DIR="/usr/lib/"
6a1e6b
        ;;
6a1e6b
    *)
6a1e6b
        LIB_DIR="/usr/lib64/"
6a1e6b
        ;;
6a1e6b
esac
6a1e6b
6a1e6b
cd $(mktemp -d)
6a1e6b
ln -s /usr/include include
6a1e6b
ln -s /usr/share/llvm/src/docs docs
6a1e6b
tar -xzf /usr/share/llvm/src/test.tar.gz
6a1e6b
ln -s /usr/share/llvm/src/$ARCH.site.cfg.py test/lit.site.cfg.py
6a1e6b
ln -s /usr/share/llvm/src/$ARCH.Unit.site.cfg.py test/Unit/lit.site.cfg.py
6a1e6b
lit -v -s $threads_arg test \
6a1e6b
	-Dllvm_obj_root=`pwd` \
6a1e6b
	-Dllvm_test_root=`pwd`/test \
6a1e6b
	-Dllvm_unittest_bindir=$LIB_DIR/llvm \
6a1e6b
	-Dllvm_shlib_dir=$LIB_DIR