Reuben Thomas wrote: > Also it would be nice to have some advice on what to use instead. Bruno > outlined to me that there are at least 3 options for developing for MinGW: > > 1. Cross-compile from GNU/Linux, use WINE to run compiled programs. > 2. Use MSYS2 (but we don't like this) > 3. Use Cygwin with mingw packages
Yes, these are the three options that developers have, AFAIK. > My problem is that I'm trying to build and test portable packages on native > Windows. Therefore, option 1 is rather weak (it's not really testing on > Windows), option 2 is out because of MSYS2 problems, and it's not clear to > me that option 3 is going to work either. Of course, option 3 works! I use this way of building things for native Windows, for a dozen of GNU packages, and - have documented it as the recommended way in the INSTALL.windows file of many of these packages, - am using this approach in the CI of a dozen of GNU packages, including Gnulib [1] and GNU libunistring [2]. > (Another problem for me is that GitHub's continuous integration service > uses MSYS2. It uses an MSYS2-based 'git.exe' binary, yes. But for all the rest, you can install a Cygwin environment on the CI machine and do the build from within Cygwin. [3] Bruno [1] https://github.com/gnu-gnulib/ci-testdir-check/actions [2] https://github.com/gnu-libunistring/ci-check/actions [3] https://github.com/gnu-gnulib/ci-testdir-check/blob/1b7b5395e9b4afb090d6bf9b855c8d2f061a9b36/.github/workflows/many-platforms.yml#L691