author | Ryan C. Gordon <icculus@icculus.org> |
Tue, 11 Jun 2002 08:49:53 +0000 | |
changeset 283 | c966316c8998 |
parent 269 | d41c0a399a99 |
child 285 | 6e4b9538d99c |
permissions | -rw-r--r-- |
213 | 1 |
# Process this file with autoconf to produce a configure script. |
2 |
AC_INIT(physfs.c) |
|
3 |
||
4 |
dnl --------------------------------------------------------------------- |
|
5 |
dnl System/version info |
|
6 |
dnl --------------------------------------------------------------------- |
|
7 |
||
8 |
# Making releases: |
|
9 |
# MICRO_VERSION += 1; |
|
10 |
# INTERFACE_AGE += 1; |
|
11 |
# BINARY_AGE += 1; |
|
12 |
# if any functions have been added, set INTERFACE_AGE to 0. |
|
13 |
# if backwards compatibility has been broken, |
|
14 |
# set BINARY_AGE and INTERFACE_AGE to 0. |
|
15 |
||
16 |
MAJOR_VERSION=0 |
|
17 |
MINOR_VERSION=1 |
|
237
2abc99254366
Upped version to 0.1.6
Ryan C. Gordon <icculus@icculus.org>
parents:
234
diff
changeset
|
18 |
MICRO_VERSION=6 |
213 | 19 |
INTERFACE_AGE=0 |
20 |
BINARY_AGE=0 |
|
21 |
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION |
|
22 |
||
23 |
AC_SUBST(MAJOR_VERSION) |
|
24 |
AC_SUBST(MINOR_VERSION) |
|
25 |
AC_SUBST(MICRO_VERSION) |
|
26 |
AC_SUBST(INTERFACE_AGE) |
|
27 |
AC_SUBST(BINARY_AGE) |
|
28 |
AC_SUBST(VERSION) |
|
29 |
||
30 |
# libtool versioning |
|
31 |
LT_RELEASE=$MAJOR_VERSION.$MINOR_VERSION |
|
32 |
LT_CURRENT=`expr $MICRO_VERSION - $INTERFACE_AGE` |
|
33 |
LT_REVISION=$INTERFACE_AGE |
|
34 |
LT_AGE=`expr $BINARY_AGE - $INTERFACE_AGE` |
|
35 |
||
36 |
AC_SUBST(LT_RELEASE) |
|
37 |
AC_SUBST(LT_CURRENT) |
|
38 |
AC_SUBST(LT_REVISION) |
|
39 |
AC_SUBST(LT_AGE) |
|
40 |
||
41 |
dnl Detect the canonical host and target build environment |
|
42 |
AC_CANONICAL_HOST |
|
43 |
AC_CANONICAL_TARGET |
|
44 |
||
45 |
dnl Setup for automake |
|
46 |
AM_CONFIG_HEADER(config.h) |
|
47 |
AM_INIT_AUTOMAKE(physfs, $VERSION) |
|
48 |
||
49 |
||
50 |
dnl --------------------------------------------------------------------- |
|
51 |
dnl Compilers and other tools |
|
52 |
dnl --------------------------------------------------------------------- |
|
53 |
||
54 |
AC_PROG_CC |
|
234 | 55 |
AC_PROG_CXX |
213 | 56 |
AC_PROG_INSTALL |
57 |
AC_PROG_LN_S |
|
58 |
AC_PROG_LIBTOOL |
|
59 |
||
60 |
||
61 |
dnl --------------------------------------------------------------------- |
|
62 |
dnl Debug mode? |
|
63 |
dnl --------------------------------------------------------------------- |
|
64 |
||
65 |
AC_ARG_ENABLE(debug, |
|
216
d297da72cd4e
--enable-debug is default.
Ryan C. Gordon <icculus@icculus.org>
parents:
214
diff
changeset
|
66 |
[ --enable-debug enable debug mode [default=yes]], |
d297da72cd4e
--enable-debug is default.
Ryan C. Gordon <icculus@icculus.org>
parents:
214
diff
changeset
|
67 |
, enable_debug=yes) |
213 | 68 |
if test x$enable_debug = xyes; then |
69 |
if test x$ac_cv_prog_cc_g = xyes; then |
|
70 |
CFLAGS="-g -O0" |
|
71 |
else |
|
72 |
CFLAGS="-O0" |
|
73 |
fi |
|
252
5e537265e682
Added -Wall to debug builds.
Ryan C. Gordon <icculus@icculus.org>
parents:
241
diff
changeset
|
74 |
CFLAGS="$CFLAGS -Werror -Wall" |
213 | 75 |
AC_DEFINE(DEBUG) |
76 |
AC_DEFINE(DEBUG_CHATTER) |
|
77 |
else |
|
78 |
CFLAGS="-O2" |
|
79 |
AC_DEFINE(NDEBUG) |
|
80 |
fi |
|
81 |
||
82 |
||
83 |
dnl --------------------------------------------------------------------- |
|
84 |
dnl Build test program? |
|
85 |
dnl --------------------------------------------------------------------- |
|
86 |
||
87 |
AC_ARG_ENABLE(testprog, |
|
88 |
[ --enable-testprog build test program [default=yes]], |
|
89 |
, enable_testprog=yes) |
|
90 |
||
91 |
||
92 |
dnl --------------------------------------------------------------------- |
|
93 |
dnl Checks for libraries. |
|
94 |
dnl --------------------------------------------------------------------- |
|
95 |
||
261
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
96 |
dnl !!! FIXME: Not sure how to detect this... |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
97 |
dnl check for 64-bit llseek()... |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
98 |
dnl AC_CHECK_LIB(c, llseek, have_llseek=yes) |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
99 |
if test x$have_llseek = xyes; then |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
100 |
AC_DEFINE(PHYSFS_HAVE_LLSEEK) |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
101 |
fi |
9e1647c75ae0
64-bit _llseek() detection code.
Ryan C. Gordon <icculus@icculus.org>
parents:
252
diff
changeset
|
102 |
|
213 | 103 |
require_zlib="no" |
104 |
||
105 |
dnl Check for zip archiver inclusion... |
|
106 |
AC_ARG_ENABLE(zip, |
|
107 |
[ --enable-zip enable ZIP support [default=yes]], |
|
108 |
, enable_zip=yes) |
|
109 |
if test x$enable_zip = xyes; then |
|
110 |
AC_DEFINE(PHYSFS_SUPPORTS_ZIP) |
|
111 |
require_zlib="yes" |
|
112 |
fi |
|
113 |
||
114 |
||
115 |
dnl Check for zip archiver inclusion... |
|
116 |
AC_ARG_ENABLE(grp, |
|
117 |
[ --enable-grp enable Build Engine GRP support [default=yes]], |
|
118 |
, enable_grp=yes) |
|
119 |
if test x$enable_grp = xyes; then |
|
120 |
AC_DEFINE(PHYSFS_SUPPORTS_GRP) |
|
121 |
fi |
|
122 |
||
123 |
||
124 |
AC_ARG_ENABLE(internal-zlib, |
|
125 |
[ --enable-internal-zlib use included zlib [default=only if needed]], |
|
126 |
, enable_internal_zlib=maybe) |
|
127 |
||
128 |
dnl Check for zlib if needed. |
|
129 |
have_external_zlib="no" |
|
130 |
if test x$enable_internal_zlib != xyes; then |
|
131 |
if test x$require_zlib = xyes; then |
|
132 |
AC_CHECK_HEADER(zlib.h, have_zlib_hdr=yes) |
|
133 |
AC_CHECK_LIB(z, zlibVersion, have_zlib_lib=yes) |
|
134 |
if test x$have_zlib_hdr = xyes -a x$have_zlib_lib = xyes; then |
|
135 |
have_external_zlib="yes" |
|
136 |
fi |
|
137 |
fi |
|
138 |
fi |
|
139 |
||
140 |
AC_MSG_CHECKING([what zlib to use]) |
|
141 |
||
142 |
dnl no zlib is needed at all if we aren't supporting ZIP files. |
|
143 |
if test x$require_zlib = xno; then |
|
144 |
enable_internal_zlib="no" |
|
145 |
enable_external_zlib="no" |
|
146 |
AC_MSG_RESULT([no zlib needed]) |
|
147 |
else |
|
148 |
||
149 |
if test x$enable_internal_zlib = xmaybe; then |
|
150 |
if test x$have_external_zlib = xyes; then |
|
151 |
enable_internal_zlib="no" |
|
152 |
enable_external_zlib="yes" |
|
153 |
else |
|
154 |
enable_internal_zlib="yes" |
|
155 |
enable_external_zlib="no" |
|
156 |
fi |
|
157 |
else |
|
158 |
if test x$enable_internal_zlib = xno -a x$have_external_zlib = xyes; then |
|
159 |
enable_internal_zlib="no" |
|
160 |
enable_external_zlib="yes" |
|
161 |
fi |
|
162 |
fi |
|
163 |
||
164 |
if test x$enable_internal_zlib = xyes; then |
|
165 |
AC_MSG_RESULT([internal zlib]) |
|
166 |
else |
|
167 |
if test x$enable_external_zlib = xyes; then |
|
168 |
AC_MSG_RESULT([external zlib]) |
|
169 |
LIBS="$LIBS -lz" |
|
170 |
else |
|
171 |
AC_MSG_ERROR([Need zlib, but you disabled our copy and have no system lib]) |
|
172 |
fi |
|
173 |
fi |
|
174 |
fi |
|
175 |
||
176 |
||
177 |
dnl determine if we should include readline support... |
|
178 |
AC_ARG_ENABLE(readline, |
|
179 |
[ --enable-readline use GNU readline in test program [default=yes]], |
|
180 |
, enable_readline=yes) |
|
181 |
if test x$enable_readline = xyes; then |
|
182 |
AC_CHECK_HEADER(readline/readline.h, have_readline_hdr=yes) |
|
218
9415dcace296
readline detection fixes by Edward Rudd.
Ryan C. Gordon <icculus@icculus.org>
parents:
216
diff
changeset
|
183 |
AC_CHECK_LIB(readline, readline, have_readline_lib=yes, , -lcurses) |
213 | 184 |
AC_CHECK_HEADER(readline/history.h, have_history_hdr=yes) |
218
9415dcace296
readline detection fixes by Edward Rudd.
Ryan C. Gordon <icculus@icculus.org>
parents:
216
diff
changeset
|
185 |
AC_CHECK_LIB(readline, add_history, have_history_lib=yes, , -lcurses) |
213 | 186 |
if test x$have_readline_hdr = xyes -a x$have_readline_lib = xyes; then |
187 |
if test x$have_history_hdr = xyes -a x$have_history_lib = xyes; then |
|
188 |
AC_DEFINE(PHYSFS_HAVE_READLINE) |
|
218
9415dcace296
readline detection fixes by Edward Rudd.
Ryan C. Gordon <icculus@icculus.org>
parents:
216
diff
changeset
|
189 |
LIBS="$LIBS -lreadline -lcurses" |
213 | 190 |
fi |
191 |
fi |
|
192 |
fi |
|
193 |
||
234 | 194 |
AC_CHECK_HEADER(be/kernel/OS.h, this_is_beos=yes) |
195 |
if test x$this_is_beos = xyes; then |
|
196 |
LIBS="$LIBS -lroot -lbe" |
|
197 |
fi |
|
213 | 198 |
|
199 |
# Checks for header files. |
|
200 |
AC_HEADER_STDC |
|
201 |
AC_CHECK_HEADERS([stdlib.h string.h]) |
|
202 |
||
203 |
# Checks for typedefs, structures, and compiler characteristics. |
|
269
d41c0a399a99
Removed some unnecessary things that broke BeOS builds.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
204 |
dnl AC_C_CONST |
d41c0a399a99
Removed some unnecessary things that broke BeOS builds.
Ryan C. Gordon <icculus@icculus.org>
parents:
261
diff
changeset
|
205 |
dnl AC_TYPE_SIZE_T |
213 | 206 |
|
207 |
# Checks for library functions. |
|
208 |
||
209 |
# This is only in the bleeding edge autoconf distro... |
|
210 |
#AC_FUNC_MALLOC |
|
211 |
||
212 |
AC_FUNC_MEMCMP |
|
213 |
AC_CHECK_FUNCS([memset strrchr]) |
|
214 |
||
215 |
dnl Add Makefile conditionals |
|
216 |
AM_CONDITIONAL(BUILD_ZLIB, test x$enable_internal_zlib = xyes) |
|
217 |
AM_CONDITIONAL(BUILD_TEST_PHYSFS, test x$enable_testprog = xyes) |
|
241
9353a112793f
Only attempt to build BeOS code on BeOS (don't even try building an empty
Ryan C. Gordon <icculus@icculus.org>
parents:
237
diff
changeset
|
218 |
AM_CONDITIONAL(BUILD_BEOS_CPP, test x$this_is_beos = xyes) |
213 | 219 |
|
220 |
AC_OUTPUT([ |
|
221 |
Makefile |
|
222 |
platform/Makefile |
|
223 |
archivers/Makefile |
|
224 |
test/Makefile |
|
225 |
zlib114/Makefile |
|
231
e4f81b0f1c93
Corrected to fix "make dist".
Ryan C. Gordon <icculus@icculus.org>
parents:
224
diff
changeset
|
226 |
extras/Makefile |
213 | 227 |
]) |
231
e4f81b0f1c93
Corrected to fix "make dist".
Ryan C. Gordon <icculus@icculus.org>
parents:
224
diff
changeset
|
228 |