New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Win32: Restore Windows XP Compatibility #424
Conversation
By setting WINVER=0x0501 (Windows XP) in CMakeLists.txt and adding a few missing defines in guiwin.cpp and configuring OPENGL=1 in CMake Solvespace (3.0~25b6eba1) compiles and works perfectly on Windows XP. Tested with MinGW GCC-6.3.0-1
Ruevski seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
Thanks. I believe there are two issues:
|
1. That is why I had to #define some of the already used Win7 level macros in Changing the define should not change the resulting binary. To prove this I just did an experiment by using -DWINVER=0x0502
-D_WIN32_WINNT=0x0502 instead of Of course the high DPI API is Win7+ (and thus I had to define 2. It is understandable that maintaining two rendering front ends is a PITA and extra work. I also understand the porting advantages of using Angle. So I will understand if you eventually deprecate OPENGL=1 and allow However for now it works and I am happy that I can use Solvespace master HEAD under XP again. By the way Firefox until version 52.9.0 ERS does work with Angle under XP (it is not easy to figure out how exactly they configured it) so this proves that your Angle approach is feasible. |
I looked at it again and it's a reasonable workaround. Thanks.
The problem is that the way ANGLE is built right now always pulls in D3D11 headers. I think I didn't translate its build system to CMake correctly, but I never found time to investigate. |
Thanks for merging it! |
By setting WINVER=0x0501 (Windows XP) in CMakeLists.txt and adding a few
missing defines in guiwin.cpp and configuring OPENGL=1 in CMake
Solvespace (3.0~25b6eba1) compiles and works perfectly on Windows XP.
Tested with MinGW GCC-6.3.0-1
solvespace_WinXP_3.0_25b6eba1.zip