blob: feb4e50e25a5bac4475c92fbc60280008fa9628a [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
Werner Lemberg17439422004-08-11 05:25:37 +000011version_info='9:8: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
Werner Lemberg92aa5272005-05-23 21:33:02 +000031 XX_CFLAGS="-Wall"
David Turner74043012000-07-08 00:22:20 +000032 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
Werner Lemberg6eb116e2003-05-11 07:12:26 +0000134 LDFLAGS="$LDFLAGS -Xlinker -framework -Xlinker CoreServices \
135 -Xlinker -framework -Xlinker ApplicationServices"
136else
137 CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
138fi
139
Werner Lemberge42dbce2003-11-09 08:37:14 +0000140
141AC_SUBST([LIBZ])
142AC_SUBST([CFLAGS])
143AC_SUBST([LDFLAGS])
144AC_SUBST([SYSTEM_ZLIB])
145
David Turner621e4882002-12-16 21:51:24 +0000146
Werner Lembergc0c2abe2001-06-07 17:36:17 +0000147AC_PROG_LIBTOOL
Werner Lemberg53a1edd2004-02-08 22:45:48 +0000148# urgh -- these are internal libtool variables...
149AC_SUBST([enable_shared])
150AC_SUBST([hardcode_libdir_flag_spec])
151AC_SUBST([wl])
David Turner74043012000-07-08 00:22:20 +0000152
Werner Lemberge42dbce2003-11-09 08:37:14 +0000153
154# configuration file -- stay in 8.3 limit
155#
156# since #undef doesn't survive in configuration header files we replace
157# `/undef' with `#undef' after creating the output file
158
159AC_CONFIG_HEADERS([ftconfig.h:ftconfig.in],
160 [mv ftconfig.h ftconfig.tmp
161 sed 's|/undef|#undef|' < ftconfig.tmp > ftconfig.h
162 rm ftconfig.tmp])
163
164# create the Unix-specific sub-Makefiles `builds/unix/unix-def.mk'
165# and 'builds/unix/unix-cc.mk' that will be used by the build system
166#
Werner Lemberg3a317c62003-04-28 09:43:32 +0000167AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
168 unix-def.mk:unix-def.in
169 freetype-config
170 freetype2.pc:freetype2.in])
David Turnerce9a0442002-01-08 18:33:55 +0000171
Werner Lemberge42dbce2003-11-09 08:37:14 +0000172# re-generate the Jamfile to use libtool now
173#
174# AC_CONFIG_FILES([../../Jamfile:../../Jamfile.in])
David Turnerce9a0442002-01-08 18:33:55 +0000175
Werner Lembergb3f32102001-06-08 12:19:22 +0000176AC_OUTPUT
David Turner74043012000-07-08 00:22:20 +0000177
Werner Lemberge42dbce2003-11-09 08:37:14 +0000178# end of configure.ac