Re: [PATCH] test-lib.sh: discover "git" in subdirs of "contrib/buildsystems/out"
- From
- Phillip Wood <phillip.wood123@gmail.com>
- Date
- Dec 2, 2022, 15:14 UTC
- Message-ID
- <87f22a55-ee84-2f76-7b9b-924a97f44f89@dunelm.org.uk>
- In-Reply-To
- <xmqq5yeuspam.fsf@gitster.g>
Hi Junio
On 01/12/2022 23:00, Junio C Hamano wrote:
Show 10 quoted lines
> Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes: > >>> Junio please drop this series when you rebuild next as it breaks >>> manually running individual test scripts when building with Visual >>> Studio. >> >> I think the issue you've spotted is easily fixed on top. See below. > > Smells more like papering over than fixed, but let's see how folks > who need cmake/ctest feel about it.
As MSVC uses different directories for debug and release builds there can be more than one build directory. I don't think selecting one of them at random using 'find' is a good idea.
Show 7 quoted lines
> Let's mark the series never to graduate to 'master' for now, > optionally revert it out of 'next'. > > Phillip, you asked about rebuilding 'next', which would not > happen until 2.39.0 final---did you mean reverting the topic out > of 'next'? Do you need 'next' without this topic, not just > 'master'?
I don't mind waiting but I'm not a Windows user. I only tested this topic under Windows because I knew Ævar had not and a quick web search for "MSVC CMake" made me worry it was broken.
I'm afraid I wont be spending anymore time on this topic. I had hoped that having the CMake build work under Linux would help developers avoid breaking it. However I'm concerned that if developers do not appreciate that there are differences between the Linux and Windows builds it will actually create a false sense of security and be used as an excuse not to properly test under Windows[1]. Recent events have confirmed my view that changes like this need the attention of someone with experience of Windows development and given that yesterday was the first time I'd used MSVC since about 1994 I do not fit that description.
In addition to the breakage I reported yesterday 623fde1438 (cmake: chmod +x the bin-wrappers/* & SCRIPT_{SH,PERL} & git-p4, 2022-11-03) causes CMake older that 3.19 to error out when run from MSVC because chmod does not exist on Windows. Also when running 'ctest' on "next" I see tests failing because they cannot find 'test-tool' (I haven't tried running the failing tests manually)
Best Wishes
Phillip
[1] While our CI helps the MSVC job runs CMake manually, performs an in-tree build and does not use ctest. In contrast a user running the MSVC GUI does not run CMake themselves, ends up with an out-of-tree build and runs the tests with ctest.
> I'll then wait for something both camps (you and folks on Visual > Studio?) can agree on to requeue. > > Thanks.