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





Reply via email to