[libcxx-commits] [libcxx] [libc++] Make libcxx/selftest a top-level test directory (PR #144852)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Thu Jun 19 00:57:45 PDT 2025


https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/144852

These tests aren't actually libc++-specific for the most part. They test the testsuite, so they aren't tied to any implementation. That means anybody using the testsuite should be able to run these tests successfully.

The most notable changes are that
- `test/libcxx/selftest/modules` moved to `test/libcxx/modules`, since the assumptions these tests check are libc++-specific
- there is a new `lit.local.cfg` for `test/selftest`
- `selftest/dsl/dsl.sh.py` was modified since the path to the monorepo root changed


>From ad2f3123364a557a98245905d87819eb4dfada77 Mon Sep 17 00:00:00 2001
From: Nikolas Klauser <nikolasklauser at berlin.de>
Date: Thu, 19 Jun 2025 09:42:52 +0200
Subject: [PATCH] [libc++] Make libcxx/selftest a top-level test directory

---
 libcxx/test/libcxx/{selftest => }/modules/no-modules.sh.cpp  | 0
 .../{selftest => }/modules/std-and-std.compat-module.sh.cpp  | 0
 libcxx/test/libcxx/{selftest => }/modules/std-module.sh.cpp  | 0
 .../libcxx/{selftest => }/modules/std.compat-module.sh.cpp   | 0
 .../conditional-compile-flags.sh.cpp                         | 0
 .../selftest/additional_compile_flags/lit.local.cfg          | 0
 .../substitutes-in-compile-flags.sh.cpp                      | 0
 .../additional_compile_flags/substitutes-in-run.sh.cpp       | 0
 .../selftest/compile.fail.cpp/compile-error.compile.fail.cpp | 0
 .../compile.fail.cpp/compile-success.compile.fail.cpp        | 0
 .../selftest/compile.pass.cpp/compile-error.compile.pass.cpp | 0
 .../compile.pass.cpp/compile-success.compile.pass.cpp        | 0
 .../selftest/compile.pass.cpp/link-error.compile.pass.cpp    | 0
 .../selftest/compile.pass.cpp/run-error.compile.pass.cpp     | 0
 .../selftest/compile.pass.mm/compile-error.compile.pass.mm   | 0
 .../selftest/compile.pass.mm/compile-success.compile.pass.mm | 0
 .../selftest/compile.pass.mm/link-error.compile.pass.mm      | 0
 .../selftest/compile.pass.mm/run-error.compile.pass.mm       | 0
 .../selftest/convenience_substitutions/build_run.sh.cpp      | 0
 .../selftest/convenience_substitutions/verify.sh.cpp         | 0
 libcxx/test/{libcxx => }/selftest/dsl/dsl.sh.py              | 2 +-
 libcxx/test/{libcxx => }/selftest/dsl/lit.local.cfg          | 0
 libcxx/test/{libcxx => }/selftest/file_dependencies/a.txt    | 0
 .../file_dependencies/absolute-and-relative-paths.sh.cpp     | 0
 .../test/{libcxx => }/selftest/file_dependencies/dir/b.txt   | 0
 .../file_dependencies/substitute-in-dependencies.sh.cpp      | 0
 libcxx/test/{libcxx => }/selftest/gen.cpp/empty.gen.cpp      | 0
 libcxx/test/{libcxx => }/selftest/gen.cpp/one.gen.cpp        | 0
 libcxx/test/{libcxx => }/selftest/gen.cpp/two.gen.cpp        | 0
 .../selftest/link.fail.cpp/compile-error.link.fail.cpp       | 0
 .../selftest/link.fail.cpp/link-error.link.fail.cpp          | 0
 .../selftest/link.fail.cpp/link-success.link.fail.cpp        | 0
 .../selftest/link.pass.cpp/compile-error.link.pass.cpp       | 0
 .../selftest/link.pass.cpp/link-error.link.pass.cpp          | 0
 .../selftest/link.pass.cpp/link-success.link.pass.cpp        | 0
 .../selftest/link.pass.cpp/run-error.link.pass.cpp           | 0
 .../selftest/link.pass.mm/compile-error.link.pass.mm         | 0
 .../selftest/link.pass.mm/link-error.link.pass.mm            | 0
 .../selftest/link.pass.mm/link-success.link.pass.mm          | 0
 .../selftest/link.pass.mm/run-error.link.pass.mm             | 0
 libcxx/test/selftest/lit.local.cfg                           | 5 +++++
 .../{libcxx => }/selftest/pass.cpp/compile-error.pass.cpp    | 0
 .../test/{libcxx => }/selftest/pass.cpp/link-error.pass.cpp  | 0
 .../test/{libcxx => }/selftest/pass.cpp/run-error.pass.cpp   | 0
 .../test/{libcxx => }/selftest/pass.cpp/run-success.pass.cpp | 0
 libcxx/test/{libcxx => }/selftest/pass.cpp/werror.pass.cpp   | 0
 .../test/{libcxx => }/selftest/pass.mm/compile-error.pass.mm | 0
 libcxx/test/{libcxx => }/selftest/pass.mm/link-error.pass.mm | 0
 libcxx/test/{libcxx => }/selftest/pass.mm/no-arc.pass.mm     | 0
 libcxx/test/{libcxx => }/selftest/pass.mm/run-error.pass.mm  | 0
 .../test/{libcxx => }/selftest/pass.mm/run-success.pass.mm   | 0
 .../{libcxx => }/selftest/pass.mm/use-objective-cxx.pass.mm  | 0
 .../test/{libcxx => }/selftest/remote-substitutions.sh.cpp   | 0
 libcxx/test/{libcxx => }/selftest/sh.cpp/run-error.sh.cpp    | 0
 libcxx/test/{libcxx => }/selftest/sh.cpp/run-success.sh.cpp  | 0
 .../test/{libcxx => }/selftest/sh.cpp/substitutions.sh.cpp   | 0
 libcxx/test/{libcxx => }/selftest/sh.cpp/werror.sh.cpp       | 0
 .../{libcxx => }/selftest/shell-no-escape-builtins.sh.cpp    | 0
 libcxx/test/{libcxx => }/selftest/stdin-is-piped.sh.cpp      | 0
 libcxx/test/{libcxx => }/selftest/test_macros.pass.cpp       | 0
 libcxx/test/{libcxx => }/selftest/tmpdir-exists.sh.cpp       | 0
 .../selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp   | 0
 .../selftest/verify.cpp/no-diagnostics.verify.cpp            | 0
 .../{libcxx => }/selftest/verify.cpp/no-werror.verify.cpp    | 0
 .../selftest/verify.cpp/right-diagnostic.verify.cpp          | 0
 .../selftest/verify.cpp/wrong-diagnostic.verify.cpp          | 0
 66 files changed, 6 insertions(+), 1 deletion(-)
 rename libcxx/test/libcxx/{selftest => }/modules/no-modules.sh.cpp (100%)
 rename libcxx/test/libcxx/{selftest => }/modules/std-and-std.compat-module.sh.cpp (100%)
 rename libcxx/test/libcxx/{selftest => }/modules/std-module.sh.cpp (100%)
 rename libcxx/test/libcxx/{selftest => }/modules/std.compat-module.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/additional_compile_flags/lit.local.cfg (100%)
 rename libcxx/test/{libcxx => }/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/additional_compile_flags/substitutes-in-run.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.fail.cpp/compile-error.compile.fail.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.fail.cpp/compile-success.compile.fail.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.cpp/compile-error.compile.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.cpp/compile-success.compile.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.cpp/link-error.compile.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.cpp/run-error.compile.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.mm/compile-error.compile.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.mm/compile-success.compile.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.mm/link-error.compile.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/compile.pass.mm/run-error.compile.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/convenience_substitutions/build_run.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/convenience_substitutions/verify.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/dsl/dsl.sh.py (99%)
 rename libcxx/test/{libcxx => }/selftest/dsl/lit.local.cfg (100%)
 rename libcxx/test/{libcxx => }/selftest/file_dependencies/a.txt (100%)
 rename libcxx/test/{libcxx => }/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/file_dependencies/dir/b.txt (100%)
 rename libcxx/test/{libcxx => }/selftest/file_dependencies/substitute-in-dependencies.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/gen.cpp/empty.gen.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/gen.cpp/one.gen.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/gen.cpp/two.gen.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.fail.cpp/compile-error.link.fail.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.fail.cpp/link-error.link.fail.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.fail.cpp/link-success.link.fail.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.cpp/compile-error.link.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.cpp/link-error.link.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.cpp/link-success.link.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.cpp/run-error.link.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.mm/compile-error.link.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.mm/link-error.link.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.mm/link-success.link.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/link.pass.mm/run-error.link.pass.mm (100%)
 create mode 100644 libcxx/test/selftest/lit.local.cfg
 rename libcxx/test/{libcxx => }/selftest/pass.cpp/compile-error.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.cpp/link-error.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.cpp/run-error.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.cpp/run-success.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.cpp/werror.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/compile-error.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/link-error.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/no-arc.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/run-error.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/run-success.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/pass.mm/use-objective-cxx.pass.mm (100%)
 rename libcxx/test/{libcxx => }/selftest/remote-substitutions.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/sh.cpp/run-error.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/sh.cpp/run-success.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/sh.cpp/substitutions.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/sh.cpp/werror.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/shell-no-escape-builtins.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/stdin-is-piped.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/test_macros.pass.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/tmpdir-exists.sh.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/verify.cpp/no-diagnostics.verify.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/verify.cpp/no-werror.verify.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/verify.cpp/right-diagnostic.verify.cpp (100%)
 rename libcxx/test/{libcxx => }/selftest/verify.cpp/wrong-diagnostic.verify.cpp (100%)

diff --git a/libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp b/libcxx/test/libcxx/modules/no-modules.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
rename to libcxx/test/libcxx/modules/no-modules.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp b/libcxx/test/libcxx/modules/std-and-std.compat-module.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
rename to libcxx/test/libcxx/modules/std-and-std.compat-module.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/modules/std-module.sh.cpp b/libcxx/test/libcxx/modules/std-module.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
rename to libcxx/test/libcxx/modules/std-module.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp b/libcxx/test/libcxx/modules/std.compat-module.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
rename to libcxx/test/libcxx/modules/std.compat-module.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp b/libcxx/test/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
rename to libcxx/test/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/additional_compile_flags/lit.local.cfg b/libcxx/test/selftest/additional_compile_flags/lit.local.cfg
similarity index 100%
rename from libcxx/test/libcxx/selftest/additional_compile_flags/lit.local.cfg
rename to libcxx/test/selftest/additional_compile_flags/lit.local.cfg
diff --git a/libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp b/libcxx/test/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
rename to libcxx/test/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-run.sh.cpp b/libcxx/test/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
rename to libcxx/test/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.fail.cpp/compile-error.compile.fail.cpp b/libcxx/test/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
rename to libcxx/test/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.fail.cpp/compile-success.compile.fail.cpp b/libcxx/test/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
rename to libcxx/test/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.pass.cpp/compile-error.compile.pass.cpp b/libcxx/test/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
rename to libcxx/test/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.pass.cpp/compile-success.compile.pass.cpp b/libcxx/test/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
rename to libcxx/test/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.pass.cpp/link-error.compile.pass.cpp b/libcxx/test/selftest/compile.pass.cpp/link-error.compile.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.cpp/link-error.compile.pass.cpp
rename to libcxx/test/selftest/compile.pass.cpp/link-error.compile.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.pass.cpp/run-error.compile.pass.cpp b/libcxx/test/selftest/compile.pass.cpp/run-error.compile.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.cpp/run-error.compile.pass.cpp
rename to libcxx/test/selftest/compile.pass.cpp/run-error.compile.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/compile.pass.mm/compile-error.compile.pass.mm b/libcxx/test/selftest/compile.pass.mm/compile-error.compile.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.mm/compile-error.compile.pass.mm
rename to libcxx/test/selftest/compile.pass.mm/compile-error.compile.pass.mm
diff --git a/libcxx/test/libcxx/selftest/compile.pass.mm/compile-success.compile.pass.mm b/libcxx/test/selftest/compile.pass.mm/compile-success.compile.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.mm/compile-success.compile.pass.mm
rename to libcxx/test/selftest/compile.pass.mm/compile-success.compile.pass.mm
diff --git a/libcxx/test/libcxx/selftest/compile.pass.mm/link-error.compile.pass.mm b/libcxx/test/selftest/compile.pass.mm/link-error.compile.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.mm/link-error.compile.pass.mm
rename to libcxx/test/selftest/compile.pass.mm/link-error.compile.pass.mm
diff --git a/libcxx/test/libcxx/selftest/compile.pass.mm/run-error.compile.pass.mm b/libcxx/test/selftest/compile.pass.mm/run-error.compile.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/compile.pass.mm/run-error.compile.pass.mm
rename to libcxx/test/selftest/compile.pass.mm/run-error.compile.pass.mm
diff --git a/libcxx/test/libcxx/selftest/convenience_substitutions/build_run.sh.cpp b/libcxx/test/selftest/convenience_substitutions/build_run.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/convenience_substitutions/build_run.sh.cpp
rename to libcxx/test/selftest/convenience_substitutions/build_run.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/convenience_substitutions/verify.sh.cpp b/libcxx/test/selftest/convenience_substitutions/verify.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/convenience_substitutions/verify.sh.cpp
rename to libcxx/test/selftest/convenience_substitutions/verify.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/dsl/dsl.sh.py b/libcxx/test/selftest/dsl/dsl.sh.py
similarity index 99%
rename from libcxx/test/libcxx/selftest/dsl/dsl.sh.py
rename to libcxx/test/selftest/dsl/dsl.sh.py
index 012759436d891..6d4406b7858e6 100644
--- a/libcxx/test/libcxx/selftest/dsl/dsl.sh.py
+++ b/libcxx/test/selftest/dsl/dsl.sh.py
@@ -26,7 +26,7 @@
 
 # Allow importing 'lit' and the 'libcxx' module. Make sure we put the lit
 # path first so we don't find any system-installed version.
-monorepoRoot = dirname(dirname(dirname(dirname(dirname(dirname(__file__))))))
+monorepoRoot = dirname(dirname(dirname(dirname(dirname(__file__)))))
 sys.path = [
     os.path.join(monorepoRoot, "libcxx", "utils"),
     os.path.join(monorepoRoot, "llvm", "utils", "lit"),
diff --git a/libcxx/test/libcxx/selftest/dsl/lit.local.cfg b/libcxx/test/selftest/dsl/lit.local.cfg
similarity index 100%
rename from libcxx/test/libcxx/selftest/dsl/lit.local.cfg
rename to libcxx/test/selftest/dsl/lit.local.cfg
diff --git a/libcxx/test/libcxx/selftest/file_dependencies/a.txt b/libcxx/test/selftest/file_dependencies/a.txt
similarity index 100%
rename from libcxx/test/libcxx/selftest/file_dependencies/a.txt
rename to libcxx/test/selftest/file_dependencies/a.txt
diff --git a/libcxx/test/libcxx/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp b/libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
rename to libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/file_dependencies/dir/b.txt b/libcxx/test/selftest/file_dependencies/dir/b.txt
similarity index 100%
rename from libcxx/test/libcxx/selftest/file_dependencies/dir/b.txt
rename to libcxx/test/selftest/file_dependencies/dir/b.txt
diff --git a/libcxx/test/libcxx/selftest/file_dependencies/substitute-in-dependencies.sh.cpp b/libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
rename to libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/gen.cpp/empty.gen.cpp b/libcxx/test/selftest/gen.cpp/empty.gen.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/gen.cpp/empty.gen.cpp
rename to libcxx/test/selftest/gen.cpp/empty.gen.cpp
diff --git a/libcxx/test/libcxx/selftest/gen.cpp/one.gen.cpp b/libcxx/test/selftest/gen.cpp/one.gen.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/gen.cpp/one.gen.cpp
rename to libcxx/test/selftest/gen.cpp/one.gen.cpp
diff --git a/libcxx/test/libcxx/selftest/gen.cpp/two.gen.cpp b/libcxx/test/selftest/gen.cpp/two.gen.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/gen.cpp/two.gen.cpp
rename to libcxx/test/selftest/gen.cpp/two.gen.cpp
diff --git a/libcxx/test/libcxx/selftest/link.fail.cpp/compile-error.link.fail.cpp b/libcxx/test/selftest/link.fail.cpp/compile-error.link.fail.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.fail.cpp/compile-error.link.fail.cpp
rename to libcxx/test/selftest/link.fail.cpp/compile-error.link.fail.cpp
diff --git a/libcxx/test/libcxx/selftest/link.fail.cpp/link-error.link.fail.cpp b/libcxx/test/selftest/link.fail.cpp/link-error.link.fail.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.fail.cpp/link-error.link.fail.cpp
rename to libcxx/test/selftest/link.fail.cpp/link-error.link.fail.cpp
diff --git a/libcxx/test/libcxx/selftest/link.fail.cpp/link-success.link.fail.cpp b/libcxx/test/selftest/link.fail.cpp/link-success.link.fail.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.fail.cpp/link-success.link.fail.cpp
rename to libcxx/test/selftest/link.fail.cpp/link-success.link.fail.cpp
diff --git a/libcxx/test/libcxx/selftest/link.pass.cpp/compile-error.link.pass.cpp b/libcxx/test/selftest/link.pass.cpp/compile-error.link.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.cpp/compile-error.link.pass.cpp
rename to libcxx/test/selftest/link.pass.cpp/compile-error.link.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/link.pass.cpp/link-error.link.pass.cpp b/libcxx/test/selftest/link.pass.cpp/link-error.link.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.cpp/link-error.link.pass.cpp
rename to libcxx/test/selftest/link.pass.cpp/link-error.link.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/link.pass.cpp/link-success.link.pass.cpp b/libcxx/test/selftest/link.pass.cpp/link-success.link.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.cpp/link-success.link.pass.cpp
rename to libcxx/test/selftest/link.pass.cpp/link-success.link.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/link.pass.cpp/run-error.link.pass.cpp b/libcxx/test/selftest/link.pass.cpp/run-error.link.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.cpp/run-error.link.pass.cpp
rename to libcxx/test/selftest/link.pass.cpp/run-error.link.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/link.pass.mm/compile-error.link.pass.mm b/libcxx/test/selftest/link.pass.mm/compile-error.link.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.mm/compile-error.link.pass.mm
rename to libcxx/test/selftest/link.pass.mm/compile-error.link.pass.mm
diff --git a/libcxx/test/libcxx/selftest/link.pass.mm/link-error.link.pass.mm b/libcxx/test/selftest/link.pass.mm/link-error.link.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.mm/link-error.link.pass.mm
rename to libcxx/test/selftest/link.pass.mm/link-error.link.pass.mm
diff --git a/libcxx/test/libcxx/selftest/link.pass.mm/link-success.link.pass.mm b/libcxx/test/selftest/link.pass.mm/link-success.link.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.mm/link-success.link.pass.mm
rename to libcxx/test/selftest/link.pass.mm/link-success.link.pass.mm
diff --git a/libcxx/test/libcxx/selftest/link.pass.mm/run-error.link.pass.mm b/libcxx/test/selftest/link.pass.mm/run-error.link.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/link.pass.mm/run-error.link.pass.mm
rename to libcxx/test/selftest/link.pass.mm/run-error.link.pass.mm
diff --git a/libcxx/test/selftest/lit.local.cfg b/libcxx/test/selftest/lit.local.cfg
new file mode 100644
index 0000000000000..4467d8070cc70
--- /dev/null
+++ b/libcxx/test/selftest/lit.local.cfg
@@ -0,0 +1,5 @@
+# The tests in this directory need to run Python
+import shlex
+import sys
+
+config.substitutions.append(("%{python}", shlex.quote(sys.executable)))
diff --git a/libcxx/test/libcxx/selftest/pass.cpp/compile-error.pass.cpp b/libcxx/test/selftest/pass.cpp/compile-error.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.cpp/compile-error.pass.cpp
rename to libcxx/test/selftest/pass.cpp/compile-error.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/pass.cpp/link-error.pass.cpp b/libcxx/test/selftest/pass.cpp/link-error.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.cpp/link-error.pass.cpp
rename to libcxx/test/selftest/pass.cpp/link-error.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/pass.cpp/run-error.pass.cpp b/libcxx/test/selftest/pass.cpp/run-error.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.cpp/run-error.pass.cpp
rename to libcxx/test/selftest/pass.cpp/run-error.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/pass.cpp/run-success.pass.cpp b/libcxx/test/selftest/pass.cpp/run-success.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.cpp/run-success.pass.cpp
rename to libcxx/test/selftest/pass.cpp/run-success.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/pass.cpp/werror.pass.cpp b/libcxx/test/selftest/pass.cpp/werror.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.cpp/werror.pass.cpp
rename to libcxx/test/selftest/pass.cpp/werror.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/pass.mm/compile-error.pass.mm b/libcxx/test/selftest/pass.mm/compile-error.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/compile-error.pass.mm
rename to libcxx/test/selftest/pass.mm/compile-error.pass.mm
diff --git a/libcxx/test/libcxx/selftest/pass.mm/link-error.pass.mm b/libcxx/test/selftest/pass.mm/link-error.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/link-error.pass.mm
rename to libcxx/test/selftest/pass.mm/link-error.pass.mm
diff --git a/libcxx/test/libcxx/selftest/pass.mm/no-arc.pass.mm b/libcxx/test/selftest/pass.mm/no-arc.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/no-arc.pass.mm
rename to libcxx/test/selftest/pass.mm/no-arc.pass.mm
diff --git a/libcxx/test/libcxx/selftest/pass.mm/run-error.pass.mm b/libcxx/test/selftest/pass.mm/run-error.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/run-error.pass.mm
rename to libcxx/test/selftest/pass.mm/run-error.pass.mm
diff --git a/libcxx/test/libcxx/selftest/pass.mm/run-success.pass.mm b/libcxx/test/selftest/pass.mm/run-success.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/run-success.pass.mm
rename to libcxx/test/selftest/pass.mm/run-success.pass.mm
diff --git a/libcxx/test/libcxx/selftest/pass.mm/use-objective-cxx.pass.mm b/libcxx/test/selftest/pass.mm/use-objective-cxx.pass.mm
similarity index 100%
rename from libcxx/test/libcxx/selftest/pass.mm/use-objective-cxx.pass.mm
rename to libcxx/test/selftest/pass.mm/use-objective-cxx.pass.mm
diff --git a/libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp b/libcxx/test/selftest/remote-substitutions.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp
rename to libcxx/test/selftest/remote-substitutions.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/sh.cpp/run-error.sh.cpp b/libcxx/test/selftest/sh.cpp/run-error.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/sh.cpp/run-error.sh.cpp
rename to libcxx/test/selftest/sh.cpp/run-error.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/sh.cpp/run-success.sh.cpp b/libcxx/test/selftest/sh.cpp/run-success.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/sh.cpp/run-success.sh.cpp
rename to libcxx/test/selftest/sh.cpp/run-success.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/sh.cpp/substitutions.sh.cpp b/libcxx/test/selftest/sh.cpp/substitutions.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/sh.cpp/substitutions.sh.cpp
rename to libcxx/test/selftest/sh.cpp/substitutions.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/sh.cpp/werror.sh.cpp b/libcxx/test/selftest/sh.cpp/werror.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/sh.cpp/werror.sh.cpp
rename to libcxx/test/selftest/sh.cpp/werror.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/shell-no-escape-builtins.sh.cpp b/libcxx/test/selftest/shell-no-escape-builtins.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/shell-no-escape-builtins.sh.cpp
rename to libcxx/test/selftest/shell-no-escape-builtins.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/stdin-is-piped.sh.cpp b/libcxx/test/selftest/stdin-is-piped.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/stdin-is-piped.sh.cpp
rename to libcxx/test/selftest/stdin-is-piped.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/test_macros.pass.cpp b/libcxx/test/selftest/test_macros.pass.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/test_macros.pass.cpp
rename to libcxx/test/selftest/test_macros.pass.cpp
diff --git a/libcxx/test/libcxx/selftest/tmpdir-exists.sh.cpp b/libcxx/test/selftest/tmpdir-exists.sh.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/tmpdir-exists.sh.cpp
rename to libcxx/test/selftest/tmpdir-exists.sh.cpp
diff --git a/libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp b/libcxx/test/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
rename to libcxx/test/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
diff --git a/libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics.verify.cpp b/libcxx/test/selftest/verify.cpp/no-diagnostics.verify.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics.verify.cpp
rename to libcxx/test/selftest/verify.cpp/no-diagnostics.verify.cpp
diff --git a/libcxx/test/libcxx/selftest/verify.cpp/no-werror.verify.cpp b/libcxx/test/selftest/verify.cpp/no-werror.verify.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/verify.cpp/no-werror.verify.cpp
rename to libcxx/test/selftest/verify.cpp/no-werror.verify.cpp
diff --git a/libcxx/test/libcxx/selftest/verify.cpp/right-diagnostic.verify.cpp b/libcxx/test/selftest/verify.cpp/right-diagnostic.verify.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/verify.cpp/right-diagnostic.verify.cpp
rename to libcxx/test/selftest/verify.cpp/right-diagnostic.verify.cpp
diff --git a/libcxx/test/libcxx/selftest/verify.cpp/wrong-diagnostic.verify.cpp b/libcxx/test/selftest/verify.cpp/wrong-diagnostic.verify.cpp
similarity index 100%
rename from libcxx/test/libcxx/selftest/verify.cpp/wrong-diagnostic.verify.cpp
rename to libcxx/test/selftest/verify.cpp/wrong-diagnostic.verify.cpp



More information about the libcxx-commits mailing list