CTest: support for `REQUIRES_TESTS` test property
This would be a property which would list tests (or potentially using a syntax like CTEST_REGEX:regex
for regexes) to defer running a test until after the listed tests pass if they are in the current test set; tests that are not being run due to name or label exclusions can be considered "passing" for this purpose. A test with failing tests in this list can be considered SKIPPED. This can be used to gate more complicated tests on those which test a simpler version of it. For example, VTK could use it to have a test that checks whether an OpenGL context works at all. Then, any test doing rendering could depend on it to avoid failing for such a basic reason. Similar for loading Python modules and the like.