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"
115 AC_SUBST(OTF_LD_FLAGS)
117 # Check for Freetype2 usability.
118 AC_CHECK_PROG(HAVE_FREETYPE_CONFIG, freetype-config, yes)
119 if test "x$HAVE_FREETYPE_CONFIG" = "xyes"; then
120 FREETYPE_INC=`freetype-config --cflags`
121 save_CPPFLAGS=$CPPFLAGS
122 CPPFLAGS="$CPPFLAGS $FREETYPE_INC"
123 AC_CHECK_HEADER(ft2build.h, HAVE_FREETYPE=yes,
124 HAVE_FREETYPE=no CPPFLAGS=$save_CPPFLAGS)
125 if test "x$HAVE_FREETYPE" = "xyes" ; then
127 LIBS="$LIBS `freetype-config --libs`"
128 AC_CHECK_LIB(freetype, FT_Init_FreeType, HAVE_FREETYPE=yes,
131 if test "x$HAVE_FREETYPE" = "xyes"; then
132 FREETYPE_LD_FLAGS=`freetype-config --libtool`
133 AC_DEFINE(HAVE_FREETYPE, 1,
134 [Define to 1 if you have FreeType library and header file.])
138 AC_SUBST(FREETYPE_LD_FLAGS)
140 # Check for Xft2 usability.
141 save_CPPFLAGS="$CPPFLAGS"
143 AC_CHECK_PROG(HAVE_XFT_CONFIG, xft-config, yes)
144 if test "x$HAVE_XFT_CONFIG" = "xyes"; then
145 CPPFLAGS="$CPPFLAGS `xft-config --cflags`"
146 XFT2_LD_FLAGS="`xft-config --libs`"
147 LIBS="$LIBS $XFT2_LD_FLAGS"
149 AC_CHECK_LIB(Xft, XftDrawCreate, HAVE_XFT2=yes, HAVE_XFT2=no)
150 AC_CHECK_HEADER(X11/Xft/Xft.h,, HAVE_XFT2=no,
151 [#include <X11/Xft/Xft.h>
152 #if XftVersion >= 20000
154 Version too old. Compiling this line should fail.
156 if test "x$HAVE_XFT2" = "xyes"; then
157 AC_DEFINE(HAVE_XFT2, 1,
158 [Define to 1 if you have Xft2 library and header file.])
160 CPPFLAGS="$save_CPPFLAGS"
163 AC_SUBST(XFT2_LD_FLAGS)
165 # Check for libxml2 usability.
166 save_CPPFLAGS="$CPPFLAGS"
168 AC_CHECK_PROG(HAVE_XML2_CONFIG, xml2-config, yes)
169 if test "x$HAVE_XML2" = "xyes"; then
170 CPPFLAGS="$CPPFLAGS `xml2-config --cflags`"
171 XML2_LD_FLAGS="`xml2-config --libs`"
172 LIBS="$LIBS $XML2_LD_FLAGS"
174 CPPFLAGS="$CPPFLAGS -I/usr/include/libxml2"
175 XML2_LD_FLAGS="-lxml2 -lz -m"
177 AC_CHECK_LIB(xml2, xmlParseMemory, HAVE_XML2=yes, HAVE_XML2=no)
178 AC_CHECK_HEADER(libxml/tree.h,, HAVE_XML2=no, /**/)
179 if test "x$HAVE_XML2" = "xyes"; then
180 AC_DEFINE(HAVE_XML2, 1,
181 [Define to 1 if you have libxml2 library and header file])
183 CPPFLAGS="$save_CPPFLAGS"
186 AC_SUBST(XML2_LD_FLAGS)
188 # Check for Anthy usability.
189 AC_CHECK_LIB(anthydic, anthy_init_sessions, HAVE_ANTHY=yes, HAVE_ANTHY=no)
190 if test "x$HAVE_ANTHY" = "xyes"; then
191 AC_CHECK_LIB(anthy, anthy_init, HAVE_ANTHY=yes, HAVE_ANTHY=no, -lanthydic)
192 if test "x$HAVE_ANTHY" = "xyes"; then
193 AC_CHECK_HEADER(anthy/anthy.h, HAVE_ANTHY=yes, HAVE_ANTHY=no)
194 if test "x$HAVE_ANTHY" = "xyes"; then
195 AC_DEFINE(HAVE_ANTHY, 1,
196 [Define to 1 if you have Anthy library and header file])
197 ANTHY_LD_FLAGS="-lanthy -lanthydic"
201 AC_SUBST(ANTHY_LD_FLAGS)
203 # Check for Ispell usability.
204 AC_CHECK_PROG(HAVE_ISPELL, ispell, yes)
205 if test "x$HAVE_ISPELL" = "xyes"; then
206 AC_DEFINE(HAVE_ISPELL, 1, [Define if ispell is available.])
209 # Check for libwordcut (for Thai).
210 AC_CHECK_LIB(wordcut, wordcut_init, HAVE_WORDCUT=yes, HAVE_WORDCUT=no)
211 if test "x$HAVE_WORDCUT" = "xyes"; then
212 if test -f "/usr/share/wordcut/tdict.wcd"; then
213 tdict="/usr/share/wordcut/tdict.wcd"
214 elif test -f "/usr/local/share/wordcut/tdict.wcd"; then
215 tdict="/usr/local/share/wordcut/tdict.wcd"
218 if test "x$tdict" != "x"; then
219 AC_DEFINE(HAVE_WORDCUT, 1,
220 [Define if you have the wordcut library and header file])
221 AC_DEFINE_UNQUOTED(WORDCUT_TDICT, "$tdict", [Define to tdict file name])
222 WORDCUT_LD_FLAGS=-lwordcut
225 AC_SUBST(WORDCUT_LD_FLAGS)
228 [ --enable-xom build and install XOM library.],
232 [ --with-efence build example programs with efence.],
234 AC_CHECK_LIB(efence, malloc, HAVE_EFENCE=yes)
236 if test "x$EFENCE" = "xyes" && test "x$HAVE_EFENCE" = "xyes"; then
243 AC_DEFINE(DLOPEN_SHLIB_EXT, ".dylib",
244 [Define to loadable module extention]);;
247 AC_CONFIG_FILES([Makefile
253 if test "x$XOM" = "xyes"; then
254 AC_CONFIG_FILES(omM17N/Makefile)
260 dnl comment-start: "dnl "
262 dnl comment-start-skip: "\\bdnl\\b\\s *"