Am 28.02.2017 um 01:58 schrieb Yale Zhang:
"your patch would even require Windows 7?" Right, touch screen support will require Windows 7.
"I have honestly no idea about the stuff you're talking here..."
Are you familiar with cross compilers? All I'm saying is that I use a compiler that runs on GNU/Linux that builds binaries for Windows (MingW64). I run it inside a VirtualBox VM on Windows 10, but an alternate VM would Microsoft's UNIX emulation layer. I think a cross compiler environment might be a leaner alternative than using MSYS 2 because *doesn't need to use a separate bash and build tools adapted to Windows *builds will probably be faster (autotool builds are much slower on Windows in my experience)
Downsides would be: *need to build your own Windows packages. If you can install the MSYS 2 packages to your cross compile environment, that would solve the problem. *MSYS 2 packages might have gotten more love in terms of bug fixes *some packages run EXEs to generate code (e.g. tables, (de)serialization functions) but don't handle cross compiles properly.
I know what cross compilers are, but never really used them. As you note yourself: Somehow one would still have to obtain the necessary libraries (and I doubt it would be easy - if even possible - to use MSYS2's native packages for that?). Even then: I doubt having to install a VM could be considered "convenient" or "easy"? And if I wanted to use cross compile from Linux I could do that by using Linux from the start and be done with Windows after all instead of running it in a VM. ;-)
Regarding "Microsoft's UNIX emulation layer": You mean what Microsoft calls "Bash on Ubuntu on Windows" [1], right? In fact I did not have that on my radar (I read about it once and wasn't sure if it was an April Fools' joke :-D ). Just installed it and gave it a quick try... But still I guess it wouldn't solve the issue with obtaining the necessary dependencies? And after some initial evaluation it seems to be mostly undocumented... I don't see how this would really help us with building Inkscape? After all everything we need is readily offered by MSYS2, so why bother re-inventing the wheel?
The only advantage you quote are faster builds, but on my machine with MSYS2, CMake and Ninja I really can't complain. Inkscape builds in about 10-15 min on a dual-core notebook CPU (i7-6600U), I guess this is fair? In day-to-day work full rebuilds aren't necessary anyway and then it's only a matter of seconds...
If I'm totally missing something here let me know, but from my point of view there's not much to gain, especially as we're aiming for a solution that virtually everybody should be able to use...
Regards, Eduard