glib/build/win32/vs9
Chun-wei Fan 58c5973a00 MSVC support update for GObject
Apparently GObject now depends on libffi.  Add it to the dependencies list.

For MSVC, use the libffi-3.0.10(rcx) versions.
2011-05-05 12:42:44 +08:00
..
.gitignore gitignore for win32 build stuff 2010-03-21 13:07:36 -05:00
gio.vcprojin Made up for missed source files 2010-11-09 09:08:45 +08:00
glib-compile-schemas.vcproj Add VS 2008 compilation support for some utilities 2011-04-25 13:47:07 +08:00
glib-genmarshal.vcproj Drop empty Tool elements from the project files for clarity 2010-03-21 13:33:44 +02:00
glib.sln Add VS 2008 compilation support for some utilities 2011-04-25 13:47:07 +08:00
glib.vcprojin Some enhancements for Win64 and using existing PCRE installtions 2010-11-09 09:23:47 +08:00
glib.vsprops Add VS 2008 compilation support for some utilities 2011-04-25 13:47:07 +08:00
gmodule.vcproj Updated .def generation for x64 2010-11-09 09:27:27 +08:00
gobject.vcprojin MSVC support update for GObject 2011-05-05 12:42:44 +08:00
gsettings.vcproj Add VS 2008 compilation support for some utilities 2011-04-25 13:47:07 +08:00
gspawn-win32-helper-console.vcproj Drop empty Tool elements from the project files for clarity 2010-03-21 13:33:44 +02:00
gspawn-win32-helper.vcproj Drop empty Tool elements from the project files for clarity 2010-03-21 13:33:44 +02:00
gthread.vcproj Drop empty Tool elements from the project files for clarity 2010-03-21 13:33:44 +02:00
install.vcproj Further work on VS9 project files 2010-02-04 19:59:12 +02:00
Makefile.am Add VS 2008 compilation support for some utilities 2011-04-25 13:47:07 +08:00
README.txt Update VS2008/2010 README.txt 2011-05-01 09:42:22 +08:00
testglib.vcproj Drop empty Tool elements from the project files for clarity 2010-03-21 13:33:44 +02:00

Note that all this is rather experimental.

This VS9 solution and the projects it includes are intented to be used
in a GLib source tree unpacked from a tarball. In a git checkout you
first need to use some Unix-like environment or manual work to expand
the .in files needed, mainly config.h.win32.in into config.h.win32 and
glibconfig.h.win32.in into glibconfig.h.win32. You will also need to
expand the .vcprojin files here into .vcproj files.

The required dependencies are zlib and proxy-libintl. Fetch the latest
proxy-libintl-dev and zlib-dev zipfiles from
http://ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/ for 32-bit
builds, and correspondingly
http://ftp.gnome.org/pub/GNOME/binaries/win64/dependencies/ for 64-bit
builds. 

One may wish to build his/her own ZLib-It is recommended that ZLib is
built using the win32/Makefile.msc makefile with VS9 with the ASM routines
to avoid linking problems-see win32/Makefile.msc in ZLib for more details.

One may optionally use his/her own PCRE installation by selecting the
(BuildType)_ExtPCRE configuration, but please note the PCRE must be built
with VS9 with unicode support using the /MD (release) or /MDd (debug)
runtime option which corresponds to your GLib build flavour (release, debug).
(These are the defaults set by CMAKE, which is used in recent versions of PCRE.)
Not doing so will most probably result in unexpected crashes in 
your programs due to the use of different CRTs.  If using a static PCRE
build, add PCRE_STATIC to the "preprocessor definitions".
Note that one may still continue to build with the bundled PCRE by selecting
the (BuildType) configuration.

Set up the source tree as follows under some arbitrary top
folder <root>:

<root>\glib\<this-glib-source-tree>
<root>\vs9\<PlatformName>

*this* file you are now reading is thus located at
<root>\glib\<this-glib-source-tree>\build\win32\vs9\README.

<PlatformName> is either Win32 or x64, as in VS9 project files.

You should unpack the proxy-libintl-dev zip file into
<root>\vs9\<PlatformName>, so that for instance libintl.h end up at
<root>\vs9\<PlatformName>\include\libintl.h.

The "install" project will copy build results and headers into their
appropriate location under <root>\vs9\<PlatformName>. For instance,
built DLLs go into <root>\vs9\<PlatformName>\bin, built LIBs into
<root>\vs9\<PlatformName>\lib and GLib headers into
<root>\vs9\<PlatformName>\include\glib-2.0. This is then from where
project files higher in the stack are supposed to look for them, not
from a specific GLib source tree.

--Tor Lillqvist <tml@iki.fi>
--Updated by Chun-wei Fan <fanc999@gmail.com>