From 910300bcb2a464dcd7e1a9347d66250b71a484c5 Mon Sep 17 00:00:00 2001 From: Chun-wei Fan Date: Wed, 26 Oct 2016 13:22:48 +0800 Subject: [PATCH] build/Makefile.msvcproj: Add rules for MSVC 2013 to be baseline version GTK+-3.89.0 and later will require C99 features that is only supported on Visual Studio 2013 and later, so prepare build/Makefile.msvcproj for this. We still keep the 2008~2010 stuff here as this strives to be a shared module, and there are projects using this that still supports building on pre-2013 Visual Studio. --- build/Makefile.msvcproj | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/build/Makefile.msvcproj b/build/Makefile.msvcproj index f127eea516..2a2dd89ab7 100644 --- a/build/Makefile.msvcproj +++ b/build/Makefile.msvcproj @@ -109,6 +109,39 @@ $(top_builddir)/build/win32/vs9/$(1).headers: Makefile esac; \ done +$(top_builddir)/build/win32/vs12/$(1).vcxproj.filters: $(top_builddir)/build/win32/vs12/$(1).vcxproj + +$(top_builddir)/build/win32/vs12/$(1).vcxproj: Makefile + -$(RM) $(top_builddir)/build/win32/vs14/$(1).vcxproj + -$(RM) $(top_builddir)/build/win32/vs14/$(1).vcxproj.filters + + for F in $(_proj_files); do \ + case $$$$F in \ + $(_proj_filters)) \ + ;; \ + *.c|*.cpp|*.cc|*.cxx) \ + echo ' ' >>$(1).vs12.sourcefiles && \ + echo ' Source Files' >>$(1).vs12.sourcefiles.filters \ + ;; \ + esac; \ + done + + $(CPP) -P - <$(top_srcdir)/build/win32/vs12/$(1).vcxprojin >$(top_builddir)/build/win32/vs12/$(1).vcxproj + $(CPP) -P - <$(top_srcdir)/build/win32/vs12/$(1).vcxproj.filtersin >$(top_builddir)/build/win32/vs12/$(1).vcxproj.filters + +$(top_builddir)/build/win32/vs12/$(1).vs12.headers: Makefile + -$(RM) $(top_builddir)/build/win32/vs12/$(1).vs12.headers + + for F in $(_proj_headers); do \ + case $$$$F in \ + $(_proj_headers_excludes)) \ + ;; \ + *.h|*.hpp|*.hh|*.hxx) \ + echo 'copy ..\..\..'$(_proj_subdir)$$$$F' $$$$(CopyDir)\include'$(_headers_destdir)'\'$$$$F >>$(top_builddir)/build/win32/vs12/$(1).vs12.headers \ + ;; \ + esac; \ + done + endef $(foreach proj,$(MSVCPROJS),$(eval $(call msvcproj-builder,$(proj))))