[libcxx-commits] [libcxx] b173c12 - [libc++] Make libcxx/selftest a top-level test directory (#144852)
via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Jul 2 12:47:29 PDT 2025
Author: Nikolas Klauser
Date: 2025-07-02T21:47:26+02:00
New Revision: b173c12b545462546cfdd5e2e1e8c88e6bcc2c65
URL: https://github.com/llvm/llvm-project/commit/b173c12b545462546cfdd5e2e1e8c88e6bcc2c65
DIFF: https://github.com/llvm/llvm-project/commit/b173c12b545462546cfdd5e2e1e8c88e6bcc2c65.diff
LOG: [libc++] Make libcxx/selftest a top-level test directory (#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
Added:
libcxx/test/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
libcxx/test/selftest/additional_compile_flags/lit.local.cfg
libcxx/test/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
libcxx/test/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
libcxx/test/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
libcxx/test/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
libcxx/test/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
libcxx/test/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
libcxx/test/selftest/compile.pass.cpp/link-error.compile.pass.cpp
libcxx/test/selftest/compile.pass.cpp/run-error.compile.pass.cpp
libcxx/test/selftest/compile.pass.mm/compile-error.compile.pass.mm
libcxx/test/selftest/compile.pass.mm/compile-success.compile.pass.mm
libcxx/test/selftest/compile.pass.mm/link-error.compile.pass.mm
libcxx/test/selftest/compile.pass.mm/run-error.compile.pass.mm
libcxx/test/selftest/convenience_substitutions/build_run.sh.cpp
libcxx/test/selftest/convenience_substitutions/verify.sh.cpp
libcxx/test/selftest/dsl/dsl.sh.py
libcxx/test/selftest/dsl/lit.local.cfg
libcxx/test/selftest/file_dependencies/a.txt
libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
libcxx/test/selftest/file_dependencies/dir/b.txt
libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
libcxx/test/selftest/gen.cpp/empty.gen.cpp
libcxx/test/selftest/gen.cpp/one.gen.cpp
libcxx/test/selftest/gen.cpp/two.gen.cpp
libcxx/test/selftest/link.fail.cpp/compile-error.link.fail.cpp
libcxx/test/selftest/link.fail.cpp/link-error.link.fail.cpp
libcxx/test/selftest/link.fail.cpp/link-success.link.fail.cpp
libcxx/test/selftest/link.pass.cpp/compile-error.link.pass.cpp
libcxx/test/selftest/link.pass.cpp/link-error.link.pass.cpp
libcxx/test/selftest/link.pass.cpp/link-success.link.pass.cpp
libcxx/test/selftest/link.pass.cpp/run-error.link.pass.cpp
libcxx/test/selftest/link.pass.mm/compile-error.link.pass.mm
libcxx/test/selftest/link.pass.mm/link-error.link.pass.mm
libcxx/test/selftest/link.pass.mm/link-success.link.pass.mm
libcxx/test/selftest/link.pass.mm/run-error.link.pass.mm
libcxx/test/selftest/lit.local.cfg
libcxx/test/selftest/modules/no-modules.sh.cpp
libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
libcxx/test/selftest/modules/std-module.sh.cpp
libcxx/test/selftest/modules/std.compat-module.sh.cpp
libcxx/test/selftest/pass.cpp/compile-error.pass.cpp
libcxx/test/selftest/pass.cpp/link-error.pass.cpp
libcxx/test/selftest/pass.cpp/run-error.pass.cpp
libcxx/test/selftest/pass.cpp/run-success.pass.cpp
libcxx/test/selftest/pass.cpp/werror.pass.cpp
libcxx/test/selftest/pass.mm/compile-error.pass.mm
libcxx/test/selftest/pass.mm/link-error.pass.mm
libcxx/test/selftest/pass.mm/no-arc.pass.mm
libcxx/test/selftest/pass.mm/run-error.pass.mm
libcxx/test/selftest/pass.mm/run-success.pass.mm
libcxx/test/selftest/pass.mm/use-objective-cxx.pass.mm
libcxx/test/selftest/remote-substitutions.sh.cpp
libcxx/test/selftest/sh.cpp/run-error.sh.cpp
libcxx/test/selftest/sh.cpp/run-success.sh.cpp
libcxx/test/selftest/sh.cpp/substitutions.sh.cpp
libcxx/test/selftest/sh.cpp/werror.sh.cpp
libcxx/test/selftest/shell-no-escape-builtins.sh.cpp
libcxx/test/selftest/stdin-is-piped.sh.cpp
libcxx/test/selftest/test_macros.pass.cpp
libcxx/test/selftest/tmpdir-exists.sh.cpp
libcxx/test/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
libcxx/test/selftest/verify.cpp/no-diagnostics.verify.cpp
libcxx/test/selftest/verify.cpp/no-werror.verify.cpp
libcxx/test/selftest/verify.cpp/right-diagnostic.verify.cpp
libcxx/test/selftest/verify.cpp/wrong-diagnostic.verify.cpp
Modified:
Removed:
libcxx/test/libcxx/selftest/additional_compile_flags/conditional-compile-flags.sh.cpp
libcxx/test/libcxx/selftest/additional_compile_flags/lit.local.cfg
libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-compile-flags.sh.cpp
libcxx/test/libcxx/selftest/additional_compile_flags/substitutes-in-run.sh.cpp
libcxx/test/libcxx/selftest/compile.fail.cpp/compile-error.compile.fail.cpp
libcxx/test/libcxx/selftest/compile.fail.cpp/compile-success.compile.fail.cpp
libcxx/test/libcxx/selftest/compile.pass.cpp/compile-error.compile.pass.cpp
libcxx/test/libcxx/selftest/compile.pass.cpp/compile-success.compile.pass.cpp
libcxx/test/libcxx/selftest/compile.pass.cpp/link-error.compile.pass.cpp
libcxx/test/libcxx/selftest/compile.pass.cpp/run-error.compile.pass.cpp
libcxx/test/libcxx/selftest/compile.pass.mm/compile-error.compile.pass.mm
libcxx/test/libcxx/selftest/compile.pass.mm/compile-success.compile.pass.mm
libcxx/test/libcxx/selftest/compile.pass.mm/link-error.compile.pass.mm
libcxx/test/libcxx/selftest/compile.pass.mm/run-error.compile.pass.mm
libcxx/test/libcxx/selftest/convenience_substitutions/build_run.sh.cpp
libcxx/test/libcxx/selftest/convenience_substitutions/verify.sh.cpp
libcxx/test/libcxx/selftest/dsl/dsl.sh.py
libcxx/test/libcxx/selftest/dsl/lit.local.cfg
libcxx/test/libcxx/selftest/file_dependencies/a.txt
libcxx/test/libcxx/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
libcxx/test/libcxx/selftest/file_dependencies/dir/b.txt
libcxx/test/libcxx/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
libcxx/test/libcxx/selftest/gen.cpp/empty.gen.cpp
libcxx/test/libcxx/selftest/gen.cpp/one.gen.cpp
libcxx/test/libcxx/selftest/gen.cpp/two.gen.cpp
libcxx/test/libcxx/selftest/link.fail.cpp/compile-error.link.fail.cpp
libcxx/test/libcxx/selftest/link.fail.cpp/link-error.link.fail.cpp
libcxx/test/libcxx/selftest/link.fail.cpp/link-success.link.fail.cpp
libcxx/test/libcxx/selftest/link.pass.cpp/compile-error.link.pass.cpp
libcxx/test/libcxx/selftest/link.pass.cpp/link-error.link.pass.cpp
libcxx/test/libcxx/selftest/link.pass.cpp/link-success.link.pass.cpp
libcxx/test/libcxx/selftest/link.pass.cpp/run-error.link.pass.cpp
libcxx/test/libcxx/selftest/link.pass.mm/compile-error.link.pass.mm
libcxx/test/libcxx/selftest/link.pass.mm/link-error.link.pass.mm
libcxx/test/libcxx/selftest/link.pass.mm/link-success.link.pass.mm
libcxx/test/libcxx/selftest/link.pass.mm/run-error.link.pass.mm
libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
libcxx/test/libcxx/selftest/pass.cpp/compile-error.pass.cpp
libcxx/test/libcxx/selftest/pass.cpp/link-error.pass.cpp
libcxx/test/libcxx/selftest/pass.cpp/run-error.pass.cpp
libcxx/test/libcxx/selftest/pass.cpp/run-success.pass.cpp
libcxx/test/libcxx/selftest/pass.cpp/werror.pass.cpp
libcxx/test/libcxx/selftest/pass.mm/compile-error.pass.mm
libcxx/test/libcxx/selftest/pass.mm/link-error.pass.mm
libcxx/test/libcxx/selftest/pass.mm/no-arc.pass.mm
libcxx/test/libcxx/selftest/pass.mm/run-error.pass.mm
libcxx/test/libcxx/selftest/pass.mm/run-success.pass.mm
libcxx/test/libcxx/selftest/pass.mm/use-objective-cxx.pass.mm
libcxx/test/libcxx/selftest/remote-substitutions.sh.cpp
libcxx/test/libcxx/selftest/sh.cpp/run-error.sh.cpp
libcxx/test/libcxx/selftest/sh.cpp/run-success.sh.cpp
libcxx/test/libcxx/selftest/sh.cpp/substitutions.sh.cpp
libcxx/test/libcxx/selftest/sh.cpp/werror.sh.cpp
libcxx/test/libcxx/selftest/shell-no-escape-builtins.sh.cpp
libcxx/test/libcxx/selftest/stdin-is-piped.sh.cpp
libcxx/test/libcxx/selftest/test_macros.pass.cpp
libcxx/test/libcxx/selftest/tmpdir-exists.sh.cpp
libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics-unmarked.verify.cpp
libcxx/test/libcxx/selftest/verify.cpp/no-diagnostics.verify.cpp
libcxx/test/libcxx/selftest/verify.cpp/no-werror.verify.cpp
libcxx/test/libcxx/selftest/verify.cpp/right-diagnostic.verify.cpp
libcxx/test/libcxx/selftest/verify.cpp/wrong-diagnostic.verify.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/modules/no-modules.sh.cpp b/libcxx/test/selftest/modules/no-modules.sh.cpp
similarity index 73%
rename from libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
rename to libcxx/test/selftest/modules/no-modules.sh.cpp
index 74e65a9072f7b..762b38ccaaebf 100644
--- a/libcxx/test/libcxx/selftest/modules/no-modules.sh.cpp
+++ b/libcxx/test/selftest/modules/no-modules.sh.cpp
@@ -6,6 +6,10 @@
//
//===----------------------------------------------------------------------===//
+// TODO: This test is currently written in a way that is specific to libc++, but it's really trying to test a property
+// of the test framework, which isn't libc++ specific.
+// REQUIRES: stdlib=libc++
+
// Make sure that the compile flags contain no module information.
// MODULE_DEPENDENCIES:
diff --git a/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp b/libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
similarity index 82%
rename from libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
rename to libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
index d56ebb2961d4a..455674d6b9949 100644
--- a/libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
+++ b/libcxx/test/selftest/modules/std-and-std.compat-module.sh.cpp
@@ -10,6 +10,10 @@
// UNSUPPORTED: clang-modules-build
// UNSUPPORTED: gcc
+// TODO: This test is currently written in a way that is specific to libc++, but it's really trying to test a property
+// of the test framework, which isn't libc++ specific.
+// REQUIRES: stdlib=libc++
+
// XFAIL: has-no-cxx-module-support
// Make sure that the compile flags contain the expected elements.
diff --git a/libcxx/test/libcxx/selftest/modules/std-module.sh.cpp b/libcxx/test/selftest/modules/std-module.sh.cpp
similarity index 82%
rename from libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
rename to libcxx/test/selftest/modules/std-module.sh.cpp
index ec43994fa1ef9..e96c1e64b7275 100644
--- a/libcxx/test/libcxx/selftest/modules/std-module.sh.cpp
+++ b/libcxx/test/selftest/modules/std-module.sh.cpp
@@ -10,6 +10,10 @@
// UNSUPPORTED: clang-modules-build
// UNSUPPORTED: gcc
+// TODO: This test is currently written in a way that is specific to libc++, but it's really trying to test a property
+// of the test framework, which isn't libc++ specific.
+// REQUIRES: stdlib=libc++
+
// XFAIL: has-no-cxx-module-support
// Make sure that the compile flags contain the expected elements.
diff --git a/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp b/libcxx/test/selftest/modules/std.compat-module.sh.cpp
similarity index 82%
rename from libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
rename to libcxx/test/selftest/modules/std.compat-module.sh.cpp
index e84709853fbca..4ec0ad8323d8d 100644
--- a/libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
+++ b/libcxx/test/selftest/modules/std.compat-module.sh.cpp
@@ -10,6 +10,10 @@
// UNSUPPORTED: clang-modules-build
// UNSUPPORTED: gcc
+// TODO: This test is currently written in a way that is specific to libc++, but it's really trying to test a property
+// of the test framework, which isn't libc++ specific.
+// REQUIRES: stdlib=libc++
+
// XFAIL: has-no-cxx-module-support
// Make sure that the compile flags contain the expected elements.
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