2 dnl $XFree86: xc/lib/fontconfig/configure.in,v 1.6 2002/06/07 17:55:41 keithp Exp $
4 dnl Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc.
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.
25 # Process this file with autoconf to produce a configure script.
26 AC_INIT(fontconfig, 1.0.1, fonts@xfree86.org)
27 AC_CONFIG_AUX_DIR(config)
28 AC_CONFIG_HEADER(config.h)
30 AC_ARG_WITH(freetype_includes, [ --with-freetype-includes=DIR Use FreeType includes in DIR], freetype_includes=$withval, freetype_includes=yes)
31 AC_ARG_WITH(freetype_lib, [ --with-freetype-lib=DIR Use FreeType library in DIR], freetype_lib=$withval, freetype_lib=yes)
32 AC_ARG_WITH(freetype_config, [ --with-freetype-config=PROG Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=yes)
33 AC_ARG_WITH(expat, [ --with-expat=DIR Use Expat in DIR instead of xml2], expat=$withval, expat=maybe)
34 AC_ARG_WITH(expat_includes, [ --with-expat-includes=DIR Use Expat includes in DIR], expat_includes=$withval, expat_includes=yes)
35 AC_ARG_WITH(expat_lib, [ --with-expat-lib=DIR Use Expat library in DIR], expat_lib=$withval, expat_lib=yes)
36 AC_ARG_WITH(xml2, [ --with-xml2=DIR Use Libxml2 in DIR instead of expat], xml2=$withval, xml2=maybe)
37 AC_ARG_WITH(xml2_includes, [ --with-xml2-includes=DIR Use Libxml2 includes in DIR], xml2_includes=$withval, xml2_includes=yes)
38 AC_ARG_WITH(xml2_lib, [ --with-xml2-lib=DIR Use Libxml2 library in DIR], xml2_lib=$withval, xml2_lib=yes)
39 AC_ARG_WITH(default_fonts, [ --with-default-fonts=DIR Use fonts from DIR when config is busted], defaultfonts="$withval", default_fonts=yes)
41 # Checks for programs.
50 PACKAGE_MAJOR=`echo $PACKAGE_VERSION | awk -F . '{ print $1 }'`
51 PACKAGE_MINOR=`echo $PACKAGE_VERSION | awk -F . '{ print $2 }'`
52 PACKAGE_REVISION=`echo $PACKAGE_VERSION | awk -F . '{ print $3 }'`
53 AC_SUBST(PACKAGE_VERSION)
54 AC_SUBST(PACKAGE_MAJOR)
55 AC_SUBST(PACKAGE_MINOR)
56 AC_SUBST(PACKAGE_REVISION)
61 AC_DEFINE_UNQUOTED(PACKAGE_MAJOR,$PACKAGE_MAJOR)
62 AC_DEFINE_UNQUOTED(PACKAGE_MINOR,$PACKAGE_MINOR)
63 AC_DEFINE_UNQUOTED(PACKAGE_REVISION,$PACKAGE_REVISION)
65 # Checks for header files.
68 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
70 # Checks for typedefs, structures, and compiler characteristics.
74 # Checks for library functions.
76 AC_CHECK_FUNCS([memmove memset strchr strrchr strtol getopt getopt_long])
78 if test "$GCC" = "yes"; then
79 MKSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
80 DSO_LDOPTS='-shared -Wl,-h,`echo $@ | sed '"'s/\.so\.\([[0-9][0-9]]*\).*/.so.\1/'"'`'
82 DSO_PIC_CFLAGS='-fPIC -DPIC'
86 MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
88 DSO_PIC_CFLAGS='-KPIC -DPIC'
92 DSO_LDOPTS='-G -z text -z defs -h $@'
96 DSO_LDOPTS='-shared -h $@'
104 AC_SUBST(DSO_PIC_CFLAGS)
107 # Using x libraries, set X font directory
112 X_FONT_DIR="$x_libraries/X11/fonts"
113 AC_DEFINE_UNQUOTED(X_FONT_DIR,$X_FONT_DIR)
119 # Check freetype configuration
121 case "$freetype_config" in
125 AC_CHECK_PROG(ft_config,freetype-config,freetype-config,no)
128 ft_config="$freetype_config"
132 case "$freetype_includes" in
142 FREETYPE_CFLAGS="`$ft_config --cflags`"
147 FREETYPE_CFLAGS="-I$freetype_includes"
151 case "$freetype_lib" in
161 freetype_lib="`$ft_config --libs`"
166 freetype_lib="-L$freetype_lib -lfreetype"
171 LIBS="$LIBS $freetype_lib"
172 saved_CPPFLAGS="$CPPFLAGS"
173 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
174 AC_CHECK_HEADERS(freetype/freetype.h)
176 case "$ac_cv_header_freetype_freetype_h" in
178 CPPFLAGS="$saved_CPPFLAGS"
182 AC_CHECK_FUNCS(FT_Init_FreeType)
183 case "$ac_cv_func_FT_Init_FreeType" in
185 CPPFLAGS="$saved_CPPFLAGS"
189 AC_DEFINE(HAVE_FREETYPE)
190 AC_SUBST(FREETYPE_CFLAGS)
196 case "$default_fonts" in
198 FC_DEFAULT_FONTS="/usr/share/fonts"
199 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts")
202 FC_DEFAULT_FONTS="$default_fonts"
203 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts")
207 AC_SUBST(FC_DEFAULT_FONTS)
210 # Set CONFDIR and FONTCONFIG_PATH
213 CONFDIR="$sysconfdir/fonts"
214 AC_DEFINE_UNQUOTED(CONFDIR, "$CONFDIR")
217 FONTCONFIG_PATH="$CONFDIR"
218 AC_DEFINE_UNQUOTED(FONTCONFIG_PATH, "$CONFDIR")
219 AC_SUBST(FONTCONFIG_PATH)
222 # Check expat/libxml2 configuration
251 case "$expat_includes" in
253 expat_include_path=""
256 expat_include_path="-I$expat_includes"
263 expat_library="-lexpat"
266 expat_library="-L$expat/lib -lexpat"
273 expat_library="-L$expat_lib -lexpat"
277 saved_CPPFLAGS="$CPPFLAGS"
278 CPPFLAGS="$CPPFLAGS $expat_include_path"
280 LIBS="$LIBS $expat_library"
282 AC_CHECK_HEADER(expat.h)
283 case "$ac_cv_header_expat_h" in
285 AC_CHECK_HEADER(xmlparse.h)
286 case "$ac_cv_header_xmlparse_h" in
288 have_expat_header=no;
292 AC_SUBST(HAVE_XMLPARSE_H)
293 AC_DEFINE_UNQUOTED(HAVE_XMLPARSE_H,$HAVE_XMLPARSE_H)
294 have_expat_header=yes
299 have_expat_header=yes
302 case "$have_expat_header" in
304 CPPFLAGS="$saved_CPPFLAGS"
309 AC_CHECK_FUNCS(XML_ParserCreate)
310 case "$ac_cv_func_XML_ParserCreate" in
312 CPPFLAGS="$saved_CPPFLAGS"
319 AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT)
332 case "$xml2_includes" in
337 xml2_include_path="-I$xml2_includes"
344 xml2_library="-lxml2"
347 xml2_library="-L$xml2/lib -lxml2"
354 xml2_library="-L$xml2_lib -lxml2"
358 saved_CPPFLAGS="$CPPFLAGS"
359 CPPFLAGS="$CPPFLAGS $xml2_include_path"
361 LIBS="$LIBS $xml2_library"
363 AC_CHECK_HEADER(libxml/parser.h)
364 case "$ac_cv_header_libxml_parser_h" in
366 CPPFLAGS="$saved_CPPFLAGS"
371 AC_CHECK_FUNCS(xmlInitParser)
372 case "$ac_cv_func_xmlInitParser" in
374 CPPFLAGS="$saved_CPPFLAGS"
381 AC_DEFINE_UNQUOTED(HAVE_XML2,$HAVE_XML2)
390 case "$expat""$xml2" in
392 AC_MSG_ERROR([cannot find either libxml2 or expat])