/
configure.in
264 lines (216 loc) · 6.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Process this file with autoconf to produce a configure script.
AC_INIT(physfs.c)
dnl ---------------------------------------------------------------------
dnl System/version info
dnl ---------------------------------------------------------------------
# Making releases:
# MICRO_VERSION += 1;
# INTERFACE_AGE += 1;
# BINARY_AGE += 1;
# if any functions have been added, set INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set BINARY_AGE and INTERFACE_AGE to 0.
MAJOR_VERSION=0
MINOR_VERSION=1
18
MICRO_VERSION=6
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
INTERFACE_AGE=0
BINARY_AGE=0
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION
AC_SUBST(MAJOR_VERSION)
AC_SUBST(MINOR_VERSION)
AC_SUBST(MICRO_VERSION)
AC_SUBST(INTERFACE_AGE)
AC_SUBST(BINARY_AGE)
AC_SUBST(VERSION)
# libtool versioning
LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION
LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE`
LT_REVISION=$INTERFACE_AGE
LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE`
AC_SUBST(LT_RELEASE)
AC_SUBST(LT_CURRENT)
AC_SUBST(LT_REVISION)
AC_SUBST(LT_AGE)
dnl Detect the canonical host and target build environment
42
AC_CANONICAL_BUILD
43
44
45
46
47
48
49
50
51
52
53
54
55
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
dnl Setup for automake
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE(physfs, $VERSION)
dnl ---------------------------------------------------------------------
dnl Compilers and other tools
dnl ---------------------------------------------------------------------
AC_PROG_CC
56
AC_PROG_CXX
57
58
AC_PROG_INSTALL
AC_PROG_LN_S
59
AC_LIBTOOL_WIN32_DLL
60
61
LIBTOOL="libtool"
AM_PROG_LIBTOOL
62
AC_CHECK_PROG(we_have_sed, sed, yes, no)
63
64
65
66
67
68
dnl ---------------------------------------------------------------------
dnl Debug mode?
dnl ---------------------------------------------------------------------
AC_ARG_ENABLE(debug,
69
70
[ --enable-debug enable debug mode [default=yes]],
, enable_debug=yes)
71
72
73
74
75
76
if test x$enable_debug = xyes; then
if test x$ac_cv_prog_cc_g = xyes; then
CFLAGS="-g -O0"
else
CFLAGS="-O0"
fi
77
CFLAGS="$CFLAGS -Werror -Wall"
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
AC_DEFINE(DEBUG)
AC_DEFINE(DEBUG_CHATTER)
else
CFLAGS="-O2"
AC_DEFINE(NDEBUG)
fi
dnl ---------------------------------------------------------------------
dnl Build test program?
dnl ---------------------------------------------------------------------
AC_ARG_ENABLE(testprog,
[ --enable-testprog build test program [default=yes]],
, enable_testprog=yes)
dnl ---------------------------------------------------------------------
dnl Checks for libraries.
dnl ---------------------------------------------------------------------
99
100
101
102
103
104
105
dnl !!! FIXME: Not sure how to detect this...
dnl check for 64-bit llseek()...
dnl AC_CHECK_LIB(c, llseek, have_llseek=yes)
if test x$have_llseek = xyes; then
AC_DEFINE(PHYSFS_HAVE_LLSEEK)
fi
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
require_zlib="no"
dnl Check for zip archiver inclusion...
AC_ARG_ENABLE(zip,
[ --enable-zip enable ZIP support [default=yes]],
, enable_zip=yes)
if test x$enable_zip = xyes; then
AC_DEFINE(PHYSFS_SUPPORTS_ZIP)
require_zlib="yes"
fi
dnl Check for zip archiver inclusion...
AC_ARG_ENABLE(grp,
[ --enable-grp enable Build Engine GRP support [default=yes]],
, enable_grp=yes)
if test x$enable_grp = xyes; then
AC_DEFINE(PHYSFS_SUPPORTS_GRP)
fi
AC_ARG_ENABLE(internal-zlib,
[ --enable-internal-zlib use included zlib [default=only if needed]],
, enable_internal_zlib=maybe)
dnl Check for zlib if needed.
have_external_zlib="no"
if test x$enable_internal_zlib != xyes; then
if test x$require_zlib = xyes; then
AC_CHECK_HEADER(zlib.h, have_zlib_hdr=yes)
AC_CHECK_LIB(z, zlibVersion, have_zlib_lib=yes)
if test x$have_zlib_hdr = xyes -a x$have_zlib_lib = xyes; then
have_external_zlib="yes"
fi
fi
fi
AC_MSG_CHECKING([what zlib to use])
dnl no zlib is needed at all if we aren't supporting ZIP files.
if test x$require_zlib = xno; then
enable_internal_zlib="no"
enable_external_zlib="no"
AC_MSG_RESULT([no zlib needed])
else
if test x$enable_internal_zlib = xmaybe; then
if test x$have_external_zlib = xyes; then
enable_internal_zlib="no"
enable_external_zlib="yes"
else
enable_internal_zlib="yes"
enable_external_zlib="no"
fi
else
if test x$enable_internal_zlib = xno -a x$have_external_zlib = xyes; then
enable_internal_zlib="no"
enable_external_zlib="yes"
fi
fi
if test x$enable_internal_zlib = xyes; then
AC_MSG_RESULT([internal zlib])
else
if test x$enable_external_zlib = xyes; then
AC_MSG_RESULT([external zlib])
LIBS="$LIBS -lz"
else
AC_MSG_ERROR([Need zlib, but you disabled our copy and have no system lib])
fi
fi
fi
dnl determine if we should include readline support...
AC_ARG_ENABLE(readline,
[ --enable-readline use GNU readline in test program [default=yes]],
, enable_readline=yes)
if test x$enable_readline = xyes; then
AC_CHECK_HEADER(readline/readline.h, have_readline_hdr=yes)
186
AC_CHECK_LIB(readline, readline, have_readline_lib=yes, , -lcurses)
187
AC_CHECK_HEADER(readline/history.h, have_history_hdr=yes)
188
AC_CHECK_LIB(readline, add_history, have_history_lib=yes, , -lcurses)
189
190
191
if test x$have_readline_hdr = xyes -a x$have_readline_lib = xyes; then
if test x$have_history_hdr = xyes -a x$have_history_lib = xyes; then
AC_DEFINE(PHYSFS_HAVE_READLINE)
192
LIBS="$LIBS -lreadline -lcurses"
193
194
195
196
fi
fi
fi
197
198
199
200
dnl AC_CHECK_HEADER(be/kernel/OS.h, this_is_beos=yes)
AC_MSG_CHECKING([if this is BeOS])
if test x$build_os = xbeos; then
this_is_beos=yes
201
LIBS="$LIBS -lroot -lbe"
202
203
204
205
206
207
else
this_is_beos=no
fi
AC_MSG_RESULT([$this_is_beos])
208
209
210
211
212
213
214
215
216
217
AC_MSG_CHECKING([if this is Cygwin])
if test x$build_os = xcygwin; then
this_is_cygwin=yes
CFLAGS="$CFLAGS -DWIN32"
else
this_is_cygwin=no
fi
AC_MSG_RESULT([$this_is_cygwin])
218
219
220
221
222
223
224
225
226
this_is_macosx=no
if test x$we_have_sed = xyes; then
AC_MSG_CHECKING([if this is MacOS X])
x=`echo $build_os |sed "s/darwin.*/darwin/"`
if test x$x = xdarwin -a x$build_vendor = xapple; then
this_is_macosx=yes
fi
AC_MSG_RESULT([$this_is_macosx])
227
fi
228
229
230
231
232
233
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([stdlib.h string.h])
# Checks for typedefs, structures, and compiler characteristics.
234
235
dnl AC_C_CONST
dnl AC_TYPE_SIZE_T
236
237
238
239
240
241
242
243
244
245
246
247
# Checks for library functions.
# This is only in the bleeding edge autoconf distro...
#AC_FUNC_MALLOC
AC_FUNC_MEMCMP
AC_CHECK_FUNCS([memset strrchr])
dnl Add Makefile conditionals
AM_CONDITIONAL(BUILD_ZLIB, test x$enable_internal_zlib = xyes)
AM_CONDITIONAL(BUILD_TEST_PHYSFS, test x$enable_testprog = xyes)
248
AM_CONDITIONAL(BUILD_MACOSX, test x$this_is_macosx = xyes)
249
AM_CONDITIONAL(BUILD_BEOS, test x$this_is_beos = xyes)
250
AM_CONDITIONAL(BUILD_CYGWIN, test x$this_is_cygwin = xyes)
251
252
253
LDFLAGS="$LDFLAGS -no-undefined"
254
255
AC_OUTPUT([
Makefile
256
257
258
259
260
archivers/Makefile
platform/Makefile
zlib114/Makefile
test/Makefile
extras/Makefile
261
])
262
263
dnl end of configure.in ...