The mingw64 cross compiler lacks support at least for "std:future" 
feature in C++ (https://sourceforge.net/p/mingw-w64/bugs/959/). Debian offers a 
"posix" variant which implements it.

https://sourceforge.net/p/mingw-w64/bugs/959/ describes the problem.

https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/gcc-mingw-w64-base.README.Debian
 explains that there is also a "-posix" variant of the cross compiler 
toolchain which *has* support for the relevant features.

It turned it we can use the "-posix" variant quite easily and so 
compilation of Scintilla works again.
We need to use the C++ runtime library from the compiler toolchain to be 
included in the installer which we need to change in the Geany CI build script. 
Everything else seems to work out of the box.

An alternative approach could be to use 
https://github.com/meganz/mingw-std-threads which, AFAIU, will implement the 
missing features for the "-win32" variant of the cross compiler 
toolchain. Though I couldn't get Scintilla compile against these headers. 
Either it doesn't work or I did it wrong.
You can view, comment on, or merge this pull request online at:

  https://github.com/geany/infrastructure/pull/11

-- Commit Summary --

  * Builders: Use "posix" variant of the mingw64 cross compiler

-- File Changes --

    M builders/Dockerfile.mingw64 (8)

-- Patch Links --

https://github.com/geany/infrastructure/pull/11.patch
https://github.com/geany/infrastructure/pull/11.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/geany/infrastructure/pull/11
You are receiving this because you are subscribed to this thread.

Message ID: <geany/infrastructure/pull/1...@github.com>

Reply via email to