[libc++] Allow specifying arbitrary custom executors with the new format
authorLouis Dionne <ldionne@apple.com>
Thu, 11 Jun 2020 19:41:38 +0000 (15:41 -0400)
committerLouis Dionne <ldionne@apple.com>
Thu, 11 Jun 2020 20:24:29 +0000 (16:24 -0400)
commit96e6cbbf941d0f937b7e823433d4c222967a1817
tree3a3b4da11014cee6d099ea12c6b6b22c6bef5c70
parente9ac7927483ce2e2d92eb188c20332a1049bb69e
[libc++] Allow specifying arbitrary custom executors with the new format

The integration between CMake and executor selection in the new format
wasn't very flexible -- only the default executor and SSH executors were
supported.

This patch makes it possible to specify arbitrary executors with the new
format. With the new testing format, a custom executor is just a script
that gets called with a command-line to execute, and some arguments like
--env, --codesign_identity and --execdir. As such, the default executor
is just run.py.

Remote execution with the SSH executor can be achived by specifying
LIBCXX_EXECUTOR="<path-to-ssh.py> --host <host>". Similarly, arbitrary
scripts can be provided.
libcxx/test/CMakeLists.txt
libcxx/utils/libcxx/test/config.py
libcxxabi/test/CMakeLists.txt
libunwind/test/CMakeLists.txt