diff --git a/libcxx/utils/ssh.py b/libcxx/utils/ssh.py --- a/libcxx/utils/ssh.py +++ b/libcxx/utils/ssh.py @@ -28,6 +28,7 @@ parser.add_argument('--host', type=str, required=True) parser.add_argument('--execdir', type=str, required=True) parser.add_argument('--codesign_identity', type=str, required=False, default=None) + parser.add_argument('--test-executable', type=str, required=False, default=None) parser.add_argument('--env', type=str, nargs='*', required=False, default=dict()) (args, remaining) = parser.parse_known_args(sys.argv[1:]) @@ -51,7 +52,9 @@ # and changing their path when running on the remote host. It's also possible # for there to be no such executable, for example in the case of a .sh.cpp # test. - isTestExe = lambda exe: exe.endswith('.tmp.exe') and os.path.exists(exe) + def isTestExe(exe): + return (exe == args.test_executable or exe.endswith('.tmp.exe')) and os.path.exists(exe) + pathOnRemote = lambda file: posixpath.join(tmp, os.path.basename(file)) try: