/
configure.in
336 lines (282 loc) · 10.3 KB
1
# Process this file with autoconf to produce a configure script.
2
AC_INIT(SDL_sound.c)
3
4
5
6
7
8
9
10
11
12
13
14
15
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.
16
17
MAJOR_VERSION=1
MINOR_VERSION=0
18
MICRO_VERSION=1
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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
AC_CANONICAL_HOST
AC_CANONICAL_TARGET
dnl Setup for automake
46
AM_CONFIG_HEADER(config.h)
47
48
49
50
51
52
53
54
55
56
AM_INIT_AUTOMAKE(SDL_sound, $VERSION)
dnl ---------------------------------------------------------------------
dnl Compilers and other tools
dnl ---------------------------------------------------------------------
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
57
AM_PROG_LIBTOOL
58
59
60
61
62
63
64
65
dnl ---------------------------------------------------------------------
dnl Debug mode?
dnl ---------------------------------------------------------------------
AC_ARG_ENABLE(debug,
[ --enable-debug enable debug mode [default=no]],
66
, enable_debug=no)
67
68
69
70
71
72
if test x$enable_debug = xyes; then
if test x$ac_cv_prog_cc_g = xyes; then
CFLAGS="-g -O0"
else
CFLAGS="-O0"
fi
73
CFLAGS="$CFLAGS -Werror"
74
75
AC_DEFINE(DEBUG, 1, [Define for debug builds.])
AC_DEFINE(DEBUG_CHATTER, 1, [Define for debug build chattering.])
76
else
77
AC_DEFINE(NDEBUG, 1, [Define to disable debugging.])
78
79
80
fi
81
82
83
84
85
86
87
88
dnl ---------------------------------------------------------------------
dnl Checks for libraries.
dnl ---------------------------------------------------------------------
dnl Check for SDL
SDL_VERSION=1.2.0
AM_PATH_SDL($SDL_VERSION,
:,
89
AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
90
91
92
93
)
CFLAGS="$CFLAGS $SDL_CFLAGS"
LIBS="$LIBS $SDL_LIBS"
94
95
96
97
98
99
dnl Check for voc decoder inclusion...
AC_ARG_ENABLE(voc,
[ --enable-voc enable VOC decoding [default=yes]],
, enable_voc=yes)
if test x$enable_voc = xyes; then
100
AC_DEFINE(SOUND_SUPPORTS_VOC, 1, [Define if VOC support is desired.])
101
102
103
104
105
106
107
108
fi
dnl Check for wav decoder inclusion...
AC_ARG_ENABLE(wav,
[ --enable-wav enable WAV decoding [default=yes]],
, enable_wav=yes)
if test x$enable_wav = xyes; then
109
AC_DEFINE(SOUND_SUPPORTS_WAV, 1, [Define if WAV support is desired.])
110
111
112
113
114
115
116
117
fi
dnl Check for raw decoder inclusion...
AC_ARG_ENABLE(raw,
[ --enable-raw enable raw audio "decoding" [default=yes]],
, enable_raw=yes)
if test x$enable_raw = xyes; then
118
AC_DEFINE(SOUND_SUPPORTS_RAW, 1, [Define if RAW support is desired.])
119
120
121
122
123
124
125
126
fi
dnl Check for aiff decoder inclusion...
AC_ARG_ENABLE(aiff,
[ --enable-aiff enable AIFF decoding [default=yes]],
, enable_aiff=yes)
if test x$enable_aiff = xyes; then
127
AC_DEFINE(SOUND_SUPPORTS_AIFF, 1, [Define if AIFF support is desired.])
128
129
fi
130
131
dnl Check for au decoder inclusion
AC_ARG_ENABLE(au,
132
[ --enable-au enable AU decoding [default=yes]],
133
134
, enable_au=yes)
if test x$enable_au = xyes; then
135
AC_DEFINE(SOUND_SUPPORTS_AU, 1, [Define if AU support is desired.])
136
fi
137
138
139
dnl Check for shn decoder inclusion...
AC_ARG_ENABLE(shn,
140
141
[ --enable-shn enable SHN decoding [default=yes]],
, enable_shn=yes)
142
if test x$enable_shn = xyes; then
143
AC_DEFINE(SOUND_SUPPORTS_SHN, 1, [Define if SHN support is desired.])
144
145
fi
146
dnl Check for the MIDI decoder...
147
AC_ARG_ENABLE(midi,
148
149
[ --enable-midi enable software MIDI music [default=yes]],
, enable_midi=yes)
150
if test x$enable_midi = xyes; then
151
AC_DEFINE(SOUND_SUPPORTS_MIDI, 1, [Define if MIDI support is desired.])
152
153
fi
154
155
156
157
158
159
dnl Note that we intentionally look for a symbol in FLAC 1.0.4, since the
dnl FLAC developers tend to break their API with every release, so we're
dnl checking for the latest-and-greatest here so we don't have to support
dnl obsolete versions.
160
dnl Hooray for shitty autoconf bugs!
161
x="C__seekable_stream_decoder_process_single"
162
flcsym="FLA$x"
163
164
165
166
167
dnl Check for libFLAC
AC_ARG_ENABLE(flac,
[ --enable-flac enable FLAC decoding via libFLAC [default=yes]],
, enable_flac=yes)
if test x$enable_flac = xyes; then
168
AC_CHECK_HEADER(FLAC/stream_decoder.h, have_flac_hdr=yes)
169
AC_CHECK_LIB(FLAC, $flcsym, have_flac_lib=yes)
170
171
if test x$have_flac_hdr = xyes -a x$have_flac_lib = xyes; then
LIBS="$LIBS -lFLAC"
172
AC_DEFINE(SOUND_SUPPORTS_FLAC, 1, [Define if FLAC support is desired.])
173
174
175
fi
fi
176
177
dnl Check for SMPEG
AC_ARG_ENABLE(smpeg,
178
[ --enable-smpeg enable MP3 decoding via smpeg [default=yes]],
179
180
, enable_smpeg=yes)
if test x$enable_smpeg = xyes; then
181
182
183
184
185
AC_CHECK_HEADER(smpeg.h, have_smpeg_hdr=yes)
AC_CHECK_LIB(smpeg, SMPEG_new, have_smpeg_lib=yes)
if test x$have_smpeg_hdr = xyes -a x$have_smpeg_lib = xyes; then
LIBS="$LIBS -lsmpeg"
AC_DEFINE(SOUND_SUPPORTS_SMPEG, 1, [Define if SMPEG support is desired.])
186
187
fi
fi
188
189
190
191
192
193
dnl Check for the MIDI decoder...
AC_ARG_ENABLE(mpglib,
[ --enable-mpglib enable MP3 decoding internally [default=yes]],
, enable_mpglib=yes)
if test x$enable_mpglib = xyes; then
194
AC_DEFINE(SOUND_SUPPORTS_MPGLIB, 1, [Define if MPGLIB support is desired.])
195
196
197
fi
198
199
200
201
202
dnl Check for libmikmod
AC_ARG_ENABLE(mikmod,
[ --enable-mikmod enable MOD decoding via mikmod [default=yes]],
, enable_mikmod=yes)
if test x$enable_mikmod = xyes; then
203
204
205
206
207
AC_CHECK_HEADER(mikmod.h, have_mikmod_hdr=yes)
AC_CHECK_LIB(mikmod, MikMod_RegisterDriver, have_mikmod_lib=yes)
if test x$have_mikmod_hdr = xyes -a x$have_mikmod_lib = xyes; then
LIBS="$LIBS -lmikmod"
AC_DEFINE(SOUND_SUPPORTS_MIKMOD, 1, [Define if MIKMOD support is desired.])
208
209
210
211
212
213
214
215
fi
fi
dnl Check for libmodplug
AC_ARG_ENABLE(modplug,
[ --enable-modplug enable MOD decoding via modplug [default=yes]],
, enable_modplug=yes)
if test x$enable_modplug = xyes; then
216
have_modplug_hdr=no
217
AC_CHECK_HEADER(modplug.h, have_modplug_hdr=yes)
218
219
220
221
if test x$have_modplug_hdr = xno; then
AC_CHECK_HEADER(libmodplug/modplug.h, have_modplug_hdr=yes)
if test x$have_modplug_hdr = xyes; then
have_modplug_hdr=yes
222
AC_DEFINE(SOUND_MODPLUG_IN_OWN_PATH, 1, [Define if modplug header is in own directory.])
223
224
225
fi
fi
226
227
228
AC_CHECK_LIB(modplug, ModPlug_Load, have_modplug_lib=yes)
if test x$have_modplug_hdr = xyes -a x$have_modplug_lib = xyes; then
LIBS="$LIBS -lmodplug"
229
AC_DEFINE(SOUND_SUPPORTS_MODPLUG, 1, [Define if MODPLUG support is desired.])
230
231
232
fi
fi
233
234
235
236
237
dnl Check for ogg
AC_ARG_ENABLE(ogg,
[ --enable-ogg enable OGG decoding via libvorbis [default=yes]],
, enable_ogg=yes)
if test x$enable_ogg = xyes; then
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
AC_CHECK_HEADER(ogg.h, have_ogg_hdr=yes)
AC_CHECK_LIB(ogg, ogg_sync_init, have_ogg_lib=yes)
AC_CHECK_HEADER(vorbis/codec.h, have_vorbis_hdr=yes)
AC_CHECK_LIB(vorbis, vorbis_info_init, have_vorbis_lib=yes)
AC_CHECK_HEADER(vorbis/vorbisfile.h, have_vorbisfile_hdr=yes)
AC_CHECK_LIB(vorbisfile, ov_open_callbacks, have_vorbisfile_lib=yes)
have_vorbis=no
if test x$have_ogg_hdr = xyes -a x$have_ogg_lib = xyes; then
if test x$have_vorbis_hdr = xyes -a x$have_vorbis_lib = xyes; then
if test x$have_vorbisfile_hdr = xyes -a x$have_vorbisfile_lib = xyes; then
have_vorbis=yes
fi
fi
fi
if test x$have_vorbis = xyes; then
CFLAGS="$CFLAGS"
LIBS="$LIBS -logg -lvorbis -lvorbisfile"
AC_DEFINE(SOUND_SUPPORTS_OGG, 1, [Define if OGG support is desired.])
258
259
260
fi
fi
261
262
263
264
265
266
267
268
269
270
271
dnl Check for speex
AC_ARG_ENABLE(speex,
[ --enable-speex enable SPX decoding via libspeex [default=yes]],
, enable_speex=yes)
if test x$enable_speex = xyes; then
AC_CHECK_HEADER(ogg/ogg.h, have_ogg_hdr=yes)
AC_CHECK_LIB(ogg, ogg_sync_init, have_ogg_lib=yes)
AC_CHECK_HEADER(speex.h, have_speex_hdr=yes)
AC_CHECK_LIB(speex, speex_bits_init, have_speex_lib=yes)
if test "x$have_ogg_hdr" = "xyes" -a "x$have_ogg_lib" = "xyes" -a "x$have_speex_hdr" = "xyes" -a "x$have_speex_lib" = "xyes"; then
LIBS="$LIBS -logg -lspeex"
272
AC_DEFINE(SOUND_SUPPORTS_SPEEX, 1, [Define if SPEEX support is desired.])
273
274
275
276
fi
fi
277
278
279
280
281
282
283
284
dnl Check for PhysicsFS http://icculus.org/physfs/
AC_ARG_ENABLE(physfs,
[ --enable-physfs enable PhysicsFS in playsound [default=yes]],
, enable_physfs=yes)
if test x$enable_physfs = xyes; then
AC_CHECK_HEADER(physfs.h, have_physfs_hdr=yes)
AC_CHECK_LIB(physfs, PHYSFS_init, have_physfs_lib=yes)
if test x$have_physfs_hdr = xyes -a x$have_physfs_lib = xyes; then
285
286
287
enable_physfs="yes"
else
enable_physfs="no"
288
289
290
fi
fi
291
292
293
294
295
dnl Check for PhysicsFS http://icculus.org/physfs/
AC_ARG_ENABLE(altcvt,
[ --enable-altcvt enable EXPERIMENTAL audio converter [default=no]],
, enable_altcvt=no)
if test x$enable_altcvt = xyes; then
296
AC_DEFINE(SOUND_USE_ALTCVT, 1, [Define to use alternate audio converter.])
297
298
fi
299
300
301
302
303
304
305
306
307
dnl Check for efence (!!! FIXME : This doesn't work.)
dnl AC_ARG_ENABLE(efence,
dnl [ --enable-efence enable ElectricFence usage [default=no]],
dnl , enable_efence=no)
dnl if test x$enable_efence = xyes; then
dnl LIBS="$LIBS /usr/lib/libefence.a"
dnl fi
308
309
# Checks for header files.
AC_HEADER_STDC
310
AC_CHECK_HEADERS([stdlib.h string.h signal.h assert.h])
311
312
313
314
315
316
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_SIZE_T
# Checks for library functions.
317
318
319
320
# This is only in the bleeding edge autoconf distro...
#AC_FUNC_MALLOC
321
322
AC_FUNC_MEMCMP
323
AC_CHECK_FUNCS([memset strrchr setbuf])
324
325
326
dnl Add Makefile conditionals
AM_CONDITIONAL(USE_TIMIDITY, test x$enable_midi = xyes)
327
AM_CONDITIONAL(USE_MPGLIB, test x$enable_mpglib = xyes)
328
AM_CONDITIONAL(USE_PHYSICSFS, test x$enable_physfs = xyes)
329
330
331
332
AC_OUTPUT([
Makefile
decoders/Makefile
333
decoders/timidity/Makefile
334
decoders/mpglib/Makefile
335
playsound/Makefile
336
])