tests: add support to test cross-compiled via Windows Subsystem for Linux (WIP) #3899
This enables the use of Windows Subsystem for Linux to run the
This PR introduces the following environment variables:
Later testcurl.pl could be adjusted to make use of those variables.
This will use .exe variants for the curl tool and the test servers, but not for OpenSSH commands and therefore enables testing Windows curl against known good Linux OpenSSH (instead of a Windows port).
@bagder Any thoughts about the structure of this? I am still thinking about a better approach to specify the executable extension for different parts of the testsuite, e.g. via additional runtests.pl and testcurl.pl parameters.
Finally I would also like to achieve the possibility of compiling the test servers for Linux while the rest is still cross-compiled so that the Windows build of curl could be tested against test servers that do not include crazy Windows workarounds. A solution which I haven't tested yet, could be to run ./configure twice, once for Linux and once for Windows and then only making the servers for Linux.
I think the idea is fine. It is possibly a bit icky for users to have to set multiple long environment variables to get it going, but it also seems like a rather edge use case so I doubt we will see wide adoption and use of this.
I don't run/use Windows myself. I can't comment on the specifics as I haven't tested this.
This enables the use of Windows Subsystem for Linux (WSL) to run the testsuite against Windows binaries while using Linux servers. This commit introduces the following environment variables: - CURL_TEST_EXE_EXT: set the executable extension for all components - CURL_TEST_EXE_EXT_TOOL: set it for the curl tool only - CURL_TEST_EXE_EXT_SSH: set it for the SSH tools only Later testcurl.pl could be adjusted to make use of those variables. - CURL_TEST_EXE_EXT_SRV: set it for the test servers only (This is one of several commits to support use of WSL for the tests.) Closes #3899