2 dnl $XFree86: xc/lib/fontconfig/configure.in,v 1.4 2002/05/23 17:06:46 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'
84 MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
85 DSO_LDOPTS='-shared -h $@'
87 DSO_PIC_CFLAGS='-KPIC -DPIC'
93 AC_SUBST(DSO_PIC_CFLAGS)
96 # Using x libraries, set X font directory
101 X_FONT_DIR="$x_libraries/X11/fonts"
102 AC_DEFINE_UNQUOTED(X_FONT_DIR,$X_FONT_DIR)
108 # Check freetype configuration
110 case "$freetype_config" in
114 AC_CHECK_PROG(ft_config,freetype-config,freetype-config,no)
117 ft_config="$freetype_config"
121 case "$freetype_includes" in
131 FREETYPE_CFLAGS="`$ft_config --cflags`"
136 FREETYPE_CFLAGS="-I$freetype_includes"
140 case "$freetype_lib" in
150 freetype_lib="`$ft_config --libs`"
155 freetype_lib="-L$freetype_lib -lfreetype"
160 LIBS="$LIBS $freetype_lib"
161 saved_CPPFLAGS="$CPPFLAGS"
162 CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS"
163 AC_CHECK_HEADERS(freetype/freetype.h)
165 case "$ac_cv_header_freetype_freetype_h" in
167 CPPFLAGS="$saved_CPPFLAGS"
171 AC_CHECK_FUNCS(FT_Init_FreeType)
172 case "$ac_cv_func_FT_Init_FreeType" in
174 CPPFLAGS="$saved_CPPFLAGS"
178 AC_DEFINE(HAVE_FREETYPE)
179 AC_SUBST(FREETYPE_CFLAGS)
185 case "$default_fonts" in
187 FC_DEFAULT_FONTS="/usr/share/fonts"
188 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts")
191 FC_DEFAULT_FONTS="$default_fonts"
192 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts")
196 AC_SUBST(FC_DEFAULT_FONTS)
199 # Check expat/libxml2 configuration
228 case "$expat_includes" in
230 expat_include_path=""
233 expat_include_path="-I$expat_includes"
240 expat_library="-lexpat"
243 expat_library="-L$expat/lib -lexpat"
250 expat_library="-L$expat_lib -lexpat"
254 saved_CPPFLAGS="$CPPFLAGS"
255 CPPFLAGS="$CPPFLAGS $expat_include_path"
257 LIBS="$LIBS $expat_library"
259 AC_CHECK_HEADER(expat.h)
260 case "$ac_cv_header_expat_h" in
262 AC_CHECK_HEADER(xmlparse.h)
263 case "$ac_cv_header_xmlparse_h" in
265 have_expat_header=no;
269 AC_SUBST(HAVE_XMLPARSE_H)
270 AC_DEFINE_UNQUOTED(HAVE_XMLPARSE_H,$HAVE_XMLPARSE_H)
271 have_expat_header=yes
276 have_expat_header=yes
279 case "$have_expat_header" in
281 CPPFLAGS="$saved_CPPFLAGS"
286 AC_CHECK_FUNCS(XML_ParserCreate)
287 case "$ac_cv_func_XML_ParserCreate" in
289 CPPFLAGS="$saved_CPPFLAGS"
296 AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT)
309 case "$xml2_includes" in
314 xml2_include_path="-I$xml2_includes"
321 xml2_library="-lxml2"
324 xml2_library="-L$xml2/lib -lxml2"
331 xml2_library="-L$xml2_lib -lxml2"
335 saved_CPPFLAGS="$CPPFLAGS"
336 CPPFLAGS="$CPPFLAGS $xml2_include_path"
338 LIBS="$LIBS $xml2_library"
340 AC_CHECK_HEADER(libxml/parser.h)
341 case "$ac_cv_header_libxml_parser_h" in
343 CPPFLAGS="$saved_CPPFLAGS"
348 AC_CHECK_FUNCS(xmlInitParser)
349 case "$ac_cv_func_xmlInitParser" in
351 CPPFLAGS="$saved_CPPFLAGS"
358 AC_DEFINE_UNQUOTED(HAVE_XML2,$HAVE_XML2)
367 case "$expat""$xml2" in
369 AC_MSG_ERROR([cannot find either libxml2 or expat])