mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-16 21:50:34 +00:00
ba4e2a775c
Update the autotools scripts to support Visual Studio 2017 builds by copying the Visual Studio 2013 projects and updateing the items as necessary to obtain the Visual Studio 2017 projects. Note that the format of the toolset string changed, so allow one to pass in and thus use a custom toolset string, otherwise the default toolset string will be generated as it was before. Note also the Visual Studio 2017 aims to be compatible with Visual Studio 2015 on the CRT level, so binaries built with 2017 should work without problems with the binaries built with 2015.
56 lines
2.7 KiB
Plaintext
56 lines
2.7 KiB
Plaintext
# Centralized autotools file
|
|
# Create the Visual Studio 2012/2013/2015 project files
|
|
# from the Visual Studio 2010 project files
|
|
|
|
# This autotools file, from GLib, can be used in other projects
|
|
# that have Visual Studio build support.
|
|
|
|
# Author: Fan, Chun-wei
|
|
# November 05, 2012
|
|
|
|
# MSVC_BASE_VER: Baseline MSVC 201x version to copy/process project files from (100 for 2010, 120 for 2013)
|
|
# MSVC_BASE_VER_LONG: Long Version of baseline Visual Studio 201x version (2010, 2012, 2013, 14, 15)
|
|
# MSVC_BASE_TOOLSET: Use if baseline MSVC toolset is not in the form v$(MSVC_BASE_VER)0, meaning v$(MSVC_BASE_TOOLSET)
|
|
# MSVC_VER_LONG: Long Version of target Visual Studio (2012, 2013, 14 and so on)
|
|
# MSVC_VER: Short Version of target Visual Studio (110 for 2012, 120 for 2013, 140 for 2015, 141 for 2017)
|
|
# MSVC_TOOLSET: Use if target MSVC toolsett is not in the form v $(MSVC_VER)0, meaning v$(MSVC_TOOLSET)
|
|
|
|
if MSVC_BASE_NO_TOOLSET_SET
|
|
MSVC_BASE_TOOLSET = $(MSVC_BASE_VER)0
|
|
endif
|
|
|
|
if MSVC_NO_TOOLSET_SET
|
|
MSVC_TOOLSET = $(MSVC_VER)0
|
|
endif
|
|
|
|
%.sln:
|
|
sed 's/11\.00/12\.00/g' < $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp
|
|
sed 's/$(MSVC_BASE_VER_LONG)/$(MSVC_VER_LONG)/g' < $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/win32/vs$(MSVC_VER)/$@
|
|
rm $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp
|
|
|
|
%.txt:
|
|
sed 's/vs$(MSVC_BASE_VER)/vs$(MSVC_VER)/g' < $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp
|
|
sed 's/VS$(MSVC_BASE_VER)/VS$(MSVC_VER)/g' < $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp > $(top_builddir)/win32/vs$(MSVC_VER)/$@
|
|
rm $(top_builddir)/win32/vs$(MSVC_VER)/$@.tmp
|
|
|
|
%.vcxproj:
|
|
if test -e $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@; then \
|
|
sed 's/v$(MSVC_BASE_TOOLSET)/v$(MSVC_TOOLSET)/g' < $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
else \
|
|
sed 's/v$(MSVC_BASE_TOOLSET)/v$(MSVC_TOOLSET)/g' < $(top_builddir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
fi
|
|
|
|
%.props: $(top_builddir)/win32/vs$(MSVC_BASE_VER)/Makefile
|
|
if test -e $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@; then \
|
|
sed 's/<VSVer>$(MSVC_BASE_VER)<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
else \
|
|
sed 's/<VSVer>$(MSVC_BASE_VER)<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_builddir)/win32/vs$(MSVC_BASE_VER)/$@ > $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
fi
|
|
|
|
%.vcxproj.filters:
|
|
if test -e $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@; then \
|
|
cp $(top_srcdir)/win32/vs$(MSVC_BASE_VER)/$@ $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
else \
|
|
cp $(top_builddir)/win32/vs$(MSVC_BASE_VER)/$@ $(top_builddir)/win32/vs$(MSVC_VER)/$@; \
|
|
fi
|