README.win32.md: Mention about Window 8+ SDK requirement

This release series of GLib began using features that are provided in
the Windows 8 SDK and later for Visual Studio builds.  This also means
that it is no longer possible to build GLib with Visual Studio 2008 nor
2010 since the Windows 8+ SDKs do not work with those compiler versions.

Mention that people that still need to use those Visual Studio versions
should continue sticking on to glib-2.66.x, and so remove the section
about the workarounds that need to be applied for Visual Studio 2008
builds, since they are no longer applicable.
This commit is contained in:
Chun-wei Fan 2021-02-27 10:32:14 +08:00 committed by Sebastian Dröge
parent 47a949d74f
commit 22291ce82e

View File

@ -161,22 +161,9 @@ To overcome this problem, please set your system's locale setting for non-Unicod
English (United States), reboot, and restart the build, and the code should build English (United States), reboot, and restart the build, and the code should build
normally. normally.
### Visual Studio 2008 hacks ### Support for pre-2012 Visual Studio
- You need to run the following lines from your build directory, to embed the This release of GLib requires at least the Windows 8 SDK in order to be built
manifests that are generated during the build, assuming the built binaries successfully using Visual Studio, which means that it is no longer supported to
are installed to `$(PREFIX)`, after a successful build/installation: build GLib with Visual Studio 2008 nor 2010. People that still need to use
Visual Studio 2008 or 2010 should continue to use glib-2.66.x.
```cmd
> for /r %f in (*.dll.manifest) do if exist $(PREFIX)\bin\%~nf mt /manifest %f $(PREFIX)\bin\%~nf;2
> for /r %f in (*.exe.manifest) do if exist $(PREFIX)\bin\%~nf mt /manifest %f $(PREFIX)\bin\%~nf;1
```
- If building for amd64/x86_64/x64, sometimes the compilation of sources may seem to hang, which
is caused by an optimization issue in the 2008 x64 compiler. You need to use Task Manager to
remove all running instances of `cl.exe`, which will cause the build process to terminate. Update
the build flags of the sources that hang on compilation by changing its `"/O2"` flag to `"/O1"`
in `build.ninja`, and retry the build, where things should continue to build normally. At the
time of writing, this is needed for compiling `glib/gtestutils.c`, `gio/gsettings.c`,
`gio/gsettingsschema.c` and `gio/tests/gsubprocess-testprog.c`