As part of the CMake definition, Git enjoy support for running the test suite via CTest. In https://github.com/git-for-windows/git/issues/3966, it has been reported that this does not work out of the box, though, but causes a couple of test failures instead. These problems are not caught by Git's CI runs because the vs-tests jobs actually use prove to run the test suite, not CTest. In addition to fixing these problems, this patch series also addresses a long-standing gripe I have with the way Git's CMake definition supports CTest: It edits t/test-lib.sh, which leaves this file eternally modified (but these modification should never be committed, they refer to a local-only, configuration-dependent directory). Johannes Schindelin (5): cmake: align CTest definition with Git's CI runs cmake: copy the merge tools for testing tests: explicitly skip `chmod` calls on Windows add -p: avoid ambiguous signed/unsigned comparison cmake: avoid editing t/test-lib.sh .gitignore | 1 + Makefile | 1 + add-patch.c | 2 +- contrib/buildsystems/CMakeLists.txt | 12 ++++-------- t/test-lib-functions.sh | 10 ++++++++-- t/test-lib.sh | 11 ++++++++++- 6 files changed, 25 insertions(+), 12 deletions(-) base-commit: bbea4dcf42b28eb7ce64a6306cdde875ae5d09ca Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1320%2Fdscho%2Fctest-on-windows-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1320/dscho/ctest-on-windows-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/1320 -- gitgitgadget