[gtk+] Build: Provide Simple Support for MSVC 2012/2013



commit e3f8b8774150ed2125ac8783a08ecb3a285fa322
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Tue Jul 1 16:17:43 2014 +0800

    Build: Provide Simple Support for MSVC 2012/2013
    
    As the Visual Studio 2012/2013 are only slightly different from the Visual
    Studio 2010 projects, we can provide support for them by using scripts to
    copy the Visual Studio 2010 projects, and update the specific parts as
    necessary.
    
    Thus, there would be little maintenance overhead for these as only the 2010
    projects need to be kept up-to-date as a result.  This might change when we
    do get the stack working with WinRT/Metro, but that's going to be another
    totally different issue.

 build/Makefile-newvs.am      |   37 ++++++++++++++++++++++++++++++++++++
 build/win32/Makefile.am      |   10 +++++---
 build/win32/vs11/Makefile.am |   43 ++++++++++++++++++++++++++++++++++++++++++
 build/win32/vs12/Makefile.am |   43 ++++++++++++++++++++++++++++++++++++++++++
 configure.ac                 |    2 +
 5 files changed, 131 insertions(+), 4 deletions(-)
---
diff --git a/build/Makefile-newvs.am b/build/Makefile-newvs.am
new file mode 100644
index 0000000..e63b15f
--- /dev/null
+++ b/build/Makefile-newvs.am
@@ -0,0 +1,37 @@
+# Centralized autotools file
+# Create the Visual Studio 2012/2013 project files
+# from the Visual Studio 2010 project files
+
+# Author: Fan, Chun-wei
+# November 05, 2012
+
+# MSVC_SLN: name of root project
+
+MSVC_FORMAT_VER=$(shell echo $$(expr $(MSVC_VER) + 1))
+
+$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln create_vcxproj copy_filters create_props
+       cat $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 
's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$(MSVC_SLN).sln
+
+README.txt: $(top_srcdir)/build/win32/vs10/README.txt
+       cat $(top_srcdir)/build/win32/vs10/README.txt | sed 's/vs10/vs$(MSVC_VER)/g' | sed 
's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/README.txt
+
+create_vcxproj:
+       for F in `(cd $(top_builddir)/build/win32/vs10 && ls *.vcxproj)`; do \
+               case $$F in \
+                       *)      cat $(top_builddir)/build/win32/vs10/$$F | sed 's/v100/v$(MSVC_VER)0/g' > 
$(top_builddir)/build/win32/vs$(MSVC_VER)/$$F \
+                       ;; \
+               esac; \
+       done
+
+create_props:
+       for F in `(cd $(top_builddir)/build/win32/vs10 && ls *.props)`; do \
+               case $$F in \
+                       *)      cat $(top_builddir)/build/win32/vs10/$$F | sed 
's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$$F \
+                       ;; \
+               esac; \
+       done
+
+copy_filters:
+       cp  $(top_srcdir)/build/win32/vs10/*.vcxproj.filters $(top_builddir)/build/win32/vs$(MSVC_VER)/
+
+
diff --git a/build/win32/Makefile.am b/build/win32/Makefile.am
index 0cc71e8..b72d35d 100644
--- a/build/win32/Makefile.am
+++ b/build/win32/Makefile.am
@@ -1,8 +1,10 @@
 include $(top_srcdir)/Makefile.decl
 
-SUBDIRS = \
-       crypt \
-       vs9  \
-       vs10
+SUBDIRS =      \
+       crypt   \
+       vs9     \
+       vs10    \
+       vs11    \
+       vs12
 
 -include $(top_srcdir)/git.mk
diff --git a/build/win32/vs11/Makefile.am b/build/win32/vs11/Makefile.am
new file mode 100644
index 0000000..48d7bf5
--- /dev/null
+++ b/build/win32/vs11/Makefile.am
@@ -0,0 +1,43 @@
+include $(top_srcdir)/Makefile.decl
+
+EXTRA_DIST +=  \
+       README.txt      \
+       gtk+.sln        \
+       gtk-prebuild.vcxproj    \
+       gdk-win32.vcxproj       \
+       gdk-win32.vcxproj.filters       \
+       gdk.vcxproj     \
+       gdk.vcxproj.filters     \
+       gtk.vcxproj     \
+       gtk.vcxproj.filters     \
+       gtk3-demo.vcxproj       \
+       gtk3-demo.vcxproj.filters       \
+       gtk3-demo-application.vcxproj   \
+       gtk3-demo-application.vcxproj.filters   \
+       gtk-inspector.vcxproj   \
+       gtk-inspector.vcxproj.filters   \
+       gailutil.vcxproj        \
+       gailutil.vcxproj.filters        \
+       install.vcxproj \
+       broadwayd.vcxproj       \
+       broadwayd.vcxproj.filters       \
+       gdk-broadway.vcxproj    \
+       gdk-broadway.vcxproj.filters    \
+       gtk-build-defines.props \
+       gtk-copy-gdk-broadway.props     \
+       gtk-gen-srcs.props      \
+       gtk-ignore-broadway.props       \
+       gtk-install.props       \
+       gtk-version-paths.props
+
+DISTCLEANFILES = $(EXTRA_DIST)
+
+MSVC_SLN = gtk+
+
+MSVC_VER = 11
+
+MSVC_VER_LONG = 2012
+
+include $(top_srcdir)/build/Makefile-newvs.am
+
+-include $(top_srcdir)/git.mk
diff --git a/build/win32/vs12/Makefile.am b/build/win32/vs12/Makefile.am
new file mode 100644
index 0000000..ec7f812
--- /dev/null
+++ b/build/win32/vs12/Makefile.am
@@ -0,0 +1,43 @@
+include $(top_srcdir)/Makefile.decl
+
+EXTRA_DIST +=  \
+       README.txt      \
+       gtk+.sln        \
+       gtk-prebuild.vcxproj    \
+       gdk-win32.vcxproj       \
+       gdk-win32.vcxproj.filters       \
+       gdk.vcxproj     \
+       gdk.vcxproj.filters     \
+       gtk.vcxproj     \
+       gtk.vcxproj.filters     \
+       gtk3-demo.vcxproj       \
+       gtk3-demo.vcxproj.filters       \
+       gtk3-demo-application.vcxproj   \
+       gtk3-demo-application.vcxproj.filters   \
+       gtk-inspector.vcxproj   \
+       gtk-inspector.vcxproj.filters   \
+       gailutil.vcxproj        \
+       gailutil.vcxproj.filters        \
+       install.vcxproj \
+       broadwayd.vcxproj       \
+       broadwayd.vcxproj.filters       \
+       gdk-broadway.vcxproj    \
+       gdk-broadway.vcxproj.filters    \
+       gtk-build-defines.props \
+       gtk-copy-gdk-broadway.props     \
+       gtk-gen-srcs.props      \
+       gtk-ignore-broadway.props       \
+       gtk-install.props       \
+       gtk-version-paths.props
+
+DISTCLEANFILES = $(EXTRA_DIST)
+
+MSVC_SLN = gtk+
+
+MSVC_VER = 12
+
+MSVC_VER_LONG = 2013
+
+include $(top_srcdir)/build/Makefile-newvs.am
+
+-include $(top_srcdir)/git.mk
diff --git a/configure.ac b/configure.ac
index 85041e9..9c09aa8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1873,6 +1873,8 @@ build/win32/Makefile
 build/win32/crypt/Makefile
 build/win32/vs9/Makefile
 build/win32/vs10/Makefile
+build/win32/vs11/Makefile
+build/win32/vs12/Makefile
 gdk/Makefile
 gdk/broadway/Makefile
 gdk/x11/Makefile


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]