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