4 dnl Copyright © 2003 Keith Packard
6 dnl Permission to use, copy, modify, distribute, and sell this software and its
7 dnl documentation for any purpose is hereby granted without fee, provided that
8 dnl the above copyright notice appear in all copies and that both that
9 dnl copyright notice and this permission notice appear in supporting
10 dnl documentation, and that the name of Keith Packard not be used in
11 dnl advertising or publicity pertaining to distribution of the software without
12 dnl specific, written prior permission. Keith Packard makes no
13 dnl representations about the suitability of this software for any purpose. It
14 dnl is provided "as is" without express or implied warranty.
16 dnl KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
17 dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18 dnl EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
19 dnl CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
20 dnl DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
21 dnl TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
22 dnl PERFORMANCE OF THIS SOFTWARE.
24 dnl Process this file with autoconf to create configure.
28 dnl ==========================================================================
30 dnl ==========================================================================
32 dnl This is the package version number, not the shared library
33 dnl version. This same version number must appear in fontconfig/fontconfig.h
34 dnl Yes, it is a pain to synchronize version numbers. Unfortunately, it's
35 dnl not possible to extract the version number here from fontconfig.h
36 AM_INIT_AUTOMAKE(fontconfig, 2.1.92)
38 dnl libtool versioning
44 LT_VERSION_INFO="$LT_CURRENT:$LT_REVISION:$LT_AGE"
45 AC_SUBST(LT_VERSION_INFO)
47 dnl ==========================================================================
49 AM_CONFIG_HEADER(config.h)
57 # Checks for header files.
60 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
62 # Checks for typedefs, structures, and compiler characteristics.
66 # Checks for library functions.
68 AC_CHECK_FUNCS([memmove memset strchr strrchr strtol getopt getopt_long])
74 AC_ARG_WITH(freetype-config, [ --with-freetype-config=PROG Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=yes)
76 if test "$freetype_config" = "yes"; then
77 AC_PATH_PROG(ft_config,freetype-config,no)
78 if test "$ft_config" = "no"; then
79 AC_MSG_ERROR([You must have freetype installed; see http://www.freetype.org/])
82 ft_config="$freetype_config"
85 FREETYPE_CFLAGS="$($ft_config --cflags)"
86 FREETYPE_LIBS="$($ft_config --libs)"
88 AC_SUBST(FREETYPE_LIBS)
89 AC_SUBST(FREETYPE_CFLAGS)
92 # Check to see whether we have FT_Get_First_Char(), new in 2.0.9
95 fontconfig_save_libs=$LIBS
96 LIBS="$LIBS $FREETYPE_LIBS"
97 AC_CHECK_FUNCS(FT_Get_First_Char)
98 LIBS=$fontconfig_save_libs
101 # Check expat configuration
104 AC_ARG_WITH(expat, [ --with-expat=DIR Use Expat in DIR], expat=$withval, expat=yes)
105 AC_ARG_WITH(expat-includes, [ --with-expat-includes=DIR Use Expat includes in DIR], expat_includes=$withval, expat_includes=yes)
106 AC_ARG_WITH(expat-lib, [ --with-expat-lib=DIR Use Expat library in DIR], expat_lib=$withval, expat_lib=yes)
112 case "$expat_includes" in
117 EXPAT_CFLAGS="-I$expat_includes"
127 EXPAT_LIBS="-L$expat/lib -lexpat"
134 EXPAT_LIBS="-L$expat_lib -lexpat"
138 expatsaved_CPPFLAGS="$CPPFLAGS"
139 CPPFLAGS="$CPPFLAGS $EXPAT_CFLAGS"
140 expatsaved_LIBS="$LIBS"
141 LIBS="$LIBS $EXPAT_LIBS"
143 AC_CHECK_HEADER(expat.h)
144 case "$ac_cv_header_expat_h" in
146 AC_CHECK_HEADER(xmlparse.h)
147 case "$ac_cv_header_xmlparse_h" in
149 have_expat_header=no;
153 AC_SUBST(HAVE_XMLPARSE_H)
154 AC_DEFINE_UNQUOTED(HAVE_XMLPARSE_H,$HAVE_XMLPARSE_H,
155 [Use xmlparse.h instead of expat.h])
156 have_expat_header=yes
161 have_expat_header=yes
164 case "$have_expat_header" in
169 AC_CHECK_FUNCS(XML_ParserCreate)
170 case "$ac_cv_func_XML_ParserCreate" in
177 AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT,
178 [Found a useable expat library])
183 CPPFLAGS="$saved_CPPFLAGS"
188 AC_SUBST(EXPAT_CFLAGS)
192 AC_MSG_ERROR([cannot find expat library])
197 # Set default font directory
200 AC_ARG_WITH(default-fonts, [ --with-default-fonts=DIR Use fonts from DIR when config is busted], default_fonts="$withval", default_fonts=yes)
202 case "$default_fonts" in
204 FC_DEFAULT_FONTS="/usr/share/fonts"
205 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts",
206 [System font directory])
209 FC_DEFAULT_FONTS="$default_fonts"
210 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts",
211 [System font directory])
215 AC_SUBST(FC_DEFAULT_FONTS)
218 # Add more fonts if available. By default, add only the directories
219 # with outline fonts; those with bitmaps can be added as desired in
220 # local.conf or ~/.fonts.conf
222 AC_ARG_WITH(add-fonts, [ --with-add-fonts=DIR1,DIR2,...Find additional fonts in DIR1,DIR2,... ], add_fonts="$withval", add_fonts=yes)
227 for dir in /usr/X11R6/lib/X11 /usr/X11/lib/X11 /usr/lib/X11; do
228 case x"$FC_ADD_FONTS" in
230 if test -d "$dir/fonts"; then
231 for sub in "$dir"/fonts/*; do
232 if ls "$sub" | grep -q -i '\.pf\|\.tt\|.ot'; then
233 case x$FC_ADD_FONTS in
238 FC_ADD_FONTS="$FC_ADD_FONTS,$sub"
247 AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
253 FC_ADD_FONTS="$add_fonts"
254 AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
258 AC_SUBST(FC_ADD_FONTS)
262 case "$FC_ADD_FONTS" in
266 FC_FONTPATH=`echo $FC_ADD_FONTS |
267 sed -e 's/^/<dir>/' -e 's/$/<\/dir>/' -e 's/,/<\/dir> <dir>/g'`
271 AC_SUBST(FC_FONTPATH)
275 AC_SUBST(FC_FONTDATE)
277 AC_ARG_WITH(confdir, [ --with-confdir=DIR Use DIR to store configuration files (default /etc/fonts)], confdir="$withval", confdir=yes)
280 # Set CONFDIR and FONTCONFIG_PATH
285 confdir='${sysconfdir}'/fonts
292 AC_DEFINE_UNQUOTED(CONFDIR, "$CONFDIR",[Font configuration directory])
296 # Find out what language orthographies are included
299 ORTH_FILES=`cd fc-lang && echo *.orth`
303 # Let people not build/install docs if they don't have docbook
306 AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
308 AC_ARG_ENABLE(docs, [ --disable-docs Don't build and install documentation],,enable_docs=yes)
310 if test "x$enable_docs" = xyes; then
311 if test "x$HASDOCBOOK" != xyes; then
316 AM_CONDITIONAL(ENABLE_DOCS, test "x$enable_docs" = xyes)
319 # Figure out where to install documentation
322 AC_ARG_WITH(docdir, [ --with-docdir=DIR Use DIR to store documentation files (default ${datadir}/doc/fontconfig)], confdir="$withval")
324 if test "x$with_docdir" = "x" ; then
325 DOCDIR='${datadir}/doc/fontconfig'