1 dnl configure.ac -- autoconf script for the m17n library.
3 dnl Copyright (C) 2003, 2004
4 dnl National Institute of Advanced Industrial Science and Technology (AIST)
5 dnl Registration Number H15PRO112
7 dnl This file is part of the m17n library.
9 dnl The m17n library is free software; you can redistribute it and/or
10 dnl modify it under the terms of the GNU Lesser General Public License
11 dnl as published by the Free Software Foundation; either version 2.1 of
12 dnl the License, or (at your option) any later version.
14 dnl The m17n library is distributed in the hope that it will be useful,
15 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
16 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 dnl Lesser General Public License for more details.
19 dnl You should have received a copy of the GNU Lesser General Public
20 dnl License along with the m17n library; if not, write to the Free
21 dnl Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
24 dnl Process this file with autoconf to produce a configure script.
26 AC_INIT(m17n-lib, 1.0.2, m17n-lib-bug@m17n.org)
27 AM_INIT_AUTOMAKE(m17n-lib, 1.0.2)
28 AM_CONFIG_HEADER(src/config.h)
30 # Checks for programs for compiling.
33 AC_LIBLTDL_CONVENIENCE
36 # Checks for X libraries.
39 # Checks for standard header files.
43 AC_CHECK_HEADERS([fcntl.h langinfo.h limits.h locale.h stdlib.h \
44 string.h strings.h sys/time.h unistd.h])
46 # Checks for typedefs, structures, and compiler characteristics.
52 # Checks for endian. This influence the default UTF-16 definition.
55 # Checks for library functions.
64 AC_CHECK_FUNCS(memmove memset nl_langinfo putenv regcomp setlocale)
65 AC_CHECK_FUNCS(strchr strdup gettimeofday)
67 # Check several libraries without adding -lxxx to LIBS, without
68 # defining HAVE_LIBXXX nor HAVE_XXX_H because they are used only for
69 # libm17-X.so. Instead, define XXX_LD_FLAGS and HAVE_XXX if library
70 # XXX is available. CPPFLAGS will be augmented.
72 # Check for fribidi library.
73 save_CPPFLAGS="$CPPFLAGS"
75 AC_CHECK_PROG(HAVE_FRIBIDI_CONFIG, fribidi-config, yes)
76 if test "$HAVE_FRIBIDI_CONFIG" = "xyes"; then
77 CPPFLAGS="$CPPFLAGS `fribidi-config --cflags`"
78 FRIBIDI_LD_FLAGS="`fribidi-config --libs`"
79 LIBS="$LIBS $FRIBIDI_LD_FLAGS"
81 FRIBIDI_LD_FLAGS=-lfribidi
83 AC_CHECK_LIB(fribidi, fribidi_set_mirroring, HAVE_FRIBIDI=yes, HAVE_FRIBIDI=no)
84 AC_CHECK_HEADER(fribidi/fribidi.h,, HAVE_FRIBIDI=no)
85 if test "x$HAVE_FRIBIDI" = "xyes"; then
86 AC_DEFINE(HAVE_FRIBIDI, 1,
87 [Define to 1 if you have Fribidi library and header file.])
89 CPPFLAGS="$save_CPPFLAGS"
92 AC_SUBST(FRIBIDI_LD_FLAGS)
94 # Check for otflib usability.
95 save_CPPFLAGS="$CPPFLAGS"
97 AC_CHECK_PROG(HAVE_OTFLIB_CONFIG, libotf-config, yes)
98 if test "x$HAVE_OTFLIB_CONFIG" = "xyes"; then
99 CPPFLAGS="$CPPFLAGS `libotf-config --cflags`"
100 OTF_LD_FLAGS="`libotf-config --libs` "
101 LIBS="$LIBS $OTF_LD_FLAGS"
105 AC_CHECK_LIB(otf, OTF_open, HAVE_OTF=yes, HAVE_OTF=no)
106 AC_CHECK_HEADER(otf.h,, HAVE_OTF=no)
107 CPPFLAGS="$save_CPPFLAGS"
108 if test "x$HAVE_OTF" = "xyes"; then
109 AC_DEFINE(HAVE_OTF, 1,
110 [Define to 1 if you have OTF library and header file.])
112 CPPFLAGS="$save_CPPFLAGS"
116 AC_SUBST(OTF_LD_FLAGS)
118 # Check for Freetype2 usability.
119 AC_CHECK_PROG(HAVE_FREETYPE_CONFIG, freetype-config, yes)
120 if test "x$HAVE_FREETYPE_CONFIG" = "xyes"; then
121 FREETYPE_INC=`freetype-config --cflags`
122 save_CPPFLAGS="$CPPFLAGS"
123 CPPFLAGS="$CPPFLAGS $FREETYPE_INC"
124 AC_CHECK_HEADER(ft2build.h, HAVE_FREETYPE=yes,
125 HAVE_FREETYPE=no CPPFLAGS="$save_CPPFLAGS")
126 if test "x$HAVE_FREETYPE" = "xyes" ; then
128 LIBS="$LIBS `freetype-config --libs`"
129 AC_CHECK_LIB(freetype, FT_Init_FreeType, HAVE_FREETYPE=yes,
132 if test "x$HAVE_FREETYPE" = "xyes"; then
133 FREETYPE_LD_FLAGS=`freetype-config --libtool`
134 AC_DEFINE(HAVE_FREETYPE, 1,
135 [Define to 1 if you have FreeType library and header file.])
139 AC_SUBST(FREETYPE_LD_FLAGS)
141 # Check for Xft2 usability.
142 save_CPPFLAGS="$CPPFLAGS"
144 AC_CHECK_PROG(HAVE_XFT_CONFIG, xft-config, yes)
145 if test "x$HAVE_XFT_CONFIG" = "xyes"; then
146 CPPFLAGS="$CPPFLAGS `xft-config --cflags`"
147 XFT2_LD_FLAGS="`xft-config --libs`"
148 LIBS="$LIBS $XFT2_LD_FLAGS"
150 XFT2_LD_FLAGS="-lXft -lfreetype -lfontconfig -lXrender -lX11"
152 AC_CHECK_LIB(Xft, XftDrawCreate, HAVE_XFT2=yes, HAVE_XFT2=no)
153 AC_CHECK_HEADER(X11/Xft/Xft.h,, HAVE_XFT2=no,
154 [#include <X11/Xft/Xft.h>
155 #if XftVersion >= 20000
157 Version too old. Compiling this line should fail.
159 if test "x$HAVE_XFT2" = "xyes"; then
160 AC_DEFINE(HAVE_XFT2, 1,
161 [Define to 1 if you have Xft2 library and header file.])
163 CPPFLAGS="$save_CPPFLAGS"
166 AC_SUBST(XFT2_LD_FLAGS)
168 # Check for fontconfig usability.
169 save_CPPFLAGS="$CPPFLAGS"
171 if test "x$HAVE_XFT2" = "xyes"; then
174 AC_CHECK_PROG(HAVE_PKG_CONFIG, pkg-config, yes)
175 FONTCONFIG_LD_FLAGS=-lfontconfig
176 if test "x$HAVE_PKG_CONFIG" = "xyes"; then
177 if pkg-config --exists fontconfig; then
178 CPPFLAGS="$CPPFLAGS `pkg-config --cflags fontconfig`"
179 FONTCONFIG_LD_FLAGS="`pkg-conifg --libs fontconfig`"
180 LIBS="$LIBS $FONTCONFIG_LD_FLAGS"
183 AC_CHECK_LIB(fontconfig, HAVE_FONTCONFIG=yes, HAVE_FONTCONFIG=no)
184 AC_CHECK_HEADER(fontconfig/fontconfig.h, , HAVE_FONTCONFIG=no)
186 if test "x$HAVE_FONTCONFIG" = "xyes"; then
187 AC_DEFINE(HAVE_FONTCONFIG, 1,
188 [Define to 1 if you have fontconfig library and header file.])
191 CPPFLAGS="$save_CPPFLAGS"
194 AC_SUBST(FONTCONFIG_LD_FLAGS)
196 # Check for libxml2 usability.
197 save_CPPFLAGS="$CPPFLAGS"
199 AC_CHECK_PROG(HAVE_XML2_CONFIG, xml2-config, yes)
200 if test "x$HAVE_XML2_CONFIG" = "xyes"; then
201 CPPFLAGS="$CPPFLAGS `xml2-config --cflags`"
202 XML2_LD_FLAGS="`xml2-config --libs`"
203 LIBS="$LIBS $XML2_LD_FLAGS"
205 CPPFLAGS="$CPPFLAGS -I/usr/include/libxml2"
206 XML2_LD_FLAGS="-lxml2 -lz -lpthread -lm"
208 AC_CHECK_LIB(xml2, xmlParseMemory, HAVE_XML2=yes, HAVE_XML2=no)
209 AC_CHECK_HEADER(libxml/tree.h,, HAVE_XML2=no, /**/)
210 if test "x$HAVE_XML2" = "xyes"; then
211 AC_DEFINE(HAVE_XML2, 1,
212 [Define to 1 if you have libxml2 library and header file])
214 CPPFLAGS="$save_CPPFLAGS"
217 AC_SUBST(XML2_LD_FLAGS)
219 # Check for Anthy usability.
220 AC_CHECK_LIB(anthydic, anthy_init_sessions, HAVE_ANTHY=yes, HAVE_ANTHY=no)
221 if test "x$HAVE_ANTHY" = "xyes"; then
222 AC_CHECK_LIB(anthy, anthy_init, HAVE_ANTHY=yes, HAVE_ANTHY=no, -lanthydic)
223 if test "x$HAVE_ANTHY" = "xyes"; then
224 AC_CHECK_HEADER(anthy/anthy.h, HAVE_ANTHY=yes, HAVE_ANTHY=no)
225 if test "x$HAVE_ANTHY" = "xyes"; then
226 AC_DEFINE(HAVE_ANTHY, 1,
227 [Define to 1 if you have Anthy library and header file])
228 ANTHY_LD_FLAGS="-lanthy -lanthydic"
232 AC_SUBST(ANTHY_LD_FLAGS)
234 # Check for Ispell usability.
235 AC_CHECK_PROG(HAVE_ISPELL, ispell, yes)
236 if test "x$HAVE_ISPELL" = "xyes"; then
237 AC_DEFINE(HAVE_ISPELL, 1, [Define if ispell is available.])
240 # Check for libwordcut (for Thai).
241 AC_CHECK_LIB(wordcut, wordcut_init, HAVE_WORDCUT=yes, HAVE_WORDCUT=no)
242 if test "x$HAVE_WORDCUT" = "xyes"; then
243 if test -f "/usr/share/wordcut/tdict.wcd"; then
244 tdict="/usr/share/wordcut/tdict.wcd"
245 elif test -f "/usr/local/share/wordcut/tdict.wcd"; then
246 tdict="/usr/local/share/wordcut/tdict.wcd"
249 if test "x$tdict" != "x"; then
250 AC_DEFINE(HAVE_WORDCUT, 1,
251 [Define if you have the wordcut library and header file])
252 AC_DEFINE_UNQUOTED(WORDCUT_TDICT, "$tdict", [Define to tdict file name])
253 WORDCUT_LD_FLAGS=-lwordcut
256 AC_SUBST(WORDCUT_LD_FLAGS)
258 dnl AC_ARG_ENABLE(xom,
259 dnl [ --enable-xom build and install XOM library.],
260 dnl XOM="$enableval")
264 AC_DEFINE(DLOPEN_SHLIB_EXT, ".dylib",
265 [Define to loadable module extention]);;
268 AC_CONFIG_FILES([Makefile
274 dnl if test "x$XOM" = "xyes"; then
275 dnl AC_CONFIG_FILES(omM17N/Makefile)
281 dnl comment-start: "dnl "
283 dnl comment-start-skip: "\\bdnl\\b\\s *"