/
configure.in
3188 lines (3046 loc) · 106 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
dnl Process this file with autoconf to produce a configure script.
AC_INIT(README)
dnl Set various version strings - taken gratefully from the GTk sources
#
# Making releases:
# Edit include/SDL/SDL_version.h and change the version, then:
# SDL_MICRO_VERSION += 1;
# SDL_INTERFACE_AGE += 1;
# SDL_BINARY_AGE += 1;
# if any functions have been added, set SDL_INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0.
#
SDL_MAJOR_VERSION=1
SDL_MINOR_VERSION=2
17
18
19
SDL_MICRO_VERSION=10
SDL_INTERFACE_AGE=3
SDL_BINARY_AGE=10
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
AC_SUBST(SDL_MAJOR_VERSION)
AC_SUBST(SDL_MINOR_VERSION)
AC_SUBST(SDL_MICRO_VERSION)
AC_SUBST(SDL_INTERFACE_AGE)
AC_SUBST(SDL_BINARY_AGE)
AC_SUBST(SDL_VERSION)
# libtool versioning
LT_RELEASE=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION
LT_CURRENT=`expr $SDL_MICRO_VERSION - $SDL_INTERFACE_AGE`
LT_REVISION=$SDL_INTERFACE_AGE
LT_AGE=`expr $SDL_BINARY_AGE - $SDL_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
41
AC_CANONICAL_SYSTEM
42
43
44
45
dnl Setup for automake
AM_INIT_AUTOMAKE(SDL, $SDL_VERSION)
46
47
48
49
50
51
52
53
dnl Check for tools
AC_LIBTOOL_WIN32_DLL
AM_PROG_LIBTOOL
AC_PROG_MAKE_SET
AC_PROG_CC
AC_C_INLINE
AC_C_CONST
54
AC_PROG_CXX
55
56
AC_PROG_INSTALL
AC_FUNC_ALLOCA
57
58
ASFLAGS=""
AC_SUBST(ASFLAGS)
59
60
61
62
CCAS="$CC"
AC_SUBST(CCAS)
CCASFLAGS=""
AC_SUBST(CCASFLAGS)
63
AM_CONDITIONAL([am__fastdepOBJC], false)
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
dnl The alpha architecture needs special flags for binary portability
case "$target" in
alpha*-*-linux*)
if test x$ac_cv_prog_gcc = xyes; then
CFLAGS="$CFLAGS -mcpu=ev4 -Wa,-mall"
fi
;;
esac
dnl Add compiler-specific optimization flags
dnl See if the user wants aggressive optimizations of the code
AC_ARG_ENABLE(debug,
[ --enable-debug Disable aggressive optimizations [default=yes]],
, enable_debug=yes)
if test x$enable_debug != xyes; then
if test x$ac_cv_prog_gcc = xyes; then
CFLAGS="$CFLAGS -fexpensive-optimizations"
# Ack! This breaks the MMX YV12 conversion on gcc 2.95.2
# CFLAGS="$CFLAGS -fomit-frame-pointer"
fi
case "$target" in
i486-*-*)
if test x$ac_cv_prog_gcc = xyes; then
89
CFLAGS="$CFLAGS -march=i486"
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
fi
;;
i?86-*-*)
if test x$ac_cv_prog_gcc = xyes; then
CFLAGS="$CFLAGS -march=pentium -mcpu=pentiumpro"
fi
;;
*-*-osf*)
if test x$ac_cv_prog_gcc != xyes; then
CFLAGS="-g3 -fast -arch host"
fi
;;
esac
fi
dnl Add verbose warnings by default, and allow ANSI compliance checking
AC_ARG_ENABLE(strict-ansi,
[ --enable-strict-ansi Enable strict ANSI compliance build [default=no]],
, enable_strict_ansi=no)
if test x$ac_cv_prog_gcc = xyes; then
CFLAGS="$CFLAGS -Wall"
if test x$enable_strict_ansi = xyes; then
CFLAGS="$CFLAGS -ansi -pedantic -D_XOPEN_SOURCE"
fi
fi
dnl Initialize the compiler and linker flags for SDL applications
SDL_CFLAGS=""
SDL_LIBS="-lSDL"
dnl Add the math library for the new gamma correction support
case "$target" in
*-*-cygwin* | *-*-mingw32*)
MATHLIB=""
;;
*-*-beos*)
MATHLIB=""
;;
*-*-darwin*)
MATHLIB=""
;;
*)
MATHLIB="-lm"
;;
esac
SYSTEM_LIBS="$SYSTEM_LIBS $MATHLIB"
dnl Enable/disable various subsystems of the SDL library
AC_ARG_ENABLE(audio,
[ --enable-audio Enable the audio subsystem [default=yes]],
, enable_audio=yes)
if test x$enable_audio = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS audio"
SDL_EXTRALIBS="$SDL_EXTRALIBS audio/libaudio.la"
else
CFLAGS="$CFLAGS -DDISABLE_AUDIO"
fi
AC_ARG_ENABLE(video,
[ --enable-video Enable the video subsystem [default=yes]],
, enable_video=yes)
if test x$enable_video = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS video"
SDL_EXTRALIBS="$SDL_EXTRALIBS video/libvideo.la"
else
CFLAGS="$CFLAGS -DDISABLE_VIDEO"
fi
AC_ARG_ENABLE(events,
[ --enable-events Enable the events subsystem [default=yes]],
, enable_events=yes)
if test x$enable_video = xyes -a x$enable_events = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS events"
SDL_EXTRALIBS="$SDL_EXTRALIBS events/libevents.la"
else
CFLAGS="$CFLAGS -DDISABLE_EVENTS"
fi
AC_ARG_ENABLE(joystick,
[ --enable-joystick Enable the joystick subsystem [default=yes]],
, enable_joystick=yes)
if test x$enable_joystick = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS joystick"
SDL_EXTRALIBS="$SDL_EXTRALIBS joystick/libjoystick.la"
else
CFLAGS="$CFLAGS -DDISABLE_JOYSTICK"
fi
AC_ARG_ENABLE(cdrom,
[ --enable-cdrom Enable the cdrom subsystem [default=yes]],
, enable_cdrom=yes)
if test x$enable_cdrom = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS cdrom"
SDL_EXTRALIBS="$SDL_EXTRALIBS cdrom/libcdrom.la"
else
CFLAGS="$CFLAGS -DDISABLE_CDROM"
fi
AC_ARG_ENABLE(threads,
[ --enable-threads Enable the threading subsystem [default=yes]],
, enable_threads=yes)
SDL_EXTRADIRS="$SDL_EXTRADIRS thread"
SDL_EXTRALIBS="$SDL_EXTRALIBS thread/libthread.la"
if test x$enable_threads != xyes; then
CFLAGS="$CFLAGS -DDISABLE_THREADS"
COPY_ARCH_SRC(src/thread, generic, SDL_systhread.c)
COPY_ARCH_SRC(src/thread, generic, SDL_systhread_c.h)
COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c)
COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c)
COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
fi
AC_ARG_ENABLE(timers,
[ --enable-timers Enable the timer subsystem [default=yes]],
, enable_timers=yes)
if test x$enable_timers = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS timer"
SDL_EXTRALIBS="$SDL_EXTRALIBS timer/libtimer.la"
else
CFLAGS="$CFLAGS -DDISABLE_TIMERS"
fi
AC_ARG_ENABLE(endian,
[ --enable-endian Enable the endian subsystem [default=yes]],
, enable_endian=yes)
if test x$enable_endian = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS endian"
SDL_EXTRALIBS="$SDL_EXTRALIBS endian/libendian.la"
else
CFLAGS="$CFLAGS -DDISABLE_ENDIAN"
fi
AC_ARG_ENABLE(file,
[ --enable-file Enable the file subsystem [default=yes]],
, enable_file=yes)
if test x$enable_file = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS file"
SDL_EXTRALIBS="$SDL_EXTRALIBS file/libfile.la"
else
CFLAGS="$CFLAGS -DDISABLE_FILE"
fi
229
230
231
232
233
234
235
236
237
AC_ARG_ENABLE(cpuinfo,
[ --enable-cpuinfo Enable the cpuinfo subsystem [default=yes]],
, enable_cpuinfo=yes)
if test x$enable_cpuinfo = xyes; then
SDL_EXTRADIRS="$SDL_EXTRADIRS cpuinfo"
SDL_EXTRALIBS="$SDL_EXTRALIBS cpuinfo/libcpuinfo.la"
else
CFLAGS="$CFLAGS -DDISABLE_CPUINFO"
fi
238
239
240
241
242
243
244
245
246
247
dnl See if the OSS audio interface is supported
CheckOSS()
{
AC_ARG_ENABLE(oss,
[ --enable-oss support the OSS audio API [default=yes]],
, enable_oss=yes)
if test x$enable_audio = xyes -a x$enable_oss = xyes; then
AC_MSG_CHECKING(for OSS audio support)
have_oss=no
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
if test x$have_oss != xyes; then
AC_TRY_COMPILE([
#include <sys/soundcard.h>
],[
int arg = SNDCTL_DSP_SETFRAGMENT;
],[
have_oss=yes
])
fi
if test x$have_oss != xyes; then
AC_TRY_COMPILE([
#include <soundcard.h>
],[
int arg = SNDCTL_DSP_SETFRAGMENT;
],[
have_oss=yes
CFLAGS="$CFLAGS -DOSS_USE_SOUNDCARD_H"
])
fi
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
AC_MSG_RESULT($have_oss)
if test x$have_oss = xyes; then
CFLAGS="$CFLAGS -DOSS_SUPPORT"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS dsp"
AUDIO_DRIVERS="$AUDIO_DRIVERS dsp/libaudio_dsp.la"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS dma"
AUDIO_DRIVERS="$AUDIO_DRIVERS dma/libaudio_dma.la"
fi
fi
}
dnl See if the ALSA audio interface is supported
CheckALSA()
{
AC_ARG_ENABLE(alsa,
[ --enable-alsa support the ALSA audio API [default=yes]],
, enable_alsa=yes)
if test x$enable_audio = xyes -a x$enable_alsa = xyes; then
285
AM_PATH_ALSA(0.9.0, have_alsa=yes, have_alsa=no)
286
287
288
289
# Restore all flags from before the ALSA detection runs
CFLAGS="$alsa_save_CFLAGS"
LDFLAGS="$alsa_save_LDFLAGS"
LIBS="$alsa_save_LIBS"
290
if test x$have_alsa = xyes; then
291
292
293
AC_ARG_ENABLE(alsa-shared,
[ --enable-alsa-shared dynamically load ALSA audio support [default=yes]],
, enable_alsa_shared=yes)
294
if test "x`echo $ALSA_LIBS | grep -- -L`" = "x"; then
295
296
297
if test "x`ls /lib/libasound.so.* 2> /dev/null`" != "x"; then
ALSA_LIBS="-L/lib $ALSA_LIBS"
elif test "x`ls /usr/lib/libasound.so.* 2> /dev/null`" != "x"; then
298
ALSA_LIBS="-L/usr/lib $ALSA_LIBS"
299
elif test "x`ls /usr/local/lib/libasound.so.* 2> /dev/null`" != "x"; then
300
ALSA_LIBS="-L/usr/local/lib $ALSA_LIBS"
301
fi
302
303
304
305
306
fi
alsa_lib_spec=`echo $ALSA_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libasound.so.*/'`
alsa_lib=`ls $alsa_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
echo "-- $alsa_lib_spec -> $alsa_lib"
307
if test x$have_loadso != xyes && \
308
test x$enable_alsa_shared = xyes; then
309
AC_MSG_ERROR([You must have SDL_LoadObject() support])
310
fi
311
if test x$have_loadso = xyes && \
312
test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then
313
CFLAGS="$CFLAGS -DALSA_SUPPORT -DALSA_DYNAMIC=\$(alsa_lib) $ALSA_CFLAGS"
314
AC_SUBST(alsa_lib)
315
316
use_dlvsym=no
317
AC_CHECK_LIB(dl, dlvsym, [use_dlvsym=yes])
318
319
320
if test x$use_dlvsym = xyes; then
CFLAGS="$CFLAGS -DUSE_DLVSYM"
fi
321
else
322
323
CFLAGS="$CFLAGS -DALSA_SUPPORT $ALSA_CFLAGS"
SYSTEM_LIBS="$SYSTEM_LIBS $ALSA_LIBS"
324
fi
325
326
327
328
329
330
AUDIO_SUBDIRS="$AUDIO_SUBDIRS alsa"
AUDIO_DRIVERS="$AUDIO_DRIVERS alsa/libaudio_alsa.la"
fi
fi
}
331
332
333
334
335
336
337
338
339
340
341
342
343
dnl Check whether we want to use IRIX 6.5+ native audio or not
CheckDMEDIA()
{
if test x$enable_audio = xyes; then
AC_MSG_CHECKING(for dmedia audio support)
have_dmedia=no
AC_TRY_COMPILE([
#include <dmedia/audio.h>
],[
ALport audio_port;
],[
have_dmedia=yes
])
344
AC_MSG_RESULT($have_dmedia)
345
346
347
348
349
350
351
352
353
354
# Set up files for the audio library
if test x$have_dmedia = xyes; then
CFLAGS="$CFLAGS -DDMEDIA_SUPPORT"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS dmedia"
AUDIO_DRIVERS="$AUDIO_DRIVERS dmedia/libaudio_dmedia.la"
SYSTEM_LIBS="$SYSTEM_LIBS -laudio"
fi
fi
}
355
356
357
358
359
360
361
dnl Find the ESD includes and libraries
CheckESD()
{
AC_ARG_ENABLE(esd,
[ --enable-esd support the Enlightened Sound Daemon [default=yes]],
, enable_esd=yes)
if test x$enable_audio = xyes -a x$enable_esd = xyes; then
362
363
AM_PATH_ESD(0.2.8, have_esd=yes, have_esd=no)
if test x$have_esd = xyes; then
364
AC_ARG_ENABLE(esd-shared,
365
366
[ --enable-esd-shared dynamically load ESD audio support [default=yes]],
, enable_esd_shared=yes)
367
esd_lib_spec=`echo $ESD_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libesd.so.*/'`
368
esd_lib=`ls $esd_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
369
echo "-- $esd_lib_spec -> $esd_lib"
370
if test x$have_loadso != xyes && \
371
test x$enable_esd_shared = xyes; then
372
AC_MSG_ERROR([You must have SDL_LoadObject() support])
373
fi
374
if test x$have_loadso = xyes && \
375
376
test x$enable_esd_shared = xyes && test x$esd_lib != x; then
CFLAGS="$CFLAGS -DESD_SUPPORT -DESD_DYNAMIC=\$(esd_lib) $ESD_CFLAGS"
377
AC_SUBST(esd_lib)
378
379
380
381
else
CFLAGS="$CFLAGS -DESD_SUPPORT $ESD_CFLAGS"
SYSTEM_LIBS="$SYSTEM_LIBS $ESD_LIBS"
fi
382
383
AUDIO_SUBDIRS="$AUDIO_SUBDIRS esd"
AUDIO_DRIVERS="$AUDIO_DRIVERS esd/libaudio_esd.la"
384
fi
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
fi
}
CheckARTSC()
{
AC_ARG_ENABLE(arts,
[ --enable-arts support the Analog Real Time Synthesizer [default=yes]],
, enable_arts=yes)
if test x$enable_audio = xyes -a x$enable_arts = xyes; then
AC_PATH_PROG(ARTSCCONFIG, artsc-config)
if test x$ARTSCCONFIG = x -o x$ARTSCCONFIG = x'"$ARTSCCONFIG"'; then
: # arts isn't installed
else
ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
ARTSC_LIBS=`$ARTSCCONFIG --libs`
400
ARTSC_PREFIX=`$ARTSCCONFIG --arts-prefix`
401
402
403
404
405
406
407
408
409
410
411
412
413
414
AC_MSG_CHECKING(for aRts development environment)
audio_arts=no
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $ARTSC_CFLAGS"
AC_TRY_COMPILE([
#include <artsc.h>
],[
arts_stream_t stream;
],[
audio_arts=yes
])
CFLAGS="$save_CFLAGS"
AC_MSG_RESULT($audio_arts)
if test x$audio_arts = xyes; then
415
AC_ARG_ENABLE(arts-shared,
416
417
[ --enable-arts-shared dynamically load aRts audio support [default=yes]],
, enable_arts_shared=yes)
418
arts_lib_spec="$ARTSC_PREFIX/lib/libartsc.so.*"
419
arts_lib=`ls $arts_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
420
echo "-- $arts_lib_spec -> $arts_lib"
421
if test x$have_loadso != xyes && \
422
test x$enable_arts_shared = xyes; then
423
AC_MSG_ERROR([You must have SDL_LoadObject() support])
424
fi
425
if test x$have_loadso = xyes && \
426
427
test x$enable_arts_shared = xyes && test x$arts_lib != x; then
CFLAGS="$CFLAGS -DARTSC_SUPPORT -DARTSC_DYNAMIC=\$(arts_lib) $ARTSC_CFLAGS"
428
AC_SUBST(arts_lib)
429
430
431
432
else
CFLAGS="$CFLAGS -DARTSC_SUPPORT $ARTSC_CFLAGS"
SYSTEM_LIBS="$SYSTEM_LIBS $ARTSC_LIBS"
fi
433
434
435
436
437
438
439
440
441
442
443
AUDIO_SUBDIRS="$AUDIO_SUBDIRS arts"
AUDIO_DRIVERS="$AUDIO_DRIVERS arts/libaudio_arts.la"
fi
fi
fi
}
dnl See if the NAS audio interface is supported
CheckNAS()
{
AC_ARG_ENABLE(nas,
444
[ --enable-nas support the NAS audio API [default=yes]],
445
, enable_nas=yes)
446
if test x$enable_audio = xyes -a x$enable_nas = xyes; then
447
448
449
450
AC_MSG_CHECKING(for NAS audio support)
have_nas=no
if test -r /usr/X11R6/include/audio/audiolib.h; then
have_nas=yes
451
CFLAGS="$CFLAGS -DNAS_SUPPORT -I/usr/X11R6/include/"
452
453
454
SYSTEM_LIBS="$SYSTEM_LIBS -laudio -lXt"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS nas"
AUDIO_DRIVERS="$AUDIO_DRIVERS nas/libaudio_nas.la"
455
456
457
458
459
460
461
462
463
464
dnl On IRIX, the NAS includes are in a different directory,
dnl and libnas must be explicitly linked in
elif test -r /usr/freeware/include/nas/audiolib.h; then
have_nas=yes
CFLAGS="$CFLAGS -DNAS_SUPPORT"
SYSTEM_LIBS="$SYSTEM_LIBS -lnas -lXt"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS nas"
AUDIO_DRIVERS="$AUDIO_DRIVERS nas/libaudio_nas.la"
465
fi
466
AC_MSG_RESULT($have_nas)
467
468
469
fi
}
470
471
472
473
dnl rcg07142001 See if the user wants the disk writer audio driver...
CheckDiskAudio()
{
AC_ARG_ENABLE(diskaudio,
474
[ --enable-diskaudio support the disk writer audio driver [default=yes]],
475
, enable_diskaudio=yes)
476
477
478
479
480
481
482
if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then
CFLAGS="$CFLAGS -DDISKAUD_SUPPORT"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS disk"
AUDIO_DRIVERS="$AUDIO_DRIVERS disk/libaudio_disk.la"
fi
}
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
dnl Set up the Atari Audio driver
CheckAtariAudio()
{
AC_ARG_ENABLE(mintaudio,
[ --enable-mintaudio support Atari audio driver [default=yes]],
, enable_mintaudio=yes)
if test x$enable_audio = xyes -a x$enable_mintaudio = xyes; then
mintaudio=no
AC_CHECK_HEADER(mint/falcon.h, have_mint_falcon_hdr=yes)
if test x$have_mint_falcon_hdr = xyes; then
mintaudio=yes
CFLAGS="$CFLAGS -DMINTAUDIO_SUPPORT"
AUDIO_SUBDIRS="$AUDIO_SUBDIRS mint"
AUDIO_DRIVERS="$AUDIO_DRIVERS mint/libaudio_mintaudio.la"
fi
fi
}
501
dnl See if we can use x86 assembly blitters
502
# NASM is available from: http://nasm.octium.net/
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
CheckNASM()
{
dnl Make sure we are running on an x86 platform
case $target in
i?86*)
;;
*)
# Nope, bail early.
return
;;
esac
dnl Check for NASM (for assembly blit routines)
AC_ARG_ENABLE(nasm,
[ --enable-nasm use nasm assembly blitters on x86 [default=yes]],
, enable_nasm=yes)
if test x$enable_video = xyes -a x$enable_nasm = xyes; then
AC_PATH_PROG(NASM, nasm)
if test x$NASM = x -o x$NASM = x'"$NASM"'; then
: # nasm isn't installed
else
CFLAGS="$CFLAGS -DUSE_ASMBLIT -I$srcdir/hermes"
case $ARCH in
win32)
NASMFLAGS="-f win32"
;;
528
529
530
openbsd)
NASMFLAGS="-f aoutb"
;;
531
*)
532
NASMFLAGS="-f elf"
533
534
535
536
537
538
;;
esac
AC_SUBST(NASMFLAGS)
CFLAGS="$CFLAGS -I\$(top_srcdir)/src/hermes"
SDL_EXTRADIRS="$SDL_EXTRADIRS hermes"
SDL_EXTRALIBS="$SDL_EXTRALIBS hermes/libhermes.la"
539
use_nasm=yes
540
541
542
543
544
545
546
547
case "$target" in
# this line is needed for QNX, because it's not defined the __ELF__
*-*-qnx*) CFLAGS="$CFLAGS -D__ELF__"
;;
esac
548
549
550
551
fi
fi
}
552
553
554
555
556
557
558
559
560
561
562
563
564
565
dnl Do the iPod thing
CheckIPod()
{
AC_ARG_ENABLE(ipod,
[ --enable-ipod configure SDL to work with iPodLinux [default=yes on arm-elf]],
, enable_ipod=yes)
if test x$enable_ipod = xyes; then
CFLAGS="$CFLAGS -DENABLE_IPOD -DIPOD"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS ipod"
VIDEO_DRIVERS="$VIDEO_DRIVERS ipod/libvideo_ipod.la"
fi
}
566
567
568
dnl Find the nanox include and library directories
CheckNANOX()
{
569
570
571
572
573
574
575
576
577
AC_ARG_ENABLE(video-nanox,
[ --enable-video-nanox use nanox video driver [default=no]],
, enable_video_nanox=no)
AC_ARG_ENABLE(nanox-debug,
[ --enable-nanox-debug print debug messages [default=no]],
, enable_nanox_debug=no)
AC_ARG_ENABLE(nanox-share-memory,
[ --enable-nanox-share-memory use share memory [default=no]],
, enable_nanox_share_memory=no)
578
579
580
AC_ARG_ENABLE(nanox_direct_fb,
[ --enable-nanox-direct-fb use direct framebuffer access [default=no]],
, enable_nanox_direct_fb=no)
581
582
583
584
585
586
587
588
589
590
if test x$enable_video = xyes -a x$enable_video_nanox = xyes; then
if test x$enable_nanox_debug = xyes; then
CFLAGS="$CFLAGS -DENABLE_NANOX_DEBUG"
fi
if test x$enable_nanox_share_memory = xyes; then
CFLAGS="$CFLAGS -DNANOX_SHARE_MEMORY"
fi
591
592
593
if test x$enable_nanox_direct_fb = xyes; then
CFLAGS="$CFLAGS -DENABLE_NANOX_DIRECT_FB"
fi
594
595
596
597
598
599
CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_NANOX"
SYSTEM_LIBS="$SYSTEM_LIBS -lnano-X"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS nanox"
VIDEO_DRIVERS="$VIDEO_DRIVERS nanox/libvideo_nanox.la"
fi
600
601
}
602
603
604
605
606
607
608
609
610
611
dnl Find the X11 include and library directories
CheckX11()
{
AC_ARG_ENABLE(video-x11,
[ --enable-video-x11 use X11 video driver [default=yes]],
, enable_video_x11=yes)
if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then
AC_PATH_X
AC_PATH_XTRA
if test x$have_x = xyes; then
612
613
614
615
AC_ARG_ENABLE(x11-shared,
[ --enable-x11-shared dynamically load X11 support [default=yes]],
, enable_x11_shared=yes)
616
dnl !!! FIXME: if a platform needs more than this, fill it in!
617
618
619
620
621
622
623
624
625
626
case "$target" in
*-*-darwin* )
x11_lib='/usr/X11R6/lib/libX11.6.dylib'
x11ext_lib='/usr/X11R6/lib/libXext.6.dylib'
;;
*)
x11_lib='libX11.so.6'
x11ext_lib='libXext.so.6'
;;
esac
627
628
if test x$have_loadso != xyes && \
629
test x$enable_x11_shared = xyes; then
630
AC_MSG_ERROR([You must have SDL_LoadObject() support])
631
632
fi
633
if test x$have_loadso = xyes && \
634
test x$enable_x11_shared = xyes && test x$x11_lib != x && test x$x11ext_lib != x; then
635
636
CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_X11 -DXTHREADS -DX11_DYNAMIC=\$(x11_lib) -DX11EXT_DYNAMIC=\$(x11ext_lib) -I$srcdir/include -I$srcdir/src/video"
SYSTEM_LIBS="$SYSTEM_LIBS $X_LIBS"
637
638
echo "-- dynamic libX11 -> $x11_lib"
echo "-- dynamic libX11ext -> $x11ext_lib"
639
640
641
642
643
644
645
AC_SUBST(x11_lib)
AC_SUBST(x11ext_lib)
else
CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_X11 -DXTHREADS -I$srcdir/include -I$srcdir/src/video"
SYSTEM_LIBS="$SYSTEM_LIBS $X_LIBS -lX11 -lXext"
fi
646
647
648
if test x$ac_cv_func_shmat != xyes; then
CFLAGS="$CFLAGS -DNO_SHARED_MEMORY"
fi
649
650
651
652
653
654
655
656
657
658
659
660
VIDEO_SUBDIRS="$VIDEO_SUBDIRS x11"
VIDEO_DRIVERS="$VIDEO_DRIVERS x11/libvideo_x11.la"
AC_ARG_ENABLE(video-x11-vm,
[ --enable-video-x11-vm use X11 VM extension for fullscreen [default=yes]],
, enable_video_x11_vm=yes)
if test x$enable_video_x11_vm = xyes; then
AC_MSG_CHECKING(for XFree86 VidMode 1.0 support)
video_x11_vm=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
661
#include <XFree86/extensions/xf86vmode.h>
662
663
664
665
666
667
668
],[
],[
video_x11_vm=yes
])
AC_MSG_RESULT($video_x11_vm)
if test x$video_x11_vm = xyes; then
CFLAGS="$CFLAGS -DXFREE86_VM"
669
670
VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xxf86vm"
VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xxf86vm/libXFree86_Xxf86vm.la"
671
672
673
674
AC_MSG_CHECKING(for XFree86 VidMode gamma support)
video_x11_vmgamma=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
675
#include <XFree86/extensions/xf86vmode.h>
676
],[
677
SDL_NAME(XF86VidModeGamma) gamma;
678
679
680
681
682
683
684
685
686
],[
video_x11_vmgamma=yes
])
AC_MSG_RESULT($video_x11_vmgamma)
if test x$video_x11_vmgamma = xyes; then
CFLAGS="$CFLAGS -DXFREE86_VMGAMMA"
fi
fi
fi
687
688
689
AC_ARG_ENABLE(dga,
[ --enable-dga allow use of X11 DGA code [default=yes]],
, enable_dga=yes)
690
691
692
AC_ARG_ENABLE(video-x11-dgamouse,
[ --enable-video-x11-dgamouse use X11 DGA for mouse events [default=yes]],
, enable_video_x11_dgamouse=yes)
693
694
695
696
697
if test x$enable_dga = xyes; then
AC_MSG_CHECKING(for XFree86 DGA 1.0 support)
video_x11_dga=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
698
#include <XFree86/extensions/xf86dga.h>
699
700
701
702
703
704
705
706
707
708
],[
],[
video_x11_dga=yes
])
AC_MSG_RESULT($video_x11_dga)
if test x$video_x11_dga = xyes; then
CFLAGS="$CFLAGS -DXFREE86_DGAMOUSE"
if test x$enable_video_x11_dgamouse = xyes; then
CFLAGS="$CFLAGS -DDEFAULT_DGAMOUSE"
fi
709
710
VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xxf86dga"
VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xxf86dga/libXFree86_Xxf86dga.la"
711
712
713
714
715
716
717
718
719
720
721
722
723
fi
fi
AC_ARG_ENABLE(video-x11-xv,
[ --enable-video-x11-xv use X11 XvImage extension for video [default=yes]],
, enable_video_x11_xv=yes)
if test x$enable_video_x11_xv = xyes; then
AC_MSG_CHECKING(for XFree86 XvImage support)
video_x11_xv=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <X11/extensions/XShm.h>
724
#include <XFree86/extensions/Xvlib.h>
725
],[
726
SDL_NAME(XvImage) *image;
727
728
729
730
731
732
],[
video_x11_xv=yes
])
AC_MSG_RESULT($video_x11_xv)
if test x$video_x11_xv = xyes; then
CFLAGS="$CFLAGS -DXFREE86_XV"
733
734
VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xv"
VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xv/libXFree86_Xv.la"
735
736
fi
fi
737
738
739
740
741
742
743
744
AC_ARG_ENABLE(video-x11-xinerama,
[ --enable-video-x11-xinerama enable X11 Xinerama support [default=yes]],
, enable_video_x11_xinerama=yes)
if test x$enable_video_x11_xinerama = xyes; then
AC_MSG_CHECKING(for X11 Xinerama support)
video_x11_xinerama=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
745
#include <XFree86/extensions/Xinerama.h>
746
],[
747
SDL_NAME(XineramaScreenInfo) *xinerama;
748
749
750
751
752
753
],[
video_x11_xinerama=yes
])
AC_MSG_RESULT($video_x11_xinerama)
if test x$video_x11_xinerama = xyes; then
CFLAGS="$CFLAGS -DHAVE_XINERAMA"
754
755
VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xinerama"
VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xinerama/libXFree86_Xinerama.la"
756
757
fi
fi
758
759
760
761
762
763
764
765
766
AC_ARG_ENABLE(video-x11-xme,
[ --enable-video-x11-xme enable Xi Graphics XME for fullscreen [default=yes]],
, enable_video_x11_xme=yes)
if test x$enable_video_x11_xme = xyes; then
AC_MSG_CHECKING(for Xi Graphics XiGMiscExtension support)
video_x11_xme=yes
AC_MSG_RESULT($video_x11_xme)
if test x$video_x11_xme = xyes; then
CFLAGS="$CFLAGS -DHAVE_XIGXME"
767
768
VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/XME"
VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/XME/libXME.la"
769
770
fi
fi
771
772
773
fi
fi
}
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
dnl Find the X11 DGA 2.0 include and library directories
CheckDGA()
{
AC_ARG_ENABLE(video-dga,
[ --enable-video-dga use DGA 2.0 video driver [default=yes]],
, enable_video_dga=yes)
if test x$video_x11_dga = xyes -a x$enable_video_dga = xyes; then
save_CFLAGS="$CFLAGS"; CFLAGS="$CFLAGS -Isrc/video"
AC_MSG_CHECKING(for XFree86 DGA 2.0 support)
video_x11_dga2=no
AC_TRY_COMPILE([
#include <X11/Xlib.h>
#include <XFree86/extensions/xf86dga.h>
],[
SDL_NAME(XDGAEvent) xevent;
],[
video_x11_dga2=yes
])
AC_MSG_RESULT($video_x11_dga2)
if test x$video_x11_dga2 = xyes; then
CFLAGS="$CFLAGS -DENABLE_DGA"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS dga"
VIDEO_DRIVERS="$VIDEO_DRIVERS dga/libvideo_dga.la"
fi
fi
}
802
803
804
CheckPHOTON()
{
AC_ARG_ENABLE(video-photon,
805
[ --enable-video-photon use QNX Photon video driver [default=yes]],
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
, enable_video_photon=yes)
if test x$enable_video = xyes -a x$enable_video_photon = xyes; then
AC_MSG_CHECKING(for QNX Photon support)
video_photon=no
AC_TRY_COMPILE([
#include <Ph.h>
#include <Pt.h>
#include <photon/Pg.h>
#include <photon/PdDirect.h>
],[
PgDisplaySettings_t *visual;
],[
video_photon=yes
])
AC_MSG_RESULT($video_photon)
if test x$video_photon = xyes; then
822
CFLAGS="$CFLAGS -DENABLE_PHOTON"
823
824
825
SYSTEM_LIBS="$SYSTEM_LIBS -lph"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS photon"
VIDEO_DRIVERS="$VIDEO_DRIVERS photon/libvideo_photon.la"
826
CheckOpenGLQNX
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
fi
fi
}
dnl Find the framebuffer console includes
CheckFBCON()
{
AC_ARG_ENABLE(video-fbcon,
[ --enable-video-fbcon use framebuffer console video driver [default=yes]],
, enable_video_fbcon=yes)
if test x$enable_video = xyes -a x$enable_video_fbcon = xyes; then
AC_MSG_CHECKING(for framebuffer console support)
video_fbcon=no
AC_TRY_COMPILE([
#include <linux/fb.h>
#include <linux/kd.h>
#include <linux/keyboard.h>
],[
],[
video_fbcon=yes
])
AC_MSG_RESULT($video_fbcon)
if test x$video_fbcon = xyes; then
CFLAGS="$CFLAGS -DENABLE_FBCON"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS fbcon"
VIDEO_DRIVERS="$VIDEO_DRIVERS fbcon/libvideo_fbcon.la"
fi
fi
}
857
858
859
860
dnl Find DirectFB
CheckDirectFB()
{
AC_ARG_ENABLE(video-directfb,
861
862
[ --enable-video-directfb use DirectFB video driver [default=no]],
, enable_video_directfb=no)
863
864
865
866
867
868
869
870
871
if test x$enable_video = xyes -a x$enable_video_directfb = xyes; then
video_directfb=no
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
if test x$PKG_CONFIG = xno ; then
AC_MSG_WARN([*** pkg-config is required to build the DirectFB video driver.])
else
AC_MSG_CHECKING(for DirectFB support)
872
873
if ! $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then
AC_MSG_ERROR([*** pkg-config too old; version 0.7 or better required.])
874
875
fi
876
DIRECTFB_REQUIRED_VERSION=0.9.15
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb ; then
DIRECTFB_CFLAGS=`$PKG_CONFIG --cflags directfb`
DIRECTFB_LIBS=`$PKG_CONFIG --libs directfb`
video_directfb=yes
fi
fi
AC_MSG_RESULT($video_directfb)
if test x$video_directfb = xyes; then
CFLAGS="$CFLAGS -DENABLE_DIRECTFB"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS directfb"
VIDEO_DRIVERS="$VIDEO_DRIVERS directfb/libvideo_directfb.la"
AC_SUBST(DIRECTFB_CFLAGS)
AC_SUBST(DIRECTFB_LIBS)
fi
fi
}
897
898
899
dnl See if we're running on PlayStation 2 hardware
CheckPS2GS()
{
900
901
902
AC_ARG_ENABLE(video-ps2gs,
[ --enable-video-ps2gs use PlayStation 2 GS video driver [default=yes]],
, enable_video_ps2gs=yes)
903
if test x$enable_video = xyes -a x$enable_video_ps2gs = xyes; then
904
AC_MSG_CHECKING(for PlayStation 2 GS support)
905
906
907
908
909
910
911
912
video_ps2gs=no
AC_TRY_COMPILE([
#include <linux/ps2/dev.h>
#include <linux/ps2/gs.h>
],[
],[
video_ps2gs=yes
])
913
AC_MSG_RESULT($video_ps2gs)
914
915
916
917
918
919
920
921
if test x$video_ps2gs = xyes; then
CFLAGS="$CFLAGS -DENABLE_PS2GS"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS ps2gs"
VIDEO_DRIVERS="$VIDEO_DRIVERS ps2gs/libvideo_ps2gs.la"
fi
fi
}
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
dnl Find the GGI includes
CheckGGI()
{
AC_ARG_ENABLE(video-ggi,
[ --enable-video-ggi use GGI video driver [default=no]],
, enable_video_ggi=no)
if test x$enable_video = xyes -a x$enable_video_ggi = xyes; then
AC_MSG_CHECKING(for GGI support)
video_ggi=no
AC_TRY_COMPILE([
#include <ggi/ggi.h>
#include <ggi/gii.h>
],[
],[
video_ggi=yes
])
AC_MSG_RESULT($video_ggi)
if test x$video_ggi = xyes; then
CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_GGI"
SYSTEM_LIBS="$SYSTEM_LIBS -lggi -lgii -lgg"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS ggi"
VIDEO_DRIVERS="$VIDEO_DRIVERS ggi/libvideo_ggi.la"
fi
fi
}
dnl Find the SVGAlib includes and libraries
CheckSVGA()
{
AC_ARG_ENABLE(video-svga,
[ --enable-video-svga use SVGAlib video driver [default=no]],
, enable_video_svga=no)
if test x$enable_video = xyes -a x$enable_video_svga = xyes; then
AC_MSG_CHECKING(for SVGAlib (1.4.0+) support)
video_svga=no
AC_TRY_COMPILE([
#include <vga.h>
#include <vgamouse.h>
#include <vgakeyboard.h>
],[
if ( SCANCODE_RIGHTWIN && SCANCODE_LEFTWIN ) {
exit(0);
}
],[
video_svga=yes
])
AC_MSG_RESULT($video_svga)
if test x$video_svga = xyes; then
CFLAGS="$CFLAGS -DENABLE_SVGALIB"
SYSTEM_LIBS="$SYSTEM_LIBS -lvga"
VIDEO_SUBDIRS="$VIDEO_SUBDIRS svga"
VIDEO_DRIVERS="$VIDEO_DRIVERS svga/libvideo_svga.la"
fi
fi
}
980
981
982
983
dnl Find the VGL includes and libraries
CheckVGL()
{
AC_ARG_ENABLE(video-vgl,
984
[ --enable-video-vgl use VGL video driver [default=no]],
985
986
987
988
989
990
991
992
993
994
995
, enable_video_vgl=no)
if test x$enable_video = xyes -a x$enable_video_vgl = xyes; then
AC_MSG_CHECKING(for libVGL support)
video_vgl=no
AC_TRY_COMPILE([
#include <sys/fbio.h>
#include <sys/consio.h>
#include <sys/kbio.h>
#include <vgl.h>
],[
VGLBitmap bitmap;
996
exit(bitmap.Bitmap);
997
998
999
1000
],[
video_vgl=yes
])
AC_MSG_RESULT($video_vgl)