#!/usr/bin/env bash

set -e

PROGNAME="$(basename "${0}")"
function usage() {
cat <<EOF
Usage:
${PROGNAME} [-h|--help] <build-directory> [lit options...] tests...

Shortcut to build the libc++ testing dependencies and run the libc++ tests with Lit.

<build-directory>  The path to the build directory to use for building the library.
[lit options...]   Optional options to pass to 'llvm-lit'.
tests...           Paths of the tests to run. Those paths are relative to '<monorepo-root>'.

Example
=======
$ cmake -S runtimes -B build/ -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi"
$ libcxx-lit build/ -sv libcxx/test/std/utilities/
EOF
}

for arg in $@; do
    if [[ "${arg}" == "-h" || "${arg}" == "--help" ]]; then
        usage
        exit 0
    fi
done

if [[ $# -lt 1 ]]; then
    usage
    exit 1
fi

build_dir="${1}"
shift

cmake --build "${build_dir}" --target cxx-test-depends
"${build_dir}/bin/llvm-lit" ${@}
