[cairo-commit] [cairo-www] src/download.mdwn

Carl Worth cworth at freedesktop.org
Tue Jan 22 10:52:57 PST 2008


 src/download.mdwn |   38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)

New commits:
commit 740c93eb50ce413b2e241a5f02a43d55df538aa2
Author: Carl Worth <cworth at freedesktop.org>
Date:   Tue Jan 22 10:52:56 2008 -0800

    web commit by AntoineAzar: Step by step instructions and more details about building in Windows

diff --git a/src/download.mdwn b/src/download.mdwn
index 4978bd6..0e55e59 100644
--- a/src/download.mdwn
+++ b/src/download.mdwn
@@ -145,12 +145,17 @@ check for a git-core package as well), you can get tar files from
 
 ### Git on Windows
 
+You can use Git on Windows either with msysgit or git inside Cygwin. Msysgit is the recommended way to go as the installation is much simpler and it provides a GUI. In all cases, make sure the drive you download the repository on is formatted NTFS, as Git will generate errors on FAT32.
+
+MSYSGIT
+
 See the [msysgit project](http://code.google.com/p/msysgit/) for the
 latest information about git for Windows. You'll find a .exe installer
-for git there, as well as pointers to the cygwin port of git as well.
+for git there, as well as pointers to the cygwin port of git as well. This is all you need to do. 
+
+GIT ON CYGWIN
 
-For users new to Cygwin, it's fairly straight forward to install.
-Simply download and run the Cygwin Setup.exe from its site.  Walk
+Download and run the Cygwin Setup.exe from Cygwin's website.  Walk
 through the initial dialog boxes until you reach the "Select Packages"
 page.  Click the "View" button to display an alphabetical list of
 packages and select the 'git' package.
@@ -179,6 +184,33 @@ source, you *will* need cygwin, but you will only need to select the
 'git' package.  See the [Visual
 Studio](http://cairographics.org/visualstudio/) page for more details.
 
+# Building On Windows
+
+* Download and install zlib. Build zlib from its /projects folder, and use LIB RELEASE configuration.
+* Download and install libpng. Build libpng from its /projects folder and use LIB RELEASE configuration.
+* Install the MozillaBuild environment from here: [MozillaBuild](http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites#MozillaBuild)
+* Copy the cairo-features.h file from [cairofeature.h](http://cairographics.org/visualstudio/) in cairo\src
+* If you chose the default install path, you'll find in c:\mozilla-build several batch files. Open the one corresponding to your version of VC++, and modify the include and lib paths. You'll need to add the zlib and libpng include and lib paths. Also include <your repository>\cairo\src, \cairo\boilerplate, and \pixman\pixman to the include paths
+* Launch the batch file you just modified. It'll open a mingw window. Ignore the error messages that might appear at the top of the window
+* We'll now build everything in debug configuration. For release, replace CFG=debug by CFG=release
+* Browse to pixman's folder (pixman\pixman), and run make -f Makefile.win32 CFG=debug
+* Browse to Cairo's src folder (cairo\src), and run make -f Makefile.win32 static CFG=debug
+* Browse to Cairo's boilerplate folder (cairo\boilerplate), and run make -f Makefile.win32 CFG=debug
+* Browse to Cairo's test pdiff folder (cairo\test\pdiff), and run make -f Makefile.win32
+* Browse to Cairo's test folder (cairo\test), and run make -f Makefile.win32 CFG=debug
+* Browse to Cairo's benchmark folder (cairo\perf), and run make -f Makefile.win32 CFG=debug
+* You're all done!
+
+## Building in Visual Studio
+
+You can create a Visual Studio solution and projects for each of these: pixman, cairo/src, cairo/boilerplate, cairo/test, cairo/perf. Check each project's properties, make them all makefile projects, and set the build command (NMake) as follows. This example applies to cairo/src in release configuration, residing in C:\Work\Cairo\src, with the Mozilla Build Tools installed in C:\mozilla-build:
+
+	C:
+	cd Work\Cairo\src
+	C:\mozilla-build\msys\local\bin\make.exe -f Makefile.win32 CFG=release
+
+Modify the paths and the configuration as needed for the other projects.
+
 ## CVS repository for supporting modules
 Previously, cairo was maintained with cvs. Some of the supporting
 modules for cairo, (such as language bindings), are still maintained


More information about the cairo-commit mailing list