Hi Ævar, you did not even give me a chance to send my reply to your original mail ;-) On Tue, 18 Oct 2022, Ævar Arnfjörð Bjarmason wrote: > > On Tue, Oct 18 2022, Johannes Schindelin via GitGitGadget wrote: > > > From: Johannes Schindelin > > > > In 7f5397a07c6c (cmake: support for testing git when building out of the > > source tree, 2020-06-26), we implemented support for running Git's test > > scripts even after building Git in a different directory than the source > > directory. > > > > The way we did this was to edit the file `t/test-lib.sh` to override > > `GIT_BUILD_DIR` to point somewhere else than the parent of the `t/` > > directory. > > > > This is unideal because it always leaves a tracked file marked as > > modified, and it is all too easy to commit that change by mistake. > > > > Let's change the strategy by teaching `t/test-lib.sh` to detect the > > presence of a file called `GIT-BUILD-DIR` in the source directory. If it > > exists, the contents are interpreted as the location to the _actual_ > > build directory. We then write this file as part of the CTest > > definition. > > > > To support building Git via a regular `make` invocation after building > > it using CMake, we ensure that the `GIT-BUILD-DIR` file is deleted (for > > convenience, this is done as part of the Makefile rule that is already > > run with every `make` invocation to ensure that `GIT-BUILD-OPTIONS` is > > up to date). > > > > Signed-off-by: Johannes Schindelin > > Re my earlier feedback, I came up with this as an alternative, which > nicely allows us to have "cmake" and "make" play together, you can even > run them concurrently!: > > https://github.com/avar/git/commit/30f2265fd07aee97ea66f6e84a824d85d241e245 This approach _still_ modifies the `test-lib.sh`, which is the entire reason for the patch under review. I hope you find an elegant, user-friendly alternative that leaves `test-lib.sh` unmodified even when building via CMake. I would gladly take that and drop my `GIT-BUILD-DIR` patch. Ciao, Johannes