[all-commits] [llvm/llvm-project] 516882: [libcxx] [test] Prepare the ctime.timespec test fo...

Martin Storsjö via All-commits all-commits at lists.llvm.org
Wed Dec 22 05:17:49 PST 2021

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 516882a8f23b36c925ad8be89846bfa36915ce73
  Author: Martin Storsjö <martin at martin.st>
  Date:   2021-12-22 (Wed, 22 Dec 2021)

  Changed paths:
    M libcxx/test/std/language.support/support.runtime/ctime.timespec.compile.pass.cpp

  Log Message:
  [libcxx] [test] Prepare the ctime.timespec test for mingw CI env upgrades

The test is currently marked XFAIL for mingw environments, but latest
mingw-w64 got support for timespec_get:

The CI environment will probably be upgraded to a state where this
test is passing only after 14.x is branched in the llvm-project monorepo.

If we'd just go from having an XFAIL to no marking at all (when CI is
passing), we'd have to update both main and 14.x branches in sync
exactly when the CI runners are updated to a newer version.

Instead, mark the test as temporarily unsupported (so it doesn't
cause failed builds when the CI environment is updated); after the
CI environments are upgraded to such a state, we can remove the
UNSUPPORTED marking to start requiring it to pass on the main branch,
without needing to synchronize that change to anything else.

Differential Revision: https://reviews.llvm.org/D116132

  Commit: fd64544fbe0a4c0ed5d6d0cdda3945aacf7e9593
  Author: Martin Storsjö <martin at martin.st>
  Date:   2021-12-22 (Wed, 22 Dec 2021)

  Changed paths:
    M libcxx/utils/libcxx/test/config.py

  Log Message:
  [libcxx] [test] Remove a leftover unused function in config.py. NFC.

While there's little value in polishing the old config system,
I ran into this function and was confused for a while, while grepping
around and trying to wrap my head around things.

Differential Revision: https://reviews.llvm.org/D116131

  Commit: 7176799a7e196fa41046f9c77ebd65335b339acd
  Author: Martin Storsjö <martin at martin.st>
  Date:   2021-12-22 (Wed, 22 Dec 2021)

  Changed paths:
    M libcxx/test/configs/cmake-bridge.cfg.in
    A libcxx/test/configs/llvm-libc++-mingw.cfg.in
    A libcxx/test/configs/llvm-libc++-shared-clangcl.cfg.in
    A libcxx/test/configs/llvm-libc++-static-clangcl.cfg.in
    M libcxx/utils/ci/run-buildbot

  Log Message:
  [libc++] Add from-scratch testing configs for Windows

The paths to the compiler and to the python executable may need to
be quoted (if they're installed into e.g. C:\Program Files).

All testing commands that are executed expect a gcc compatible command
line interface, while clang-cl uses different command line options.
In the original testing config, if the chosen compiler was clang-cl, it
was replaced with clang++ by looking for such an executable in the path.

For the new from-scratch test configs, I instead chose to add
"--driver-mode=g++" to flags - invoking "clang-cl --driver-mode=g++"
has the same effect as invoking "clang++", without needing to run any
heuristics for picking a different compiler executable.

Differential Revision: https://reviews.llvm.org/D111202

Compare: https://github.com/llvm/llvm-project/compare/e7c48f3cd5eb...7176799a7e19

More information about the All-commits mailing list