2019-11-05 19:43:29 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
usage() {
|
|
|
|
echo "usage: `basename $0` [OPTIONS]"
|
|
|
|
echo " --threads NUM The number of threads to use for running tests."
|
|
|
|
echo " --multilib-arch ARCH Use this option to test 32-bit libs/binaries on"
|
|
|
|
echo " 64-bit hosts."
|
|
|
|
}
|
|
|
|
|
|
|
|
threads_arg=''
|
|
|
|
|
|
|
|
while [ $# -gt 0 ]; do
|
|
|
|
case $1 in
|
|
|
|
--threads)
|
|
|
|
shift
|
|
|
|
threads_arg="--threads $1"
|
|
|
|
;;
|
|
|
|
--multilib-arch)
|
|
|
|
shift
|
|
|
|
ARCH=$1
|
|
|
|
;;
|
|
|
|
* )
|
|
|
|
echo "unknown option: $1"
|
|
|
|
echo ""
|
|
|
|
usage
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
shift
|
|
|
|
done
|
|
|
|
|
|
|
|
set -xe
|
|
|
|
|
|
|
|
if [ -z "$ARCH" ]; then
|
|
|
|
ARCH=`rpm --eval '%_arch'`
|
|
|
|
fi
|
|
|
|
|
|
|
|
case $ARCH in
|
|
|
|
arm)
|
|
|
|
;&
|
|
|
|
i686)
|
|
|
|
LIB_DIR="/usr/lib/"
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
LIB_DIR="/usr/lib64/"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
cd $(mktemp -d)
|
|
|
|
ln -s /usr/include include
|
|
|
|
tar -xzf /usr/share/llvm/src/test.tar.gz
|
|
|
|
ln -s $ARCH.site.cfg.py test/lit.site.cfg.py
|
|
|
|
ln -s $ARCH.site.cfg.py test/Unit/lit.site.cfg.py
|
2020-04-28 08:52:11 +00:00
|
|
|
|
|
|
|
# llvm_obj_root is used to determine the directory the tests will run in.
|
|
|
|
# test/MC/MachO/gen-dwarf.s fails if llvm_obj_root is a parent directory
|
|
|
|
# of the source file. To workaround this, we set llvm_obj_root to a
|
|
|
|
# different directory than the one used to store the test sources.
|
|
|
|
# This also matches better how tests are run from the llvm source tree.
|
2019-11-05 19:43:29 +00:00
|
|
|
lit -v -s $threads_arg test \
|
2020-04-28 08:52:11 +00:00
|
|
|
-Dllvm_obj_root=$(mktemp -d) \
|
2019-11-05 19:43:29 +00:00
|
|
|
-Dllvm_test_root=`pwd`/test \
|
|
|
|
-Dllvm_unittest_bindir=$LIB_DIR/llvm \
|
|
|
|
-Dllvm_shlib_dir=$LIB_DIR
|