]> git.wh0rd.org - fontconfig.git/blob - configure.in
Fix configure arguments (bug 45)
[fontconfig.git] / configure.in
1 dnl
2 dnl $Id$
3 dnl
4 dnl Copyright © 2003 Keith Packard
5 dnl
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.
15 dnl
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.
23 dnl
24 dnl Process this file with autoconf to create configure.
25
26 AC_INIT(fonts.dtd)
27
28 dnl ==========================================================================
29 dnl Versioning
30 dnl ==========================================================================
31
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)
37
38 dnl libtool versioning
39
40 LT_CURRENT=1
41 LT_REVISION=4
42 LT_AGE=0
43
44 LT_VERSION_INFO="$LT_CURRENT:$LT_REVISION:$LT_AGE"
45 AC_SUBST(LT_VERSION_INFO)
46
47 dnl ==========================================================================
48
49 AM_CONFIG_HEADER(config.h)
50
51 AC_PROG_CC
52 AC_PROG_INSTALL
53 AC_PROG_LN_S
54 AM_PROG_LIBTOOL
55 AC_PROG_MAKE_SET
56
57 # Checks for header files.
58 AC_HEADER_DIRENT
59 AC_HEADER_STDC
60 AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
61
62 # Checks for typedefs, structures, and compiler characteristics.
63 AC_C_CONST
64 AC_TYPE_PID_T
65
66 # Checks for library functions.
67 AC_FUNC_VPRINTF
68 AC_CHECK_FUNCS([memmove memset strchr strrchr strtol getopt getopt_long])
69
70 #
71 # Checks for FreeType
72 #
73
74 AC_ARG_WITH(freetype-config, [ --with-freetype-config=PROG Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=yes)
75
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/])
80 fi
81 else
82 ft_config="$freetype_config"
83 fi
84
85 FREETYPE_CFLAGS="$($ft_config --cflags)"
86 FREETYPE_LIBS="$($ft_config --libs)"
87
88 AC_SUBST(FREETYPE_LIBS)
89 AC_SUBST(FREETYPE_CFLAGS)
90
91 #
92 # Check to see whether we have FT_Get_First_Char(), new in 2.0.9
93 #
94
95 fontconfig_save_libs=$LIBS
96 LIBS="$LIBS $FREETYPE_LIBS"
97 AC_CHECK_FUNCS(FT_Get_First_Char)
98 LIBS=$fontconfig_save_libs
99
100 #
101 # Check expat configuration
102 #
103
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)
107
108 case "$expat" in
109 no)
110 ;;
111 *)
112 case "$expat_includes" in
113 yes|no)
114 EXPAT_CFLAGS=""
115 ;;
116 *)
117 EXPAT_CFLAGS="-I$expat_includes"
118 ;;
119 esac
120 case "$expat_lib" in
121 yes)
122 case "$expat" in
123 yes)
124 EXPAT_LIBS="-lexpat"
125 ;;
126 *)
127 EXPAT_LIBS="-L$expat/lib -lexpat"
128 ;;
129 esac
130 ;;
131 no)
132 ;;
133 *)
134 EXPAT_LIBS="-L$expat_lib -lexpat"
135 ;;
136 esac
137
138 expatsaved_CPPFLAGS="$CPPFLAGS"
139 CPPFLAGS="$CPPFLAGS $EXPAT_CFLAGS"
140 expatsaved_LIBS="$LIBS"
141 LIBS="$LIBS $EXPAT_LIBS"
142
143 AC_CHECK_HEADER(expat.h)
144 case "$ac_cv_header_expat_h" in
145 no)
146 AC_CHECK_HEADER(xmlparse.h)
147 case "$ac_cv_header_xmlparse_h" in
148 no)
149 have_expat_header=no;
150 ;;
151 yes)
152 HAVE_XMLPARSE_H=1
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
157 ;;
158 esac
159 ;;
160 yes)
161 have_expat_header=yes
162 ;;
163 esac
164 case "$have_expat_header" in
165 no)
166 expat=no
167 ;;
168 yes)
169 AC_CHECK_FUNCS(XML_ParserCreate)
170 case "$ac_cv_func_XML_ParserCreate" in
171 no)
172 expat=no
173 ;;
174 yes)
175 HAVE_EXPAT=1
176 AC_SUBST(HAVE_EXPAT)
177 AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT,
178 [Found a useable expat library])
179 ;;
180 esac
181 ;;
182 esac
183 CPPFLAGS="$saved_CPPFLAGS"
184 LIBS="$saved_LIBS"
185 ;;
186 esac
187 AC_SUBST(EXPAT_LIBS)
188 AC_SUBST(EXPAT_CFLAGS)
189
190 case "$expat" in
191 no)
192 AC_MSG_ERROR([cannot find expat library])
193 ;;
194 esac
195
196 #
197 # Set default font directory
198 #
199
200 AC_ARG_WITH(default-fonts, [ --with-default-fonts=DIR Use fonts from DIR when config is busted], default_fonts="$withval", default_fonts=yes)
201
202 case "$default_fonts" in
203 yes)
204 FC_DEFAULT_FONTS="/usr/share/fonts"
205 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts",
206 [System font directory])
207 ;;
208 *)
209 FC_DEFAULT_FONTS="$default_fonts"
210 AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts",
211 [System font directory])
212 ;;
213 esac
214
215 AC_SUBST(FC_DEFAULT_FONTS)
216
217 #
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
221 #
222 AC_ARG_WITH(add-fonts, [ --with-add-fonts=DIR1,DIR2,...Find additional fonts in DIR1,DIR2,... ], add_fonts="$withval", add_fonts=yes)
223
224 case "$add_fonts" in
225 yes)
226 FC_ADD_FONTS=""
227 for dir in /usr/X11R6/lib/X11 /usr/X11/lib/X11 /usr/lib/X11; do
228 case x"$FC_ADD_FONTS" in
229 x)
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
234 x)
235 FC_ADD_FONTS="$sub"
236 ;;
237 *)
238 FC_ADD_FONTS="$FC_ADD_FONTS,$sub"
239 ;;
240 esac
241 fi
242 done
243 fi
244 ;;
245 esac
246 done
247 AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
248 ;;
249 no)
250 FC_ADD_FONTS=""
251 ;;
252 *)
253 FC_ADD_FONTS="$add_fonts"
254 AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
255 ;;
256 esac
257
258 AC_SUBST(FC_ADD_FONTS)
259
260 FC_FONTPATH=""
261
262 case "$FC_ADD_FONTS" in
263 "")
264 ;;
265 *)
266 FC_FONTPATH=`echo $FC_ADD_FONTS |
267 sed -e 's/^/<dir>/' -e 's/$/<\/dir>/' -e 's/,/<\/dir> <dir>/g'`
268 ;;
269 esac
270
271 AC_SUBST(FC_FONTPATH)
272
273 FC_FONTDATE=`date`
274
275 AC_SUBST(FC_FONTDATE)
276
277 AC_ARG_WITH(confdir, [ --with-confdir=DIR Use DIR to store configuration files (default /etc/fonts)], confdir="$withval", confdir=yes)
278
279 #
280 # Set CONFDIR and FONTCONFIG_PATH
281 #
282
283 case "$confdir" in
284 no|yes)
285 confdir='${sysconfdir}'/fonts
286 ;;
287 *)
288 ;;
289 esac
290 AC_SUBST(confdir)
291 CONFDIR=${confdir}
292 AC_DEFINE_UNQUOTED(CONFDIR, "$CONFDIR",[Font configuration directory])
293 AC_SUBST(CONFDIR)
294
295 #
296 # Find out what language orthographies are included
297 #
298
299 ORTH_FILES=`cd fc-lang && echo *.orth`
300 AC_SUBST(ORTH_FILES)
301
302 #
303 # Let people not build/install docs if they don't have docbook
304 #
305
306 AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
307
308 AC_ARG_ENABLE(docs, [ --disable-docs Don't build and install documentation],,enable_docs=yes)
309
310 if test "x$enable_docs" = xyes; then
311 if test "x$HASDOCBOOK" != xyes; then
312 enable_docs=no
313 fi
314 fi
315
316 AM_CONDITIONAL(ENABLE_DOCS, test "x$enable_docs" = xyes)
317
318 #
319 # Figure out where to install documentation
320 #
321
322 AC_ARG_WITH(docdir, [ --with-docdir=DIR Use DIR to store documentation files (default ${datadir}/doc/fontconfig)], confdir="$withval")
323
324 if test "x$with_docdir" = "x" ; then
325 DOCDIR='${datadir}/doc/fontconfig'
326 else
327 DOCDIR=$with_docdir
328 fi
329
330 AC_SUBST(DOCDIR)
331
332 AC_OUTPUT([
333 Makefile
334 fontconfig/Makefile
335 fc-lang/Makefile
336 src/Makefile
337 fc-cache/Makefile
338 fc-list/Makefile
339 doc/Makefile
340 doc/version.sgml
341 test/Makefile
342 fontconfig.spec
343 fontconfig.pc
344 fonts.conf
345 ])