configure.in
author Sam Lantinga <slouken@libsdl.org>
Sun, 07 Mar 2004 16:40:15 +0000
changeset 873 89666943c598
parent 868 e805075f6d94
child 884 20d3a599f601
permissions -rw-r--r--
Date: Sun, 07 Mar 2004 22:54:11 +0900
From: Hayashi Naoyuki
Subject: Tru64 cdrom and pthread option fix

SDL-1.2.7/src/cdrom/osf/SDL_syscdrom.c Fixes
Some CD-ROM drives(ex. TEAC CD-532E) cannot play
first 150 frames(aka gap).
CheckDrive() fix.
The end of comment is "* /" in AddDrive().

SDL-1.2.7/configure.in Fixes
Add *-*-osf pthread option and
delete line SDL_LIBS="$SDL_LIBS -lrt".
     1 dnl Process this file with autoconf to produce a configure script.
     2 AC_INIT(README)
     3 
     4 dnl Set various version strings - taken gratefully from the GTk sources
     5 #
     6 # Making releases:
     7 # Edit include/SDL/SDL_version.h and change the version, then:
     8 #   SDL_MICRO_VERSION += 1;
     9 #   SDL_INTERFACE_AGE += 1;
    10 #   SDL_BINARY_AGE += 1;
    11 # if any functions have been added, set SDL_INTERFACE_AGE to 0.
    12 # if backwards compatibility has been broken,
    13 # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0.
    14 #
    15 SDL_MAJOR_VERSION=1
    16 SDL_MINOR_VERSION=2
    17 SDL_MICRO_VERSION=7
    18 SDL_INTERFACE_AGE=0
    19 SDL_BINARY_AGE=7
    20 SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
    21 
    22 AC_SUBST(SDL_MAJOR_VERSION)
    23 AC_SUBST(SDL_MINOR_VERSION)
    24 AC_SUBST(SDL_MICRO_VERSION)
    25 AC_SUBST(SDL_INTERFACE_AGE)
    26 AC_SUBST(SDL_BINARY_AGE)
    27 AC_SUBST(SDL_VERSION)
    28 
    29 # libtool versioning
    30 LT_RELEASE=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION
    31 LT_CURRENT=`expr $SDL_MICRO_VERSION - $SDL_INTERFACE_AGE`
    32 LT_REVISION=$SDL_INTERFACE_AGE
    33 LT_AGE=`expr $SDL_BINARY_AGE - $SDL_INTERFACE_AGE`
    34 
    35 AC_SUBST(LT_RELEASE)
    36 AC_SUBST(LT_CURRENT)
    37 AC_SUBST(LT_REVISION)
    38 AC_SUBST(LT_AGE)
    39 
    40 dnl Detect the canonical host and target build environment
    41 AC_CANONICAL_SYSTEM
    42 
    43 dnl Setup for automake
    44 AM_INIT_AUTOMAKE(SDL, $SDL_VERSION)
    45 
    46 dnl Check for tools
    47 
    48 AC_LIBTOOL_WIN32_DLL
    49 AM_PROG_LIBTOOL
    50 AC_PROG_MAKE_SET
    51 AC_PROG_CC
    52 AC_C_INLINE
    53 AC_C_CONST
    54 AC_PROG_CXX
    55 AC_PROG_INSTALL
    56 AC_FUNC_ALLOCA
    57 ASFLAGS=""
    58 AC_SUBST(ASFLAGS)
    59 CCAS="$CC"
    60 AC_SUBST(CCAS)
    61 CCASFLAGS=""
    62 AC_SUBST(CCASFLAGS)
    63 AM_CONDITIONAL([am__fastdepOBJC], false)
    64 
    65 dnl The alpha architecture needs special flags for binary portability
    66 case "$target" in
    67     alpha*-*-linux*)
    68         if test x$ac_cv_prog_gcc = xyes; then
    69             CFLAGS="$CFLAGS -mcpu=ev4 -Wa,-mall"
    70         fi
    71         ;;
    72 esac
    73 
    74 dnl Add compiler-specific optimization flags
    75 
    76 dnl See if the user wants aggressive optimizations of the code
    77 AC_ARG_ENABLE(debug,
    78 [  --enable-debug          Disable aggressive optimizations [default=yes]],
    79               , enable_debug=yes)
    80 if test x$enable_debug != xyes; then
    81     if test x$ac_cv_prog_gcc = xyes; then
    82         CFLAGS="$CFLAGS -fexpensive-optimizations"
    83         # Ack! This breaks the MMX YV12 conversion on gcc 2.95.2
    84         # CFLAGS="$CFLAGS -fomit-frame-pointer"
    85     fi
    86     case "$target" in
    87         i486-*-*)
    88             if test x$ac_cv_prog_gcc = xyes; then
    89                 CFLAGS="$CFLAGS -march=i486"
    90             fi
    91             ;;
    92         i?86-*-*)
    93             if test x$ac_cv_prog_gcc = xyes; then
    94                 CFLAGS="$CFLAGS -march=pentium -mcpu=pentiumpro"
    95             fi
    96             ;;
    97         *-*-osf*)
    98             if test x$ac_cv_prog_gcc != xyes; then
    99                 CFLAGS="-g3 -fast -arch host"
   100             fi
   101             ;;
   102     esac
   103 fi
   104 
   105 dnl Add verbose warnings by default, and allow ANSI compliance checking
   106 AC_ARG_ENABLE(strict-ansi,
   107 [  --enable-strict-ansi    Enable strict ANSI compliance build [default=no]],
   108               , enable_strict_ansi=no)
   109 if test x$ac_cv_prog_gcc = xyes; then
   110     CFLAGS="$CFLAGS -Wall"
   111     if test x$enable_strict_ansi = xyes; then
   112         CFLAGS="$CFLAGS -ansi -pedantic -D_XOPEN_SOURCE"
   113     fi
   114 fi
   115 
   116 dnl Initialize the compiler and linker flags for SDL applications
   117 
   118 SDL_CFLAGS=""
   119 SDL_LIBS="-lSDL"
   120 
   121 dnl Add the math library for the new gamma correction support
   122 
   123 case "$target" in
   124     *-*-cygwin* | *-*-mingw32*)
   125         MATHLIB=""
   126         ;;
   127     *-*-beos*)
   128         MATHLIB=""
   129         ;;
   130     *-*-darwin*)
   131         MATHLIB=""
   132         ;;
   133     *)
   134         MATHLIB="-lm"
   135         ;;
   136 esac
   137 SYSTEM_LIBS="$SYSTEM_LIBS $MATHLIB"
   138 
   139 dnl Enable/disable various subsystems of the SDL library
   140 
   141 AC_ARG_ENABLE(audio,
   142 [  --enable-audio          Enable the audio subsystem [default=yes]],
   143               , enable_audio=yes)
   144 if test x$enable_audio = xyes; then
   145     SDL_EXTRADIRS="$SDL_EXTRADIRS audio"
   146     SDL_EXTRALIBS="$SDL_EXTRALIBS audio/libaudio.la"
   147 else
   148     CFLAGS="$CFLAGS -DDISABLE_AUDIO"
   149 fi
   150 AC_ARG_ENABLE(video,
   151 [  --enable-video          Enable the video subsystem [default=yes]],
   152               , enable_video=yes)
   153 if test x$enable_video = xyes; then
   154     SDL_EXTRADIRS="$SDL_EXTRADIRS video"
   155     SDL_EXTRALIBS="$SDL_EXTRALIBS video/libvideo.la"
   156 else
   157     CFLAGS="$CFLAGS -DDISABLE_VIDEO"
   158 fi
   159 AC_ARG_ENABLE(events,
   160 [  --enable-events         Enable the events subsystem [default=yes]],
   161               , enable_events=yes)
   162 if test x$enable_video = xyes -a x$enable_events = xyes; then
   163     SDL_EXTRADIRS="$SDL_EXTRADIRS events"
   164     SDL_EXTRALIBS="$SDL_EXTRALIBS events/libevents.la"
   165 else
   166     CFLAGS="$CFLAGS -DDISABLE_EVENTS"
   167 fi
   168 AC_ARG_ENABLE(joystick,
   169 [  --enable-joystick       Enable the joystick subsystem [default=yes]],
   170               , enable_joystick=yes)
   171 if test x$enable_joystick = xyes; then
   172     SDL_EXTRADIRS="$SDL_EXTRADIRS joystick"
   173     SDL_EXTRALIBS="$SDL_EXTRALIBS joystick/libjoystick.la"
   174 else
   175     CFLAGS="$CFLAGS -DDISABLE_JOYSTICK"
   176 fi
   177 AC_ARG_ENABLE(cdrom,
   178 [  --enable-cdrom          Enable the cdrom subsystem [default=yes]],
   179               , enable_cdrom=yes)
   180 if test x$enable_cdrom = xyes; then
   181     SDL_EXTRADIRS="$SDL_EXTRADIRS cdrom"
   182     SDL_EXTRALIBS="$SDL_EXTRALIBS cdrom/libcdrom.la"
   183 else
   184     CFLAGS="$CFLAGS -DDISABLE_CDROM"
   185 fi
   186 AC_ARG_ENABLE(threads,
   187 [  --enable-threads        Enable the threading subsystem [default=yes]],
   188               , enable_threads=yes)
   189 SDL_EXTRADIRS="$SDL_EXTRADIRS thread"
   190 SDL_EXTRALIBS="$SDL_EXTRALIBS thread/libthread.la"
   191 if test x$enable_threads != xyes; then
   192     CFLAGS="$CFLAGS -DDISABLE_THREADS"
   193     COPY_ARCH_SRC(src/thread, generic, SDL_systhread.c)
   194     COPY_ARCH_SRC(src/thread, generic, SDL_systhread_c.h)
   195     COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c)
   196     COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
   197     COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c)
   198     COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
   199     COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
   200     COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
   201 fi
   202 AC_ARG_ENABLE(timers,
   203 [  --enable-timers         Enable the timer subsystem [default=yes]],
   204               , enable_timers=yes)
   205 if test x$enable_timers = xyes; then
   206     SDL_EXTRADIRS="$SDL_EXTRADIRS timer"
   207     SDL_EXTRALIBS="$SDL_EXTRALIBS timer/libtimer.la"
   208 else
   209     CFLAGS="$CFLAGS -DDISABLE_TIMERS"
   210 fi
   211 AC_ARG_ENABLE(endian,
   212 [  --enable-endian         Enable the endian subsystem [default=yes]],
   213               , enable_endian=yes)
   214 if test x$enable_endian = xyes; then
   215     SDL_EXTRADIRS="$SDL_EXTRADIRS endian"
   216     SDL_EXTRALIBS="$SDL_EXTRALIBS endian/libendian.la"
   217 else
   218     CFLAGS="$CFLAGS -DDISABLE_ENDIAN"
   219 fi
   220 AC_ARG_ENABLE(file,
   221 [  --enable-file           Enable the file subsystem [default=yes]],
   222               , enable_file=yes)
   223 if test x$enable_file = xyes; then
   224     SDL_EXTRADIRS="$SDL_EXTRADIRS file"
   225     SDL_EXTRALIBS="$SDL_EXTRALIBS file/libfile.la"
   226 else
   227     CFLAGS="$CFLAGS -DDISABLE_FILE"
   228 fi
   229 AC_ARG_ENABLE(cpuinfo,
   230 [  --enable-cpuinfo        Enable the cpuinfo subsystem [default=yes]],
   231               , enable_cpuinfo=yes)
   232 if test x$enable_cpuinfo = xyes; then
   233     SDL_EXTRADIRS="$SDL_EXTRADIRS cpuinfo"
   234     SDL_EXTRALIBS="$SDL_EXTRALIBS cpuinfo/libcpuinfo.la"
   235 else
   236     CFLAGS="$CFLAGS -DDISABLE_CPUINFO"
   237 fi
   238 
   239 dnl See if the OSS audio interface is supported
   240 CheckOSS()
   241 {
   242     AC_ARG_ENABLE(oss,
   243 [  --enable-oss            support the OSS audio API [default=yes]],
   244                   , enable_oss=yes)
   245     if test x$enable_audio = xyes -a x$enable_oss = xyes; then
   246         AC_MSG_CHECKING(for OSS audio support)
   247         have_oss=no
   248         if test x$have_oss != xyes; then
   249             AC_TRY_COMPILE([
   250               #include <sys/soundcard.h>
   251             ],[
   252               int arg = SNDCTL_DSP_SETFRAGMENT;
   253             ],[
   254             have_oss=yes
   255             ])
   256         fi
   257         if test x$have_oss != xyes; then
   258             AC_TRY_COMPILE([
   259               #include <soundcard.h>
   260             ],[
   261               int arg = SNDCTL_DSP_SETFRAGMENT;
   262             ],[
   263             have_oss=yes
   264             CFLAGS="$CFLAGS -DOSS_USE_SOUNDCARD_H"
   265             ])
   266         fi
   267         AC_MSG_RESULT($have_oss)
   268         if test x$have_oss = xyes; then
   269             CFLAGS="$CFLAGS -DOSS_SUPPORT"
   270             AUDIO_SUBDIRS="$AUDIO_SUBDIRS dsp"
   271             AUDIO_DRIVERS="$AUDIO_DRIVERS dsp/libaudio_dsp.la"
   272             AUDIO_SUBDIRS="$AUDIO_SUBDIRS dma"
   273             AUDIO_DRIVERS="$AUDIO_DRIVERS dma/libaudio_dma.la"
   274         fi
   275     fi
   276 }
   277 
   278 dnl See if the ALSA audio interface is supported
   279 CheckALSA()
   280 {
   281     AC_ARG_ENABLE(alsa,
   282 [  --enable-alsa           support the ALSA audio API [default=yes]],
   283                   , enable_alsa=yes)
   284     if test x$enable_audio = xyes -a x$enable_alsa = xyes; then
   285         AC_MSG_CHECKING(for ALSA audio support)
   286         have_alsa=no
   287         AC_TRY_COMPILE([
   288           #include <alsa/asoundlib.h>
   289         ],[
   290           #if SND_LIB_VERSION < ((0<<16)|(9<<8)|0)
   291           #error Your version of ALSA is too old
   292           #endif
   293           snd_pcm_t *pcm_handle;
   294         ],[
   295         AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes)
   296         ])
   297         if test x$have_alsa = xyes; then
   298             AC_ARG_ENABLE(alsa-shared,
   299 [  --enable-alsa-shared     dynamically load ALSA audio support [default=yes]],
   300                           , enable_alsa_shared=yes)
   301             alsa_lib=`ls /usr/lib/libasound.so.* | sed 's/.*\/\(.*\)/\1/; q'`
   302             if test x$use_dlopen != xyes && \
   303                test x$enable_alsa_shared = xyes; then
   304                 AC_MSG_ERROR([You must have dlopen() support and use the --enable-dlopen option])
   305             fi
   306             if test x$use_dlopen = xyes && \
   307                test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then
   308                 CFLAGS="$CFLAGS -DALSA_SUPPORT -DALSA_DYNAMIC=\$(alsa_lib)"
   309                 AC_SUBST(alsa_lib)
   310             else
   311                 CFLAGS="$CFLAGS -DALSA_SUPPORT"
   312                 SYSTEM_LIBS="$SYSTEM_LIBS -lasound"
   313             fi
   314             AUDIO_SUBDIRS="$AUDIO_SUBDIRS alsa"
   315             AUDIO_DRIVERS="$AUDIO_DRIVERS alsa/libaudio_alsa.la"
   316         else
   317             AC_MSG_RESULT($have_alsa)
   318         fi
   319     fi
   320 }
   321 
   322 dnl Check whether we want to use IRIX 6.5+ native audio or not
   323 CheckDMEDIA()
   324 {
   325     if test x$enable_audio = xyes; then
   326         AC_MSG_CHECKING(for dmedia audio support)
   327         have_dmedia=no
   328         AC_TRY_COMPILE([
   329           #include <dmedia/audio.h>
   330         ],[
   331           ALport audio_port;
   332         ],[
   333         have_dmedia=yes
   334         ])
   335         # Set up files for the audio library
   336         if test x$have_dmedia = xyes; then
   337             CFLAGS="$CFLAGS -DDMEDIA_SUPPORT"
   338             AUDIO_SUBDIRS="$AUDIO_SUBDIRS dmedia"
   339             AUDIO_DRIVERS="$AUDIO_DRIVERS dmedia/libaudio_dmedia.la"
   340             SYSTEM_LIBS="$SYSTEM_LIBS -laudio"
   341         fi
   342     fi
   343 }
   344 
   345 dnl Find the ESD includes and libraries
   346 CheckESD()
   347 {
   348     AC_ARG_ENABLE(esd,
   349 [  --enable-esd            support the Enlightened Sound Daemon [default=yes]],
   350                   , enable_esd=yes)
   351     if test x$enable_audio = xyes -a x$enable_esd = xyes; then
   352         use_esd=no
   353         AM_PATH_ESD(0.2.8, use_esd=yes)
   354         if test x$use_esd = xyes; then
   355             AC_ARG_ENABLE(esd-shared,
   356 [  --enable-esd-shared     dynamically load ESD audio support [default=yes]],
   357                           , enable_esd_shared=yes)
   358             esd_lib_spec=`echo $ESD_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libesd.so.*/'`
   359             esd_lib=`ls $esd_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   360             echo "-- $esd_lib_spec -> $esd_lib"
   361             if test x$use_dlopen != xyes && \
   362                test x$enable_esd_shared = xyes; then
   363                 AC_MSG_ERROR([You must have dlopen() support and use the --enable-dlopen option])
   364             fi
   365             if test x$use_dlopen = xyes && \
   366                test x$enable_esd_shared = xyes && test x$esd_lib != x; then
   367                 CFLAGS="$CFLAGS -DESD_SUPPORT -DESD_DYNAMIC=\$(esd_lib) $ESD_CFLAGS"
   368                 AC_SUBST(esd_lib)
   369             else
   370                 CFLAGS="$CFLAGS -DESD_SUPPORT $ESD_CFLAGS"
   371                 SYSTEM_LIBS="$SYSTEM_LIBS $ESD_LIBS"
   372             fi
   373             AUDIO_SUBDIRS="$AUDIO_SUBDIRS esd"
   374             AUDIO_DRIVERS="$AUDIO_DRIVERS esd/libaudio_esd.la"
   375         fi
   376     fi
   377 }
   378 
   379 CheckARTSC()
   380 {
   381     AC_ARG_ENABLE(arts,
   382 [  --enable-arts           support the Analog Real Time Synthesizer [default=yes]],
   383                   , enable_arts=yes)
   384     if test x$enable_audio = xyes -a x$enable_arts = xyes; then
   385         AC_PATH_PROG(ARTSCCONFIG, artsc-config)
   386         if test x$ARTSCCONFIG = x -o x$ARTSCCONFIG = x'"$ARTSCCONFIG"'; then
   387             : # arts isn't installed
   388         else
   389             ARTSC_CFLAGS=`$ARTSCCONFIG --cflags`
   390             ARTSC_LIBS=`$ARTSCCONFIG --libs`
   391             ARTSC_PREFIX=`$ARTSCCONFIG --arts-prefix`
   392             AC_MSG_CHECKING(for aRts development environment)
   393             audio_arts=no
   394             save_CFLAGS="$CFLAGS"
   395             CFLAGS="$CFLAGS $ARTSC_CFLAGS"
   396             AC_TRY_COMPILE([
   397              #include <artsc.h>
   398             ],[
   399              arts_stream_t stream;
   400             ],[
   401             audio_arts=yes
   402             ])
   403             CFLAGS="$save_CFLAGS"
   404             AC_MSG_RESULT($audio_arts)
   405             if test x$audio_arts = xyes; then
   406                 AC_ARG_ENABLE(arts-shared,
   407 [  --enable-arts-shared    dynamically load aRts audio support [default=yes]],
   408                               , enable_arts_shared=yes)
   409                 arts_lib_spec="$ARTSC_PREFIX/lib/libartsc.so.*"
   410                 arts_lib=`ls $arts_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   411                 echo "-- $arts_lib_spec -> $arts_lib"
   412                 if test x$use_dlopen != xyes && \
   413                    test x$enable_arts_shared = xyes; then
   414                     AC_MSG_ERROR([You must have dlopen() support and use the --enable-dlopen option])
   415                 fi
   416                 if test x$use_dlopen = xyes && \
   417                    test x$enable_arts_shared = xyes && test x$arts_lib != x; then
   418                     CFLAGS="$CFLAGS -DARTSC_SUPPORT -DARTSC_DYNAMIC=\$(arts_lib) $ARTSC_CFLAGS"
   419                     AC_SUBST(arts_lib)
   420                 else
   421                     CFLAGS="$CFLAGS -DARTSC_SUPPORT $ARTSC_CFLAGS"
   422                     SYSTEM_LIBS="$SYSTEM_LIBS $ARTSC_LIBS"
   423                 fi
   424                 AUDIO_SUBDIRS="$AUDIO_SUBDIRS arts"
   425                 AUDIO_DRIVERS="$AUDIO_DRIVERS arts/libaudio_arts.la"
   426             fi
   427         fi
   428     fi
   429 }
   430 
   431 dnl See if the NAS audio interface is supported
   432 CheckNAS()
   433 {
   434     AC_ARG_ENABLE(nas,
   435 [  --enable-nas            support the NAS audio API [default=yes]],
   436                   , enable_nas=yes)
   437     if test x$enable_audio = xyes -a x$enable_nas = xyes; then
   438         AC_MSG_CHECKING(for NAS audio support)
   439         have_nas=no
   440         if test -r /usr/X11R6/include/audio/audiolib.h; then
   441             have_nas=yes
   442             CFLAGS="$CFLAGS -DNAS_SUPPORT -I/usr/X11R6/include/"
   443             SYSTEM_LIBS="$SYSTEM_LIBS -laudio -lXt"
   444             AUDIO_SUBDIRS="$AUDIO_SUBDIRS nas"
   445             AUDIO_DRIVERS="$AUDIO_DRIVERS nas/libaudio_nas.la"
   446 
   447         dnl On IRIX, the NAS includes are in a different directory,
   448         dnl and libnas must be explicitly linked in
   449 
   450         elif test -r /usr/freeware/include/nas/audiolib.h; then
   451             have_nas=yes
   452             CFLAGS="$CFLAGS -DNAS_SUPPORT"
   453             SYSTEM_LIBS="$SYSTEM_LIBS -lnas -lXt"
   454             AUDIO_SUBDIRS="$AUDIO_SUBDIRS nas"
   455             AUDIO_DRIVERS="$AUDIO_DRIVERS nas/libaudio_nas.la"
   456         fi
   457         AC_MSG_RESULT($have_nas)
   458     fi
   459 }
   460 
   461 dnl rcg07142001 See if the user wants the disk writer audio driver...
   462 CheckDiskAudio()
   463 {
   464     AC_ARG_ENABLE(diskaudio,
   465 [  --enable-diskaudio      support the disk writer audio driver [default=yes]],
   466                   , enable_diskaudio=yes)
   467     if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then
   468         CFLAGS="$CFLAGS -DDISKAUD_SUPPORT"
   469         AUDIO_SUBDIRS="$AUDIO_SUBDIRS disk"
   470         AUDIO_DRIVERS="$AUDIO_DRIVERS disk/libaudio_disk.la"
   471     fi
   472 }
   473 
   474 dnl Set up the Atari Audio driver
   475 CheckAtariAudio()
   476 {
   477     AC_ARG_ENABLE(mintaudio,
   478 [  --enable-mintaudio      support Atari audio driver [default=yes]],
   479                   , enable_mintaudio=yes)
   480     if test x$enable_audio = xyes -a x$enable_mintaudio = xyes; then
   481         mintaudio=no
   482         AC_CHECK_HEADER(mint/falcon.h, have_mint_falcon_hdr=yes)
   483         if test x$have_mint_falcon_hdr = xyes; then
   484             mintaudio=yes
   485             CFLAGS="$CFLAGS -DMINTAUDIO_SUPPORT"
   486             AUDIO_SUBDIRS="$AUDIO_SUBDIRS mint"
   487             AUDIO_DRIVERS="$AUDIO_DRIVERS mint/libaudio_mintaudio.la"
   488         fi
   489     fi
   490 }
   491 
   492 dnl See if we can use x86 assembly blitters
   493 # NASM is available from: http://nasm.octium.net/
   494 CheckNASM()
   495 {
   496     dnl Make sure we are running on an x86 platform
   497     case $target in
   498         i?86*)
   499             ;;
   500         *)
   501         # Nope, bail early.
   502             return
   503             ;;
   504     esac
   505     dnl Check for NASM (for assembly blit routines)
   506     AC_ARG_ENABLE(nasm,
   507 [  --enable-nasm           use nasm assembly blitters on x86 [default=yes]],
   508                   , enable_nasm=yes)
   509     if test x$enable_video = xyes -a x$enable_nasm = xyes; then
   510         AC_PATH_PROG(NASM, nasm)
   511         if test x$NASM = x -o x$NASM = x'"$NASM"'; then
   512             : # nasm isn't installed
   513         else
   514             CFLAGS="$CFLAGS -DUSE_ASMBLIT -I$srcdir/hermes"
   515             case $ARCH in
   516               win32)
   517                   NASMFLAGS="-f win32"
   518                   ;;
   519               openbsd)
   520                   NASMFLAGS="-f aoutb"
   521                   ;;
   522               *)
   523                   NASMFLAGS="-f elf"
   524                   ;;
   525             esac
   526             AC_SUBST(NASMFLAGS)
   527             CFLAGS="$CFLAGS -I\$(top_srcdir)/src/hermes"
   528             SDL_EXTRADIRS="$SDL_EXTRADIRS hermes"
   529             SDL_EXTRALIBS="$SDL_EXTRALIBS hermes/libhermes.la"
   530             use_nasm=yes
   531         fi
   532     fi
   533 }
   534 
   535 dnl Find the nanox include and library directories
   536 CheckNANOX()
   537 {
   538     AC_ARG_ENABLE(video-nanox,
   539         [  --enable-video-nanox use nanox video driver [default=no]],
   540         , enable_video_nanox=no)
   541     AC_ARG_ENABLE(nanox-debug,  
   542         [  --enable-nanox-debug print debug messages [default=no]],
   543         , enable_nanox_debug=no)
   544     AC_ARG_ENABLE(nanox-share-memory,  
   545         [  --enable-nanox-share-memory use share memory [default=no]],
   546         , enable_nanox_share_memory=no)
   547     AC_ARG_ENABLE(nanox_direct_fb, 
   548         [  --enable-nanox-direct-fb use direct framebuffer access [default=no]],
   549         , enable_nanox_direct_fb=no)
   550 
   551     if test x$enable_video = xyes -a x$enable_video_nanox = xyes; then
   552         if test x$enable_nanox_debug = xyes; then
   553             CFLAGS="$CFLAGS -DENABLE_NANOX_DEBUG"
   554         fi
   555 
   556         if test x$enable_nanox_share_memory = xyes; then
   557             CFLAGS="$CFLAGS -DNANOX_SHARE_MEMORY"
   558         fi
   559 
   560         if test x$enable_nanox_direct_fb = xyes; then
   561             CFLAGS="$CFLAGS -DENABLE_NANOX_DIRECT_FB"
   562         fi
   563 
   564         CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_NANOX"
   565         SYSTEM_LIBS="$SYSTEM_LIBS -lnano-X"
   566         VIDEO_SUBDIRS="$VIDEO_SUBDIRS nanox"
   567         VIDEO_DRIVERS="$VIDEO_DRIVERS nanox/libvideo_nanox.la"
   568     fi
   569 }
   570 
   571 dnl Find the X11 include and library directories
   572 CheckX11()
   573 {
   574     AC_ARG_ENABLE(video-x11,
   575 [  --enable-video-x11      use X11 video driver [default=yes]],
   576                   , enable_video_x11=yes)
   577     if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then
   578         AC_PATH_X
   579         AC_PATH_XTRA
   580         if test x$have_x = xyes; then
   581             CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_X11 -DXTHREADS -I$srcdir/include -I$srcdir/src/video"
   582             if test x$ac_cv_func_shmat != xyes; then
   583                 CFLAGS="$CFLAGS -DNO_SHARED_MEMORY"
   584             fi
   585             SYSTEM_LIBS="$SYSTEM_LIBS $X_LIBS -lX11 -lXext"
   586             VIDEO_SUBDIRS="$VIDEO_SUBDIRS x11"
   587             VIDEO_DRIVERS="$VIDEO_DRIVERS x11/libvideo_x11.la"
   588 
   589             AC_ARG_ENABLE(video-x11-vm,
   590 [  --enable-video-x11-vm   use X11 VM extension for fullscreen [default=yes]],
   591                           , enable_video_x11_vm=yes)
   592             if test x$enable_video_x11_vm = xyes; then
   593                 AC_MSG_CHECKING(for XFree86 VidMode 1.0 support)
   594                 video_x11_vm=no
   595                 AC_TRY_COMPILE([
   596                  #include <X11/Xlib.h>
   597                  #include <XFree86/extensions/xf86vmode.h>
   598                 ],[
   599                 ],[
   600                 video_x11_vm=yes
   601                 ])
   602                 AC_MSG_RESULT($video_x11_vm)
   603                 if test x$video_x11_vm = xyes; then
   604                     CFLAGS="$CFLAGS -DXFREE86_VM"
   605                     VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xxf86vm"
   606                     VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xxf86vm/libXFree86_Xxf86vm.la"
   607                     AC_MSG_CHECKING(for XFree86 VidMode gamma support)
   608                     video_x11_vmgamma=no
   609                     AC_TRY_COMPILE([
   610                      #include <X11/Xlib.h>
   611                      #include <XFree86/extensions/xf86vmode.h>
   612                     ],[
   613                      SDL_NAME(XF86VidModeGamma) gamma;
   614                     ],[
   615                     video_x11_vmgamma=yes
   616                     ])
   617                     AC_MSG_RESULT($video_x11_vmgamma)
   618                     if test x$video_x11_vmgamma = xyes; then
   619                         CFLAGS="$CFLAGS -DXFREE86_VMGAMMA"
   620                     fi
   621                 fi
   622             fi
   623             AC_ARG_ENABLE(dga,
   624 [  --enable-dga            allow use of X11 DGA code [default=yes]],
   625                           , enable_dga=yes)
   626             AC_ARG_ENABLE(video-x11-dgamouse,
   627 [  --enable-video-x11-dgamouse  use X11 DGA for mouse events [default=yes]],
   628                           , enable_video_x11_dgamouse=yes)
   629             if test x$enable_dga = xyes; then
   630                 AC_MSG_CHECKING(for XFree86 DGA 1.0 support)
   631                 video_x11_dga=no
   632                 AC_TRY_COMPILE([
   633                  #include <X11/Xlib.h>
   634                  #include <XFree86/extensions/xf86dga.h>
   635                 ],[
   636                 ],[
   637                 video_x11_dga=yes
   638                 ])
   639                 AC_MSG_RESULT($video_x11_dga)
   640                 if test x$video_x11_dga = xyes; then
   641                     CFLAGS="$CFLAGS -DXFREE86_DGAMOUSE"
   642                     if test x$enable_video_x11_dgamouse = xyes; then
   643                         CFLAGS="$CFLAGS -DDEFAULT_DGAMOUSE"
   644                     fi
   645                     VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xxf86dga"
   646                     VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xxf86dga/libXFree86_Xxf86dga.la"
   647                 fi
   648             fi
   649             AC_ARG_ENABLE(video-x11-xv,
   650 [  --enable-video-x11-xv   use X11 XvImage extension for video [default=yes]],
   651                           , enable_video_x11_xv=yes)
   652             if test x$enable_video_x11_xv = xyes; then
   653                 AC_MSG_CHECKING(for XFree86 XvImage support)
   654                 video_x11_xv=no
   655                 AC_TRY_COMPILE([
   656                  #include <X11/Xlib.h>
   657                  #include <sys/ipc.h>
   658                  #include <sys/shm.h>
   659                  #include <X11/extensions/XShm.h>
   660                  #include <XFree86/extensions/Xvlib.h>
   661                 ],[
   662                  SDL_NAME(XvImage) *image;
   663                 ],[
   664                 video_x11_xv=yes
   665                 ])
   666                 AC_MSG_RESULT($video_x11_xv)
   667                 if test x$video_x11_xv = xyes; then
   668                     CFLAGS="$CFLAGS -DXFREE86_XV"
   669                     VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xv"
   670                     VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xv/libXFree86_Xv.la"
   671                 fi
   672             fi
   673             AC_ARG_ENABLE(video-x11-xinerama,
   674 [  --enable-video-x11-xinerama   enable X11 Xinerama support [default=yes]],
   675                             , enable_video_x11_xinerama=yes)
   676             if test x$enable_video_x11_xinerama = xyes; then
   677                 AC_MSG_CHECKING(for X11 Xinerama support)
   678                 video_x11_xinerama=no
   679                 AC_TRY_COMPILE([
   680                  #include <X11/Xlib.h>
   681                  #include <XFree86/extensions/Xinerama.h>
   682                 ],[
   683                  SDL_NAME(XineramaScreenInfo) *xinerama;
   684                 ],[
   685                 video_x11_xinerama=yes
   686                 ])
   687                 AC_MSG_RESULT($video_x11_xinerama)
   688                 if test x$video_x11_xinerama = xyes; then
   689                     CFLAGS="$CFLAGS -DHAVE_XINERAMA"
   690                     VIDEO_SUBDIRS="$VIDEO_SUBDIRS XFree86/Xinerama"
   691                     VIDEO_DRIVERS="$VIDEO_DRIVERS XFree86/Xinerama/libXFree86_Xinerama.la"
   692                 fi
   693             fi
   694             AC_ARG_ENABLE(video-x11-xme,
   695 [  --enable-video-x11-xme  enable Xi Graphics XME for fullscreen [default=yes]],
   696                             , enable_video_x11_xme=yes)
   697             if test x$enable_video_x11_xme = xyes; then
   698                 AC_MSG_CHECKING(for Xi Graphics XiGMiscExtension support)
   699                 video_x11_xme=no
   700                 AC_TRY_COMPILE([
   701                  #include <X11/Xlib.h>
   702                  #include <X11/extensions/xme.h>
   703                 ],[
   704                  XiGMiscResolutionInfo *resolutions;
   705                 ],[
   706                 video_x11_xme=yes
   707                 ])
   708                 AC_MSG_RESULT($video_x11_xme)
   709                 if test x$video_x11_xme = xyes; then
   710                     CFLAGS="$CFLAGS -DHAVE_XIGXME"
   711                     SYSTEM_LIBS="$SYSTEM_LIBS -lxme"
   712                 fi
   713             fi
   714         fi
   715     fi
   716 }
   717 
   718 dnl Find the X11 DGA 2.0 include and library directories
   719 CheckDGA()
   720 {
   721     AC_ARG_ENABLE(video-dga,
   722 [  --enable-video-dga      use DGA 2.0 video driver [default=yes]],
   723                   , enable_video_dga=yes)
   724     if test x$video_x11_dga = xyes -a x$enable_video_dga = xyes; then
   725         save_CFLAGS="$CFLAGS"; CFLAGS="$CFLAGS -Isrc/video"
   726         AC_MSG_CHECKING(for XFree86 DGA 2.0 support)
   727         video_x11_dga2=no
   728         AC_TRY_COMPILE([
   729          #include <X11/Xlib.h>
   730          #include <XFree86/extensions/xf86dga.h>
   731         ],[
   732          SDL_NAME(XDGAEvent) xevent;
   733         ],[
   734         video_x11_dga2=yes
   735         ])
   736         AC_MSG_RESULT($video_x11_dga2)
   737         if test x$video_x11_dga2 = xyes; then
   738             CFLAGS="$CFLAGS -DENABLE_DGA"
   739             VIDEO_SUBDIRS="$VIDEO_SUBDIRS dga"
   740             VIDEO_DRIVERS="$VIDEO_DRIVERS dga/libvideo_dga.la"
   741         fi
   742     fi
   743 }
   744 
   745 CheckPHOTON()
   746 {
   747     AC_ARG_ENABLE(video-photon,
   748 [  --enable-video-photon   use QNX Photon video driver [default=yes]],
   749                   , enable_video_photon=yes)
   750     if test x$enable_video = xyes -a x$enable_video_photon = xyes; then
   751         AC_MSG_CHECKING(for QNX Photon support)
   752         video_photon=no
   753         AC_TRY_COMPILE([
   754           #include <Ph.h>
   755           #include <Pt.h>
   756           #include <photon/Pg.h>
   757           #include <photon/PdDirect.h>
   758         ],[
   759          PgDisplaySettings_t *visual;
   760         ],[
   761         video_photon=yes
   762         ])
   763         AC_MSG_RESULT($video_photon)
   764         if test x$video_photon = xyes; then
   765             CFLAGS="$CFLAGS -DENABLE_PHOTON"
   766             SYSTEM_LIBS="$SYSTEM_LIBS -lph"
   767             VIDEO_SUBDIRS="$VIDEO_SUBDIRS photon"
   768             VIDEO_DRIVERS="$VIDEO_DRIVERS photon/libvideo_photon.la"
   769             CheckOpenGLQNX
   770         fi
   771     fi
   772 }
   773 
   774 dnl Find the framebuffer console includes
   775 CheckFBCON()
   776 {
   777     AC_ARG_ENABLE(video-fbcon,
   778 [  --enable-video-fbcon    use framebuffer console video driver [default=yes]],
   779                   , enable_video_fbcon=yes)
   780     if test x$enable_video = xyes -a x$enable_video_fbcon = xyes; then
   781         AC_MSG_CHECKING(for framebuffer console support)
   782         video_fbcon=no
   783         AC_TRY_COMPILE([
   784          #include <linux/fb.h>
   785          #include <linux/kd.h>
   786          #include <linux/keyboard.h>
   787         ],[
   788         ],[
   789         video_fbcon=yes
   790         ])
   791         AC_MSG_RESULT($video_fbcon)
   792         if test x$video_fbcon = xyes; then
   793             CFLAGS="$CFLAGS -DENABLE_FBCON"
   794             VIDEO_SUBDIRS="$VIDEO_SUBDIRS fbcon"
   795             VIDEO_DRIVERS="$VIDEO_DRIVERS fbcon/libvideo_fbcon.la"
   796         fi
   797     fi
   798 }
   799 
   800 dnl Find DirectFB
   801 CheckDirectFB()
   802 {
   803     AC_ARG_ENABLE(video-directfb,
   804 [  --enable-video-directfb use DirectFB video driver [default=no]],
   805                   , enable_video_directfb=no)
   806     if test x$enable_video = xyes -a x$enable_video_directfb = xyes; then
   807         video_directfb=no
   808 
   809         AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
   810         if test x$PKG_CONFIG = xno ; then
   811             AC_MSG_WARN([*** pkg-config is required to build the DirectFB video driver.])
   812         else
   813             AC_MSG_CHECKING(for DirectFB support)
   814 
   815             if ! $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then
   816                 AC_MSG_ERROR([*** pkg-config too old; version 0.7 or better required.])
   817             fi
   818 
   819             DIRECTFB_REQUIRED_VERSION=0.9.15
   820 
   821             if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb ; then
   822                 DIRECTFB_CFLAGS=`$PKG_CONFIG --cflags directfb`
   823                 DIRECTFB_LIBS=`$PKG_CONFIG --libs directfb`
   824                 video_directfb=yes
   825             fi
   826         fi
   827 
   828         AC_MSG_RESULT($video_directfb)
   829         if test x$video_directfb = xyes; then
   830             CFLAGS="$CFLAGS -DENABLE_DIRECTFB"
   831             VIDEO_SUBDIRS="$VIDEO_SUBDIRS directfb"
   832             VIDEO_DRIVERS="$VIDEO_DRIVERS directfb/libvideo_directfb.la"
   833 
   834             AC_SUBST(DIRECTFB_CFLAGS)
   835             AC_SUBST(DIRECTFB_LIBS)
   836         fi
   837     fi
   838 }
   839 
   840 dnl See if we're running on PlayStation 2 hardware
   841 CheckPS2GS()
   842 {
   843     AC_ARG_ENABLE(video-ps2gs,
   844 [  --enable-video-ps2gs    use PlayStation 2 GS video driver [default=yes]],
   845                   , enable_video_ps2gs=yes)
   846     if test x$enable_video = xyes -a x$enable_video_ps2gs = xyes; then
   847         AC_MSG_CHECKING(for PlayStation 2 GS support)
   848         video_ps2gs=no
   849         AC_TRY_COMPILE([
   850          #include <linux/ps2/dev.h>
   851          #include <linux/ps2/gs.h>
   852         ],[
   853         ],[
   854         video_ps2gs=yes
   855         ])
   856         AC_MSG_RESULT($video_ps2gs)
   857         if test x$video_ps2gs = xyes; then
   858             CFLAGS="$CFLAGS -DENABLE_PS2GS"
   859             VIDEO_SUBDIRS="$VIDEO_SUBDIRS ps2gs"
   860             VIDEO_DRIVERS="$VIDEO_DRIVERS ps2gs/libvideo_ps2gs.la"
   861         fi
   862     fi
   863 }
   864 
   865 dnl Find the GGI includes
   866 CheckGGI()
   867 {
   868     AC_ARG_ENABLE(video-ggi,
   869 [  --enable-video-ggi      use GGI video driver [default=no]],
   870                   , enable_video_ggi=no)
   871     if test x$enable_video = xyes -a x$enable_video_ggi = xyes; then
   872         AC_MSG_CHECKING(for GGI support)
   873         video_ggi=no
   874         AC_TRY_COMPILE([
   875          #include <ggi/ggi.h>
   876          #include <ggi/gii.h>
   877         ],[
   878         ],[
   879         video_ggi=yes
   880         ])
   881         AC_MSG_RESULT($video_ggi)
   882         if test x$video_ggi = xyes; then
   883             CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_GGI"
   884             SYSTEM_LIBS="$SYSTEM_LIBS -lggi -lgii -lgg"
   885 
   886             VIDEO_SUBDIRS="$VIDEO_SUBDIRS ggi"
   887             VIDEO_DRIVERS="$VIDEO_DRIVERS ggi/libvideo_ggi.la"
   888         fi
   889     fi
   890 }
   891 
   892 dnl Find the SVGAlib includes and libraries
   893 CheckSVGA()
   894 {
   895     AC_ARG_ENABLE(video-svga,
   896 [  --enable-video-svga     use SVGAlib video driver [default=no]],
   897                   , enable_video_svga=no)
   898     if test x$enable_video = xyes -a x$enable_video_svga = xyes; then
   899         AC_MSG_CHECKING(for SVGAlib (1.4.0+) support)
   900         video_svga=no
   901         AC_TRY_COMPILE([
   902          #include <vga.h>
   903          #include <vgamouse.h>
   904          #include <vgakeyboard.h>
   905         ],[
   906          if ( SCANCODE_RIGHTWIN && SCANCODE_LEFTWIN ) {
   907              exit(0);
   908          }
   909         ],[
   910         video_svga=yes
   911         ])
   912         AC_MSG_RESULT($video_svga)
   913         if test x$video_svga = xyes; then
   914             CFLAGS="$CFLAGS -DENABLE_SVGALIB"
   915             SYSTEM_LIBS="$SYSTEM_LIBS -lvga"
   916 
   917             VIDEO_SUBDIRS="$VIDEO_SUBDIRS svga"
   918             VIDEO_DRIVERS="$VIDEO_DRIVERS svga/libvideo_svga.la"
   919         fi
   920     fi
   921 }
   922 
   923 dnl Find the VGL includes and libraries
   924 CheckVGL()
   925 {
   926     AC_ARG_ENABLE(video-vgl,
   927 [  --enable-video-vgl      use VGL video driver [default=no]],
   928                   , enable_video_vgl=no)
   929     if test x$enable_video = xyes -a x$enable_video_vgl = xyes; then
   930         AC_MSG_CHECKING(for libVGL support)
   931         video_vgl=no
   932         AC_TRY_COMPILE([
   933          #include <sys/fbio.h>
   934          #include <sys/consio.h>
   935          #include <sys/kbio.h>
   936          #include <vgl.h>
   937         ],[
   938          VGLBitmap bitmap;
   939          exit(bitmap.Bitmap);
   940         ],[
   941         video_vgl=yes
   942         ])
   943         AC_MSG_RESULT($video_vgl)
   944         if test x$video_vgl = xyes; then
   945             CFLAGS="$CFLAGS -DENABLE_VGL"
   946             SYSTEM_LIBS="$SYSTEM_LIBS -lvgl"
   947 
   948             VIDEO_SUBDIRS="$VIDEO_SUBDIRS vgl"
   949             VIDEO_DRIVERS="$VIDEO_DRIVERS vgl/libvideo_vgl.la"
   950         fi
   951     fi
   952 }
   953 
   954 dnl Find the AAlib includes
   955 CheckAAlib()
   956 {
   957     AC_ARG_ENABLE(video-aalib,
   958 [  --enable-video-aalib    use AAlib video driver [default=no]],
   959                   , enable_video_aalib=no)
   960     if test x$enable_video = xyes -a x$enable_video_aalib = xyes; then
   961         AC_MSG_CHECKING(for AAlib support)
   962         video_aalib=no
   963         AC_TRY_COMPILE([
   964          #include <aalib.h>
   965         ],[
   966         ],[
   967         video_aalib=yes
   968         ])
   969         AC_MSG_RESULT($video_aalib)
   970         if test x$video_aalib = xyes; then
   971             CFLAGS="$CFLAGS -DENABLE_AALIB"
   972             SYSTEM_LIBS="$SYSTEM_LIBS -laa"
   973 
   974             VIDEO_SUBDIRS="$VIDEO_SUBDIRS aalib"
   975             VIDEO_DRIVERS="$VIDEO_DRIVERS aalib/libvideo_aa.la"
   976         fi
   977     fi
   978 }
   979 
   980 dnl Set up the Atari Xbios driver
   981 CheckAtariXbiosVideo()
   982 {
   983     AC_ARG_ENABLE(xbios,
   984 [  --enable-video-xbios    use Atari Xbios video driver [default=yes]],
   985                   , enable_video_xbios=yes)
   986     video_xbios=no
   987     if test x$enable_video = xyes -a x$enable_video_xbios = xyes; then
   988         video_xbios=yes
   989         CFLAGS="$CFLAGS -DENABLE_XBIOS"
   990         VIDEO_SUBDIRS="$VIDEO_SUBDIRS xbios"
   991         VIDEO_DRIVERS="$VIDEO_DRIVERS xbios/libvideo_xbios.la"
   992     fi
   993 }
   994 
   995 dnl Set up the Atari Gem driver
   996 CheckAtariGemVideo()
   997 {
   998     AC_ARG_ENABLE(gem,
   999 [  --enable-video-gem      use Atari Gem video driver [default=yes]],
  1000                   , enable_video_gem=yes)
  1001     if test x$enable_video = xyes -a x$enable_video_gem = xyes; then
  1002         video_gem=no
  1003         AC_CHECK_HEADER(gem.h, have_gem_hdr=yes)
  1004         AC_CHECK_LIB(gem, appl_init, have_gem_lib=yes)
  1005         if test x$have_gem_hdr = xyes -a x$have_gem_lib = xyes; then
  1006             video_gem=yes
  1007             CFLAGS="$CFLAGS -DENABLE_GEM"
  1008             SYSTEM_LIBS="$SYSTEM_LIBS -lgem"
  1009             VIDEO_SUBDIRS="$VIDEO_SUBDIRS gem"
  1010             VIDEO_DRIVERS="$VIDEO_DRIVERS gem/libvideo_gem.la"
  1011         fi
  1012     fi
  1013 }
  1014 
  1015 dnl Set up the Atari Bios keyboard driver
  1016 CheckAtariBiosEvent()
  1017 {
  1018     CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video/ataricommon"
  1019     VIDEO_SUBDIRS="$VIDEO_SUBDIRS ataricommon"
  1020     VIDEO_DRIVERS="$VIDEO_DRIVERS ataricommon/libvideo_ataricommon.la"
  1021 }
  1022 
  1023 dnl rcg04172001 Set up the Null video driver.
  1024 CheckDummyVideo()
  1025 {
  1026     AC_ARG_ENABLE(video-dummy,
  1027 [  --enable-video-dummy    use dummy video driver [default=yes]],
  1028                   , enable_video_dummy=yes)
  1029     if test x$enable_video_dummy = xyes; then
  1030       CFLAGS="$CFLAGS -DENABLE_DUMMYVIDEO"
  1031       VIDEO_SUBDIRS="$VIDEO_SUBDIRS dummy"
  1032       VIDEO_DRIVERS="$VIDEO_DRIVERS dummy/libvideo_null.la"
  1033     fi
  1034 }
  1035 
  1036 dnl Check to see if OpenGL support is desired
  1037 AC_ARG_ENABLE(video-opengl,
  1038 [  --enable-video-opengl   include OpenGL context creation [default=yes]],
  1039               , enable_video_opengl=yes)
  1040 
  1041 dnl Find OpenGL
  1042 CheckOpenGL()
  1043 {
  1044     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1045         AC_MSG_CHECKING(for OpenGL (GLX) support)
  1046         video_opengl=no
  1047         AC_TRY_COMPILE([
  1048          #include <GL/gl.h>
  1049          #include <GL/glx.h>
  1050          #include <dlfcn.h> /* For loading extensions */
  1051         ],[
  1052         ],[
  1053         video_opengl=yes
  1054         ])
  1055         AC_MSG_RESULT($video_opengl)
  1056         if test x$video_opengl = xyes; then
  1057             CFLAGS="$CFLAGS -DHAVE_OPENGL"
  1058             if test x$use_dlopen != xyes; then
  1059                 AC_CHECK_LIB(dl, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS -ldl")
  1060             fi
  1061         fi
  1062     fi
  1063 }
  1064 
  1065 dnl Find QNX RtP OpenGL
  1066 CheckOpenGLQNX()
  1067 {
  1068     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1069         AC_MSG_CHECKING(for OpenGL (Photon) support)
  1070         video_opengl=no
  1071         AC_TRY_COMPILE([
  1072          #include <GL/gl.h>
  1073         ],[
  1074         ],[
  1075         video_opengl=yes
  1076         ])
  1077         AC_MSG_RESULT($video_opengl)
  1078         if test x$video_opengl = xyes; then
  1079             CFLAGS="$CFLAGS -DHAVE_OPENGL"
  1080             SYSTEM_LIBS="$SYSTEM_LIBS -lGL"
  1081             if test x$use_dlopen != xyes; then
  1082                 AC_CHECK_LIB(c, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS", AC_CHECK_LIB(ltdl, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS -lltdl"))
  1083             fi
  1084         fi
  1085     fi
  1086 }
  1087 
  1088 dnl Check for BeOS OpenGL
  1089 CheckBeGL()
  1090 {
  1091     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1092         CFLAGS="$CFLAGS -DHAVE_OPENGL"
  1093         SYSTEM_LIBS="$SYSTEM_LIBS -lGL"
  1094     fi
  1095 }
  1096 
  1097 dnl Check for MacOS OpenGL
  1098 CheckMacGL()
  1099 {
  1100     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1101         CFLAGS="$CFLAGS -DHAVE_OPENGL"
  1102         case "$target" in
  1103             *-*-darwin*)
  1104                 SYSTEM_LIBS="$SYSTEM_LIBS -framework OpenGL -framework AGL"
  1105         esac
  1106     fi
  1107 }
  1108 
  1109 dnl See if we can use the new unified event interface in Linux 2.4
  1110 CheckInputEvents()
  1111 {
  1112     dnl Check for Linux 2.4 unified input event interface support
  1113     AC_ARG_ENABLE(input-events,
  1114 [  --enable-input-events   use Linux 2.4 unified input interface [default=yes]],
  1115                   , enable_input_events=yes)
  1116     if test x$enable_input_events = xyes; then
  1117         AC_MSG_CHECKING(for Linux 2.4 unified input interface)
  1118         use_input_events=no
  1119         AC_TRY_COMPILE([
  1120           #include <linux/input.h>
  1121         ],[
  1122           #ifndef EVIOCGNAME
  1123           #error EVIOCGNAME() ioctl not available
  1124           #endif
  1125         ],[
  1126         use_input_events=yes
  1127         ])
  1128         AC_MSG_RESULT($use_input_events)
  1129         if test x$use_input_events = xyes; then
  1130             CFLAGS="$CFLAGS -DUSE_INPUT_EVENTS"
  1131         fi
  1132     fi
  1133 }
  1134 
  1135 dnl See if we can use GNU pth library for threads
  1136 CheckPTH()
  1137 {
  1138     dnl Check for pth support
  1139     AC_ARG_ENABLE(pth,
  1140 [  --enable-pth            use GNU pth library for multi-threading [default=yes]],
  1141                   , enable_pth=yes)
  1142     if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  1143         AC_PATH_PROG(PTH_CONFIG, pth-config, no)
  1144         if test "$PTH_CONFIG" = "no"; then
  1145             use_pth=no
  1146         else
  1147             PTH_CFLAGS=`$PTH_CONFIG --cflags`
  1148             PTH_LIBS=`$PTH_CONFIG --libs --all`
  1149             SDL_CFLAGS="$SDL_CFLAGS $PTH_CFLAGS"
  1150             SDL_LIBS="$SDL_LIBS $PTH_LIBS"
  1151             CFLAGS="$CFLAGS -DENABLE_PTH"
  1152             use_pth=yes
  1153         fi
  1154         AC_MSG_CHECKING(pth)
  1155         if test "x$use_pth" = xyes; then
  1156             AC_MSG_RESULT(yes)
  1157         else
  1158             AC_MSG_RESULT(no)
  1159         fi
  1160     fi
  1161 }
  1162 
  1163 dnl See what type of thread model to use on Linux and Solaris
  1164 CheckPTHREAD()
  1165 {
  1166     dnl Check for pthread support
  1167     AC_ARG_ENABLE(pthreads,
  1168 [  --enable-pthreads       use POSIX threads for multi-threading [default=yes]],
  1169                   , enable_pthreads=yes)
  1170     dnl This is used on Linux for glibc binary compatibility (Doh!)
  1171     AC_ARG_ENABLE(pthread-sem,
  1172 [  --enable-pthread-sem    use pthread semaphores [default=yes]],
  1173                   , enable_pthread_sem=yes)
  1174     case "$target" in
  1175         *-*-bsdi*)
  1176             pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1177             pthread_lib=""
  1178             ;;
  1179         *-*-darwin*)
  1180             pthread_cflags="-D_THREAD_SAFE"
  1181 # causes Carbon.p complaints?
  1182 #            pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1183             ;;
  1184         *-*-freebsd*)
  1185             pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1186             pthread_lib="-pthread"
  1187             ;;
  1188         *-*-netbsd*)
  1189             pthread_cflags="-I/usr/pkg/include -D_REENTRANT"
  1190             pthread_lib="-L/usr/pkg/lib -lpthread -lsem"
  1191             ;;
  1192         *-*-openbsd*)
  1193             pthread_cflags="-D_REENTRANT"
  1194             pthread_lib="-pthread"
  1195             ;;
  1196         *-*-solaris*)
  1197             pthread_cflags="-D_REENTRANT"
  1198             pthread_lib="-lpthread -lposix4"
  1199             ;;
  1200         *-*-sysv5*)
  1201             pthread_cflags="-D_REENTRANT -Kthread"
  1202             pthread_lib=""
  1203             ;;
  1204         *-*-irix*)
  1205             pthread_cflags="-D_SGI_MP_SOURCE"
  1206             pthread_lib="-lpthread"
  1207             ;;
  1208         *-*-aix*)
  1209             pthread_cflags="-D_REENTRANT -mthreads"
  1210             pthread_lib="-lpthread"
  1211             ;;
  1212         *-*-hpux11*)
  1213             pthread_cflags="-D_REENTRANT"
  1214             pthread_lib="-L/usr/lib -lpthread"
  1215             ;;
  1216         *-*-qnx*)
  1217             pthread_cflags=""
  1218             pthread_lib=""
  1219             ;;
  1220         *-*-osf*)
  1221             if test x$ac_cv_prog_gcc = xyes; then
  1222                 pthread_cflags="-D_REENTRANT"
  1223                 pthread_lib="-lpthread -lrt"
  1224             else
  1225                 pthread_cflags="-pthread"
  1226                 pthread_lib="-lpthread -lrt"
  1227             fi
  1228             ;;
  1229         *)
  1230             pthread_cflags="-D_REENTRANT"
  1231             pthread_lib="-lpthread"
  1232             ;;
  1233     esac
  1234     if test x$enable_threads = xyes -a x$enable_pthreads = xyes; then
  1235         # Save the original compiler flags and libraries
  1236         ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
  1237         # Add the pthread compiler flags and libraries
  1238         CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
  1239         # Check to see if we have pthread support on this system
  1240         AC_MSG_CHECKING(for pthreads)
  1241         use_pthreads=no
  1242         AC_TRY_LINK([
  1243          #include <pthread.h>
  1244         ],[
  1245          pthread_attr_t type;
  1246          pthread_attr_init(&type);
  1247         ],[
  1248         use_pthreads=yes
  1249         ])
  1250         AC_MSG_RESULT($use_pthreads)
  1251         # Restore the compiler flags and libraries
  1252         CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
  1253         # Do futher testing if we have pthread support...
  1254         if test x$use_pthreads = xyes; then
  1255             CFLAGS="$CFLAGS $pthread_cflags -DSDL_USE_PTHREADS"
  1256             LIBS="$LIBS $pthread_lib"
  1257             SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags"
  1258             SDL_LIBS="$SDL_LIBS $pthread_lib"
  1259 
  1260             # Check to see if recursive mutexes are available
  1261             AC_MSG_CHECKING(for recursive mutexes)
  1262             has_recursive_mutexes=no
  1263             AC_TRY_LINK([
  1264               #include <pthread.h>
  1265             ],[
  1266               pthread_mutexattr_t attr;
  1267               #if defined(linux) && !(defined(__arm__) && defined(QWS))
  1268               pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
  1269               #else
  1270               pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
  1271               #endif
  1272             ],[
  1273             has_recursive_mutexes=yes
  1274             ])
  1275             # Some systems have broken recursive mutex implementations
  1276             case "$target" in
  1277                 *-*-darwin*)
  1278                     has_recursive_mutexes=no
  1279                     ;;
  1280                 *-*-solaris*)
  1281                     has_recursive_mutexes=no
  1282                     ;;
  1283             esac
  1284             AC_MSG_RESULT($has_recursive_mutexes)
  1285             if test x$has_recursive_mutexes != xyes; then
  1286                 CFLAGS="$CFLAGS -DPTHREAD_NO_RECURSIVE_MUTEX"
  1287             fi
  1288 
  1289             # Check to see if pthread semaphore support is missing
  1290             if test x$enable_pthread_sem = xyes; then
  1291                 AC_MSG_CHECKING(for pthread semaphores)
  1292                 have_pthread_sem=no
  1293                 AC_TRY_COMPILE([
  1294                   #include <pthread.h>
  1295                   #include <semaphore.h>
  1296                 ],[
  1297                 ],[
  1298                 have_pthread_sem=yes
  1299                 ])
  1300                 AC_MSG_RESULT($have_pthread_sem)
  1301             fi
  1302 
  1303             # Check to see if this is broken glibc 2.0 pthreads
  1304             case "$target" in
  1305                 *-*-linux*)
  1306                     AC_MSG_CHECKING(for broken glibc 2.0 pthreads)
  1307                     glibc20_pthreads=no
  1308                     AC_TRY_COMPILE([
  1309                       #include <features.h>
  1310                       #if (__GLIBC__ == 2) && (__GLIBC_MINOR__ == 0)
  1311                       #warning Working around a bug in glibc 2.0 pthreads
  1312                       #else
  1313                       #error pthread implementation okay
  1314                       #endif /* glibc 2.0 */
  1315                     ],[
  1316                     ],[
  1317                     glibc20_pthreads=yes
  1318                     ])
  1319                     AC_MSG_RESULT($glibc20_pthreads)
  1320             esac
  1321         fi
  1322     fi
  1323 
  1324     AC_MSG_CHECKING(whether semun is defined in /usr/include/sys/sem.h)
  1325     have_semun=no
  1326     AC_TRY_COMPILE([
  1327       #include <sys/types.h>
  1328       #include <sys/sem.h>
  1329     ],[
  1330       union semun t;
  1331     ],[
  1332     have_semun=yes
  1333     ])
  1334     AC_MSG_RESULT($have_semun)
  1335     if test x$have_semun = xyes; then
  1336         CFLAGS="$CFLAGS -DHAVE_SEMUN"
  1337     fi
  1338 
  1339     # See if we can use GNU Pth or clone() on Linux directly
  1340     if test x$enable_threads = xyes -a x$use_pthreads != xyes; then
  1341         CheckPTH
  1342         if test x$use_pth != xyes; then
  1343             case "$target" in
  1344                 *-*-linux*)
  1345                     use_clone=yes
  1346                     ;;
  1347             esac
  1348         fi
  1349     fi
  1350 }
  1351 
  1352 # Note that we need to have either semaphores or to have mutexes and
  1353 # condition variables to implement all thread synchronization primitives
  1354 CopyUnixThreadSource()
  1355 {
  1356     if test x$use_pthreads = xyes -o x$use_clone = xyes; then
  1357         # Basic thread creation functions
  1358         COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c)
  1359         COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h)
  1360 
  1361         # Semaphores
  1362         # We can fake these with mutexes and condition variables if necessary
  1363         if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then
  1364             COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c)
  1365         else
  1366             COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c)
  1367         fi
  1368         COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  1369 
  1370         # Mutexes
  1371         # We can fake these with semaphores if necessary
  1372         case "$target" in
  1373             *-*-bsdi*)
  1374                 COPY_ARCH_SRC(src/thread, bsdi, SDL_syssem.c)
  1375                 COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  1376                 COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c)
  1377                 COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h)
  1378                 ;;
  1379             *)
  1380                 if test x$glibc20_pthreads = xyes; then
  1381                     COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c)
  1382                     COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
  1383                 else
  1384                     COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c)
  1385                     COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h)
  1386                 fi
  1387                 ;;
  1388         esac
  1389 
  1390         # Condition variables
  1391         # We can fake these with semaphores and mutexes if necessary
  1392         if test x$glibc20_pthreads = xyes -o x$has_recursive_mutexes != xyes; then
  1393             COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
  1394         else
  1395             COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c)
  1396         fi
  1397         COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
  1398 
  1399     elif test x$use_pth = xyes; then
  1400         COPY_ARCH_SRC(src/thread, pth, SDL_systhread.c)
  1401         COPY_ARCH_SRC(src/thread, pth, SDL_systhread_c.h)
  1402         COPY_ARCH_SRC(src/thread, pth, SDL_sysmutex.c)
  1403         COPY_ARCH_SRC(src/thread, pth, SDL_sysmutex_c.h)
  1404         COPY_ARCH_SRC(src/thread, pth, SDL_syscond.c)
  1405         COPY_ARCH_SRC(src/thread, pth, SDL_syscond_c.h)
  1406         COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c)
  1407         COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  1408     else
  1409        AC_MSG_ERROR([
  1410 *** No thread support detected
  1411        ])
  1412     fi
  1413 }
  1414 
  1415 dnl See if we can use sigaction() instead of signal()
  1416 CheckSIGACTION()
  1417 {
  1418     dnl Check for sigaction support
  1419     AC_ARG_ENABLE(sigaction,
  1420 [  --enable-sigaction      use sigaction instead of signal [default=yes]],
  1421                   , enable_sigaction=yes)
  1422     if test x$enable_sigaction = xyes; then
  1423         AC_MSG_CHECKING(sigaction)
  1424         have_sigaction=no
  1425         AC_TRY_COMPILE([
  1426          #include <signal.h>
  1427         ],[
  1428          struct sigaction junk;
  1429          sigaction(0, &junk, &junk);
  1430         ],[
  1431         have_sigaction=yes
  1432         ])
  1433         AC_MSG_RESULT($have_sigaction)
  1434         if test x$have_sigaction = xyes; then
  1435             CFLAGS="$CFLAGS -DHAVE_SIGACTION"
  1436         fi
  1437     fi
  1438 }
  1439 
  1440 dnl Determine whether the compiler can produce Win32 executables
  1441 CheckWIN32()
  1442 {
  1443     AC_MSG_CHECKING(Win32 compiler)
  1444     have_win32_gcc=no
  1445     AC_TRY_COMPILE([
  1446      #include <windows.h>
  1447     ],[
  1448     ],[
  1449     have_win32_gcc=yes
  1450     ])
  1451     AC_MSG_RESULT($have_win32_gcc)
  1452     if test x$have_win32_gcc != xyes; then
  1453        AC_MSG_ERROR([
  1454 *** Your compiler ($CC) does not produce Win32 executables!
  1455        ])
  1456     fi
  1457 
  1458     dnl See if the user wants to redirect standard output to files
  1459     AC_ARG_ENABLE(stdio-redirect,
  1460 [  --enable-stdio-redirect Redirect STDIO to files on Win32 [default=yes]],
  1461                   , enable_stdio_redirect=yes)
  1462     if test x$enable_stdio_redirect != xyes; then
  1463         CFLAGS="$CFLAGS -DNO_STDIO_REDIRECT"
  1464     fi
  1465 }
  1466 
  1467 dnl Find the DirectX includes and libraries
  1468 CheckDIRECTX()
  1469 {
  1470     AC_ARG_ENABLE(directx,
  1471 [  --enable-directx        use DirectX for Win32 audio/video [default=yes]],
  1472                   , enable_directx=yes)
  1473     if test x$enable_directx = xyes; then
  1474         AC_MSG_CHECKING(for DirectX headers and libraries)
  1475         use_directx=no
  1476         tmp_cflags=$CFLAGS
  1477         CFLAGS="$CFLAGS -I$srcdir"
  1478         AC_TRY_COMPILE([
  1479          #include "src/video/windx5/directx.h"
  1480         ],[
  1481         ],[
  1482         use_directx=yes
  1483         ])
  1484         CFLAGS=$tmp_cflags
  1485         AC_MSG_RESULT($use_directx)
  1486     fi
  1487 
  1488     CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video/wincommon"
  1489     SYSTEM_LIBS="$SYSTEM_LIBS -luser32 -lgdi32 -lwinmm"
  1490     VIDEO_SUBDIRS="$VIDEO_SUBDIRS wincommon"
  1491     VIDEO_DRIVERS="$VIDEO_DRIVERS wincommon/libvideo_wincommon.la"
  1492     # Enable the DIB driver
  1493     CFLAGS="$CFLAGS -DENABLE_WINDIB"
  1494     VIDEO_SUBDIRS="$VIDEO_SUBDIRS windib"
  1495     VIDEO_DRIVERS="$VIDEO_DRIVERS windib/libvideo_windib.la"
  1496     # See if we should enable the DirectX driver
  1497     if test x$use_directx = xyes; then
  1498         CFLAGS="$CFLAGS -DENABLE_DIRECTX"
  1499         SYSTEM_LIBS="$SYSTEM_LIBS -ldxguid"
  1500         VIDEO_SUBDIRS="$VIDEO_SUBDIRS windx5"
  1501         VIDEO_DRIVERS="$VIDEO_DRIVERS windx5/libvideo_windx5.la"
  1502     fi
  1503 }
  1504 
  1505 dnl Set up the BWindow video driver on BeOS
  1506 CheckBWINDOW()
  1507 {
  1508     CFLAGS="$CFLAGS -DENABLE_BWINDOW"
  1509     VIDEO_SUBDIRS="$VIDEO_SUBDIRS bwindow"
  1510     VIDEO_DRIVERS="$VIDEO_DRIVERS bwindow/libvideo_bwindow.la"
  1511 }
  1512 
  1513 dnl Set up the QTopia video driver if enabled
  1514 CheckQtopia()
  1515 {
  1516     AC_ARG_ENABLE(video-qtopia,
  1517 [  --enable-video-qtopia   use Qtopia video driver [default=no]],
  1518                   , enable_video_qtopia=no)
  1519     if test x$enable_video = xyes -a x$enable_video_qtopia = xyes; then
  1520         AC_MSG_CHECKING(for Qtopia support)
  1521         video_qtopia=no
  1522         AC_LANG_CPLUSPLUS
  1523         OLD_CXX="$CXXFLAGS"
  1524         CXXFLAGS="-DQT_QWS_EBX -fno-rtti -fno-exceptions -DQT_QWS_CUSTOM -DQWS -I${QPEDIR}/include -I${QTDIR}/include/ -DNO_DEBUG"
  1525         AC_TRY_COMPILE([
  1526          #include <qpe/qpeapplication.h>
  1527         ],[
  1528         ],[
  1529         video_qtopia=yes
  1530         ])
  1531         CXXFLAGS="$OLD_CXX"
  1532         AC_MSG_RESULT($video_qtopia)
  1533         if test x$video_qtopia = xyes; then
  1534             CFLAGS="$CFLAGS -DENABLE_QTOPIA -DQT_QWS_EBX -DQT_QWS_CUSTOM -DQWS -I${QPEDIR}/include -I${QTDIR}/include/ -DNO_DEBUG -fno-rtti -fno-exceptions"
  1535             SDL_LIBS="$SDL_LIBS -L${QPEDIR}/lib -L${QTDIR}/lib/ -lqpe -lqte"
  1536             SDL_CFLAGS="$SDL_CFLAGS -DQWS"	  
  1537             VIDEO_SUBDIRS="$VIDEO_SUBDIRS qtopia"
  1538             VIDEO_DRIVERS="$VIDEO_DRIVERS qtopia/libvideo_qtopia.la"
  1539         else
  1540 	AC_MSG_ERROR([
  1541 *** Failed to find Qtopia includes. Make sure that the QTDIR and QPEDIR
  1542 *** environment variables are set correctly.])
  1543         fi
  1544         AC_LANG_C
  1545     fi
  1546 }
  1547 
  1548 dnl Set up the PicoGUI video driver if enabled
  1549 CheckPicoGUI()
  1550 {
  1551     AC_ARG_ENABLE(video-picogui,
  1552 [  --enable-video-picogui  use PicoGUI video driver [default=no]],
  1553                   , enable_video_picogui=no)
  1554     if test x$enable_video = xyes -a x$enable_video_picogui = xyes; then
  1555         AC_MSG_CHECKING(for PicoGUI support)
  1556         video_picogui=no
  1557         AC_TRY_COMPILE([
  1558          #include <picogui.h>
  1559         ],[
  1560         ],[
  1561         video_picogui=yes
  1562         ])
  1563         AC_MSG_RESULT($video_picogui)
  1564         if test x$video_picogui = xyes; then
  1565 	    SDL_LIBS="$SDL_LIBS -lpgui"
  1566             CFLAGS="$CFLAGS -DENABLE_PICOGUI"
  1567             VIDEO_SUBDIRS="$VIDEO_SUBDIRS picogui"
  1568             VIDEO_DRIVERS="$VIDEO_DRIVERS picogui/libvideo_picogui.la"
  1569         fi
  1570         AC_LANG_C
  1571     fi
  1572 }
  1573 
  1574 dnl Set up the Mac toolbox video driver for Mac OS 7-9
  1575 CheckTOOLBOX()
  1576 {
  1577     VIDEO_SUBDIRS="$VIDEO_SUBDIRS maccommon"
  1578     VIDEO_DRIVERS="$VIDEO_DRIVERS maccommon/libvideo_maccommon.la"
  1579     VIDEO_SUBDIRS="$VIDEO_SUBDIRS macrom"
  1580     VIDEO_DRIVERS="$VIDEO_DRIVERS macrom/libvideo_macrom.la"
  1581 }
  1582 
  1583 dnl Set up the Mac toolbox video driver for Mac OS X
  1584 CheckCARBON()
  1585 {
  1586     # "MACOSX" is not an official definition, but it's commonly
  1587     # accepted as a way to differentiate between what runs on X
  1588     # and what runs on older Macs - while in theory "Carbon" defns
  1589     # are consistent between the two, in practice Carbon is still
  1590     # changing. -sts Aug 2000
  1591     mac_autoconf_target_workaround="MAC"
  1592     CFLAGS="$CFLAGS -I/System/Library/Frameworks/Carbon.framework/Headers \
  1593       -fpascal-strings -DENABLE_TOOLBOX -DMACOSX -DTARGET_API_${mac_autoconf_target_workaround}_CARBON=1 -I\$(top_srcdir)/src/video/maccommon -I\$(top_srcdir)/src/video/macrom -I\$(top_srcdir)/src/video/macdsp"
  1594     VIDEO_SUBDIRS="$VIDEO_SUBDIRS maccommon"
  1595     VIDEO_DRIVERS="$VIDEO_DRIVERS maccommon/libvideo_maccommon.la"
  1596     VIDEO_SUBDIRS="$VIDEO_SUBDIRS macrom"
  1597     VIDEO_DRIVERS="$VIDEO_DRIVERS macrom/libvideo_macrom.la"
  1598 }
  1599 
  1600 dnl Set up the Mac toolbox video driver for Mac OS X
  1601 CheckQUARTZ()
  1602 {
  1603     # "MACOSX" is not an official definition, but it's commonly
  1604     # accepted as a way to differentiate between what runs on X
  1605     # and what runs on older Macs - while in theory "Carbon" defns
  1606     # are consistent between the two, in practice Carbon is still
  1607     # changing. -sts Aug 2000
  1608     mac_autoconf_target_workaround="MAC"
  1609     CFLAGS="$CFLAGS -I/System/Library/Frameworks/Carbon.framework/Headers \
  1610       -I/System/Library/Frameworks/Cocoa.framework/Headers -fpascal-strings \
  1611       -DENABLE_QUARTZ -DMACOSX -DTARGET_API_${mac_autoconf_target_workaround}_CARBON=1 -I\$(top_srcdir)/src/video/quartz"
  1612     VIDEO_SUBDIRS="$VIDEO_SUBDIRS quartz"
  1613     VIDEO_DRIVERS="$VIDEO_DRIVERS quartz/libvideo_quartz.la"
  1614 }
  1615 
  1616 dnl Check for the dlfcn.h interface for dynamically loading objects
  1617 CheckDLOPEN()
  1618 {
  1619     AC_ARG_ENABLE(sdl-dlopen,
  1620 [  --enable-sdl-dlopen     use dlopen for shared object loading [default=yes]],
  1621                   , enable_sdl_dlopen=yes)
  1622     if test x$enable_sdl_dlopen = xyes; then
  1623         AC_MSG_CHECKING(for dlopen)
  1624         use_dlopen=no
  1625         AC_TRY_COMPILE([
  1626          #include <dlfcn.h>
  1627         ],[
  1628         ],[
  1629         use_dlopen=yes
  1630         ])
  1631         AC_MSG_RESULT($use_dlopen)
  1632 
  1633         if test x$use_dlopen = xyes; then
  1634             CFLAGS="$CFLAGS -DUSE_DLOPEN"
  1635             AC_CHECK_LIB(c, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS",
  1636                AC_CHECK_LIB(dl, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS -ldl",
  1637                   AC_CHECK_LIB(ltdl, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS -lltdl")))
  1638         fi
  1639     fi
  1640 }
  1641 
  1642 dnl Set up the Atari LDG (shared object loader)
  1643 CheckAtariLdg()
  1644 {
  1645     AC_ARG_ENABLE(atari-ldg,
  1646 [  --enable-atari-ldg      use Atari LDG for shared object loading [default=yes]],
  1647                   , enable_atari_ldg=yes)
  1648     if test x$video_gem = xyes -a x$enable_atari_ldg = xyes; then
  1649         AC_CHECK_HEADER(ldg.h, have_ldg_hdr=yes)
  1650         AC_CHECK_LIB(ldg, ldg_open, have_ldg_lib=yes, have_ldg_lib=no, -lgem)
  1651         if test x$have_ldg_hdr = xyes -a x$have_ldg_lib = xyes; then
  1652             CFLAGS="$CFLAGS -DENABLE_LDG"
  1653             SYSTEM_LIBS="$SYSTEM_LIBS -lldg -lgem"
  1654         fi
  1655     fi
  1656 }
  1657 
  1658 dnl Check for the usbhid(3) library on *BSD
  1659 CheckUSBHID()
  1660 {
  1661     if test x$enable_joystick = xyes; then
  1662         have_libusbhid=no
  1663         have_libusb=no
  1664         AC_CHECK_LIB(usbhid, hid_init, have_libusbhid=yes)
  1665         AC_CHECK_LIB(usb, hid_init, have_libusb=yes)
  1666         if test x$have_libusbhid = xyes; then
  1667             SYSTEM_LIBS="$SYSTEM_LIBS -lusbhid"
  1668         fi
  1669         if test x$have_libusb = xyes; then
  1670             SYSTEM_LIBS="$SYSTEM_LIBS -lusb"
  1671         fi
  1672 
  1673         AC_CHECK_HEADER(usb.h, have_usb_h=yes)
  1674         AC_CHECK_HEADER(usbhid.h, have_usbhid_h=yes)
  1675         AC_CHECK_HEADER(libusb.h, have_libusb_h=yes)
  1676         AC_CHECK_HEADER(libusbhid.h, have_libusbhid_h=yes)
  1677         if test x$have_usb_h = xyes; then
  1678             CFLAGS="$CFLAGS -DHAVE_USB_H"
  1679         fi
  1680         if test x$have_usbhid_h = xyes; then
  1681             CFLAGS="$CFLAGS -DHAVE_USBHID_H"
  1682         fi
  1683         if test x$have_libusb_h = xyes; then
  1684             CFLAGS="$CFLAGS -DHAVE_LIBUSB_H"
  1685         fi
  1686         if test x$have_libusbhid_h = xyes; then
  1687             CFLAGS="$CFLAGS -DHAVE_LIBUSBHID_H"
  1688         fi
  1689 
  1690         AC_MSG_CHECKING(for usbhid)
  1691         have_usbhid=no
  1692         AC_TRY_COMPILE([
  1693           #include <sys/types.h>
  1694           #if defined(HAVE_USB_H)
  1695           #include <usb.h>
  1696           #endif
  1697           #include <dev/usb/usb.h>
  1698           #include <dev/usb/usbhid.h>
  1699           #if defined(HAVE_USBHID_H)
  1700           #include <usbhid.h>
  1701           #elif defined(HAVE_LIBUSB_H)
  1702           #include <libusb.h>
  1703           #elif defined(HAVE_LIBUSBHID_H)
  1704           #include <libusbhid.h>
  1705           #endif
  1706         ],[
  1707           struct report_desc *repdesc;
  1708           struct usb_ctl_report *repbuf;
  1709           hid_kind_t hidkind;
  1710         ],[
  1711         have_usbhid=yes
  1712         ])
  1713         AC_MSG_RESULT($have_usbhid)
  1714 
  1715         if test x$have_usbhid = xyes; then
  1716             AC_MSG_CHECKING(for ucr_data member of usb_ctl_report)
  1717             have_usbhid_ucr_data=no
  1718             AC_TRY_COMPILE([
  1719               #include <sys/types.h>
  1720               #if defined(HAVE_USB_H)
  1721               #include <usb.h>
  1722               #endif
  1723               #include <dev/usb/usb.h>
  1724               #include <dev/usb/usbhid.h>
  1725               #if defined(HAVE_USBHID_H)
  1726               #include <usbhid.h>
  1727               #elif defined(HAVE_LIBUSB_H)
  1728               #include <libusb.h>
  1729               #elif defined(HAVE_LIBUSBHID_H)
  1730               #include <libusbhid.h>
  1731               #endif
  1732             ],[
  1733               struct usb_ctl_report buf;
  1734               if (buf.ucr_data) { }
  1735             ],[
  1736             have_usbhid_ucr_data=yes
  1737             ])
  1738             if test x$have_usbhid_ucr_data = xyes; then
  1739                 CFLAGS="$CFLAGS -DUSBHID_UCR_DATA"
  1740             fi
  1741             AC_MSG_RESULT($have_usbhid_ucr_data)
  1742             
  1743 	    AC_MSG_CHECKING(for new usbhid API)
  1744             have_usbhid_new=no
  1745             AC_TRY_COMPILE([
  1746               #include <sys/types.h>
  1747               #if defined(HAVE_USB_H)
  1748               #include <usb.h>
  1749               #endif
  1750               #include <dev/usb/usb.h>
  1751               #include <dev/usb/usbhid.h>
  1752               #if defined(HAVE_USBHID_H)
  1753               #include <usbhid.h>
  1754               #elif defined(HAVE_LIBUSB_H)
  1755               #include <libusb.h>
  1756               #elif defined(HAVE_LIBUSBHID_H)
  1757               #include <libusbhid.h>
  1758               #endif
  1759             ],[
  1760               report_desc_t d;
  1761 	      hid_start_parse(d, 1, 1);
  1762             ],[
  1763             have_usbhid_new=yes
  1764             ])
  1765             if test x$have_usbhid_new = xyes; then
  1766                 CFLAGS="$CFLAGS -DUSBHID_NEW"
  1767             fi
  1768             AC_MSG_RESULT($have_usbhid_new)
  1769 
  1770             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS bsd"
  1771             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS bsd/libjoystick_bsd.la"
  1772         fi
  1773     fi
  1774 }
  1775 
  1776 dnl Check for altivec instruction support using gas syntax
  1777 CheckAltivec()
  1778 {
  1779     AC_MSG_CHECKING(for GCC Altivec instruction support)
  1780     have_gcc_altivec=no
  1781     AC_TRY_COMPILE([
  1782     ],[
  1783         asm volatile ("mtspr 256, %0\n\t"
  1784                       "vand %%v0, %%v0, %%v0"
  1785                       :
  1786                       : "r" (-1));
  1787     ],[
  1788     have_gcc_altivec=yes
  1789     ])
  1790     if test x$have_gcc_altivec = xyes; then
  1791         CFLAGS="$CFLAGS -DGCC_ALTIVEC"
  1792     fi
  1793     AC_MSG_RESULT($have_gcc_altivec)
  1794 }
  1795 
  1796 case "$target" in
  1797     *-*-linux*|*-*-gnu*|*-*-k*bsd*-gnu)
  1798         case "$target" in
  1799           *-*-linux*) ARCH=linux ;;
  1800           *-*-kfreebsd*-gnu) ARCH=kfreebsd-gnu ;;
  1801           *-*-knetbsd*-gnu) ARCH=knetbsd-gnu ;;
  1802           *-*-kopenbsd*-gnu) ARCH=kopenbsd-gnu ;;
  1803           *-*-gnu*) ARCH=gnu ;; # must be last
  1804         esac
  1805         CheckDummyVideo
  1806         CheckDiskAudio
  1807         CheckDLOPEN
  1808         CheckNASM
  1809         CheckOSS
  1810         CheckALSA
  1811         CheckARTSC
  1812         CheckESD
  1813         CheckNAS
  1814         CheckX11
  1815         CheckNANOX
  1816         CheckDGA
  1817         CheckFBCON
  1818         CheckDirectFB
  1819         CheckPS2GS
  1820         CheckGGI
  1821         CheckSVGA
  1822         CheckAAlib
  1823         CheckQtopia
  1824         CheckPicoGUI
  1825         CheckOpenGL
  1826         CheckInputEvents
  1827         CheckPTHREAD
  1828         CheckSIGACTION
  1829         CheckAltivec
  1830         # Set up files for the main() stub
  1831         if test "x$video_qtopia" = "xyes"; then
  1832           SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
  1833           SDL_LIBS="-lSDLmain $SDL_LIBS"
  1834         fi
  1835         # Set up files for the audio library
  1836         # We use the OSS and ALSA API's, not the Sun audio API
  1837         #if test x$enable_audio = xyes; then
  1838         #    CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  1839         #    AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  1840         #    AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  1841         #fi
  1842         # Set up files for the joystick library
  1843         if test x$enable_joystick = xyes; then
  1844 	  case $ARCH in
  1845 	    linux)
  1846               JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS linux"
  1847               JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS linux/libjoystick_linux.la"
  1848 	    ;;
  1849 	    gnu)
  1850               JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  1851               JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  1852 	    ;;
  1853 	    k*bsd-gnu)
  1854               JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS bsd"
  1855               JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS bsd/libjoystick_bsd.la"
  1856 	    ;;
  1857 	  esac
  1858         fi
  1859         # Set up files for the cdrom library
  1860         if test x$enable_cdrom = xyes; then
  1861 	  case $ARCH in
  1862 	    linux)
  1863               CDROM_SUBDIRS="$CDROM_SUBDIRS linux"
  1864               CDROM_DRIVERS="$CDROM_DRIVERS linux/libcdrom_linux.la"
  1865 	    ;;
  1866 	    gnu)
  1867               CDROM_SUBDIRS="$CDROM_SUBDIRS dummy"
  1868               CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la"
  1869 	    ;;
  1870 	    kfreebsd-gnu)
  1871               CDROM_SUBDIRS="$CDROM_SUBDIRS freebsd"
  1872               CDROM_DRIVERS="$CDROM_DRIVERS freebsd/libcdrom_freebsd.la"
  1873 	    ;;
  1874 	    knetbsd-gnu|kopenbsd-gnu)
  1875               CDROM_SUBDIRS="$CDROM_SUBDIRS openbsd"
  1876               CDROM_DRIVERS="$CDROM_DRIVERS openbsd/libcdrom_openbsd.la"
  1877 	    ;;
  1878 	  esac
  1879         fi
  1880         # Set up files for the thread library
  1881         if test x$enable_threads = xyes; then
  1882             CopyUnixThreadSource
  1883         fi
  1884         # Set up files for the timer library
  1885         if test x$enable_timers = xyes; then
  1886             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  1887         fi
  1888         ;;
  1889     *-*-bsdi*)
  1890         ARCH=bsdi
  1891         CheckDummyVideo
  1892         CheckDiskAudio
  1893         CheckDLOPEN
  1894         CheckNASM
  1895         CheckOSS
  1896         CheckARTSC
  1897         CheckESD
  1898         CheckNAS
  1899         CheckX11
  1900         CheckDGA
  1901         CheckSVGA
  1902         CheckAAlib
  1903         CheckOpenGL
  1904         CheckPTHREAD
  1905         CheckSIGACTION
  1906         # Set up files for the audio library
  1907         # We use the OSS and ALSA API's, not the Sun audio API
  1908         #if test x$enable_audio = xyes; then
  1909         #    CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  1910         #    AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  1911         #    AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  1912         #fi
  1913         # Set up files for the joystick library
  1914         # (No joystick support yet)
  1915         if test x$enable_joystick = xyes; then
  1916             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  1917             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  1918         fi
  1919         # Set up files for the cdrom library
  1920         if test x$enable_cdrom = xyes; then
  1921             CDROM_SUBDIRS="$CDROM_SUBDIRS bsdi"
  1922             CDROM_DRIVERS="$CDROM_DRIVERS bsdi/libcdrom_bsdi.la"
  1923         fi
  1924         # Set up files for the thread library
  1925         if test x$enable_threads = xyes; then
  1926             CopyUnixThreadSource
  1927         fi
  1928         # Set up files for the timer library
  1929         if test x$enable_timers = xyes; then
  1930             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  1931         fi
  1932         ;;
  1933     *-*-freebsd*)
  1934         ARCH=freebsd
  1935         CheckDummyVideo
  1936         CheckDiskAudio
  1937         CheckDLOPEN
  1938         CheckVGL
  1939         CheckNASM
  1940         CheckOSS
  1941         CheckARTSC
  1942         CheckESD
  1943         CheckNAS
  1944         CheckX11
  1945         CheckDGA
  1946         CheckSVGA
  1947         CheckAAlib
  1948         CheckOpenGL
  1949         CheckPTHREAD
  1950         CheckSIGACTION
  1951         CheckUSBHID
  1952         # Set up files for the audio library
  1953         # We use the OSS and ALSA API's, not the Sun audio API
  1954         #if test x$enable_audio = xyes; then
  1955         #    CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  1956         #    AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  1957         #    AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  1958         #fi
  1959         # Set up files for the cdrom library
  1960         if test x$enable_cdrom = xyes; then
  1961             CDROM_SUBDIRS="$CDROM_SUBDIRS freebsd"
  1962             CDROM_DRIVERS="$CDROM_DRIVERS freebsd/libcdrom_freebsd.la"
  1963         fi
  1964         # Set up files for the thread library
  1965         if test x$enable_threads = xyes; then
  1966             CopyUnixThreadSource
  1967         fi
  1968         # Set up files for the timer library
  1969         if test x$enable_timers = xyes; then
  1970             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  1971         fi
  1972         ;;
  1973     *-*-netbsd*)
  1974         ARCH=netbsd
  1975         CheckDummyVideo
  1976         CheckDiskAudio
  1977         CheckDLOPEN
  1978         CheckNASM
  1979         CheckOSS
  1980         CheckARTSC
  1981         CheckESD
  1982         CheckNAS
  1983         CheckX11
  1984         CheckAAlib
  1985         CheckOpenGL
  1986         CheckPTHREAD
  1987         CheckSIGACTION
  1988         CheckUSBHID
  1989         # Set up files for the audio library
  1990         if test x$enable_audio = xyes; then
  1991             CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  1992             AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  1993             AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  1994         fi
  1995         # Set up files for the cdrom library
  1996         if test x$enable_cdrom = xyes; then
  1997             CDROM_SUBDIRS="$CDROM_SUBDIRS openbsd"
  1998             CDROM_DRIVERS="$CDROM_DRIVERS openbsd/libcdrom_openbsd.la"
  1999         fi
  2000         # Set up files for the thread library
  2001         if test x$enable_threads = xyes; then
  2002             if test x$use_pthreads = xyes; then
  2003                 CFLAGS="$CFLAGS -D_POSIX_THREAD_SYSCALL_SOFT=1"
  2004             fi
  2005             CopyUnixThreadSource
  2006         fi
  2007         # Set up files for the timer library
  2008         if test x$enable_timers = xyes; then
  2009             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2010         fi
  2011         # NetBSD does not define "unix"
  2012         CFLAGS="$CFLAGS -Dunix"
  2013         ;;
  2014     *-*-openbsd*)
  2015         ARCH=openbsd
  2016         CheckDummyVideo
  2017         CheckDiskAudio
  2018         CheckDLOPEN
  2019         CheckNASM
  2020         CheckOSS
  2021         CheckARTSC
  2022         CheckESD
  2023         CheckNAS
  2024         CheckX11
  2025         CheckAAlib
  2026         CheckOpenGL
  2027         CheckPTHREAD
  2028         CheckSIGACTION
  2029         CheckUSBHID
  2030         # Set up files for the audio library
  2031         if test x$enable_audio = xyes; then
  2032             CFLAGS="$CFLAGS -DOPENBSD_AUDIO_SUPPORT"
  2033             AUDIO_SUBDIRS="$AUDIO_SUBDIRS openbsd"
  2034             AUDIO_DRIVERS="$AUDIO_DRIVERS openbsd/libaudio_openbsd.la"
  2035         fi
  2036         # OpenBSD needs linking with ossaudio emulation library
  2037         if test x$have_oss = xyes; then
  2038             SYSTEM_LIBS="$SYSTEM_LIBS -lossaudio"
  2039         fi
  2040         # Set up files for the cdrom library
  2041         if test x$enable_cdrom = xyes; then
  2042             CDROM_SUBDIRS="$CDROM_SUBDIRS openbsd"
  2043             CDROM_DRIVERS="$CDROM_DRIVERS openbsd/libcdrom_openbsd.la"
  2044         fi
  2045         # Set up files for the thread library
  2046         if test x$enable_threads = xyes; then
  2047             CopyUnixThreadSource
  2048         fi
  2049         # Set up files for the timer library
  2050         if test x$enable_timers = xyes; then
  2051             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2052         fi
  2053         # OpenBSD does not define "unix"
  2054         CFLAGS="$CFLAGS -Dunix"
  2055         ;;
  2056     *-*-sysv5*)
  2057         ARCH=sysv5
  2058         CheckDummyVideo
  2059         CheckDiskAudio
  2060         CheckDLOPEN
  2061         CheckNASM
  2062         CheckOSS
  2063         CheckARTSC
  2064         CheckESD
  2065         CheckNAS
  2066         CheckX11
  2067         CheckAAlib
  2068         CheckOpenGL
  2069         CheckPTHREAD
  2070         CheckSIGACTION
  2071         # Set up files for the audio library
  2072         if test x$enable_audio = xyes; then
  2073             CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  2074             AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  2075             AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  2076         fi
  2077         # Set up files for the joystick library
  2078         # (No joystick support yet)
  2079         if test x$enable_joystick = xyes; then
  2080             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2081             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2082         fi
  2083         # Set up files for the cdrom library
  2084         if test x$enable_cdrom = xyes; then
  2085             CDROM_SUBDIRS="$CDROM_SUBDIRS dummy"
  2086             CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la"
  2087         fi
  2088         # Set up files for the thread library
  2089         if test x$enable_threads = xyes; then
  2090             CopyUnixThreadSource
  2091         fi
  2092         # Set up files for the timer library
  2093         if test x$enable_timers = xyes; then
  2094             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2095         fi
  2096         ;;
  2097     *-*-solaris*)
  2098         ARCH=solaris
  2099         CFLAGS="$CFLAGS -D__ELF__" # Fix for nasm on Solaris x86
  2100         CheckDummyVideo
  2101         CheckDiskAudio
  2102         CheckDLOPEN
  2103         CheckNASM
  2104         CheckOSS
  2105         CheckARTSC
  2106         CheckESD
  2107         CheckNAS
  2108         CheckX11
  2109         CheckAAlib
  2110         CheckOpenGL
  2111         CheckPTHREAD
  2112         CheckSIGACTION
  2113         # Set up files for the audio library
  2114         if test x$enable_audio = xyes; then
  2115             CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  2116             AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  2117             AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  2118         fi
  2119         # Set up files for the joystick library
  2120         # (No joystick support yet)
  2121         if test x$enable_joystick = xyes; then
  2122             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2123             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2124         fi
  2125         # Set up files for the cdrom library
  2126         if test x$enable_cdrom = xyes; then
  2127             CDROM_SUBDIRS="$CDROM_SUBDIRS linux"
  2128             CDROM_DRIVERS="$CDROM_DRIVERS linux/libcdrom_linux.la"
  2129         fi
  2130         # Set up files for the thread library
  2131         if test x$enable_threads = xyes; then
  2132             CopyUnixThreadSource
  2133         fi
  2134         # Set up files for the timer library
  2135         if test x$enable_timers = xyes; then
  2136             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2137         fi
  2138         ;;
  2139     *-*-irix*)
  2140         ARCH=irix
  2141         CheckDummyVideo
  2142         CheckDiskAudio
  2143         CheckDLOPEN
  2144         CheckDMEDIA
  2145         CheckESD
  2146         CheckNAS
  2147         CheckX11
  2148         CheckAAlib
  2149         CheckOpenGL
  2150         CheckPTHREAD
  2151         CheckSIGACTION
  2152         # We use the dmedia audio API, not the Sun audio API
  2153         #if test x$enable_audio = xyes; then
  2154         #    CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  2155         #    AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  2156         #    AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  2157         #fi
  2158         # Set up files for the joystick library
  2159         # (No joystick support yet)
  2160         if test x$enable_joystick = xyes; then
  2161             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2162             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2163         fi
  2164         # Set up files for the cdrom library
  2165         # (No CD-ROM support yet)
  2166         if test x$enable_cdrom = xyes; then
  2167             CDROM_SUBDIRS="$CDROM_SUBDIRS dummy"
  2168             CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la"
  2169         fi
  2170         # Set up files for the thread library
  2171         if test x$enable_threads = xyes; then
  2172             if test x$use_pthreads = xyes -o x$use_pth = xyes; then
  2173                 CopyUnixThreadSource
  2174             else
  2175                 COPY_ARCH_SRC(src/thread, irix, SDL_systhread.c)
  2176                 COPY_ARCH_SRC(src/thread, irix, SDL_systhread_c.h)
  2177                 COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c)
  2178                 COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h)
  2179                 COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c)
  2180                 COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  2181                 COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
  2182                 COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
  2183             fi
  2184         fi
  2185         # Set up files for the timer library
  2186         if test x$enable_timers = xyes; then
  2187             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2188         fi
  2189         ;;
  2190     *-*-hpux*)
  2191         ARCH=hpux
  2192         CheckDummyVideo
  2193         CheckDiskAudio
  2194         CheckDLOPEN
  2195         CheckOSS
  2196         CheckNAS
  2197         CheckX11
  2198         CheckGGI
  2199         CheckAAlib
  2200         CheckOpenGL
  2201         CheckPTHREAD
  2202         CheckSIGACTION
  2203         # Set up files for the audio library
  2204         if test x$enable_audio = xyes; then
  2205             CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  2206             AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  2207             AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  2208         fi
  2209         # Set up files for the joystick library
  2210         # (No joystick support yet)
  2211         if test x$enable_joystick = xyes; then
  2212             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2213             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2214         fi
  2215         # Set up files for the cdrom library
  2216         # (No CD-ROM support yet)
  2217         if test x$enable_cdrom = xyes; then
  2218             CDROM_SUBDIRS="$CDROM_SUBDIRS dummy"
  2219             CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la"
  2220         fi
  2221         # Set up files for the thread library
  2222         if test x$enable_threads = xyes; then
  2223             CopyUnixThreadSource
  2224         fi
  2225         # Set up files for the timer library
  2226         if test x$enable_timers = xyes; then
  2227             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2228         fi
  2229         ;;
  2230     *-*-aix*)
  2231         ARCH=aix
  2232         CheckDummyVideo
  2233         CheckDiskAudio
  2234         CheckDLOPEN
  2235         CheckOSS
  2236         CheckNAS
  2237         CheckX11
  2238         CheckGGI
  2239         CheckAAlib
  2240         CheckOpenGL
  2241         CheckPTHREAD
  2242         CheckSIGACTION
  2243         # Set up files for the audio library
  2244         if test x$enable_audio = xyes; then
  2245             AUDIO_SUBDIRS="$AUDIO_SUBDIRS paudio"
  2246             AUDIO_DRIVERS="$AUDIO_DRIVERS paudio/libaudio_paudio.la"
  2247         fi
  2248         # Set up files for the joystick library
  2249         # (No joystick support yet)
  2250         if test x$enable_joystick = xyes; then
  2251             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2252             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2253         fi
  2254         # Set up files for the cdrom library
  2255         if test x$enable_cdrom = xyes; then
  2256             CDROM_SUBDIRS="$CDROM_SUBDIRS aix"
  2257             CDROM_DRIVERS="$CDROM_DRIVERS aix/libcdrom_aix.la"
  2258         fi
  2259         # Set up files for the thread library
  2260         if test x$enable_threads = xyes; then
  2261             CopyUnixThreadSource
  2262         fi
  2263         # Set up files for the timer library
  2264         if test x$enable_timers = xyes; then
  2265             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2266         fi
  2267         ;;
  2268     *-*-osf*)
  2269         ARCH=osf
  2270         CheckDummyVideo
  2271         CheckDiskAudio
  2272         CheckDLOPEN
  2273         CheckNAS
  2274         CheckX11
  2275         CheckGGI
  2276         CheckAAlib
  2277         CheckOpenGL
  2278         CheckPTHREAD
  2279         CheckSIGACTION
  2280         # Set up files for the audio library
  2281         if test x$enable_audio = xyes; then
  2282             CFLAGS="$CFLAGS -I/usr/include/mme -DMMEAUDIO_SUPPORT"
  2283             SYSTEM_LIBS="$SYSTEM_LIBS -lmme"
  2284             AUDIO_SUBDIRS="$AUDIO_SUBDIRS mme"
  2285             AUDIO_DRIVERS="$AUDIO_DRIVERS mme/libaudio_mme.la"
  2286         fi
  2287         # Set up files for the joystick library
  2288         # (No joystick support yet)
  2289         if test x$enable_joystick = xyes; then
  2290             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2291             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2292         fi
  2293         # Set up files for the cdrom library
  2294         # (No cdrom support yet)
  2295         if test x$enable_cdrom = xyes; then
  2296             CDROM_SUBDIRS="$CDROM_SUBDIRS osf"
  2297             CDROM_DRIVERS="$CDROM_DRIVERS osf/libcdrom_osf.la"
  2298         fi
  2299         # Set up files for the thread library
  2300         if test x$enable_threads = xyes; then
  2301             CopyUnixThreadSource
  2302         fi
  2303         # Set up files for the timer library
  2304         if test x$enable_timers = xyes; then
  2305             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2306         fi
  2307         ;;
  2308     *-*-qnx*)
  2309         ARCH=qnx
  2310         CheckDummyVideo
  2311         CheckDiskAudio
  2312         CheckDLOPEN
  2313         CheckNAS
  2314         CheckPHOTON
  2315         CheckX11
  2316         CheckOpenGL
  2317         CheckPTHREAD
  2318         CheckSIGACTION
  2319         # Set up files for the audio library
  2320         if test x$enable_audio = xyes; then
  2321             CFLAGS="$CFLAGS -DQNXNTOAUDIO_SUPPORT"
  2322             SYSTEM_LIBS="$SYSTEM_LIBS -lasound"
  2323             AUDIO_SUBDIRS="$AUDIO_SUBDIRS nto"
  2324             AUDIO_DRIVERS="$AUDIO_DRIVERS nto/libaudio_nto.la"
  2325         fi
  2326         # Set up files for the joystick library
  2327         if test x$enable_joystick = xyes; then
  2328         # (No joystick support yet)
  2329             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy"
  2330             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la"
  2331         fi
  2332         # Set up files for the cdrom library
  2333         if test x$enable_cdrom = xyes; then
  2334             CDROM_SUBDIRS="$CDROM_SUBDIRS qnx"
  2335             CDROM_DRIVERS="$CDROM_DRIVERS qnx/libcdrom_qnx.la"
  2336         fi
  2337         # Set up files for the thread library
  2338         if test x$enable_threads = xyes; then
  2339             CopyUnixThreadSource
  2340         fi
  2341         # Set up files for the timer library
  2342         if test x$enable_timers = xyes; then
  2343             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2344         fi
  2345         ;;
  2346     *-*-cygwin* | *-*-mingw32*)
  2347         ARCH=win32
  2348         if test "$build" != "$target"; then # cross-compiling
  2349             # Default cross-compile location
  2350             ac_default_prefix=/usr/local/cross-tools/i386-mingw32msvc
  2351         else
  2352             # Look for the location of the tools and install there
  2353             if test "$BUILD_PREFIX" != ""; then
  2354                 ac_default_prefix=$BUILD_PREFIX
  2355             fi
  2356         fi
  2357         CheckDummyVideo
  2358         CheckDiskAudio
  2359         CheckWIN32
  2360         CheckDIRECTX
  2361         CheckNASM
  2362         # Set up files for the audio library
  2363         if test x$enable_audio = xyes; then
  2364             AUDIO_SUBDIRS="$AUDIO_SUBDIRS windib"
  2365             AUDIO_DRIVERS="$AUDIO_DRIVERS windib/libaudio_windib.la"
  2366             if test x$use_directx = xyes; then
  2367                 AUDIO_SUBDIRS="$AUDIO_SUBDIRS windx5"
  2368                 AUDIO_DRIVERS="$AUDIO_DRIVERS windx5/libaudio_windx5.la"
  2369             fi
  2370         fi
  2371         # Set up files for the joystick library
  2372         if test x$enable_joystick = xyes; then
  2373             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS win32"
  2374             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS win32/libjoystick_winmm.la"
  2375         fi
  2376         # Set up files for the cdrom library
  2377         if test x$enable_cdrom = xyes; then
  2378             CDROM_SUBDIRS="$CDROM_SUBDIRS win32"
  2379             CDROM_DRIVERS="$CDROM_DRIVERS win32/libcdrom_win32.la"
  2380         fi
  2381         # Set up files for the thread library
  2382         if test x$enable_threads = xyes; then
  2383             COPY_ARCH_SRC(src/thread, win32, SDL_systhread.c)
  2384             COPY_ARCH_SRC(src/thread, win32, SDL_systhread_c.h)
  2385             COPY_ARCH_SRC(src/thread, win32, SDL_sysmutex.c)
  2386             COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
  2387             COPY_ARCH_SRC(src/thread, win32, SDL_syssem.c)
  2388             COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  2389             COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
  2390             COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
  2391         fi
  2392         # Set up files for the timer library
  2393         if test x$enable_timers = xyes; then
  2394             COPY_ARCH_SRC(src/timer, win32, SDL_systimer.c)
  2395         fi
  2396         # The Win32 platform requires special setup
  2397         SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
  2398         case "$target" in
  2399             *-*-cygwin*)
  2400                 CFLAGS="$CFLAGS -I/usr/include/mingw -DWIN32 -Uunix -mno-cygwin"
  2401                 SDL_CFLAGS="$SDL_CFLAGS -I/usr/include/mingw -DWIN32 -Uunix -mno-cygwin"
  2402                 LIBS="$LIBS -mno-cygwin"
  2403                 SDL_LIBS="-lmingw32 -lSDLmain $SDL_LIBS -mwindows -mno-cygwin"
  2404                 ;;
  2405             *-*-mingw32*)
  2406                 SDL_LIBS="-lmingw32 -lSDLmain $SDL_LIBS -mwindows"
  2407                 ;;
  2408         esac
  2409         ;;
  2410     *-*-beos*)
  2411         ARCH=beos
  2412         ac_default_prefix=/boot/develop/tools/gnupro
  2413         CheckDummyVideo
  2414         CheckDiskAudio
  2415         CheckNASM
  2416         CheckBWINDOW
  2417         CheckBeGL
  2418         # Set up files for the audio library
  2419         if test x$enable_audio = xyes; then
  2420             AUDIO_SUBDIRS="$AUDIO_SUBDIRS baudio"
  2421             AUDIO_DRIVERS="$AUDIO_DRIVERS baudio/libaudio_baudio.la"
  2422         fi
  2423         # Set up files for the joystick library
  2424         if test x$enable_joystick = xyes; then
  2425             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS beos"
  2426             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS beos/libjoystick_beos.la"
  2427         fi
  2428         # Set up files for the cdrom library
  2429         if test x$enable_cdrom = xyes; then
  2430             CDROM_SUBDIRS="$CDROM_SUBDIRS beos"
  2431             CDROM_DRIVERS="$CDROM_DRIVERS beos/libcdrom_beos.la"
  2432         fi
  2433         # Set up files for the thread library
  2434         if test x$enable_threads = xyes; then
  2435             COPY_ARCH_SRC(src/thread, beos, SDL_systhread.c)
  2436             COPY_ARCH_SRC(src/thread, beos, SDL_systhread_c.h)
  2437             COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c)
  2438             COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
  2439             COPY_ARCH_SRC(src/thread, beos, SDL_syssem.c)
  2440             COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  2441             COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
  2442             COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
  2443         fi
  2444         # Set up files for the timer library
  2445         if test x$enable_timers = xyes; then
  2446             COPY_ARCH_SRC(src/timer, beos, SDL_systimer.c)
  2447         fi
  2448         # The BeOS platform requires special libraries
  2449         SYSTEM_LIBS="$SYSTEM_LIBS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding"
  2450         ;;
  2451     *-*-macos*)
  2452         # This would be used if cross-compiling to MacOS 9.  No way to
  2453         # use it at present, but Apple is working on a X-to-9 compiler
  2454         # for which this case would be handy.
  2455         ARCH=macos
  2456         CheckDummyVideo
  2457         CheckDiskAudio
  2458         CheckTOOLBOX
  2459         CheckMacGL
  2460         # Set up files for the audio library
  2461         if test x$enable_audio = xyes; then
  2462             AUDIO_SUBDIRS="$AUDIO_SUBDIRS macrom"
  2463             AUDIO_DRIVERS="$AUDIO_DRIVERS macrom/libaudio_macrom.la"
  2464         fi
  2465         # Set up files for the joystick library
  2466         if test x$enable_joystick = xyes; then
  2467             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS macos"
  2468             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS macos/libjoystick_macos.la"
  2469         fi
  2470         # Set up files for the cdrom library
  2471         if test x$enable_cdrom = xyes; then
  2472             CDROM_SUBDIRS="$CDROM_SUBDIRS macos"
  2473             CDROM_DRIVERS="$CDROM_DRIVERS macos/libcdrom_macos.la"
  2474         fi
  2475         # Set up files for the thread library
  2476         if test x$enable_threads = xyes; then
  2477             COPY_ARCH_SRC(src/thread, macos, SDL_systhread.c)
  2478             COPY_ARCH_SRC(src/thread, macos, SDL_systhread_c.h)
  2479             COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c)
  2480             COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h)
  2481             COPY_ARCH_SRC(src/thread, macos, SDL_syssem.c)
  2482             COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h)
  2483             COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c)
  2484             COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h)
  2485         fi
  2486         # Set up files for the timer library
  2487         if test x$enable_timers = xyes; then
  2488             COPY_ARCH_SRC(src/timer, macos, SDL_systimer.c)
  2489         fi
  2490         # The MacOS platform requires special setup
  2491         SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
  2492         SDL_LIBS="-lSDLmain $SDL_LIBS"
  2493         ;;
  2494     *-*-darwin* )
  2495         # Strictly speaking, we want "Mac OS X", not "Darwin", which is
  2496         # just the OS X kernel sans upper layers like Carbon and Cocoa.
  2497         # But config.guess comes back with "darwin", so go with the flow.
  2498         ARCH=macosx
  2499         CheckDummyVideo
  2500         CheckDiskAudio
  2501         CheckQUARTZ
  2502         CheckMacGL
  2503         CheckPTHREAD
  2504         CheckSIGACTION
  2505         # Set up files for the audio library
  2506         if test x$enable_audio = xyes; then
  2507             AUDIO_SUBDIRS="$AUDIO_SUBDIRS macrom"
  2508             AUDIO_DRIVERS="$AUDIO_DRIVERS macrom/libaudio_macrom.la"
  2509         fi
  2510         # Set up files for the joystick library
  2511         if test x$enable_joystick = xyes; then
  2512             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS darwin"
  2513             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS darwin/libjoystick_darwin.la"
  2514             SYSTEM_LIBS="$SYSTEM_LIBS -framework IOKit"
  2515         fi
  2516         # Set up files for the cdrom library
  2517         if test x$enable_cdrom = xyes; then
  2518             CDROM_SUBDIRS="$CDROM_SUBDIRS macosx"
  2519             CDROM_DRIVERS="$CDROM_DRIVERS macosx/libcdrom_macosx.la"
  2520             SYSTEM_LIBS="$SYSTEM_LIBS -framework AudioToolbox -framework AudioUnit -lstdc++"
  2521         fi
  2522         # Set up files for the thread library
  2523         if test x$enable_threads = xyes; then
  2524             CopyUnixThreadSource
  2525         fi
  2526         # Set up files for the timer library
  2527         if test x$enable_timers = xyes; then
  2528             COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2529         fi
  2530         # The MacOS X platform requires special setup.
  2531         SDL_LIBS="-lSDLmain $SDL_LIBS"
  2532         # The Cocoa backend still needs Carbon, and the YUV code QuickTime
  2533         SYSTEM_LIBS="$SYSTEM_LIBS -framework Cocoa -framework Carbon -framework QuickTime"
  2534         ;;
  2535     *-*-mint*)
  2536         ARCH=mint
  2537         CheckDummyVideo
  2538         CheckDiskAudio
  2539         CheckAtariBiosEvent
  2540         CheckAtariXbiosVideo
  2541         CheckAtariGemVideo
  2542         CheckAtariAudio
  2543         CheckAtariLdg
  2544         CheckPTH
  2545         # Set up files for the audio library
  2546         if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  2547             if test x$enable_audio = xyes; then
  2548                 CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT"
  2549                 AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun"
  2550                 AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la"
  2551             fi
  2552         fi
  2553         # Set up files for the joystick library
  2554         if test x$enable_joystick = xyes; then
  2555             JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS mint"
  2556             JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS mint/libjoystick_mint.la"
  2557         fi
  2558         # Set up files for the cdrom library
  2559         if test x$enable_cdrom = xyes; then
  2560             CDROM_SUBDIRS="$CDROM_SUBDIRS mint"
  2561             CDROM_DRIVERS="$CDROM_DRIVERS mint/libcdrom_mint.la"
  2562         fi
  2563         # Set up files for the thread library
  2564         if test x$enable_threads = xyes; then
  2565             CopyUnixThreadSource
  2566         fi
  2567         # Set up files for the timer library
  2568         if test x$enable_timers = xyes; then
  2569             if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  2570                 COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c)
  2571             else
  2572                 COPY_ARCH_SRC(src/timer, mint, SDL_systimer.c)
  2573             fi
  2574         fi
  2575         # MiNT does not define "unix"
  2576         CFLAGS="$CFLAGS -Dunix"
  2577         ;;
  2578     *-*-riscos)
  2579         ARCH=riscos
  2580         JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS riscos"
  2581         JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS riscos/libjoystick_riscos.la"
  2582         COPY_ARCH_SRC(src/timer, riscos, SDL_systimer.c)
  2583         VIDEO_SUBDIRS="$VIDEO_SUBDIRS riscos"
  2584         VIDEO_DRIVERS="$VIDEO_DRIVERS riscos/libvideo_riscos.la"
  2585         AUDIO_SUBDIRS="$AUDIO_SUBDIRS riscos"
  2586         AUDIO_DRIVERS="$AUDIO_DRIVERS riscos/libaudio_riscos.la"
  2587 
  2588         if test x$enable_cdrom = xyes; then
  2589             CDROM_SUBDIRS="$CDROM_SUBDIRS dummy"
  2590             CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la"
  2591         fi
  2592 
  2593         CFLAGS="$CFLAGS -DDISABLE_THREADS -DENABLE_RISCOS -DDRENDERER_SUPPORT"
  2594 
  2595         SYSTEM_LIBS="$SYSTEM_LIBS -ljpeg -ltiff -lpng -lz"
  2596         ;;
  2597     *)
  2598         AC_MSG_ERROR(Unsupported target:  Please add to configure.in)
  2599         ;;
  2600 esac
  2601 AC_SUBST(ARCH)
  2602 
  2603 # Set the conditional variables for this target
  2604 AM_CONDITIONAL(TARGET_LINUX, test $ARCH = linux)
  2605 AM_CONDITIONAL(TARGET_QTOPIA, test "x$video_qtopia" = "xyes")
  2606 AM_CONDITIONAL(TARGET_SOLARIS, test $ARCH = solaris)
  2607 AM_CONDITIONAL(TARGET_IRIX, test $ARCH = irix)
  2608 AM_CONDITIONAL(TARGET_BSDI, test $ARCH = bsdi)
  2609 AM_CONDITIONAL(TARGET_FREEBSD, test $ARCH = freebsd)
  2610 AM_CONDITIONAL(TARGET_NETBSD, test $ARCH = netbsd)
  2611 AM_CONDITIONAL(TARGET_OPENBSD, test $ARCH = openbsd)
  2612 AM_CONDITIONAL(TARGET_AIX, test $ARCH = aix)
  2613 AM_CONDITIONAL(TARGET_WIN32, test $ARCH = win32)
  2614 AM_CONDITIONAL(TARGET_BEOS, test $ARCH = beos)
  2615 AM_CONDITIONAL(TARGET_MACOS, test $ARCH = macos)
  2616 AM_CONDITIONAL(TARGET_MACOSX, test $ARCH = macosx)
  2617 AM_CONDITIONAL(TARGET_QNX, test $ARCH = qnx)
  2618 AM_CONDITIONAL(TARGET_MINT, test $ARCH = mint)
  2619 
  2620 # More automake conditionals
  2621 AM_CONDITIONAL(USE_DIRECTX, test x$use_directx = xyes)
  2622 AM_CONDITIONAL(USE_CLONE, test x$use_clone = xyes)
  2623 AM_CONDITIONAL(HAVE_NASM, test x$use_nasm = xyes)
  2624 
  2625 # Set conditional variables for shared and static library selection.
  2626 # These are not used in any Makefile.am but in sdl-config.in.
  2627 AM_CONDITIONAL([ENABLE_SHARED], [test "$enable_shared" = yes])
  2628 AM_CONDITIONAL([ENABLE_STATIC], [test "$enable_static" = yes])
  2629 
  2630 # Set runtime shared library paths as needed
  2631 
  2632 if test $ARCH = linux -o $ARCH = freebsd -o $ARCH = bsdi; then
  2633   SDL_RLD_FLAGS="-Wl,-rpath,\${exec_prefix}/lib"
  2634 fi
  2635 if test $ARCH = solaris; then
  2636   SDL_RLD_FLAGS="-R\${exec_prefix}/lib"
  2637 fi
  2638 
  2639 case "$ARCH" in
  2640   openbsd | netbsd | bsdi)
  2641     SHARED_SYSTEM_LIBS="$SYSTEM_LIBS"
  2642     ;;
  2643   qnx)
  2644     SHARED_SYSTEM_LIBS="$SYSTEM_LIBS"
  2645     ;;
  2646   macosx)
  2647     SHARED_SYSTEM_LIBS="-framework Cocoa"
  2648     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  2649       SHARED_SYSTEM_LIBS="$SHARED_SYSTEM_LIBS -framework OpenGL"
  2650     fi
  2651     ;;
  2652   *)
  2653     SHARED_SYSTEM_LIBS=""
  2654     ;;
  2655 esac
  2656 
  2657 case "$ARCH" in
  2658   macosx)
  2659     # Evil hack to allow static linking on Mac OS X
  2660     SDL_STATIC_LIBS="\${exec_prefix}/lib/libSDLmain.a \${exec_prefix}/lib/libSDL.a"
  2661     ;;
  2662   *)
  2663     SDL_STATIC_LIBS="$SDL_LIBS"
  2664     ;;
  2665 esac
  2666 
  2667 
  2668 STATIC_SYSTEM_LIBS="$SYSTEM_LIBS"
  2669 
  2670 dnl Output the video drivers we use
  2671 if test x$enable_video = xtrue; then
  2672     if test "$VIDEO_SUBDIRS" = ""; then
  2673         AC_MSG_ERROR(*** No video drivers are enabled!)
  2674     fi
  2675 fi
  2676 AC_SUBST(AUDIO_SUBDIRS)
  2677 AC_SUBST(AUDIO_DRIVERS)
  2678 AC_SUBST(VIDEO_SUBDIRS)
  2679 AC_SUBST(VIDEO_DRIVERS)
  2680 AC_SUBST(JOYSTICK_SUBDIRS)
  2681 AC_SUBST(JOYSTICK_DRIVERS)
  2682 AC_SUBST(CDROM_SUBDIRS)
  2683 AC_SUBST(CDROM_DRIVERS)
  2684 AC_SUBST(SDL_EXTRADIRS)
  2685 AC_SUBST(SDL_EXTRALIBS)
  2686 
  2687 dnl Expand the cflags and libraries needed by apps using SDL
  2688 AC_SUBST(SDL_CFLAGS)
  2689 AC_SUBST(SDL_LIBS)
  2690 AC_SUBST(SDL_STATIC_LIBS)
  2691 AC_SUBST(SDL_RLD_FLAGS)
  2692 
  2693 dnl Expand the libraries needed for static and dynamic linking
  2694 AC_SUBST(STATIC_SYSTEM_LIBS)
  2695 AC_SUBST(SHARED_SYSTEM_LIBS)
  2696 AC_SUBST(SYSTEM_LIBS)
  2697 
  2698 dnl Expand the include directories for building SDL
  2699 CFLAGS="$CFLAGS -I\$(top_srcdir)/include"
  2700 CFLAGS="$CFLAGS -I\$(top_srcdir)/include/SDL"
  2701 CFLAGS="$CFLAGS -I\$(top_srcdir)/src -I\$(top_srcdir)/src/main/$ARCH"
  2702 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/audio"
  2703 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video"
  2704 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video/XFree86/extensions"
  2705 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/events"
  2706 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/joystick"
  2707 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/cdrom"
  2708 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/thread"
  2709 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/timer"
  2710 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/endian"
  2711 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/file"
  2712 CFLAGS="$CFLAGS -I\$(top_builddir)/src/thread"
  2713 CXXFLAGS="$CFLAGS"
  2714 
  2715 
  2716 # Check for darwin at the very end and set up the Objective C compiler
  2717 # We do this here so that we get the full CFLAGS into OBJCFLAGS
  2718 case "$target" in
  2719     *-*-darwin*)
  2720         dnl AC_PROG_OBJC doesn't seem to exist, this is the SDL workaround
  2721         AC_MSG_CHECKING(for an Objective-C compiler)
  2722         OBJC="$CC"
  2723         AC_SUBST(OBJC)
  2724         OBJCFLAGS="$CFLAGS"
  2725         AC_SUBST(OBJCFLAGS)
  2726         dnl _AM_DEPENDENCIES(OBJC) doesn't work, so hard code OBJCDEPMODE here
  2727         dnl _AM_DEPENDENCIES(OBJC)
  2728         dnl Of course, hard coding doesn't work for some versions of automake
  2729         OBJCDEPMODE="depmode=gcc"
  2730         AC_SUBST(OBJCDEPMODE)
  2731         dnl Trying this to satisfy everybody...
  2732         AC_MSG_RESULT(not implemented yet)
  2733         ;;
  2734 esac
  2735 
  2736 # Finally create all the generated files
  2737 dnl Important: Any directory that you want to be in the distcheck should
  2738 dnl            have a file listed here, so that configure generates the
  2739 dnl            subdirectories on the build target.
  2740 AC_OUTPUT([
  2741 Makefile
  2742 docs/Makefile
  2743 docs/html/Makefile
  2744 docs/man3/Makefile
  2745 include/Makefile
  2746 src/Makefile
  2747 src/main/Makefile
  2748 src/main/macosx/Makefile
  2749 src/main/macosx/Info.plist
  2750 src/audio/Makefile
  2751 src/audio/alsa/Makefile
  2752 src/audio/arts/Makefile
  2753 src/audio/baudio/Makefile
  2754 src/audio/dc/Makefile
  2755 src/audio/disk/Makefile
  2756 src/audio/dma/Makefile
  2757 src/audio/dmedia/Makefile
  2758 src/audio/dsp/Makefile
  2759 src/audio/esd/Makefile
  2760 src/audio/macrom/Makefile
  2761 src/audio/mint/Makefile
  2762 src/audio/mme/Makefile
  2763 src/audio/nas/Makefile
  2764 src/audio/nto/Makefile
  2765 src/audio/openbsd/Makefile
  2766 src/audio/paudio/Makefile
  2767 src/audio/riscos/Makefile
  2768 src/audio/sun/Makefile
  2769 src/audio/ums/Makefile
  2770 src/audio/windib/Makefile
  2771 src/audio/windx5/Makefile
  2772 src/video/Makefile
  2773 src/video/aalib/Makefile
  2774 src/video/ataricommon/Makefile
  2775 src/video/bwindow/Makefile
  2776 src/video/cybergfx/Makefile
  2777 src/video/dc/Makefile
  2778 src/video/dga/Makefile
  2779 src/video/directfb/Makefile
  2780 src/video/dummy/Makefile
  2781 src/video/epoc/Makefile
  2782 src/video/fbcon/Makefile
  2783 src/video/gem/Makefile
  2784 src/video/ggi/Makefile
  2785 src/video/maccommon/Makefile
  2786 src/video/macdsp/Makefile
  2787 src/video/macrom/Makefile
  2788 src/video/nanox/Makefile
  2789 src/video/photon/Makefile
  2790 src/video/picogui/Makefile
  2791 src/video/ps2gs/Makefile
  2792 src/video/qtopia/Makefile
  2793 src/video/quartz/Makefile
  2794 src/video/riscos/Makefile
  2795 src/video/svga/Makefile
  2796 src/video/vgl/Makefile
  2797 src/video/wincommon/Makefile
  2798 src/video/windib/Makefile
  2799 src/video/windx5/Makefile
  2800 src/video/x11/Makefile
  2801 src/video/xbios/Makefile
  2802 src/video/XFree86/Makefile
  2803 src/video/XFree86/extensions/Makefile
  2804 src/video/XFree86/Xinerama/Makefile
  2805 src/video/XFree86/Xv/Makefile
  2806 src/video/XFree86/Xxf86dga/Makefile
  2807 src/video/XFree86/Xxf86vm/Makefile
  2808 src/events/Makefile
  2809 src/joystick/Makefile
  2810 src/joystick/amigaos/Makefile
  2811 src/joystick/beos/Makefile
  2812 src/joystick/bsd/Makefile
  2813 src/joystick/darwin/Makefile
  2814 src/joystick/dc/Makefile
  2815 src/joystick/dummy/Makefile
  2816 src/joystick/linux/Makefile
  2817 src/joystick/macos/Makefile
  2818 src/joystick/mint/Makefile
  2819 src/joystick/riscos/Makefile
  2820 src/joystick/win32/Makefile
  2821 src/cdrom/Makefile
  2822 src/cdrom/aix/Makefile
  2823 src/cdrom/beos/Makefile
  2824 src/cdrom/dc/Makefile
  2825 src/cdrom/dummy/Makefile
  2826 src/cdrom/bsdi/Makefile
  2827 src/cdrom/freebsd/Makefile
  2828 src/cdrom/linux/Makefile
  2829 src/cdrom/macos/Makefile
  2830 src/cdrom/macosx/Makefile
  2831 src/cdrom/mint/Makefile
  2832 src/cdrom/openbsd/Makefile
  2833 src/cdrom/osf/Makefile
  2834 src/cdrom/qnx/Makefile
  2835 src/cdrom/win32/Makefile
  2836 src/thread/Makefile
  2837 src/timer/Makefile
  2838 src/endian/Makefile
  2839 src/file/Makefile
  2840 src/cpuinfo/Makefile
  2841 src/hermes/Makefile
  2842 sdl-config
  2843 SDL.spec
  2844 SDL.qpg
  2845 ], [chmod +x sdl-config])