Cleanup Visual Studio project files a bit
Hi,
This attempts to update and clean up the Visual Studio project files in regards to installing the build results, by:
- Splitting out the sources listings for GdkWin32, GdkBroadway, libgtk and libgail-util, so that we will no longer need to use a
dist-hook
to generate the property sheets that we use for installing the build results. - Use an NMake Makefile so that we can accomplish the above, and make the project files call the NMake Makefile as needed, which will reduce repetition in the Visual Studio build files, and remove some items from the autotools build files.
- Makes updating the project files easier as a result.
- Drop two property sheets where we could integrate what they did into the project file that uses them by using MSBuild trickery, i.e. the
Condition=
directives, for Visual Studio 2010 and later. - Make the Visual Studio 2010+ property sheets shared instead of copying them during
make dist
. - At the time of writing, update the VS2010+ project templates (
*.vcxprojin
) to remove repetitive items, and distinguish between platform- and/or configuration-specific settings using MSBuild trickery, i.e. theCondition=
directives. - Use the source listings that were split out in the NMake Makefiles so that we can have the build rules to build the introspection files purely via NMake without needing the autotools
dist-hook
to generate the rules and file listings needed for introspection. Drop the related autotoolsdist-hook
bits as a result. In regards to Visual Studio, thedist-hook
bits are now used to generate the full project files where there are templates being used (i.e.*.vc[x]projin
->*.vc[x]proj
and*.vcxproj.filtersin
->*.vcxproj.filters
Please note that this is an one-on-one replacement for the existing property sheet-based installation methods, plus a copy of the built <libname>-3.0.lib
to <libname>-3.lib
to better conform to the Meson and other autotools build. Other enhancements and additions will come in subsequent MRs
With blessings, thank you!
Edited by Chun-wei Fan