Edit:
Ignore the post! The include order is messed up in the base file. The preexisting spaghetti code threw me for a loop earlier: it doesn’t set up the definitions until after it tries to include the files that need them in the same file that defines them. Why I didn’t see it before is beyond me. Fixing now.
End edit!
Yep, CMake is correctly setting things up properly:
Run mkdir builddir; cmake -G "Visual Studio 17 2022" -B builddir
mkdir builddir; cmake -G "Visual Studio 17 2022" -B builddir
shell: C:\Program Files\PowerShell\7\pwsh.EXE -command ". '{0}'"
Directory: D:\a\MWEdit\MWEdit
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 3/28/2026 7:47 AM builddir
-- The C compiler identification is MSVC 19.44.35225.0
-- The CXX compiler identification is MSVC 19.44.35225.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Enterprise/VC/Tools/MSVC/14.44.35207/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for MFC
-- Looking for MFC - found
-- Could NOT find DevIL (missing: IL_LIBRARIES ILU_LIBRARIES IL_INCLUDE_DIR)
-- Configuring done (21.0s)
-- Generating done (0.0s)
-- Build files have been written to: D:/a/MWEdit/MWEdit/builddir
And
MSBuild version 17.14.40+3e7442088 for .NET Framework
Here’s the new log file after that playing about with the conditionals: https://github.com/deathssoul/MWEdit/actions/runs/23680640909/job/68991840433
Didn’t seem to change anything.
This would be easier to diagnose using a local VS install but my system is no longer able to run Windows.
I added the _WIN32 macro to the definition list in CMake to no avail. I have no idea what’s going on. It was working before I added the includes so that operation clearly broke something.
