From a24c80dbc8632ce7c38f32f991c9998381c5de54 Mon Sep 17 00:00:00 2001 From: Chun-wei Fan Date: Tue, 21 Jan 2014 15:26:50 +0800 Subject: Rework The Visual Studio 2010 Build Process This patch makes the build of G-I on Visual Studio 2010 into a two-step process, as it would make it clearer and easier to the one building G-I by: -Splitting up the property sheets into multiple parts, where pre-configured code (which is currently shipped with the tarball) is copied using custom build steps, so that they can be re-copied when they are updated. This also removes the need for setting environment variables before launching the Visual Studio Project to build the G-I DLL, the tools written in C and the _giscanner Python2 module. The Python2 paths (set to Python 2.7.x) are now set in a property sheet, which can be updated quite easily, if needed. -Directing people to use the set of NMake Makefiles to build the introspection files for GLib, and also the .gir's that are shipped with G-I, which was added in a previous commit, as it would make it clearer what are needed to build the introspection files. --- Makefile-msvcproj.am | 4 +- build/win32/Makefile.am | 2 - build/win32/create_nonglib_gir.py | 72 ------ build/win32/gengir.bat | 284 ------------------------ build/win32/vs10/Makefile.am | 18 +- build/win32/vs10/README.txt | 39 +++- build/win32/vs10/_giscanner.vcxproj | 30 ++- build/win32/vs10/annotation.vcxproj | 14 +- build/win32/vs10/cmph-bdz-test.vcxproj | 8 +- build/win32/vs10/cmph.vcxprojin | 14 +- build/win32/vs10/everything.vcxproj | 201 ----------------- build/win32/vs10/everything.vcxproj.filters | 22 -- build/win32/vs10/foo.vcxproj | 8 +- build/win32/vs10/g-ir-compiler.vcxprojin | 16 +- build/win32/vs10/g-ir-generate.vcxproj | 8 +- build/win32/vs10/generate_typelibs.vcxproj | 103 --------- build/win32/vs10/gettype.vcxproj | 14 +- build/win32/vs10/gi-build-defines.props | 34 +++ build/win32/vs10/gi-extra-paths.props | 23 ++ build/win32/vs10/gi-gen-srcs.props | 36 +++ build/win32/vs10/gi-install.propsin | 42 ++++ build/win32/vs10/gi-prebuild.vcxproj | 146 ++++++++++++ build/win32/vs10/gi-version-paths.props | 58 +++++ build/win32/vs10/gimarshallingtests.vcxproj | 14 +- build/win32/vs10/gir.propsin | 228 ------------------- build/win32/vs10/girepository.vcxproj.filtersin | 3 + build/win32/vs10/girepository.vcxprojin | 36 ++- build/win32/vs10/glib-print.vcxproj | 8 +- build/win32/vs10/gobject-introspection.sln | 30 +-- build/win32/vs10/gtkfrob.vcxproj | 14 +- build/win32/vs10/install.vcxproj | 12 +- build/win32/vs10/regress.vcxproj | 14 +- build/win32/vs10/sletter.vcxproj | 14 +- build/win32/vs10/testinherit.vcxproj | 14 +- build/win32/vs10/utility.vcxproj | 14 +- 35 files changed, 557 insertions(+), 1040 deletions(-) delete mode 100644 build/win32/create_nonglib_gir.py delete mode 100644 build/win32/gengir.bat delete mode 100644 build/win32/vs10/everything.vcxproj delete mode 100644 build/win32/vs10/everything.vcxproj.filters delete mode 100644 build/win32/vs10/generate_typelibs.vcxproj create mode 100644 build/win32/vs10/gi-build-defines.props create mode 100644 build/win32/vs10/gi-extra-paths.props create mode 100644 build/win32/vs10/gi-gen-srcs.props create mode 100644 build/win32/vs10/gi-install.propsin create mode 100644 build/win32/vs10/gi-prebuild.vcxproj create mode 100644 build/win32/vs10/gi-version-paths.props delete mode 100644 build/win32/vs10/gir.propsin diff --git a/Makefile-msvcproj.am b/Makefile-msvcproj.am index f4dcd3cd..6e5b7962 100644 --- a/Makefile-msvcproj.am +++ b/Makefile-msvcproj.am @@ -182,8 +182,8 @@ $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gi-install.vspropsin >$@ rm ./build/win32/vs9/gir.vs9.install -./build/win32/vs10/gir.props: ./build/win32/vs10/gir.vs10.install $(top_srcdir)/build/win32/vs10/gir.propsin - $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gir.propsin >$@ +./build/win32/vs10/gi-install.props: ./build/win32/vs10/gir.vs10.install $(top_srcdir)/build/win32/vs10/gi-install.propsin + $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@ rm ./build/win32/vs10/gir.vs10.install GENERATED_MSVC_FILES = \ diff --git a/build/win32/Makefile.am b/build/win32/Makefile.am index f404aa16..0056ece1 100644 --- a/build/win32/Makefile.am +++ b/build/win32/Makefile.am @@ -4,8 +4,6 @@ EXTRA_DIST = \ annotation.def \ everything.def \ foo.def \ - gengir.bat \ - create_nonglib_gir.py \ gettype.def \ gimarshallingtests.def \ gtkfrob.def \ diff --git a/build/win32/create_nonglib_gir.py b/build/win32/create_nonglib_gir.py deleted file mode 100644 index e3df7148..00000000 --- a/build/win32/create_nonglib_gir.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/python -# -# Expand the bundled *.gir.in files -# for use in Visual C++ builds of G-I -# -# Author: Fan, Chun-wei -# Date: January 21, 2013 -# -# (Adapted from setup.py in -# $(glib_src_root)/build/win32/setup.py written by Shixin Zeng) - -import os -import sys -import re -import string -import subprocess -import optparse - -def process_in(src, dest, vars): - RE_VARS = re.compile(r'%(\w+?)%') - with open(src, 'r') as s: - with open(dest, 'w') as d: - for i in s: - i = RE_VARS.sub(lambda x: str(vars[x.group(1)]), i) - d.write(i) - -def get_vsver(vsver): - return { - '9': '9', - '10': '10', - '11': '11', - '2008': '9', - '2010': '10', - '2012': '11', - }.get(vsver, '0') - -def parent_dir(path): - if not os.path.isabs(path): - path = os.path.abspath(path) - if os.path.isfile(path): - path = os.path.dirname(path) - return os.path.split(path)[0] - -def setup_vars_cairo(src, dest, vsver): - vars = {} - vars['CAIRO_GIR_PACKAGE'] = 'cairo-gobject' - vars['CAIRO_SHARED_LIBRARY'] = '%s-vs%s.dll' % (vars['CAIRO_GIR_PACKAGE'], vsver) - process_in (src, dest, vars) - -def main(argv): - parser = optparse.OptionParser() - parser.add_option('--vsver', dest='vsver', action='store', help='Version of Visual Studio used, 9 or 2008 for VS 2008, 10 or 2010 for VS2010, 11 or 2012 for VS2012') - opt, args = parser.parse_args(argv) - if opt.vsver is None: - print ('vsver must be specified. Please use %s -h to see the valid values' % os.path.basename(__file__)) - sys.exit() - vsver = get_vsver(opt.vsver) - if vsver is '0': - print ('You must specify a valid vsver. Please use %s -h to see the valid values' % os.path.basename(__file__)) - sys.exit() - - # Get the srcroot and the path where the bundled .gir files reside in the package - srcroot = parent_dir(parent_dir(__file__)) - preset_gir_path = os.path.join(srcroot, 'gir') - - # Set up variables in cairo-1.0.gir.in to produce cairo-1.0.gir - setup_vars_cairo(os.path.join(preset_gir_path, 'cairo-1.0.gir.in'), - os.path.join(preset_gir_path, 'cairo-1.0.gir'), - vsver) - -if __name__ == '__main__': - sys.exit(main(sys.argv)) diff --git a/build/win32/gengir.bat b/build/win32/gengir.bat deleted file mode 100644 index 0392a864..00000000 --- a/build/win32/gengir.bat +++ /dev/null @@ -1,284 +0,0 @@ -@echo off - -setlocal EnableDelayedExpansion - -rem Needed environmental variables: -rem PLAT: Windows platform-Win32 (i.e. x86) or x64 (i.e. x86-64) -rem CONF: Configuration Type, Release or Debug -rem VSVER: Visual C++ version used - -rem Check the environemental variables... -if /i "%PLAT%" == "Win32" goto PLAT_OK -if /i "%PLAT%" == "x64" goto PLAT_OK -if /i "%PLAT%" == "x86" ( - set PLAT=Win32 - goto PLAT_OK -) -if /i "%PLAT%" == "x86-64" ( - set PLAT=x64 - goto PLAT_OK -) -goto ERR_PLAT -:PLAT_OK -if %VSVER% == 9 goto VSVER_OK -if %VSVER% == 10 goto VSVER_OK -if %VSVER% == 11 goto VSVER_OK -goto ERR_VSVER -:VSVER_OK -if /i "%CONF%" == "Release" goto CONF_OK -if /i "%CONF%" == "Debug" goto CONF_OK -goto ERR_CONF -:CONF_OK -if "%BASEDIR%" == "" goto ERR_BASEDIR -if not exist %BASEDIR% goto ERR_BASEDIR - - -set BINDIR=..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\bin -set PATH=%BINDIR%;%PATH% -set PYTHONPATH=..\..;%BINDIR% - -set UNINSTALLED_INTROSPECTION_SRCDIR=..\.. -echo Setup .bat for generating GLib .gir's... - -rem ===================================================== -rem Feed the "installed" GLib headers into a listing file -rem ===================================================== -echo %BASEDIR%\lib\glib-2.0\include\glibconfig.h> glib_list -for /f %%a in ('dir /b %BASEDIR%\include\glib-2.0\glib\*.h') do ( - echo %BASEDIR%\include\glib-2.0\glib\%%a>> glib_list -) -echo %BASEDIR%\include\glib-2.0\gobject\glib-types.h>> glib_list -echo ..\..\gir\glib-2.0.c>> glib_list - -rem ======================================================== -rem Feed the "installed" GObject headers into a listing file -rem ======================================================== - -if exist gobject_list del gobject_list -for /f %%a in ('dir /b %BASEDIR%\include\glib-2.0\gobject\*.h') do ( - if not %%a == glib-types.h ( - echo %BASEDIR%\include\glib-2.0\gobject\%%a>> gobject_list - ) -) -echo ..\..\gir\gobject-2.0.c>> gobject_list - -rem ===================================================== -rem Feed the "installed" Gio headers into a listing file -rem ===================================================== - -for /f %%a in ('dir /b %BASEDIR%\include\gio-win32-2.0\gio\*.h') do ( - echo %BASEDIR%\include\gio-win32-2.0\gio\%%a> gio_list -) - -for /f %%a in ('dir /b %BASEDIR%\include\glib-2.0\gio\*.h') do ( - if not %%a == gsettingsbackend.h ( - echo %BASEDIR%\include\glib-2.0\gio\%%a>> gio_list - ) -) -echo ..\..\gir\gio-2.0.c>> gio_list - -rem ================================================================================================= -rem Begin setup of glib_gir.bat to create GLib-2.0.gir -rem (The ^^ is necessary to span the command to multiple lines on Windows cmd.exe!) -rem ================================================================================================= - -echo echo Generating GLib-2.0.gir...> glib_gir.bat -echo @echo on>> glib_gir.bat -echo.>> glib_gir.bat -rem ================================================================ -rem Setup the command line flags to g-ir-scanner for GLib-2.0.gir... -rem ================================================================ -echo python ..\..\tools\g-ir-scanner --verbose -I..\.. --add-include-path=..\.. ^^>> glib_gir.bat -echo --add-include-path=..\..\gir --add-include-path=. --namespace=GLib --nsversion=2.0 ^^>> glib_gir.bat -echo --no-libtool --pkg=glib-2.0 --include=win32-1.0 --library=glib-2-vs%VSVER% --library=gobject-2-vs%VSVER% ^^>> glib_gir.bat -echo --external-library --reparse-validate --identifier-prefix=G --symbol-prefix=g ^^>> glib_gir.bat -echo --symbol-prefix=glib --c-include="glib.h" -I%BASEDIR%\include\glib-2.0 ^^>> glib_gir.bat -echo -I%BASEDIR%\lib\glib-2.0\include -I%BASEDIR%\include -DGETTEXT_PACKAGE=Dummy ^^>> glib_gir.bat -echo -DGLIB_COMPILATION -D__G_I18N_LIB_H__ ^^>> glib_gir.bat -echo --filelist=glib_list ^^>> glib_gir.bat -echo -o GLib-2.0.gir>> glib_gir.bat -echo.>> glib_gir.bat - -echo Completed setup of .bat for generating GLib-2.0.gir. -echo.>> glib_gir.bat - -rem =================================================== -rem Finish setup of glib_gir.bat to create GLib-2.0.gir -rem =================================================== - -rem ==================================================================== -rem Next, begin the setup for the glib_gir.bat to create GModule-2.0.gir -rem ==================================================================== -echo echo Generating GModule-2.0.gir...>> glib_gir.bat -echo.>> glib_gir.bat - -rem =================================================================== -rem Setup the command line flags to g-ir-scanner for GModule-2.0.gir... -rem =================================================================== - -echo python ..\..\tools\g-ir-scanner --verbose -I..\.. --add-include-path=..\.. ^^>> glib_gir.bat -echo --add-include-path=..\..\gir --add-include-path=. --namespace=GModule --nsversion=2.0 ^^>> glib_gir.bat -echo --no-libtool --include=GLib-2.0 --pkg=gmodule-2.0 --library=gmodule-2-vs%VSVER% ^^>> glib_gir.bat -echo --external-library --reparse-validate --identifier-prefix=G --c-include="gmodule.h" ^^>> glib_gir.bat -echo -I%BASEDIR%\include\glib-2.0 -I%BASEDIR%\lib\glib-2.0\include -I%BASEDIR%\include ^^>> glib_gir.bat -echo %BASEDIR%\include\glib-2.0\gmodule.h ..\..\gir\gmodule-2.0.c -o GModule-2.0.gir>> glib_gir.bat -echo.>> glib_gir.bat - -echo Completed setup of .bat for generating GModule-2.0.gir. -echo.>> glib_gir.bat - -rem ====================================================== -rem Finish setup of glib_gir.bat to create GModule-2.0.gir -rem ====================================================== - -rem ==================================================================== -rem Next, begin the setup for the glib_gir.bat to create GObject-2.0.gir -rem ==================================================================== - -echo echo Generating GObject-2.0.gir...>> glib_gir.bat -echo.>> glib_gir.bat - -rem =================================================================== -rem Setup the command line flags to g-ir-scanner for GObject-2.0.gir... -rem =================================================================== - -echo python ..\..\tools\g-ir-scanner --verbose -I..\.. --add-include-path=..\.. ^^>> glib_gir.bat -echo --add-include-path=..\..\gir --add-include-path=. --namespace=GObject --nsversion=2.0 ^^>> glib_gir.bat -echo --no-libtool --include=GLib-2.0 --pkg=gobject-2.0 --library=gobject-2-vs%VSVER% ^^>> glib_gir.bat -echo --external-library --reparse-validate --identifier-prefix=G --c-include="glib-gobject.h" ^^>> glib_gir.bat -echo -I%BASEDIR%/include/glib-2.0 -I%BASEDIR%/lib/glib-2.0/include -I%BASEDIR%/include ^^>> glib_gir.bat -echo -DGOBJECT_COMPILATION ^^>> glib_gir.bat -echo --filelist=gobject_list -o GObject-2.0.gir>> glib_gir.bat -echo.>> glib_gir.bat - -echo Completed setup of .bat for generating GObject-2.0.gir. -echo.>> glib_gir.bat -rem ====================================================== -rem Finish setup of glib_gir.bat to create GObject-2.0.gir -rem ====================================================== - -rem ================================================================ -rem Next, begin the setup for the glib_gir.bat to create Gio-2.0.gir -rem ================================================================ -echo echo Generating Gio-2.0.gir...>> glib_gir.bat -echo.>> glib_gir.bat - -rem =============================================================== -rem Setup the command line flags to g-ir-scanner for Gio-2.0.gir... -rem =============================================================== -echo python ..\..\tools\g-ir-scanner --verbose -I..\.. --add-include-path=..\.. ^^>> glib_gir.bat -echo --add-include-path=..\..\gir --add-include-path=. --namespace=Gio --nsversion=2.0 ^^>> glib_gir.bat -echo --no-libtool --pkg=gio-2.0 --pkg=gio-windows-2.0 --include=GObject-2.0 ^^>> glib_gir.bat -echo --library=gio-2-vs%VSVER% --external-library --reparse-validate --warn-all ^^>> glib_gir.bat -echo --identifier-prefix=G --include=GLib-2.0 --c-include="gio/gio.h" -DGIO_COMPILATION ^^>> glib_gir.bat -echo -I%BASEDIR%\include\glib-2.0 -I%BASEDIR%\lib\glib-2.0\include ^^>> glib_gir.bat -echo -I%BASEDIR%\include ^^>> glib_gir.bat -echo --filelist=gio_list ^^>> glib_gir.bat -echo -o Gio-2.0.gir>> glib_gir.bat -echo.>> glib_gir.bat - -echo Completed setup of .bat for generating Gio-2.0.gir. -echo.>> glib_gir.bat -rem ================================================== -rem Finish setup of glib_gir.bat to create Gio-2.0.gir -rem ================================================== - -rem ========================================================================= -rem Next, begin the setup for the glib_gir.bat to create GIRepository-2.0.gir -rem ========================================================================= -copy /b %BINDIR%\girepository-1.0.lib %BINDIR%\girepository-2.0.lib -echo echo Generating GIRepository-2.0.gir...>> glib_gir.bat -echo.>> glib_gir.bat - -rem ======================================================================== -rem Setup the command line flags to g-ir-scanner for GIRepository-2.0.gir... -rem ======================================================================== -echo python ..\..\tools\g-ir-scanner --verbose --warn-all ^^>> glib_gir.bat -echo --add-include-path=..\..\gir --add-include-path=. --namespace=GIRepository --nsversion=2.0 ^^>> glib_gir.bat -echo --identifier-prefix=GI --symbol-prefix=g --c-include="girepository.h" --add-include-path=. ^^>> glib_gir.bat -echo --no-libtool --pkg=gobject-2.0 --include=GObject-2.0 ^^>> glib_gir.bat -echo --library=girepository-1-vs%VSVER% -I..\..\girepository -I..\.. -I%BASEDIR%\include ^^>> glib_gir.bat -echo -I%BASEDIR%\include\glib-2.0 -I%BASEDIR%\lib\glib-2.0\include -DGI_COMPILATION ^^>> glib_gir.bat -echo ..\..\girepository\girepository.h ^^>> glib_gir.bat -echo ..\..\girepository\girepository.c ^^>> glib_gir.bat - -for /f %%a in ('dir /b ..\..\girepository\gi*info.c') do ( - echo ..\..\girepository\%%a ^^>> glib_gir.bat -) - -for /f %%a in ('dir /b ..\..\girepository\gi*info.h') do ( - echo ..\..\girepository\%%a ^^>> glib_gir.bat -) - -echo ..\..\girepository\gitypelib.h ^^>> glib_gir.bat -echo ..\..\girepository\gitypes.h ^^>> glib_gir.bat -echo -o GIRepository-2.0.gir>> glib_gir.bat -echo.>> glib_gir.bat - -echo Completed setup of .bat for generating GIRepository-2.0.gir. -echo.>> glib_gir.bat -rem =========================================================== -rem Finish setup of glib_gir.bat to create GIRepository-2.0.gir -rem =========================================================== - -rem ======================= -rem Now generate the .gir's -rem ======================= -CALL glib_gir.bat - -@echo off -rem ======= -rem Cleanup -rem ======= -rem del %BINDIR%\girepository-2.0.lib -del gio_list -del gobject_list -del glib_list -del glib_gir.bat -goto DO_COMPILE_GIR -:ERR_PLAT -echo You need to specify a valid Platform [set PLAT=Win32 or PLAT=x64] -goto DONE -:ERR_VSVER -echo You need to specify your Visual Studio version [set VSVER=9 or VSVER=10 or VSVER=11] -goto DONE -:ERR_CONF -echo You need to specify a valid Configuration [set CONF=Release or CONF=Debug] -goto DONE -:ERR_BASEDIR -echo You need to specify a valid BASEDIR. -goto DONE -:DO_COMPILE_GIR -rem Now compile the generated .gir files -g-ir-compiler --includedir=. --includedir=..\..\gir --debug --verbose GLib-2.0.gir -o GLib-2.0.typelib -g-ir-compiler --includedir=. --includedir=..\..\gir --debug --verbose GModule-2.0.gir -o GModule-2.0.typelib -g-ir-compiler --includedir=. --includedir=..\..\gir --debug --verbose GObject-2.0.gir -o GObject-2.0.typelib -g-ir-compiler --includedir=. --includedir=..\..\gir --debug --verbose Gio-2.0.gir -o Gio-2.0.typelib -g-ir-compiler --includedir=. --includedir=..\..\gir --debug --verbose GIRepository-2.0.gir -o GIRepository-2.0.typelib - -rem Now process the bundled .gir files -python create_nonglib_gir.py --vsver=%VSVER% -set CURRDIR=%CD% -cd ..\..\gir -g-ir-compiler --includedir=. --debug --verbose cairo-1.0.gir -o cairo-1.0.typelib -g-ir-compiler --includedir=. --debug --verbose freetype2-2.0.gir -o freetype2-2.0.typelib -g-ir-compiler --includedir=. --debug --verbose GL-1.0.gir -o GL-1.0.typelib -g-ir-compiler --includedir=. --debug --verbose libxml2-2.0.gir -o libxml2-2.0.typelib -g-ir-compiler --includedir=. --debug --verbose win32-1.0.gir -o win32-1.0.typelib -cd %CURRDIR% - -rem Copy the generated .girs and .typelibs to their appropriate places - -mkdir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0 -move /y *.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ -copy /y ..\..\gir\freetype2-2.0.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ -copy /y ..\..\gir\GL-1.0.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ -copy /y ..\..\gir\libxml2-2.0.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ -copy /y ..\..\gir\cairo-1.0.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ -copy /y ..\..\gir\win32-1.0.gir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\share\gir-1.0\ - -mkdir ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\lib\girepository-1.0 -move /y *.typelib ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\lib\girepository-1.0\ -move /y ..\..\gir\*.typelib ..\..\build\win32\vs%VSVER%\%CONF%\%PLAT%\lib\girepository-1.0\ -:DONE - diff --git a/build/win32/vs10/Makefile.am b/build/win32/vs10/Makefile.am index 0046bc44..dd43a31b 100644 --- a/build/win32/vs10/Makefile.am +++ b/build/win32/vs10/Makefile.am @@ -1,17 +1,20 @@ EXTRA_DIST = \ gobject-introspection.sln \ + gi-build-defines.props \ + gi-extra-paths.props \ + gi-gen-srcs.props \ + gi-install.propsin \ + gi-install.props \ + gi-version-paths.props \ + gi-prebuild.vcxproj \ girepository.vcxprojin \ girepository.vcxproj.filtersin \ - gir.propsin \ - gir.props \ annotation.vcxproj \ annotation.vcxproj.filters \ cmph-bdz-test.vcxproj \ cmph-bdz-test.vcxproj.filters \ cmph.vcxprojin \ cmph.vcxproj.filtersin \ - everything.vcxproj \ - everything.vcxproj.filters \ foo.vcxproj \ foo.vcxproj.filters \ g-ir-compiler.vcxprojin \ @@ -36,12 +39,11 @@ EXTRA_DIST = \ utility.vcxproj.filters \ _giscanner.vcxproj \ _giscanner.vcxproj.filters \ - generate_typelibs.vcxproj \ install.vcxproj \ README.txt -gir.props: $(top_srcdir)/build/win32/vs10/gir.propsin gir.vs10.install - $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gir.propsin >$@ +gi-install.props: $(top_srcdir)/build/win32/vs10/gi-install.propsin gir.vs10.install + $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gi-install.propsin >$@ rm gir.vs10.install -CLEANFILES = gir.props +CLEANFILES = gi-install.props diff --git a/build/win32/vs10/README.txt b/build/win32/vs10/README.txt index 06f216ec..db905a11 100644 --- a/build/win32/vs10/README.txt +++ b/build/win32/vs10/README.txt @@ -59,16 +59,38 @@ http://www.gtk.org/download/win32.php [32-bit] http://www.gtk.org/download/win64.php [64-bit] *** Note! *** -Please note that due to numerous possible configurations on Python, some environmental -variables need to be set before launching the gobject-introsection.sln solution file. - -These variables are namely: -PYTHONDIR: Root installation folder of your Python interpretor, where python.exe is - located. Currently only Python 2.6.x and 2.7.x is supported. - It must match your build configuration (Win32 or x64/amd64) +Please note that due to numerous possible configurations on Python, PKG_CONFIG_PATH and +MinGW, the build of G-I is now a 2-step process: one with the Visual Studio Projects that +will build the libraries, tools, Python Module and test DLLs (except for the everything +test), and the other one with NMake Makefiles for building the introspection files. +Please note that if one needs to change the installation location +of Python, one needs to change the values of PythonDir (for x86/Win32 builds) and/or +PythonDirX64 (for x64 builds) in gi-extra-paths.props + +The use of Visual Studio Projects will no longer require the setting of environmental +variables, but the following environmental variables are needed (either by using "set xxx=yyy" +or by nmake -f gi-introspection-msvc.mak xxx=yyy) for building the introspection files (which +should be done after successfully building the Project Files): + +PYTHON2: Full path to your Python 2.6.x/2.7.x interpretor (python.exe) if it is + not in your PATH. Please note that only 2.6.x and 2.7.x works at this time. + You need to use an x64/amd64 version of Python for x64 builds, and a Win32/x86 + version of Python for Win32/x86 builds PKG_CONFIG_PATH: Location of the .pc (pkg-config) files, especially for the GLib .pc files. MINGWDIR: Root installation folder for your Windows GCC (such as MinGW). For example, if your gcc executable (gcc.exe) is in c:\mingw\bin, use "set MINGWDIR=c:\mingw" + You need to use an x64/amd64 version of gcc for x64 builds, and a Win32/x86 + version of gcc for Win32/x86 builds + +GCC is currently needed to as the GCC preprocessor is used to create the introspection dump source +file, which is then compiled with the Visual C++ compiler to produce the .gir files. + +Please see $(srcroot)\build\gi-introspection-msvc.mak for more details. Doing +"nmake -f gi-introspection-msvc.mak (options omitted)" will build the various introspection files, +and "nmake -f gi-introspection-msvc.mak (options omitted) install-introspection" will copy the introspection +files to \vs10\\share\gir-1.0 (.gir files) and +\vs10\\lib\girepository-1.0 (.typelib files) + *** End of Note! *** The "install" project will copy build results and headers into their @@ -77,9 +99,6 @@ built DLLs go into \vs10\\bin, built LIBs into \vs10\\lib and gobject-introspection headers into \vs10\\include\gobject-introsection-1.0. -The generated .gir files will end up in \vs10\\share\gir-1.0 -and .typelib files will end up in \vs10\\lib\girepository-1.0 - This is then from where project files higher in the stack are supposed to look for them, not from a specific gobject-introspection source tree. diff --git a/build/win32/vs10/_giscanner.vcxproj b/build/win32/vs10/_giscanner.vcxproj index 07f2611a..6b4b611d 100644 --- a/build/win32/vs10/_giscanner.vcxproj +++ b/build/win32/vs10/_giscanner.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -75,7 +75,7 @@ Disabled - ..\..\..\giscanner;$(PYTHONDIR)\include;$(PYTHONDIR)\PC;%(AdditionalIncludeDirectories) + ..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories) %(ForcedIncludeFiles);io.h _DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions) true @@ -88,7 +88,7 @@ $(OutDir)$(ProjectName).pyd - $(PYTHONDIR)\libs;%(AdditionalLibraryDirectories) + $(PythonDir)\libs;%(AdditionalLibraryDirectories) true Windows MachineX86 @@ -98,7 +98,7 @@ MaxSpeed true - ..\..\..\giscanner;$(PYTHONDIR)\include;$(PYTHONDIR)\PC;%(AdditionalIncludeDirectories) + ..\..\..\giscanner;$(PythonDir)\include;$(PythonDir)\PC;%(AdditionalIncludeDirectories) %(ForcedIncludeFiles);io.h YY_NO_UNISTD_H;%(PreprocessorDefinitions) MultiThreadedDLL @@ -110,7 +110,7 @@ $(OutDir)$(ProjectName).pyd - $(PYTHONDIR)\libs;%(AdditionalLibraryDirectories) + $(PythonDir)\libs;%(AdditionalLibraryDirectories) true Windows true @@ -124,7 +124,7 @@ Disabled - ..\..\..\giscanner;$(PYTHONDIR)\include;$(PYTHONDIR)\PC;%(AdditionalIncludeDirectories) + ..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories) %(ForcedIncludeFiles);io.h _DEBUG;YY_NO_UNISTD_H;%(PreprocessorDefinitions) true @@ -137,7 +137,7 @@ $(OutDir)$(ProjectName).pyd - $(PYTHONDIR)\libs;%(AdditionalLibraryDirectories) + $(PythonDirX64)\libs;%(AdditionalLibraryDirectories) true Windows MachineX64 @@ -150,7 +150,7 @@ MaxSpeed true - ..\..\..\giscanner;$(PYTHONDIR)\include;$(PYTHONDIR)\PC;%(AdditionalIncludeDirectories) + ..\..\..\giscanner;$(PythonDirX64)\include;$(PythonDirX64)\PC;%(AdditionalIncludeDirectories) %(ForcedIncludeFiles);io.h YY_NO_UNISTD_H;%(PreprocessorDefinitions) MultiThreadedDLL @@ -162,7 +162,7 @@ $(OutDir)$(ProjectName).pyd - $(PYTHONDIR)\libs;%(AdditionalLibraryDirectories) + $(PythonDirX64)\libs;%(AdditionalLibraryDirectories) true Windows true @@ -176,6 +176,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/annotation.vcxproj b/build/win32/vs10/annotation.vcxproj index eb194f43..8ee2f1dd 100644 --- a/build/win32/vs10/annotation.vcxproj +++ b/build/win32/vs10/annotation.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/cmph-bdz-test.vcxproj b/build/win32/vs10/cmph-bdz-test.vcxproj index e5308e80..cdd3b17f 100644 --- a/build/win32/vs10/cmph-bdz-test.vcxproj +++ b/build/win32/vs10/cmph-bdz-test.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + diff --git a/build/win32/vs10/cmph.vcxprojin b/build/win32/vs10/cmph.vcxprojin index 1bdbe642..9bab7e01 100644 --- a/build/win32/vs10/cmph.vcxprojin +++ b/build/win32/vs10/cmph.vcxprojin @@ -51,19 +51,19 @@ - + - + - + - + @@ -129,6 +129,12 @@ #include "cmph.vs10.sourcefiles" + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/everything.vcxproj b/build/win32/vs10/everything.vcxproj deleted file mode 100644 index a0afe93c..00000000 --- a/build/win32/vs10/everything.vcxproj +++ /dev/null @@ -1,201 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {2986281A-BD41-4BD1-8B43-25B7D7E7F234} - everything - Win32Proj - - - - DynamicLibrary - MultiByte - true - v100 - - - DynamicLibrary - MultiByte - v100 - - - DynamicLibrary - MultiByte - true - v100 - - - DynamicLibrary - MultiByte - v100 - - - - - - - - - - - - - - - - - - - - - - - true - false - true - false - - - - - $(GenEverythingH) - - - - Disabled - _DEBUG;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - - - Level3 - EditAndContinue - - - $(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll - ..\$(ProjectName).def - true - Windows - $(TargetDir)$(ProjectName)-$(ApiVersion).lib - MachineX86 - - - - - - $(GenEverythingH) - - - - MaxSpeed - true - %(PreprocessorDefinitions) - MultiThreadedDLL - true - - - Level3 - ProgramDatabase - - - $(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll - ..\$(ProjectName).def - true - Windows - true - true - $(TargetDir)$(ProjectName)-$(ApiVersion).lib - MachineX86 - - - - - - $(GenEverythingH) - - - - X64 - - - Disabled - _DEBUG;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - - - Level3 - ProgramDatabase - - - $(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll - ..\$(ProjectName).def - true - Windows - $(TargetDir)$(ProjectName)-$(ApiVersion).lib - MachineX64 - - - - - - $(GenEverythingH) - - - - X64 - - - MaxSpeed - true - %(PreprocessorDefinitions) - MultiThreadedDLL - true - - - Level3 - ProgramDatabase - - - $(OutDir)$(LibGIDllPrefix)$(ProjectName)$(LibGIDllSuffix).dll - ..\$(ProjectName).def - true - Windows - true - true - $(TargetDir)$(ProjectName)-$(ApiVersion).lib - MachineX64 - - - - - - - - {8311394f-9114-4c97-80f2-51bcaba054c9} - false - - - - - - \ No newline at end of file diff --git a/build/win32/vs10/everything.vcxproj.filters b/build/win32/vs10/everything.vcxproj.filters deleted file mode 100644 index c284b239..00000000 --- a/build/win32/vs10/everything.vcxproj.filters +++ /dev/null @@ -1,22 +0,0 @@ - - - - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hpp;hxx;hm;inl;inc;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav - - - - - Sources - - - \ No newline at end of file diff --git a/build/win32/vs10/foo.vcxproj b/build/win32/vs10/foo.vcxproj index 237784fc..2e03f83b 100644 --- a/build/win32/vs10/foo.vcxproj +++ b/build/win32/vs10/foo.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + diff --git a/build/win32/vs10/g-ir-compiler.vcxprojin b/build/win32/vs10/g-ir-compiler.vcxprojin index b1f507ae..4961ecee 100644 --- a/build/win32/vs10/g-ir-compiler.vcxprojin +++ b/build/win32/vs10/g-ir-compiler.vcxprojin @@ -51,19 +51,19 @@ - + - + - + - + @@ -75,7 +75,7 @@ Disabled - _DEBUG;FFI_BUILDING;%(PreprocessorDefinitions) + _DEBUG;$(FFIDefines);%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebugDLL @@ -97,7 +97,7 @@ Disabled - _DEBUG;FFI_BUILDING;%(PreprocessorDefinitions) + _DEBUG;$(FFIDefines);%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebugDLL @@ -119,7 +119,7 @@ MaxSpeed true - FFI_BUILDING;%(PreprocessorDefinitions) + $(FFIDefines);%(PreprocessorDefinitions) MultiThreadedDLL true @@ -144,7 +144,7 @@ MinSpace true false - FFI_BUILDING;%(PreprocessorDefinitions) + $(FFIDefines);%(PreprocessorDefinitions) MultiThreadedDLL true diff --git a/build/win32/vs10/g-ir-generate.vcxproj b/build/win32/vs10/g-ir-generate.vcxproj index 60d468f9..52dfda83 100644 --- a/build/win32/vs10/g-ir-generate.vcxproj +++ b/build/win32/vs10/g-ir-generate.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + diff --git a/build/win32/vs10/generate_typelibs.vcxproj b/build/win32/vs10/generate_typelibs.vcxproj deleted file mode 100644 index 8fe6789b..00000000 --- a/build/win32/vs10/generate_typelibs.vcxproj +++ /dev/null @@ -1,103 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {BE771349-F11E-42AE-A23F-DA083FDC6FB8} - generate_typelibs - - - - Utility - MultiByte - true - v100 - - - Utility - MultiByte - v100 - - - Utility - MultiByte - true - v100 - - - Utility - MultiByte - v100 - - - - - - - - - - - - - - - - - - - - - - - - - - $(GenerateGIR) - - - - - $(GenerateGIR) - - - - - $(GenerateGIR) - - - - - $(GenerateGIR) - - - - - {5dcb55ce-f32c-4c77-8bf4-b4dad3ec7774} - false - - - {8311394f-9114-4c97-80f2-51bcaba054c9} - false - - - - - - \ No newline at end of file diff --git a/build/win32/vs10/gettype.vcxproj b/build/win32/vs10/gettype.vcxproj index 44c8d040..2e6973ff 100644 --- a/build/win32/vs10/gettype.vcxproj +++ b/build/win32/vs10/gettype.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/gi-build-defines.props b/build/win32/vs10/gi-build-defines.props new file mode 100644 index 00000000..160b17ff --- /dev/null +++ b/build/win32/vs10/gi-build-defines.props @@ -0,0 +1,34 @@ + + + + + + + FFI_BUILDING + G_IREPOSITORY_COMPILATION;$(FFIDefines);DLL_EXPORT + + + <_PropertySheetDisplayName>gibuilddefinesprops + $(SolutionDir)$(Configuration)\$(PlatformName)\bin\ + $(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\ + + + + ..\..\..;..\..\..\girepository;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;%(AdditionalIncludeDirectories) + HAVE_CONFIG_H;WIN32;%(PreprocessorDefinitions) + msvc_recommended_pragmas.h;%(ForcedIncludeFiles) + + + gio-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;gthread-2.0.lib;glib-2.0.lib;%(AdditionalDependencies) + $(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories) + + + + + $(FFIDefines) + + + $(GIRepositoryBuildDefines) + + + diff --git a/build/win32/vs10/gi-extra-paths.props b/build/win32/vs10/gi-extra-paths.props new file mode 100644 index 00000000..93b847d4 --- /dev/null +++ b/build/win32/vs10/gi-extra-paths.props @@ -0,0 +1,23 @@ + + + + + + + + c:\\python27 + + c:\\python27.x64 + + + <_PropertySheetDisplayName>giextrapathsprops + + + + $(PythonDir) + + + $(PythonDirX64) + + + diff --git a/build/win32/vs10/gi-gen-srcs.props b/build/win32/vs10/gi-gen-srcs.props new file mode 100644 index 00000000..0cda3d54 --- /dev/null +++ b/build/win32/vs10/gi-gen-srcs.props @@ -0,0 +1,36 @@ + + + + + + + copy ..\..\..\config.h.win32 ..\..\..\config.h + copy ..\..\..\tools\g-ir-scanner.in ..\..\..\tools\g-ir-scanner + copy ..\..\..\tools\g-ir-doc-tool.in ..\..\..\tools\g-ir-doc-tool + copy ..\..\..\tools\g-ir-annotation-tool.in ..\..\..\tools\g-ir-annotation-tool + +echo EXPORTS > $(DefDir)\girepository.def +cl -EP ..\..\..\girepository\girepository.symbols >> $(DefDir)\girepository.def + + + + <_PropertySheetDisplayName>gigensrcsprops + + + + $(CopyConfigH) + + + $(CopyGIRScanner) + + + $(CopyGIRDocTool) + + + $(CopyGIRAnnotationTool) + + + $(GenerateGIRDef) + + + diff --git a/build/win32/vs10/gi-install.propsin b/build/win32/vs10/gi-install.propsin new file mode 100644 index 00000000..b576c3b6 --- /dev/null +++ b/build/win32/vs10/gi-install.propsin @@ -0,0 +1,42 @@ + + + + + + + +mkdir $(CopyDir) +mkdir $(CopyDir)\bin + +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\$(LibGIDllPrefix)girepository$(LibGIDllSuffix).dll $(CopyDir)\bin +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\g-ir-compiler.exe $(CopyDir)\bin +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\g-ir-generate.exe $(CopyDir)\bin +copy ..\..\..\tools\g-ir-annotation-tool $(CopyDir)\bin +copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin +copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin + +#include "gir.vs10.install" + +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\_giscanner.pyd $(CopyDir)\lib\gobject-introspection\giscanner + +mkdir $(CopyDir)\share\gir-$(ApiVersion) +mkdir $(CopyDir)\share\gobject-introspection-$(ApiVersion) +copy ..\..\..\girepository\gdump.c $(CopyDir)\share\gobject-introspection-$(ApiVersion) + +mkdir $(CopyDir)\lib\girepository-$(ApiVersion) +copy $(SolutionDir)$(Configuration)\$(Platform)\bin\girepository-$(ApiVersion).lib $(CopyDir)\lib + +echo Please note that building GObject-Introspection with Visual Studio is now a 2-step process +echo Please open the appropriate Visual Studio (or Windows SDK) command prompt and use the NMake Makefile +echo in SRC_ROOT\build\gi-introspection-msvc.mak to build the introspection files + + + + <_PropertySheetDisplayName>giinstallprops + + + + $(GIDoInstall) + + + diff --git a/build/win32/vs10/gi-prebuild.vcxproj b/build/win32/vs10/gi-prebuild.vcxproj new file mode 100644 index 00000000..feab0292 --- /dev/null +++ b/build/win32/vs10/gi-prebuild.vcxproj @@ -0,0 +1,146 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {2093D218-190E-4194-9421-3BA7CBF33B11} + giprebuild + Win32Proj + + + + Utility + MultiByte + true + v100 + + + Utility + MultiByte + v100 + + + Utility + MultiByte + true + v100 + + + Utility + MultiByte + v100 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Copying config.h from config.h.win32... + $(CopyConfigH) + ..\..\..\config.h;%(Outputs) + Copying config.h from config.h.win32... + $(CopyConfigH) + ..\..\..\config.h;%(Outputs) + Copying config.h from config.h.win32... + $(CopyConfigH) + ..\..\..\config.h;%(Outputs) + Copying config.h from config.h.win32... + $(CopyConfigH) + ..\..\..\config.h;%(Outputs) + + + Copying g-ir-scanner from g-ir-scanner.in... + $(CopyGIRScanner) + ..\..\..\tools\g-ir-scanner;%(Outputs) + Copying g-ir-scanner from g-ir-scanner.in... + $(CopyGIRScanner) + ..\..\..\tools\g-ir-scanner;%(Outputs) + Copying g-ir-scanner from g-ir-scanner.in... + $(CopyGIRScanner) + ..\..\..\tools\g-ir-scanner;%(Outputs) + Copying g-ir-scanner from g-ir-scanner.in... + $(CopyGIRScanner) + ..\..\..\tools\g-ir-scanner;%(Outputs) + + + Copying g-ir-doc-tool from g-ir-doc-tool.in... + $(CopyGIRDocTool) + ..\..\..\tools\g-ir-doc-tool;%(Outputs) + Copying g-ir-doc-tool from g-ir-doc-tool.in... + $(CopyGIRDocTool) + ..\..\..\tools\g-ir-doc-tool;%(Outputs) + Copying g-ir-doc-tool from g-ir-doc-tool.in... + $(CopyGIRDocTool) + ..\..\..\tools\g-ir-doc-tool;%(Outputs) + Copying g-ir-doc-tool from g-ir-doc-tool.in... + $(CopyGIRDocTool) + ..\..\..\tools\g-ir-doc-tool;%(Outputs) + + + Copying g-ir-annotation-tool from g-ir-annotation-tool.in... + $(CopyGIRAnnotationTool) + ..\..\..\tools\g-ir-annotation-tool;%(Outputs) + Copying g-ir-annotation-tool from g-ir-annotation-tool.in... + $(CopyGIRAnnotationTool) + ..\..\..\tools\g-ir-annotation-tool;%(Outputs) + Copying g-ir-annotation-tool from g-ir-annotation-tool.in... + $(CopyGIRAnnotationTool) + ..\..\..\tools\g-ir-annotation-tool;%(Outputs) + Copying g-ir-annotation-tool from g-ir-annotation-tool.in... + $(CopyGIRAnnotationTool) + ..\..\..\tools\g-ir-annotation-tool;%(Outputs) + + + + + + + + \ No newline at end of file diff --git a/build/win32/vs10/gi-version-paths.props b/build/win32/vs10/gi-version-paths.props new file mode 100644 index 00000000..88e43487 --- /dev/null +++ b/build/win32/vs10/gi-version-paths.props @@ -0,0 +1,58 @@ + + + + 10 + $(SolutionDir)\..\..\..\..\vs$(VSVER)\$(Platform) + $(SolutionDir)\..\..\.. + $(GlibEtcInstallRoot) + 1.0 + $(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName) + lib + -$(ApiVersion)-0 + + -1-vs$(VSVER) + $(LibGISeparateVSDllPrefix) + $(LibGISeparateVSDllSuffix) + + + <_PropertySheetDisplayName>giversionpathsprops + + + + $(VSVER) + + + $(GlibEtcInstallRoot) + + + $(BASE_GI_DIR) + + + $(CopyDir) + + + $(ApiVersion) + + + $(DefDir) + + + $(LibGILibtoolCompatibleDllPrefix) + + + $(LibGILibtoolCompatibleDllSuffix) + + + $(LibGISeparateVSDllPrefix) + + + $(LibGISeparateVSDllSuffix) + + + $(LibGIDllPrefix) + + + $(LibGIDllSuffix) + + + diff --git a/build/win32/vs10/gimarshallingtests.vcxproj b/build/win32/vs10/gimarshallingtests.vcxproj index 9100eae8..fbbb162c 100644 --- a/build/win32/vs10/gimarshallingtests.vcxproj +++ b/build/win32/vs10/gimarshallingtests.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/gir.propsin b/build/win32/vs10/gir.propsin deleted file mode 100644 index 49aaa6c8..00000000 --- a/build/win32/vs10/gir.propsin +++ /dev/null @@ -1,228 +0,0 @@ - - - - $(SolutionDir)\..\..\..\..\vs10\$(Platform) - 10 - $(SolutionDir)\..\..\.. - $(GlibEtcInstallRoot) - 1.0 - $(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName) - - echo EXPORTS > $(DefDir)\girepository.def - - cl -EP ..\..\..\girepository\girepository.symbols >> $(DefDir)\girepository.def - - -if exist ..\..\..\tests\everything.h goto DONE_GEN_EVERYTHING_C - -cd ..\..\..\tests - -set PATH=$(GlibEtcInstallRoot)\bin;$(SolutionDir)$(Configuration)\$(PlatformName)\bin;%PYTHONDIR%;%PATH% - -set PYTHONPATH=$(SolutionDir)$(Configuration)\$(PlatformName)\bin;$(BASE_GI_DIR) - -set UNINSTALLED_INTROSPECTION_SRCDIR=$(BASE_GI_DIR) - -python ..\tools\g-ir-scanner --verbose -I. --add-include-path=..\ --add-include-path=..\gir --generate-typelib-tests=Everything,everything.h,everything.c - -cd $(SolutionDir) - -:DONE_GEN_EVERYTHING_C - - -@echo off - -set CC=cl - -if "$(MINGWDIR)" == "" goto ERR_NOGCC - -if "$(PYTHONDIR)" == "" goto ERR_NOPYPATH - -if "$(PKG_CONFIG_PATH)" == "" goto ERR_NOPKGCONFIG - - -set PYTHONPATH=$(SolutionDir)$(Configuration)\$(PlatformName)\bin\;$(BASE_GI_DIR) - -set UNINSTALLED_INTROSPECTION_SRCDIR=$(BASE_GI_DIR) - -set PATH=$(GlibEtcInstallRoot)\bin;$(SolutionDir)$(Configuration)\$(PlatformName)\bin\;$(PATH);$(PYTHONDIR);$(MINGWDIR)\bin - -set LIB=$(GlibEtcInstallRoot)\lib;$(SolutionDir)$(Configuration)\$(PlatformName)\bin\;$(LIB);$(PYTHONDIR)\libs - -set INCLUDE=$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(INCLUDE);$(PYTHONDIR)\include - - -set PLAT=$(Platform) - -set CONF=$(Configuration) - -set BASEDIR=$(GlibEtcInstallRoot) - -set VSVER=$(VSVER) - - -cd .. - -call gengir.bat - -cd .\vs$(VSVER) - -goto DONE - - -:ERR_NOGCC - -echo You need a Windows GCC installation to preprocess the headers to generate .gir files - -echo Please set MINGWDIR accordingly before launching the Project - -goto DONE - - -:ERR_NOPYPATH - -echo You need a Python installation to build the Python module and run the Python scripts to generate .gir files - -echo The Python installation needs to correspond to the configuration of your build, i.e. Win32 or x64 - -echo Please set PYTHONDIR accordingly before launching the Project - -goto DONE - - -:ERR_NOPKGCONFIG - -echo You need pkg-config and need to set PKG_CONFIG_PATH to point to pkgconfig (.pc) files to generate .gir files - -echo Please set PKG_CONFIG_PATH accordingly before launching the Project - -goto DONE - - -:DONE - - - lib - -$(ApiVersion)-0 - - -1-vs10 - $(LibGISeparateVS10DllPrefix) - $(LibGISeparateVS10DllSuffix) - -mkdir $(CopyDir) - -mkdir $(CopyDir)\bin - -copy $(SolutionDir)$(Configuration)\$(Platform)\bin\$(LibGIDllPrefix)girepository$(LibGIDllSuffix).dll $(CopyDir)\bin - -copy $(SolutionDir)$(Configuration)\$(Platform)\bin\g-ir-compiler.exe $(CopyDir)\bin - -copy $(SolutionDir)$(Configuration)\$(Platform)\bin\g-ir-generate.exe $(CopyDir)\bin - -copy ..\..\..\tools\g-ir-annotation-tool $(CopyDir)\bin - -copy ..\..\..\tools\g-ir-doc-tool $(CopyDir)\bin - -copy ..\..\..\tools\g-ir-scanner $(CopyDir)\bin - - -#include "gir.vs10.install" - -copy $(SolutionDir)$(Configuration)\$(Platform)\bin\_giscanner.pyd $(CopyDir)\lib\gobject-introspection\giscanner - - -mkdir $(CopyDir)\share\gir-$(ApiVersion) - -copy $(SolutionDir)$(Configuration)\$(Platform)\share\gir-$(ApiVersion)\*.gir $(CopyDir)\share\gir-$(ApiVersion) - -mkdir $(CopyDir)\share\gobject-introspection-$(ApiVersion) - -copy ..\..\..\girepository\gdump.c $(CopyDir)\share\gobject-introspection-$(ApiVersion) - - -mkdir $(CopyDir)\lib\girepository-$(ApiVersion) - -copy $(SolutionDir)$(Configuration)\$(Platform)\bin\girepository-$(ApiVersion).lib $(CopyDir)\lib - -copy $(SolutionDir)$(Configuration)\$(Platform)\lib\girepository-$(ApiVersion)\*.typelib $(CopyDir)\lib\girepository-$(ApiVersion) - - - - - <_PropertySheetDisplayName>giprops - $(SolutionDir)$(Configuration)\$(PlatformName)\bin\ - $(SolutionDir)$(Configuration)\$(PlatformName)\obj\$(ProjectName)\ - - - - ..\..\..;..\..\..\girepository;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;%(AdditionalIncludeDirectories) - HAVE_CONFIG_H;WIN32;%(PreprocessorDefinitions) - msvc_recommended_pragmas.h;%(ForcedIncludeFiles) - - - gio-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;gthread-2.0.lib;glib-2.0.lib;%(AdditionalDependencies) - $(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories) - - - -if not exist ..\..\..\config.h copy ..\..\..\config.h.win32 ..\..\..\config.h - -if not exist ..\..\..\tools\g-ir-scanner copy ..\..\..\tools\g-ir-scanner.in ..\..\..\tools\g-ir-scanner - -if not exist ..\..\..\tools\g-ir-doc-tool copy ..\..\..\tools\g-ir-doc-tool.in ..\..\..\tools\g-ir-doc-tool - -if not exist ..\..\..\tools\g-ir-annotation-tool copy ..\..\..\tools\g-ir-annotation-tool.in ..\..\..\tools\g-ir-annotation-tool - - - - - - $(GlibEtcInstallRoot) - - - $(VSVER) - - - $(BASE_GI_DIR) - - - $(CopyDir) - - - $(ApiVersion) - - - $(DefDir) - - - $(GenerateGIRDef) - - - $(GenEverythingH) - - - $(GenerateGIR) - - - $(LibGILibtoolCompatibleDllPrefix) - - - $(LibGILibtoolCompatibleDllSuffix) - - - $(LibGISeparateVS10DllPrefix) - - - $(LibGISeparateVS10DllSuffix) - - - $(LibGIDllPrefix) - - - $(LibGIDllSuffix) - - - $(GIDoInstall) - - - diff --git a/build/win32/vs10/girepository.vcxproj.filtersin b/build/win32/vs10/girepository.vcxproj.filtersin index ccc6895c..c0245dc0 100644 --- a/build/win32/vs10/girepository.vcxproj.filtersin +++ b/build/win32/vs10/girepository.vcxproj.filtersin @@ -17,4 +17,7 @@ #include "girepository.vs10.sourcefiles.filters" + + Resource Files + \ No newline at end of file diff --git a/build/win32/vs10/girepository.vcxprojin b/build/win32/vs10/girepository.vcxprojin index fe70a0d3..76702e94 100644 --- a/build/win32/vs10/girepository.vcxprojin +++ b/build/win32/vs10/girepository.vcxprojin @@ -51,19 +51,19 @@ - + - + - + - + @@ -76,7 +76,7 @@ Disabled ..\..\..\girepository;%(AdditionalIncludeDirectories) - _DEBUG;G_IREPOSITORY_COMPILATION;FFI_BUILDING;DLL_EXPORT;%(PreprocessorDefinitions) + _DEBUG;$(GIRepositoryBuildDefines);%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebugDLL @@ -103,7 +103,7 @@ MaxSpeed true ..\..\..\girepository;%(AdditionalIncludeDirectories) - G_IREPOSITORY_COMPILATION;FFI_BUILDING;DLL_EXPORT;%(PreprocessorDefinitions) + $(GIRepositoryBuildDefines);%(PreprocessorDefinitions) MultiThreadedDLL true @@ -133,7 +133,7 @@ Disabled ..\..\..\girepository;%(AdditionalIncludeDirectories) - _DEBUG;G_IREPOSITORY_COMPILATION;FFI_BUILDING;DLL_EXPORT;%(PreprocessorDefinitions) + _DEBUG;$(GIRepositoryBuildDefines);%(PreprocessorDefinitions) true EnableFastChecks MultiThreadedDebugDLL @@ -163,7 +163,7 @@ MaxSpeed true ..\..\..\girepository;%(AdditionalIncludeDirectories) - G_IREPOSITORY_COMPILATION;FFI_BUILDING;DLL_EXPORT;%(PreprocessorDefinitions) + $(GIRepositoryBuildDefines);%(PreprocessorDefinitions) MultiThreadedDLL true @@ -190,6 +190,26 @@ #include "girepository.vs10.sourcefiles" + + Generating $(DefDir)\girepository.def... + $(GenerateGIRDef) + $(DefDir)\girepository.def;%(Outputs) + Generating $(DefDir)\girepository.def... + $(GenerateGIRDef) + $(DefDir)\girepository.def;%(Outputs) + Generating $(DefDir)\girepository.def... + $(GenerateGIRDef) + $(DefDir)\girepository.def;%(Outputs) + Generating $(DefDir)\girepository.def... + $(GenerateGIRDef) + $(DefDir)\girepository.def;%(Outputs) + + + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + {442c007e-d901-41da-9706-5db4afb4c06b} false diff --git a/build/win32/vs10/glib-print.vcxproj b/build/win32/vs10/glib-print.vcxproj index 57dc430b..179d6075 100644 --- a/build/win32/vs10/glib-print.vcxproj +++ b/build/win32/vs10/glib-print.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + diff --git a/build/win32/vs10/gobject-introspection.sln b/build/win32/vs10/gobject-introspection.sln index 916cbb8c..0794f3c6 100644 --- a/build/win32/vs10/gobject-introspection.sln +++ b/build/win32/vs10/gobject-introspection.sln @@ -1,6 +1,8 @@  Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gi-prebuild", "gi-prebuild.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B11}" +EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cmph", "cmph.vcxproj", "{442C007E-D901-41DA-9706-5DB4AFB4C06B}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cmph-bdz-test", "cmph-bdz-test.vcxproj", "{E41F378B-CCDD-4B1C-89C3-6D2C950FAF1A}" @@ -33,10 +35,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtkfrob", "gtkfrob.vcxproj" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sletter", "sletter.vcxproj", "{86A35E44-E4C8-4628-87E9-942D136D72BC}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "everything", "everything.vcxproj", "{2986281A-BD41-4BD1-8B43-25B7D7E7F234}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "generate_typelibs", "generate_typelibs.vcxproj", "{BE771349-F11E-42AE-A23F-DA083FDC6FB8}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcxproj", "{2093D218-190E-4194-9421-3BA7CBF33B10}" EndProject Global @@ -47,6 +45,14 @@ Global Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|Win32.ActiveCfg = Debug|Win32 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|Win32.Build.0 = Debug|Win32 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|x64.ActiveCfg = Debug|x64 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Debug|x64.Build.0 = Debug|x64 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|Win32.ActiveCfg = Release|Win32 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|Win32.Build.0 = Release|Win32 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|x64.ActiveCfg = Release|x64 + {2093D218-190E-4194-9421-3BA7CBF33B11}.Release|x64.Build.0 = Release|x64 {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|Win32.ActiveCfg = Debug|Win32 {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|Win32.Build.0 = Debug|Win32 {442C007E-D901-41DA-9706-5DB4AFB4C06B}.Debug|x64.ActiveCfg = Debug|x64 @@ -175,22 +181,6 @@ Global {86A35E44-E4C8-4628-87E9-942D136D72BC}.Release|Win32.Build.0 = Release|Win32 {86A35E44-E4C8-4628-87E9-942D136D72BC}.Release|x64.ActiveCfg = Release|x64 {86A35E44-E4C8-4628-87E9-942D136D72BC}.Release|x64.Build.0 = Release|x64 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Debug|Win32.ActiveCfg = Debug|Win32 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Debug|Win32.Build.0 = Debug|Win32 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Debug|x64.ActiveCfg = Debug|x64 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Debug|x64.Build.0 = Debug|x64 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Release|Win32.ActiveCfg = Release|Win32 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Release|Win32.Build.0 = Release|Win32 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Release|x64.ActiveCfg = Release|x64 - {2986281A-BD41-4BD1-8B43-25B7D7E7F234}.Release|x64.Build.0 = Release|x64 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Debug|Win32.ActiveCfg = Debug|Win32 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Debug|Win32.Build.0 = Debug|Win32 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Debug|x64.ActiveCfg = Debug|x64 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Debug|x64.Build.0 = Debug|x64 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Release|Win32.ActiveCfg = Release|Win32 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Release|Win32.Build.0 = Release|Win32 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Release|x64.ActiveCfg = Release|x64 - {BE771349-F11E-42AE-A23F-DA083FDC6FB8}.Release|x64.Build.0 = Release|x64 {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.ActiveCfg = Debug|Win32 {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|Win32.Build.0 = Debug|Win32 {2093D218-190E-4194-9421-3BA7CBF33B10}.Debug|x64.ActiveCfg = Debug|x64 diff --git a/build/win32/vs10/gtkfrob.vcxproj b/build/win32/vs10/gtkfrob.vcxproj index 10297ca1..f3f55ce3 100644 --- a/build/win32/vs10/gtkfrob.vcxproj +++ b/build/win32/vs10/gtkfrob.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/install.vcxproj b/build/win32/vs10/install.vcxproj index 976590e0..73e34f2d 100644 --- a/build/win32/vs10/install.vcxproj +++ b/build/win32/vs10/install.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -105,10 +105,6 @@ {f4e6621f-a7dd-4863-8ccf-ba04dfc601e3} false - - {be771349-f11e-42ae-a23f-da083fdc6fb8} - false - {23e28245-8fc7-4b41-b1c5-8785bd4366a7} false diff --git a/build/win32/vs10/regress.vcxproj b/build/win32/vs10/regress.vcxproj index 052bf0f7..a3b4b48f 100644 --- a/build/win32/vs10/regress.vcxproj +++ b/build/win32/vs10/regress.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -173,6 +173,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/sletter.vcxproj b/build/win32/vs10/sletter.vcxproj index b4b341ff..7f6d62a5 100644 --- a/build/win32/vs10/sletter.vcxproj +++ b/build/win32/vs10/sletter.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/testinherit.vcxproj b/build/win32/vs10/testinherit.vcxproj index 5eab228e..1464d7ba 100644 --- a/build/win32/vs10/testinherit.vcxproj +++ b/build/win32/vs10/testinherit.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + diff --git a/build/win32/vs10/utility.vcxproj b/build/win32/vs10/utility.vcxproj index 044ed9ad..21beb6f7 100644 --- a/build/win32/vs10/utility.vcxproj +++ b/build/win32/vs10/utility.vcxproj @@ -51,19 +51,19 @@ - + - + - + - + @@ -169,6 +169,12 @@ + + + {2093d218-190e-4194-9421-3ba7cbf33b11} + false + + -- cgit v1.2.1