Git init
[external/pango1.0.git] / README.win32
1 The Pango backends written for Win32 is pangowin32. Pangowin32 uses
2 the Win32 GDI font API. GTK+ 2.8 and later on Win32 however actually
3 uses the pangocairo backend (which then uses only small parts of
4 pangowin32). Much of the GDI font API calls are in cairo.
5
6 The pangoft2 backend was originally written with Win32 in mind, but
7 its main use nowadays is on other platforms than Win32.
8
9 There are two ways to build Pango for Win32:
10
11 1) Use gcc (mingw), libtool, make, like on Unix.
12
13 If building from CVS, run the autogen.sh script that runs aclocal,
14 automake, autoconf and configure to build makefiles etc. This is what
15 tml@novell.com uses. Pass the same switches to autogen.sh that you
16 would pass to the configure script.
17
18 If building from a tarball, just running the configure script and then
19 make should be enough. But, as always, you need to understand what is
20 happening and follow the progress in case manual intervention is
21 needed.
22
23 If you want to support complex scripts (which you should!), you need
24 the usp10.h header from the Platform SDK. Otherwise the basic-win32
25 shaper module won' use Uniscribe and for instance Arabic and Indic
26 scripts will look like crap. (Yes, complex script support *is*
27 important. It is one of the main selling points of GTK+ and Pango.)
28 Pass the --with-usp10 flag to the configure script to tell it where
29 you have the Platform SDK (or other source of an "usp10.h" or
30 "include/usp10.h" file).
31
32 tml ran the configure script like this when building binaries for
33 Pango 1.10.0:
34
35 PATH=/devel/dist/glib-2.8.0/bin:$PATH ACLOCAL_FLAGS="-I /devel/dist/glib-2.8.0/share/aclocal" PKG_CONFIG_PATH=/devel/dist/glib-2.8.0/lib/pkgconfig:$PKG_CONFIG_PATH CC='gcc -mtune=pentium3' CPPFLAGS='-I/opt/gnu/include' LDFLAGS='-L/opt/gnu/lib' CFLAGS=-O ./configure --disable-gtk-doc --with-usp10=/opt/psdk  --without-x --prefix=c:/devel/target/pango-1.10.0
36
37 The pango.modules file tends not to get automatically set up correctly
38 on Win32. Check that. Also make sure you set up a pango.aliases file
39 if you want to support non-Latin scripts. pango.aliases file used by
40 tml looks like this:
41
42 tahoma = "tahoma,browallia new,mingliu,simhei,gulimche,ms gothic,latha,mangal"
43 sans = "arial,browallia new,mingliu,simhei,gulimche,ms gothic,latha,mangal"
44 serif = "times new roman,angsana new,mingliu,simsun,gulimche,ms gothic,latha,mangal"
45 monospace = "courier new,courier monothai,mingliu,simsun,gulimche,ms gothic,latha,mangal"
46
47 2) Use MSVC and nmake. Use the makefile.msc makefiles. These makefiles
48 are supported by Hans Breuer. They requires manual editing. You need
49 to have the source code to some suitable version of glib in a sibling
50 directory. Ask Hans for advice.