Merge branch 'devel/x11' into tizen
[platform/upstream/libXfont.git] / configure.ac
1 #  Copyright © 2003 Keith Packard
2 #
3 #  Permission to use, copy, modify, distribute, and sell this software and its
4 #  documentation for any purpose is hereby granted without fee, provided that
5 #  the above copyright notice appear in all copies and that both that
6 #  copyright notice and this permission notice appear in supporting
7 #  documentation, and that the name of Keith Packard not be used in
8 #  advertising or publicity pertaining to distribution of the software without
9 #  specific, written prior permission.  Keith Packard makes no
10 #  representations about the suitability of this software for any purpose.  It
11 #  is provided "as is" without express or implied warranty.
12 #
13 #  KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
14 #  INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
15 #  EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
16 #  CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
17 #  DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 #  TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 #  PERFORMANCE OF THIS SOFTWARE.
20 #
21
22 # Initialize Autoconf
23 AC_PREREQ([2.60])
24 AC_INIT([libXfont], [1.5.0],
25         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [libXfont])
26 AC_CONFIG_SRCDIR([Makefile.am])
27 AC_CONFIG_HEADERS([config.h include/X11/fonts/fontconf.h])
28
29 # Initialize Automake
30 AM_INIT_AUTOMAKE([foreign dist-bzip2])
31
32 # Set common system defines for POSIX extensions, such as _GNU_SOURCE
33 # Must be called before any macros that run the compiler (like
34 # AC_PROG_LIBTOOL) to avoid autoconf errors.
35 AC_USE_SYSTEM_EXTENSIONS
36
37 # Initialize libtool
38 AC_PROG_LIBTOOL
39
40 # Require xorg-macros minimum of 1.10 for DocBook XML documentation
41 m4_ifndef([XORG_MACROS_VERSION],
42           [m4_fatal([must install xorg-macros 1.10 or later before running autoconf/autogen])])
43 XORG_MACROS_VERSION(1.10)
44 XORG_DEFAULT_OPTIONS
45 XORG_ENABLE_DEVEL_DOCS
46 XORG_WITH_XMLTO(0.0.22)
47 XORG_WITH_FOP
48 XORG_CHECK_SGML_DOCTOOLS(1.7)
49
50 # Checks for header files.
51 AC_CHECK_HEADERS([endian.h poll.h sys/poll.h])
52
53 # Checks for library functions.
54 AC_CHECK_FUNCS([poll readlink])
55
56 # If the first PKG_CHECK_MODULES appears inside a conditional, pkg-config
57 # must first be located explicitly.
58 PKG_PROG_PKG_CONFIG
59
60 #
61 # select libraries to include
62 #
63
64 XFONT_FONTFILE=no
65
66 #
67 # FreeType for all scalable (OpenType, TrueType, PostScript) and
68 # some bitmap formats (BDF & PCF)
69 #
70 AC_ARG_ENABLE(freetype,
71         AS_HELP_STRING([--disable-freetype],
72                 [Build freetype backend (default: enabled)]),
73         [XFONT_FREETYPE=$enableval],[XFONT_FREETYPE=yes])
74 AM_CONDITIONAL(XFONT_FREETYPE, [test x$XFONT_FREETYPE = xyes])
75 if test x$XFONT_FREETYPE = xyes; then
76         AC_DEFINE(XFONT_FREETYPE,1,[Support FreeType rasterizer for nearly all font file formats])
77         AC_ARG_WITH(freetype-config,
78                 AS_HELP_STRING([--with-freetype-config=PROG],
79                         [Use FreeType configuration program PROG]),
80                 [freetype_config=$withval], [freetype_config=auto])
81
82         if test "$freetype_config" = "auto" ; then
83                 PKG_CHECK_MODULES(FREETYPE, freetype2,
84                         freetype_config=no, freetype_config=yes)
85         fi
86
87         if test "$freetype_config" = "yes"; then
88                 AC_PATH_PROG(ft_config,freetype-config,no)
89                 if test "$ft_config" = "no"; then
90                         AC_MSG_ERROR([You must have freetype installed; see http://www.freetype.org/])
91                 fi
92         else
93                 ft_config="$freetype_config"
94         fi
95
96         if test "$freetype_config" != "no"; then
97                 FREETYPE_CFLAGS="`$ft_config --cflags`"
98                 FREETYPE_LIBS="`$ft_config --libs`"
99         fi
100         FREETYPE_REQUIRES="freetype2"
101         XFONT_FONTFILE=yes
102 else
103         FREETYPE_CFLAGS=""
104         FREETYPE_LIBS=""
105         FREETYPE_REQUIRES=""
106 fi
107 AC_SUBST(FREETYPE_LIBS)
108 AC_SUBST(FREETYPE_CFLAGS)
109 AC_SUBST(FREETYPE_REQUIRES)
110
111 #
112 # Bitmap fonts in files:
113 #       Builtins (gzipped pcf format in .text segment)
114 #       PCF
115 #       BDF
116 #       SNF
117 #
118
119 AC_DEFINE(X_GZIP_FONT_COMPRESSION,1,[Support gzip for bitmap fonts])
120 X_GZIP_FONT_COMPRESSION=1
121 AC_SUBST(X_GZIP_FONT_COMPRESSION)
122 AC_CHECK_LIB(z, gzopen, [Z_LIBS=-lz], AC_MSG_ERROR([*** zlib is required]))
123
124 AC_ARG_WITH(bzip2,
125         AS_HELP_STRING([--with-bzip2],
126           [Use libbz2 to support bzip2 compressed bitmap fonts (default: no)]),
127         [], [with_bzip2=no])
128 if test "x$with_bzip2" = xyes; then
129         AC_CHECK_LIB(bz2, BZ2_bzopen, [Z_LIBS="$Z_LIBS -lbz2"],
130                 AC_MSG_ERROR([*** libbz2 is required for bzip2 support]))
131         AC_DEFINE(X_BZIP2_FONT_COMPRESSION,1,[Support bzip2 for bitmap fonts])
132 fi
133 AM_CONDITIONAL(X_BZIP2_FONT_COMPRESSION, [test "x$with_bzip2" = xyes ])
134 AC_SUBST(Z_LIBS)
135
136 AC_ARG_ENABLE(builtins,
137         AS_HELP_STRING([--disable-builtins],
138                 [Support builtin fonts (default: enabled)]),
139         [XFONT_BUILTINS=$enableval], [XFONT_BUILTINS=yes])
140 AM_CONDITIONAL(XFONT_BUILTINS, [test "x$XFONT_BUILTINS" = xyes ])
141 if test "x$XFONT_BUILTINS" = xyes; then
142         AC_DEFINE(XFONT_BUILTINS,1,[Support built-in fonts])
143         XFONT_BITMAP=yes
144 fi
145
146 AC_ARG_ENABLE(pcfformat,
147         AS_HELP_STRING([--disable-pcfformat],
148                 [Support PCF format bitmap fonts (default: enabled)]),
149         [XFONT_PCFFORMAT=$enableval], [XFONT_PCFFORMAT=yes])
150 AM_CONDITIONAL(XFONT_PCFFORMAT, [test "x$XFONT_PCFFORMAT" = xyes])
151 if test "x$XFONT_PCFFORMAT" = xyes; then
152         AC_DEFINE(XFONT_PCFFORMAT,1,[Support pcf format bitmap font files])
153         XFONT_BITMAP=yes
154 fi
155
156 AM_CONDITIONAL(XFONT_PCF_OR_BUILTIN,
157         [test "x$XFONT_PCFFORMAT" = xyes -o "x$XFONT_BUILTINS" = xyes])
158
159 AC_ARG_ENABLE(bdfformat,
160         AS_HELP_STRING([--disable-bdfformat],
161                 [Support BDF format bitmap fonts (default: enabled)]),
162         [XFONT_BDFFORMAT=$enableval], [XFONT_BDFFORMAT=yes])
163 AM_CONDITIONAL(XFONT_BDFFORMAT, [test "x$XFONT_BDFFORMAT" = xyes])
164 if test "x$XFONT_BDFFORMAT" = xyes; then
165         AC_DEFINE(XFONT_BDFFORMAT,1,[Support bdf format bitmap font files])
166         XFONT_BITMAP=yes
167 fi
168
169 AC_ARG_ENABLE(snfformat,
170         AS_HELP_STRING([--enable-snfformat],
171                 [Support SNF format bitmap fonts (default: disabled)]),
172         [XFONT_SNFFORMAT=$enableval], [XFONT_SNFFORMAT=no])
173 AM_CONDITIONAL(XFONT_SNFFORMAT, [test "x$XFONT_SNFFORMAT" = xyes])
174 if test "x$XFONT_SNFFORMAT" = xyes; then
175         AC_DEFINE(XFONT_SNFFORMAT,1,[Support snf format bitmap font files])
176         XFONT_BITMAP=yes
177 fi
178
179 AM_CONDITIONAL(XFONT_BITMAP, [test "x$XFONT_BITMAP" = xyes ])
180 if test "x$XFONT_BITMAP" = xyes; then
181         AC_DEFINE(XFONT_BITMAP,1,[Support bitmap font files])
182         XFONT_FONTFILE=yes
183 fi
184
185 AM_CONDITIONAL(XFONT_FONTFILE, [test "x$XFONT_FONTFILE" = xyes])
186 if test "x$XFONT_FONTFILE" = xyes; then
187         AC_DEFINE(XFONT_FONTFILE,1,[Support fonts in files])
188 fi
189
190 #
191 # Support connection to font servers?
192 #
193
194 AC_ARG_ENABLE(fc,
195         AS_HELP_STRING([--disable-fc],
196                 [Support connections to xfs servers (default: enabled)]),
197         [XFONT_FC=$enableval],[XFONT_FC=yes])
198 AM_CONDITIONAL(XFONT_FC, [test "x$XFONT_FC" = xyes])
199 if test "x$XFONT_FC" = xyes; then
200         AC_DEFINE(XFONT_FC,1,[Support the X Font Services Protocol])
201 fi
202
203
204 AC_CHECK_LIB(m, hypot, [MATH_LIBS=-lm
205 AC_SUBST(MATH_LIBS)], AC_MSG_ERROR([*** libm is required]))
206
207 PKG_CHECK_MODULES(XFONT, [xproto xtrans fontsproto >= 2.1.3 fontenc])
208
209 # Transport selection macro from xtrans.m4
210 XTRANS_CONNECTION_FLAGS
211
212 case $host_os in
213     linux*)
214         OS_CFLAGS="-D_XOPEN_SOURCE"
215         ;;
216     darwin*)
217         OS_CFLAGS="-Wl,-flat_namespace"
218         ;;
219     *)
220         OS_CFLAGS=
221         ;;
222 esac
223 AC_SUBST([OS_CFLAGS])
224
225 AC_CONFIG_FILES([Makefile
226                 doc/Makefile
227                 src/Makefile
228                 src/fontfile/Makefile
229                 src/FreeType/Makefile
230                 src/builtins/Makefile
231                 src/bitmap/Makefile
232                 src/fc/Makefile
233                 src/util/Makefile
234                 src/stubs/Makefile
235                 xfont.pc])
236 AC_OUTPUT