(ft_check_otf): Define only when HAVE_OTF is defined.
[m17n/m17n-lib.git] / README
1 This directory tree holds version 1.3.0 of the m17n library.    -*- text -*-
2
3 Copyright (C) 2003, 2004, 2005
4   National Institute of Advanced Industrial Science and Technology (AIST)
5   Registration Number H15PRO112
6 See the end for copying conditions.
7
8 The m17n library is a multilingual text processing library for the C
9 language.
10
11
12 (1) INSTALLATION
13
14 (1-1) From CVS working directory.
15
16 Run the script "bootstrap.sh" in this directory.  It is tested that
17 the script run successfully with these versions of autotools.
18
19         libtool-1.4
20         automake-1.4p5
21         autoconf-2.52
22
23 Then, proceed to the next step.
24
25 (1-2) From the tarball.
26
27 The m17n library utilizes these extra libraries.  It is recommended to
28 install all of them before running the "configure" script.  The script
29 will find out the existence of them automatically.
30
31         libxml2         -- http://xmlsoft.org/
32         fribidi         -- http://fribidi.sourceforge.net/
33         freetype        -- http://www.freetype.org/
34         libotf          -- http://www.m17n.org/libotf/
35         fontconfig      -- http://freedesktop.org/Software/fontconfig
36         xft             -- http://freedesktop.org/Software/Xft
37         gd              -- http://www.boutell.com/gd/http/gd-1.8.4.tar.gz
38
39 In addition, for finding a word boundary in Thai text, "configure"
40 checks the existence of these libraries (libthai is preferred):
41
42         libthai         -- http://
43         wordcut         -- http://thaiwordseg.sourceforge.net/
44
45 The sample program m17n-edit utilizes this Japanese inputting system.
46 It is also recommended to install it.
47
48         anthy           -- http://anthy.sourceforge.jp/
49
50 Then, type the followings on the command line.
51
52         % ./configure
53         % make
54         % make install
55
56 Note that this package assumes an ANSI C compiler such as gcc.  It
57 will not compile with an old-style K&R compiler.
58
59 The default installation path is "/usr/local".
60 Thus, these header files are installed in /usr/local/include:
61         m17n-core.h, m17n.h, m17n-gui.h, m17n-err.h, m17n-X.h
62 These library files are installed in /usr/local/lib:
63         libm17n-core.{a,so*,la}
64         libm17n.{a,so*,la}
65         libm17n-gui.{a,so*,la}
66         libm17n-X.{a,so*,la}
67         libm17n-gd.{a,so*,la}
68         libimx-anthy.{a,so*,la},
69         libimx-ispell.{a,so*,la},
70 This shell script is installed in /usr/local/bin:
71         m17n-config
72 These sample programs are installed in /usr/local/bin too:
73         m17n-conv, m17n-date, m17n-view, m17n-dump, m17n-edit
74
75 This file under `example' sub-directory is a Japanese resource file
76 for medit.  It is not installed but useful in Japanese locale.  Copy
77 it to your home directory (or, for instance,
78 /usr/X11R6/lib/X11/ja/app-defaults) and rename it to "M17NEdit" if you
79 want to see labels in Japanese:
80         M17NEdit.ja
81
82 These text files under `example' sub-directory are not installed but
83 useful for testing the rendering engine of the m17n library:
84         HELLO.utf8 HELLO.xml HELLO-ja.utf8 HELLO-ja.xml HELLO.html
85 XXX.xml are generated from XXX.utf8 by attaching text property
86 `language' and serializing.
87
88 Please read also INSTALL for the generic installation instructions.
89
90
91 (2) DATABASE
92
93 The m17n library utilizes the m17n database available at:
94         http://www.m17n.org/m17n-lib/m17n-db
95 Without this database, the m17n library loses half its value.  Please
96 install it (Ver.1.3.0 or the later is required) too before you try the
97 above sample programs or develop a program that uses the m17n library.
98
99
100 (3) DOCUMENTATION
101
102 This page has a link to full documentation of the m17n library:
103         http://www.m17n.org/m17n-lib
104
105 Actually, the documentation was generated by Doxygen using comments in
106 the source files.  There are English and Japanese comments in
107 parallel.
108
109
110 (4) USAGE
111
112 The library provides three levels of APIs, CORE, SHELL, and GUI.  For
113 CORE API, include <m17n-core.h>, for SHELL API, include <m17n.h>, and
114 for GUI API, include <m17n-gui.h >.  See the documentation above, or
115 the manual of m17nIntro(3) for more detail.
116
117 The shell script "m17n-config" helps compiling and linking of a
118 program that uses the m17n library.  For instance this compiles PROG.c
119 that uses SHELL API and builds executable PROG.
120
121         % gcc -o PROG `m17n-config --cflags` `m17n-config --libs` PROG.c
122
123 This compiles PROX.c that uses GUI API and builds executable PROX.
124
125         % gcc -o PROX `m17n-config GUI --cflags` `m17n-config GUI --libs` PROX.c
126
127
128 ----------------------------------------------------------------------
129 Copyright information
130
131 Copyright (C) 2003, 2004, 2005
132   National Institute of Advanced Industrial Science and Technology (AIST)
133   Registration Number H15PRO112
134
135 This file is part of the m17n library.
136
137 The m17n library is free software; you can redistribute it and/or
138 modify it under the terms of the GNU Lesser General Public License
139 as published by the Free Software Foundation; either version 2.1 of
140 the License, or (at your option) any later version.
141
142 The m17n library is distributed in the hope that it will be useful,
143 but WITHOUT ANY WARRANTY; without even the implied warranty of
144 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
145 Lesser General Public License for more details.
146
147 You should have received a copy of the GNU Lesser General Public
148 License along with the m17n library; if not, write to the Free
149 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
150 02111-1307, USA.