blob: 5498e574520a87c0caf208807a413beb295b2947 [file] [log] [blame]
Werner Lemberge42dbce2003-11-09 08:37:14 +00001# This file is part of the FreeType project.
2#
3# Process this file with autoconf to produce a configure script.
David Turner74043012000-07-08 00:22:20 +00004
Werner Lembergb3f32102001-06-08 12:19:22 +00005AC_INIT
6AC_CONFIG_SRCDIR([ftconfig.in])
David Turner74043012000-07-08 00:22:20 +00007
David Turner74043012000-07-08 00:22:20 +00008
Werner Lemberge42dbce2003-11-09 08:37:14 +00009# Don't forget to update docs/VERSION.DLL!
10
David Turnerb4e9ca42003-12-19 04:03:50 +000011version_info='9:6:3'
Werner Lemberge42dbce2003-11-09 08:37:14 +000012AC_SUBST([version_info])
Werner Lemberg3de5b072001-03-20 07:52:52 +000013ft_version=`echo $version_info | tr : .`
Werner Lemberge42dbce2003-11-09 08:37:14 +000014AC_SUBST([ft_version])
David Turner74043012000-07-08 00:22:20 +000015
David Turner74043012000-07-08 00:22:20 +000016
Werner Lemberge42dbce2003-11-09 08:37:14 +000017# checks for system type
18
19AC_CANONICAL_TARGET
20
21
22# checks for programs
23
David Turner74043012000-07-08 00:22:20 +000024AC_PROG_CC
25AC_PROG_CPP
26
Werner Lemberge42dbce2003-11-09 08:37:14 +000027
28# get compiler flags right
29
David Turner74043012000-07-08 00:22:20 +000030if test "x$CC" = xgcc; then
31 XX_CFLAGS="-Wall"
32 XX_ANSIFLAGS="-pedantic -ansi"
33else
34 case "$host" in
Werner Lemberge42dbce2003-11-09 08:37:14 +000035 *-dec-osf*)
36 CFLAGS=
37 XX_CFLAGS="-std1 -g3"
38 XX_ANSIFLAGS=
39 ;;
40 *)
41 XX_CFLAGS=
42 XX_ANSIFLAGS=
43 ;;
David Turner74043012000-07-08 00:22:20 +000044 esac
45fi
Werner Lemberge42dbce2003-11-09 08:37:14 +000046AC_SUBST([XX_CFLAGS])
47AC_SUBST([XX_ANSIFLAGS])
David Turner74043012000-07-08 00:22:20 +000048
Werner Lembergfd9777e2000-07-31 10:56:42 +000049
Werner Lemberge42dbce2003-11-09 08:37:14 +000050# auxiliary programs
51
52AC_CHECK_PROG([RMF], [rm], [rm -f])
53AC_CHECK_PROG([RMDIR], [rmdir], [rmdir])
54
55
56# Since this file will be finally moved to another directory we make
57# the path of the install script absolute. This small code snippet has
58# been taken from automake's `ylwrap' script.
59
David Turner74043012000-07-08 00:22:20 +000060AC_PROG_INSTALL
Werner Lembergfd9777e2000-07-31 10:56:42 +000061case "$INSTALL" in
Werner Lemberge42dbce2003-11-09 08:37:14 +000062/*)
63 ;;
64*/*)
65 INSTALL="`pwd`/$INSTALL" ;;
Werner Lembergfd9777e2000-07-31 10:56:42 +000066esac
David Turner74043012000-07-08 00:22:20 +000067
Werner Lemberge42dbce2003-11-09 08:37:14 +000068
69# checks for header files
70
Werner Lembergd060a752000-07-20 06:57:41 +000071AC_HEADER_STDC
Werner Lemberge42dbce2003-11-09 08:37:14 +000072AC_CHECK_HEADERS([fcntl.h unistd.h])
David Turner74043012000-07-08 00:22:20 +000073
Werner Lemberge42dbce2003-11-09 08:37:14 +000074
75# checks for typedefs, structures, and compiler characteristics
76
David Turner74043012000-07-08 00:22:20 +000077AC_C_CONST
Werner Lemberge42dbce2003-11-09 08:37:14 +000078AC_CHECK_SIZEOF([int])
79AC_CHECK_SIZEOF([long])
David Turner74043012000-07-08 00:22:20 +000080
David Turner74043012000-07-08 00:22:20 +000081
Werner Lemberge42dbce2003-11-09 08:37:14 +000082# checks for library functions
83
84# Here we check whether we can use our mmap file component.
85
David Turner74043012000-07-08 00:22:20 +000086AC_FUNC_MMAP
87if test "$ac_cv_func_mmap_fixed_mapped" != yes; then
Werner Lemberg858f3102003-06-09 04:46:30 +000088 FTSYS_SRC='$(BASE_DIR)/ftsystem.c'
David Turner74043012000-07-08 00:22:20 +000089else
Werner Lemberg858f3102003-06-09 04:46:30 +000090 FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
Werner Lembergb1dd3532000-07-31 22:51:00 +000091
Werner Lemberge42dbce2003-11-09 08:37:14 +000092 AC_CHECK_DECLS([munmap],
93 [],
94 [],
95 [
96
97#ifdef HAVE_UNISTD_H
98#include <unistd.h>
99#endif
100#include <sys/mman.h>
101
102 ])
103
Werner Lembergb1dd3532000-07-31 22:51:00 +0000104 FT_MUNMAP_PARAM
David Turner74043012000-07-08 00:22:20 +0000105fi
Werner Lemberge42dbce2003-11-09 08:37:14 +0000106AC_SUBST([FTSYS_SRC])
David Turner74043012000-07-08 00:22:20 +0000107
Werner Lemberge42dbce2003-11-09 08:37:14 +0000108AC_CHECK_FUNCS([memcpy memmove])
David Turner74043012000-07-08 00:22:20 +0000109
Werner Lemberge42dbce2003-11-09 08:37:14 +0000110
111# Check for system zlib
112
113AC_ARG_WITH([zlib],
114 dnl don't quote AS_HELP_STRING!
115 AS_HELP_STRING([--without-zlib],
116 [use internal zlib instead of system-wide]))
David Turner621e4882002-12-16 21:51:24 +0000117if test x$with_zlib != xno && test -z "$LIBZ"; then
Werner Lemberge42dbce2003-11-09 08:37:14 +0000118 AC_CHECK_LIB([z], [gzsetparams], [AC_CHECK_HEADER([zlib.h], [LIBZ='-lz'])])
David Turner621e4882002-12-16 21:51:24 +0000119fi
120if test x$with_zlib != xno && test -n "$LIBZ"; then
121 CFLAGS="$CFLAGS -DFT_CONFIG_OPTION_SYSTEM_ZLIB"
David Turner19b6b992002-12-23 22:40:21 +0000122 LDFLAGS="$LDFLAGS $LIBZ"
David Turner621e4882002-12-16 21:51:24 +0000123 SYSTEM_ZLIB=yes
124fi
Werner Lemberg6eb116e2003-05-11 07:12:26 +0000125
Werner Lemberge42dbce2003-11-09 08:37:14 +0000126
127# Whether to use Mac OS resource-based fonts or not
128
129AC_ARG_WITH([old-mac-fonts],
130 dnl don't quote AS_HELP_STRING!
131 AS_HELP_STRING([--with-old-mac-fonts],
132 [allow Mac resource-based fonts to be used]))
Werner Lemberg6eb116e2003-05-11 07:12:26 +0000133if test x$with_old_mac_fonts = xyes; then
134 CFLAGS="$CFLAGS -DTARGET_API_MAC_CARBON"
135 LDFLAGS="$LDFLAGS -Xlinker -framework -Xlinker CoreServices \
136 -Xlinker -framework -Xlinker ApplicationServices"
137else
138 CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
139fi
140
Werner Lemberge42dbce2003-11-09 08:37:14 +0000141
142AC_SUBST([LIBZ])
143AC_SUBST([CFLAGS])
144AC_SUBST([LDFLAGS])
145AC_SUBST([SYSTEM_ZLIB])
146
David Turner621e4882002-12-16 21:51:24 +0000147
Werner Lembergc0c2abe2001-06-07 17:36:17 +0000148AC_PROG_LIBTOOL
Werner Lemberg53a1edd2004-02-08 22:45:48 +0000149# urgh -- these are internal libtool variables...
150AC_SUBST([enable_shared])
151AC_SUBST([hardcode_libdir_flag_spec])
152AC_SUBST([wl])
David Turner74043012000-07-08 00:22:20 +0000153
Werner Lemberge42dbce2003-11-09 08:37:14 +0000154
155# configuration file -- stay in 8.3 limit
156#
157# since #undef doesn't survive in configuration header files we replace
158# `/undef' with `#undef' after creating the output file
159
160AC_CONFIG_HEADERS([ftconfig.h:ftconfig.in],
161 [mv ftconfig.h ftconfig.tmp
162 sed 's|/undef|#undef|' < ftconfig.tmp > ftconfig.h
163 rm ftconfig.tmp])
164
165# create the Unix-specific sub-Makefiles `builds/unix/unix-def.mk'
166# and 'builds/unix/unix-cc.mk' that will be used by the build system
167#
Werner Lemberg3a317c62003-04-28 09:43:32 +0000168AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
169 unix-def.mk:unix-def.in
170 freetype-config
171 freetype2.pc:freetype2.in])
David Turnerce9a0442002-01-08 18:33:55 +0000172
Werner Lemberge42dbce2003-11-09 08:37:14 +0000173# re-generate the Jamfile to use libtool now
174#
175# AC_CONFIG_FILES([../../Jamfile:../../Jamfile.in])
David Turnerce9a0442002-01-08 18:33:55 +0000176
Werner Lembergb3f32102001-06-08 12:19:22 +0000177AC_OUTPUT
David Turner74043012000-07-08 00:22:20 +0000178
Werner Lemberge42dbce2003-11-09 08:37:14 +0000179# end of configure.ac