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