Add autotools scripts to create VS2012 projects

As the project file format for Visual Studio 2012 is only slightly
different from Visual Studio 2010 projects, we can provide support for
building GLib (and other projects) with Visual Studio 2012 with relatively
little effort.  This might change when we eventually get GLib to work with
the Windows 8 (Modern UI/formerly Metro) APIs, but this will suffice for
the time being for people needing to build GLib with Visual Studio 2012.

Basically all that needs to be done at 'make dist' is:
-Copy the .sln/.props/README.txt/.vcxproj files and replace the VS2010
 stuff with VS2012 stuff
-Copy the .vcxproj.filters as is
This commit is contained in:
Chun-wei Fan 2012-11-19 12:58:55 +08:00
parent 269f890474
commit 76cecf061b
4 changed files with 99 additions and 0 deletions

32
build/Makefile-newvs.am Normal file
View File

@ -0,0 +1,32 @@
# Centralized autotools file
# Create the Visual Studio 2012 from the
# Visual Studio 2010 project files
# Author: Fan, Chun-wei
# November 05, 2012
# MSVC_SLN: name of root project
VCXPROJ_FILES =
$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln create_vcxproj copy_filters
cat $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln | sed 's/11\.00/12\.00/g' | sed 's/2010/2012/g' > $(top_builddir)/build/win32/vs11/$(MSVC_SLN).sln
$(MSVC_SLN).props: $(top_builddir)/build/win32/vs10/$(MSVC_SLN).props
cat $(top_builddir)/build/win32/vs10/$(MSVC_SLN).props | sed 's/10/11/g' > $(top_builddir)/build/win32/vs11/$(MSVC_SLN).props
README.txt: $(top_srcdir)/build/win32/vs10/README.txt
cat $(top_srcdir)/build/win32/vs10/README.txt | sed 's/vs10/vs11/g' | sed 's/VS10/VS11/g' > $(top_builddir)/build/win32/vs11/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/v110/g' > $(top_builddir)/build/win32/vs11/$$F \
;; \
esac; \
done
copy_filters:
cp $(top_builddir)/build/win32/vs10/*.vcxproj.filters $(top_builddir)/build/win32/vs11/

30
build/win32/vs11/.gitignore vendored Normal file
View File

@ -0,0 +1,30 @@
gio.vcxproj
gio.vcxproj.filters
glib-compile-resources.vcxproj
glib-compile-resources.vcxproj.filters
glib-compile-schemas.vcxproj
glib-compile-schemas.vcxproj.filters
glib-genmarshal.vcxproj
glib-genmarshal.vcxproj.filters
glib.vcxproj
glib.vcxproj.filters
gmodule.vcxproj
gmodule.vcxproj.filters
gobject.vcxproj
gobject.vcxproj.filters
gresource.vcxproj
gresource.vcxproj.filters
gsettings.vcxproj
gsettings.vcxproj.filters
gspawn-win32-helper-console.vcxproj
gspawn-win32-helper-console.vcxproj.filters
gspawn-win32-helper.vcxproj
gspawn-win32-helper.vcxproj.filters
gthread.vcxproj
gthread.vcxproj.filters
testglib.vcxproj
testglib.vcxproj.filters
install.vcxproj
glib.props
glib.sln
README.txt

View File

@ -0,0 +1,36 @@
EXTRA_DIST = \
README.txt \
glib.sln \
glib.props \
glib.vcxproj \
glib.vcxproj.filters \
glib-genmarshal.vcxproj \
glib-genmarshal.vcxproj.filters \
gspawn-win32-helper-console.vcxproj \
gspawn-win32-helper-console.vcxproj.filters \
gspawn-win32-helper.vcxproj \
gspawn-win32-helper.vcxproj.filters \
gmodule.vcxproj \
gmodule.vcxproj.filters \
gobject.vcxproj \
gobject.vcxproj.filters \
gthread.vcxproj \
gthread.vcxproj.filters \
gio.vcxproj \
gio.vcxproj.filters \
testglib.vcxproj \
testglib.vcxproj.filters \
glib-compile-schemas.vcxproj \
glib-compile-schemas.vcxproj.filters \
gsettings.vcxproj \
gsettings.vcxproj.filters \
glib-compile-resources.vcxproj \
glib-compile-resources.vcxproj.filters \
gresource.vcxproj \
gresource.vcxproj.filters \
install.vcxproj
MSVC_SLN = glib
include $(top_srcdir)/build/Makefile-newvs.am

View File

@ -3604,6 +3604,7 @@ build/win32/Makefile
build/win32/dirent/Makefile
build/win32/vs9/Makefile
build/win32/vs10/Makefile
build/win32/vs11/Makefile
glib/Makefile
glib/glib.stp
glib/libcharset/Makefile