configure.in
author Patrice Mandin <patmandin@gmail.com>
Sat, 14 Jul 2007 00:07:37 +0000
changeset 2193 e857f02e709e
parent 2185 2032348afed1
child 2204 9f64d06fa168
permissions -rw-r--r--
Use correct function
     1 dnl Process this file with autoconf to produce a configure script.
     2 AC_INIT(README)
     3 AC_CONFIG_HEADER(include/SDL_config.h)
     4 AC_GNU_SOURCE
     5 
     6 dnl Set various version strings - taken gratefully from the GTk sources
     7 #
     8 # Making releases:
     9 # Edit include/SDL/SDL_version.h and change the version, then:
    10 #   SDL_MICRO_VERSION += 1;
    11 #   SDL_INTERFACE_AGE += 1;
    12 #   SDL_BINARY_AGE += 1;
    13 # if any functions have been added, set SDL_INTERFACE_AGE to 0.
    14 # if backwards compatibility has been broken,
    15 # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0.
    16 #
    17 SDL_MAJOR_VERSION=1
    18 SDL_MINOR_VERSION=3
    19 SDL_MICRO_VERSION=0
    20 SDL_INTERFACE_AGE=0
    21 SDL_BINARY_AGE=0
    22 SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
    23 
    24 AC_SUBST(SDL_MAJOR_VERSION)
    25 AC_SUBST(SDL_MINOR_VERSION)
    26 AC_SUBST(SDL_MICRO_VERSION)
    27 AC_SUBST(SDL_INTERFACE_AGE)
    28 AC_SUBST(SDL_BINARY_AGE)
    29 AC_SUBST(SDL_VERSION)
    30 
    31 # libtool versioning
    32 LT_RELEASE=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION
    33 LT_CURRENT=`expr $SDL_MICRO_VERSION - $SDL_INTERFACE_AGE`
    34 LT_REVISION=$SDL_INTERFACE_AGE
    35 LT_AGE=`expr $SDL_BINARY_AGE - $SDL_INTERFACE_AGE`
    36 
    37 AC_SUBST(LT_RELEASE)
    38 AC_SUBST(LT_CURRENT)
    39 AC_SUBST(LT_REVISION)
    40 AC_SUBST(LT_AGE)
    41 
    42 dnl Detect the canonical build and host environments
    43 AC_CONFIG_AUX_DIRS($srcdir/build-scripts)
    44 AC_CANONICAL_HOST
    45 AC_C_BIGENDIAN
    46 if test x$ac_cv_c_bigendian = xyes; then
    47     AC_DEFINE(SDL_BYTEORDER, 4321)
    48 else
    49     AC_DEFINE(SDL_BYTEORDER, 1234)
    50 fi
    51 
    52 dnl Set up the compiler and linker flags
    53 INCLUDE="-I$srcdir/include"
    54 if test x$srcdir != x.; then
    55     # Remove SDL_config.h from the source directory, since it's the
    56     # default one, and we want to include the one that we generate.
    57     if test -f $srcdir/include/SDL_config.h; then
    58         rm $srcdir/include/SDL_config.h
    59     fi
    60     INCLUDE="-Iinclude $INCLUDE"
    61 fi
    62 case "$host" in
    63     *-*-cygwin*)
    64         # We build SDL on cygwin without the UNIX emulation layer
    65         BASE_CFLAGS="-I/usr/include/mingw -mno-cygwin"
    66         BASE_LDFLAGS="-mno-cygwin"
    67         ;;
    68     *)
    69         BASE_CFLAGS="-D_GNU_SOURCE=1"
    70         BASE_LDFLAGS=""
    71         ;;
    72 esac
    73 BUILD_CFLAGS="$CFLAGS $CPPFLAGS"
    74 EXTRA_CFLAGS="$INCLUDE $BASE_CFLAGS"
    75 BUILD_LDFLAGS="$LDFLAGS"
    76 EXTRA_LDFLAGS="$BASE_LDFLAGS"
    77 ## These are common directories to find software packages
    78 #for path in /usr/freeware /usr/pkg /usr/X11R6 /usr/local; do
    79 #    if test -d $path/include; then
    80 #        EXTRA_CFLAGS="$EXTRA_CFLAGS -I$path/include"
    81 #    fi
    82 #    if test -d $path/lib; then
    83 #        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L$path/lib"
    84 #    fi
    85 #done
    86 SDL_CFLAGS="$BASE_CFLAGS"
    87 SDL_LIBS="-lSDL $BASE_LDFLAGS"
    88 CPPFLAGS="$CPPFLAGS $EXTRA_CFLAGS"
    89 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
    90 LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS"
    91 
    92 dnl Check for tools
    93 AC_LIBTOOL_WIN32_DLL
    94 AC_PROG_LIBTOOL
    95 AC_PROG_CC
    96 AC_PROG_CXX
    97 AC_PROG_INSTALL
    98 AC_PROG_MAKE_SET
    99 
   100 dnl Check for compiler characteristics
   101 AC_C_CONST
   102 AC_C_INLINE
   103 AC_C_VOLATILE
   104 
   105 dnl See whether we are allowed to use the system C library
   106 AC_ARG_ENABLE(libc,
   107 AC_HELP_STRING([--enable-libc], [Use the system C library [[default=yes]]]),
   108               , enable_libc=yes)
   109 if test x$enable_libc = xyes; then
   110     AC_DEFINE(HAVE_LIBC)
   111 
   112     dnl Check for C library headers
   113     AC_HEADER_STDC
   114     AC_CHECK_HEADERS(sys/types.h stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h strings.h inttypes.h stdint.h ctype.h math.h iconv.h signal.h)
   115 
   116     dnl Check for typedefs, structures, etc.
   117     AC_TYPE_SIZE_T
   118     if test x$ac_cv_header_inttypes_h = xyes -o x$ac_cv_header_stdint_h = xyes; then
   119         AC_CHECK_TYPE(int64_t)
   120         if test x$ac_cv_type_int64_t = xyes; then
   121             AC_DEFINE(SDL_HAS_64BIT_TYPE)
   122         fi
   123         have_inttypes=yes
   124     fi
   125 
   126     dnl Checks for library functions.
   127     case "$host" in
   128     *-*-cygwin* | *-*-mingw32*)
   129         ;;
   130     *)
   131         AC_FUNC_ALLOCA
   132         ;;
   133     esac
   134 
   135     AC_FUNC_MEMCMP
   136     if test x$ac_cv_func_memcmp_working = xyes; then
   137         AC_DEFINE(HAVE_MEMCMP)
   138     fi
   139     AC_FUNC_STRTOD
   140     if test x$ac_cv_func_strtod = xyes; then
   141         AC_DEFINE(HAVE_STRTOD)
   142     fi
   143     AC_CHECK_FUNCS(malloc calloc realloc free getenv putenv unsetenv qsort abs bcopy memset memcpy memmove strlen strlcpy strlcat strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp sscanf snprintf vsnprintf iconv sigaction setjmp nanosleep)
   144 
   145     AC_CHECK_LIB(iconv, libiconv_open, [EXTRA_LDFLAGS="$EXTRA_LDFLAGS -liconv"])
   146     AC_CHECK_LIB(m, pow, [EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm"])
   147 fi
   148 
   149 if test x$have_inttypes != xyes; then
   150     AC_CHECK_SIZEOF(char, 1)
   151     AC_CHECK_SIZEOF(short, 2)
   152     AC_CHECK_SIZEOF(int, 4)
   153     AC_CHECK_SIZEOF(long, 4)
   154     AC_CHECK_SIZEOF(long long, 8)
   155     if test x$ac_cv_sizeof_char = x1; then
   156         AC_DEFINE(int8_t, signed char)
   157         AC_DEFINE(uint8_t, unsigned char)
   158     fi
   159     if test x$ac_cv_sizeof_short = x2; then
   160         AC_DEFINE(int16_t, signed short)
   161         AC_DEFINE(uint16_t, unsigned short)
   162     else
   163         if test x$ac_cv_sizeof_int = x2; then
   164             AC_DEFINE(int16_t, signed int)
   165             AC_DEFINE(uint16_t, unsigned int)
   166         fi
   167     fi
   168     if test x$ac_cv_sizeof_int = x4; then
   169         AC_DEFINE(int32_t, signed int)
   170         AC_DEFINE(uint32_t, unsigned int)
   171     else
   172         if test x$ac_cv_sizeof_long = x4; then
   173             AC_DEFINE(int32_t, signed long)
   174             AC_DEFINE(uint32_t, unsigned long)
   175         fi
   176     fi
   177     if test x$ac_cv_sizeof_long = x8; then
   178         AC_DEFINE(int64_t, signed long)
   179         AC_DEFINE(uint64_t, unsigned long)
   180         AC_DEFINE(SDL_HAS_64BIT_TYPE)
   181     else
   182         if test x$ac_cv_sizeof_long_long = x8; then
   183             AC_DEFINE(int64_t, signed long long)
   184             AC_DEFINE(uint64_t, unsigned long long)
   185             AC_DEFINE(SDL_HAS_64BIT_TYPE)
   186         fi
   187     fi
   188     AC_DEFINE(size_t, unsigned int)
   189     AC_DEFINE(uintptr_t, unsigned long)
   190 fi
   191 
   192 # Standard C sources
   193 SOURCES="$SOURCES $srcdir/src/*.c"
   194 SOURCES="$SOURCES $srcdir/src/audio/*.c"
   195 SOURCES="$SOURCES $srcdir/src/cdrom/*.c"
   196 SOURCES="$SOURCES $srcdir/src/cpuinfo/*.c"
   197 SOURCES="$SOURCES $srcdir/src/events/*.c"
   198 SOURCES="$SOURCES $srcdir/src/file/*.c"
   199 SOURCES="$SOURCES $srcdir/src/stdlib/*.c"
   200 SOURCES="$SOURCES $srcdir/src/thread/*.c"
   201 SOURCES="$SOURCES $srcdir/src/timer/*.c"
   202 SOURCES="$SOURCES $srcdir/src/video/*.c"
   203 
   204 dnl Enable/disable various subsystems of the SDL library
   205 
   206 AC_ARG_ENABLE(audio,
   207 AC_HELP_STRING([--enable-audio], [Enable the audio subsystem [[default=yes]]]),
   208               , enable_audio=yes)
   209 if test x$enable_audio != xyes; then
   210     AC_DEFINE(SDL_AUDIO_DISABLED)
   211 fi
   212 AC_ARG_ENABLE(video,
   213 AC_HELP_STRING([--enable-video], [Enable the video subsystem [[default=yes]]]),
   214               , enable_video=yes)
   215 if test x$enable_video != xyes; then
   216     AC_DEFINE(SDL_VIDEO_DISABLED)
   217 fi
   218 AC_ARG_ENABLE(events,
   219 AC_HELP_STRING([--enable-events], [Enable the events subsystem [[default=yes]]]),
   220               , enable_events=yes)
   221 if test x$enable_events != xyes; then
   222     AC_DEFINE(SDL_EVENTS_DISABLED)
   223 fi
   224 AC_ARG_ENABLE(joystick,
   225 AC_HELP_STRING([--enable-joystick], [Enable the joystick subsystem [[default=yes]]]),
   226               , enable_joystick=yes)
   227 if test x$enable_joystick != xyes; then
   228     AC_DEFINE(SDL_JOYSTICK_DISABLED)
   229 else
   230     SOURCES="$SOURCES $srcdir/src/joystick/*.c"
   231 fi
   232 AC_ARG_ENABLE(cdrom,
   233 AC_HELP_STRING([--enable-cdrom], [Enable the cdrom subsystem [[default=yes]]]),
   234               , enable_cdrom=yes)
   235 if test x$enable_cdrom != xyes; then
   236     AC_DEFINE(SDL_CDROM_DISABLED)
   237 fi
   238 AC_ARG_ENABLE(threads,
   239 AC_HELP_STRING([--enable-threads], [Enable the threading subsystem [[default=yes]]]),
   240               , enable_threads=yes)
   241 if test x$enable_threads != xyes; then
   242     AC_DEFINE(SDL_THREADS_DISABLED)
   243 fi
   244 AC_ARG_ENABLE(timers,
   245 AC_HELP_STRING([--enable-timers], [Enable the timer subsystem [[default=yes]]]),
   246               , enable_timers=yes)
   247 if test x$enable_timers != xyes; then
   248     AC_DEFINE(SDL_TIMERS_DISABLED)
   249 fi
   250 AC_ARG_ENABLE(file,
   251 AC_HELP_STRING([--enable-file], [Enable the file subsystem [[default=yes]]]),
   252               , enable_file=yes)
   253 if test x$enable_file != xyes; then
   254     AC_DEFINE(SDL_FILE_DISABLED)
   255 fi
   256 AC_ARG_ENABLE(loadso,
   257 AC_HELP_STRING([--enable-loadso], [Enable the shared object loading subsystem [[default=yes]]]),
   258               , enable_loadso=yes)
   259 if test x$enable_loadso != xyes; then
   260     AC_DEFINE(SDL_LOADSO_DISABLED)
   261 fi
   262 AC_ARG_ENABLE(cpuinfo,
   263 AC_HELP_STRING([--enable-cpuinfo], [Enable the cpuinfo subsystem [[default=yes]]]),
   264               , enable_cpuinfo=yes)
   265 if test x$enable_cpuinfo != xyes; then
   266     AC_DEFINE(SDL_CPUINFO_DISABLED)
   267 fi
   268 AC_ARG_ENABLE(assembly,
   269 AC_HELP_STRING([--enable-assembly], [Enable assembly routines [[default=yes]]]),
   270               , enable_assembly=yes)
   271 if test x$enable_assembly = xyes; then
   272     AC_DEFINE(SDL_ASSEMBLY_ROUTINES)
   273 fi
   274 
   275 dnl See if the OSS audio interface is supported
   276 CheckOSS()
   277 {
   278     AC_ARG_ENABLE(oss,
   279 AC_HELP_STRING([--enable-oss], [support the OSS audio API [[default=yes]]]),
   280                   , enable_oss=yes)
   281     if test x$enable_audio = xyes -a x$enable_oss = xyes; then
   282         AC_MSG_CHECKING(for OSS audio support)
   283         have_oss=no
   284         if test x$have_oss != xyes; then
   285             AC_TRY_COMPILE([
   286               #include <sys/soundcard.h>
   287             ],[
   288               int arg = SNDCTL_DSP_SETFRAGMENT;
   289             ],[
   290             have_oss=yes
   291             ])
   292         fi
   293         if test x$have_oss != xyes; then
   294             AC_TRY_COMPILE([
   295               #include <soundcard.h>
   296             ],[
   297               int arg = SNDCTL_DSP_SETFRAGMENT;
   298             ],[
   299             have_oss=yes
   300             AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H)
   301             ])
   302         fi
   303         AC_MSG_RESULT($have_oss)
   304         if test x$have_oss = xyes; then
   305             AC_DEFINE(SDL_AUDIO_DRIVER_OSS)
   306             SOURCES="$SOURCES $srcdir/src/audio/dsp/*.c"
   307             SOURCES="$SOURCES $srcdir/src/audio/dma/*.c"
   308             have_audio=yes
   309 
   310             # We may need to link with ossaudio emulation library
   311             case "$host" in
   312                 *-*-openbsd*|*-*-netbsd*)
   313                     EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lossaudio";;
   314             esac
   315         fi
   316     fi
   317 }
   318 
   319 dnl See if the ALSA audio interface is supported
   320 CheckALSA()
   321 {
   322     AC_ARG_ENABLE(alsa,
   323 AC_HELP_STRING([--enable-alsa], [support the ALSA audio API [[default=yes]]]),
   324                   , enable_alsa=yes)
   325     if test x$enable_audio = xyes -a x$enable_alsa = xyes; then
   326         AM_PATH_ALSA(0.9.0, have_alsa=yes, have_alsa=no)
   327         # Restore all flags from before the ALSA detection runs
   328         CFLAGS="$alsa_save_CFLAGS"
   329         LDFLAGS="$alsa_save_LDFLAGS"
   330         LIBS="$alsa_save_LIBS"
   331         if test x$have_alsa = xyes; then
   332             AC_ARG_ENABLE(alsa-shared,
   333 AC_HELP_STRING([--enable-alsa-shared], [dynamically load ALSA audio support [[default=yes]]]),
   334                           , enable_alsa_shared=yes)
   335             if test "x`echo $ALSA_LIBS | grep -- -L`" = "x"; then
   336                 if test "x`ls /lib/libasound.so.* 2> /dev/null`" != "x"; then
   337                     ALSA_LIBS="-L/lib $ALSA_LIBS"
   338                 elif test "x`ls /usr/lib/libasound.so.* 2> /dev/null`" != "x"; then
   339                     ALSA_LIBS="-L/usr/lib $ALSA_LIBS"
   340                 elif test "x`ls /usr/local/lib/libasound.so.* 2> /dev/null`" != "x"; then
   341                     ALSA_LIBS="-L/usr/local/lib $ALSA_LIBS"
   342                 fi
   343             fi
   344             alsa_lib_spec=`echo $ALSA_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libasound.so.*/'`
   345             alsa_lib=`ls -- $alsa_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   346             echo "-- $alsa_lib_spec -> $alsa_lib"
   347 
   348             AC_DEFINE(SDL_AUDIO_DRIVER_ALSA)
   349             SOURCES="$SOURCES $srcdir/src/audio/alsa/*.c"
   350             EXTRA_CFLAGS="$EXTRA_CFLAGS $ALSA_CFLAGS"
   351             if test x$have_loadso != xyes && \
   352                test x$enable_alsa_shared = xyes; then
   353                 AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ALSA loading])
   354             fi
   355             if test x$have_loadso = xyes && \
   356                test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then
   357                 AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ALSA_DYNAMIC, "$alsa_lib")
   358             else
   359                 EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS"
   360             fi
   361             have_audio=yes
   362         fi
   363     fi
   364 }
   365 
   366 dnl Check whether we want to use IRIX 6.5+ native audio or not
   367 CheckDMEDIA()
   368 {
   369     if test x$enable_audio = xyes; then
   370         AC_MSG_CHECKING(for dmedia audio support)
   371         have_dmedia=no
   372         AC_TRY_COMPILE([
   373           #include <dmedia/audio.h>
   374         ],[
   375           ALport audio_port;
   376         ],[
   377         have_dmedia=yes
   378         ])
   379         AC_MSG_RESULT($have_dmedia)
   380         # Set up files for the audio library
   381         if test x$have_dmedia = xyes; then
   382             AC_DEFINE(SDL_AUDIO_DRIVER_DMEDIA)
   383             SOURCES="$SOURCES $srcdir/src/audio/dmedia/*.c"
   384             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -laudio"
   385             have_audio=yes
   386         fi
   387     fi
   388 }
   389 
   390 dnl Check whether we want to use Tru64 UNIX native audio or not
   391 CheckMME()
   392 {
   393     dnl Make sure we are running on an Tru64 UNIX
   394     case $ARCH in
   395         osf)
   396             ;;
   397         *)
   398             return
   399             ;;
   400     esac
   401     if test x$enable_audio = xyes; then
   402         AC_MSG_CHECKING(for MME audio support)
   403         MME_CFLAGS="-I/usr/include/mme"
   404         MME_LIBS="-lmme"
   405         have_mme=no
   406         save_CFLAGS="$CFLAGS"
   407         CFLAGS="$CFLAGS $MME_CFLAGS"
   408         AC_TRY_COMPILE([
   409           #include <mme_api.h>
   410         ],[
   411           HWAVEOUT sound;
   412         ],[
   413         have_mme=yes
   414         ])
   415         CFLAGS="$save_CFLAGS"
   416         AC_MSG_RESULT($have_mme)
   417         # Set up files for the audio library
   418         if test x$have_mme = xyes; then
   419             AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO)
   420             SOURCES="$SOURCES $srcdir/src/audio/mme/*.c"
   421             EXTRA_CFLAGS="$EXTRA_CFLAGS $MME_CFLAGS"
   422             EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MME_LIBS"
   423             have_audio=yes
   424         fi
   425     fi
   426 }
   427 
   428 dnl Find the ESD includes and libraries
   429 CheckESD()
   430 {
   431     AC_ARG_ENABLE(esd,
   432 AC_HELP_STRING([--enable-esd], [support the Enlightened Sound Daemon [[default=yes]]]),
   433                   , enable_esd=yes)
   434     if test x$enable_audio = xyes -a x$enable_esd = xyes; then
   435         AM_PATH_ESD(0.2.8, have_esd=yes, have_esd=no)
   436         if test x$have_esd = xyes; then
   437             AC_ARG_ENABLE(esd-shared,
   438 AC_HELP_STRING([--enable-esd-shared], [dynamically load ESD audio support [[default=yes]]]),
   439                           , enable_esd_shared=yes)
   440             esd_lib_spec=`echo $ESD_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libesd.so.*/'`
   441             esd_lib=`ls -- $esd_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   442             echo "-- $esd_lib_spec -> $esd_lib"
   443 
   444             AC_DEFINE(SDL_AUDIO_DRIVER_ESD)
   445             SOURCES="$SOURCES $srcdir/src/audio/esd/*.c"
   446             EXTRA_CFLAGS="$EXTRA_CFLAGS $ESD_CFLAGS"
   447             if test x$have_loadso != xyes && \
   448                test x$enable_esd_shared = xyes; then
   449                 AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ESD loading])
   450             fi
   451             if test x$have_loadso = xyes && \
   452                test x$enable_esd_shared = xyes && test x$esd_lib != x; then
   453                 AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib")
   454             else
   455                 EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ESD_LIBS"
   456             fi
   457             have_audio=yes
   458         fi
   459     fi
   460 }
   461 
   462 CheckARTSC()
   463 {
   464     AC_ARG_ENABLE(arts,
   465 AC_HELP_STRING([--enable-arts], [support the Analog Real Time Synthesizer [[default=yes]]]),
   466                   , enable_arts=yes)
   467     if test x$enable_audio = xyes -a x$enable_arts = xyes; then
   468         AC_PATH_PROG(ARTSCONFIG, artsc-config)
   469         if test x$ARTSCONFIG = x -o x$ARTSCONFIG = x'"$ARTSCONFIG"'; then
   470             : # arts isn't installed
   471         else
   472             ARTS_CFLAGS=`$ARTSCONFIG --cflags`
   473             ARTS_LIBS=`$ARTSCONFIG --libs`
   474             ARTS_PREFIX=`$ARTSCONFIG --arts-prefix`
   475             AC_MSG_CHECKING(for aRts development environment)
   476             audio_arts=no
   477             save_CFLAGS="$CFLAGS"
   478             CFLAGS="$CFLAGS $ARTS_CFLAGS"
   479             AC_TRY_COMPILE([
   480              #include <artsc.h>
   481             ],[
   482              arts_stream_t stream;
   483             ],[
   484             audio_arts=yes
   485             ])
   486             CFLAGS="$save_CFLAGS"
   487             AC_MSG_RESULT($audio_arts)
   488             if test x$audio_arts = xyes; then
   489                 AC_ARG_ENABLE(arts-shared,
   490 AC_HELP_STRING([--enable-arts-shared], [dynamically load aRts audio support [[default=yes]]]),
   491                               , enable_arts_shared=yes)
   492                 arts_lib_spec="$ARTS_PREFIX/lib/libartsc.so.*"
   493                 arts_lib=`ls -- $arts_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   494                 echo "-- $arts_lib_spec -> $arts_lib"
   495 
   496                 AC_DEFINE(SDL_AUDIO_DRIVER_ARTS)
   497                 SOURCES="$SOURCES $srcdir/src/audio/arts/*.c"
   498                 EXTRA_CFLAGS="$EXTRA_CFLAGS $ARTS_CFLAGS"
   499                 if test x$have_loadso != xyes && \
   500                    test x$enable_arts_shared = xyes; then
   501                     AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ARTS loading])
   502                 fi
   503                 if test x$have_loadso = xyes && \
   504                    test x$enable_arts_shared = xyes && test x$arts_lib != x; then
   505                     AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib")
   506                 else
   507                     EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ARTS_LIBS"
   508                 fi
   509                 have_audio=yes
   510             fi
   511         fi
   512     fi
   513 }
   514 
   515 dnl See if the NAS audio interface is supported
   516 CheckNAS()
   517 {
   518     AC_ARG_ENABLE(nas,
   519 AC_HELP_STRING([--enable-nas], [support the NAS audio API [[default=yes]]]),
   520                   , enable_nas=yes)
   521     if test x$enable_audio = xyes -a x$enable_nas = xyes; then
   522         AC_CHECK_HEADER(audio/audiolib.h, have_nas_hdr=yes)
   523         AC_CHECK_LIB(audio, AuOpenServer, have_nas_lib=yes)
   524 
   525         AC_MSG_CHECKING(for NAS audio support)
   526         have_nas=no
   527 
   528         if test x$have_nas_hdr = xyes -a x$have_nas_lib = xyes; then
   529             have_nas=yes
   530             NAS_LIBS="-laudio"
   531 
   532         elif test -r /usr/X11R6/include/audio/audiolib.h; then
   533             have_nas=yes
   534             NAS_CFLAGS="-I/usr/X11R6/include/"
   535             NAS_LIBS="-L/usr/X11R6/lib -laudio -lXt"
   536 
   537         dnl On IRIX, the NAS includes are in a different directory,
   538         dnl and libnas must be explicitly linked in
   539 
   540         elif test -r /usr/freeware/include/nas/audiolib.h; then
   541             have_nas=yes
   542             NAS_LIBS="-lnas -lXt"
   543         fi
   544 
   545         AC_MSG_RESULT($have_nas)
   546 
   547         if test x$have_nas = xyes; then
   548             AC_ARG_ENABLE(nas-shared,
   549 AC_HELP_STRING([--enable-nas-shared], [dynamically load NAS audio support [[default=yes]]]),
   550                           , enable_nas_shared=yes)
   551             if test "x`echo $NAS_LIBS | grep -- -L`" = "x"; then
   552                 if test "x`ls /lib/libaudio.so.* 2> /dev/null`" != "x"; then
   553                     NAS_LIBS="-L/lib $NAS_LIBS"
   554                 elif test "x`ls /usr/lib/libaudio.so.* 2> /dev/null`" != "x"; then
   555                     NAS_LIBS="-L/usr/lib $NAS_LIBS"
   556                 elif test "x`ls /usr/local/lib/libaudio.so.* 2> /dev/null`" != "x"; then
   557                     NAS_LIBS="-L/usr/local/lib $NAS_LIBS"
   558                 fi
   559             fi
   560             nas_lib_spec=`echo $NAS_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libaudio.so.*/'`
   561             nas_lib=`ls -- $nas_lib_spec | sed 's/.*\/\(.*\)/\1/; q'`
   562             echo "-- $nas_lib_spec -> $nas_lib"
   563 
   564             if test x$have_loadso != xyes && \
   565                test x$enable_nas_shared = xyes; then
   566                 AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic NAS loading])
   567             fi
   568             if test x$have_loadso = xyes && \
   569                test x$enable_nas_shared = xyes && test x$nas_lib != x; then
   570                 AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_NAS_DYNAMIC, "$nas_lib")
   571             else
   572                 EXTRA_LDFLAGS="$EXTRA_LDFLAGS $NAS_LIBS"
   573             fi
   574 
   575             AC_DEFINE(SDL_AUDIO_DRIVER_NAS)
   576             SOURCES="$SOURCES $srcdir/src/audio/nas/*.c"
   577             EXTRA_CFLAGS="$EXTRA_CFLAGS $NAS_CFLAGS"
   578             have_audio=yes
   579         fi
   580     fi
   581 }
   582 
   583 dnl rcg07142001 See if the user wants the disk writer audio driver...
   584 CheckDiskAudio()
   585 {
   586     AC_ARG_ENABLE(diskaudio,
   587 AC_HELP_STRING([--enable-diskaudio], [support the disk writer audio driver [[default=yes]]]),
   588                   , enable_diskaudio=yes)
   589     if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then
   590         AC_DEFINE(SDL_AUDIO_DRIVER_DISK)
   591         SOURCES="$SOURCES $srcdir/src/audio/disk/*.c"
   592     fi
   593 }
   594 
   595 dnl rcg03142006 See if the user wants the dummy audio driver...
   596 CheckDummyAudio()
   597 {
   598     AC_ARG_ENABLE(dummyaudio,
   599 AC_HELP_STRING([--enable-dummyaudio], [support the dummy audio driver [[default=yes]]]),
   600                   , enable_dummyaudio=yes)
   601     if test x$enable_audio = xyes -a x$enable_dummyaudio = xyes; then
   602         AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY)
   603         SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c"
   604     fi
   605 }
   606 
   607 dnl Set up the Atari Audio driver
   608 CheckAtariAudio()
   609 {
   610     AC_ARG_ENABLE(mintaudio,
   611 AC_HELP_STRING([--enable-mintaudio], [support Atari audio driver [[default=yes]]]),
   612                   , enable_mintaudio=yes)
   613     if test x$enable_audio = xyes -a x$enable_mintaudio = xyes; then
   614         mintaudio=no
   615         AC_CHECK_HEADER(mint/falcon.h, have_mint_falcon_hdr=yes)
   616         if test x$have_mint_falcon_hdr = xyes; then
   617             mintaudio=yes
   618             AC_DEFINE(SDL_AUDIO_DRIVER_MINT)
   619             SOURCES="$SOURCES $srcdir/src/audio/mint/*.c"
   620             SOURCES="$SOURCES $srcdir/src/audio/mint/*.S"
   621             have_audio=yes
   622         fi
   623     fi
   624 }
   625 
   626 dnl See if we can use x86 assembly blitters
   627 # NASM is available from: http://nasm.sourceforge.net
   628 CheckNASM()
   629 {
   630     dnl Make sure we are running on an x86 platform
   631     case $host in
   632         i?86*)
   633             ;;
   634         *)
   635         # Nope, bail early.
   636             return
   637             ;;
   638     esac
   639     dnl Check for NASM (for assembly blit routines)
   640     AC_ARG_ENABLE(nasm,
   641 AC_HELP_STRING([--enable-nasm], [use nasm assembly blitters on x86 [[default=yes]]]),
   642                   , enable_nasm=yes)
   643     if test x$enable_video = xyes -a x$enable_assembly = xyes -a x$enable_nasm = xyes; then
   644         CompileNASM()
   645         {
   646             # Usage: CompileNASM <filename>
   647             AC_MSG_CHECKING(to see if $NASM supports $1)
   648             if $NASM $NASMFLAGS $1 -o $1.o >&AS_MESSAGE_LOG_FD 2>&1; then
   649                 CompileNASM_ret="yes"
   650             else
   651                 CompileNASM_ret="no"
   652             fi
   653             rm -f $1 $1.o
   654             AC_MSG_RESULT($CompileNASM_ret)
   655             test "$CompileNASM_ret" = "yes"
   656         }
   657 
   658         if test x"$NASMFLAGS" = x; then
   659             case $ARCH in
   660               win32)
   661                   NASMFLAGS="-f win32"
   662                   ;;
   663               openbsd)
   664                   NASMFLAGS="-f aoutb"
   665                   ;;
   666               macosx)
   667                   NASMFLAGS="-f macho"
   668                   ;;
   669               *)
   670                   NASMFLAGS="-f elf"
   671                   ;;
   672             esac
   673         fi
   674 
   675         AC_PATH_PROG(NASM, yasm)
   676         echo "%ifidn __OUTPUT_FORMAT__,elf" > unquoted-sections
   677         echo "section .note.GNU-stack noalloc noexec nowrite progbits" >> unquoted-sections
   678         echo "%endif" >> unquoted-sections
   679         CompileNASM unquoted-sections || NASM=""
   680 
   681         if test "x$NASM" = x -o "x$NASM" = x'"$NASM"'; then
   682             $as_unset ac_cv_path_NASM
   683             AC_PATH_PROG(NASM, nasm)
   684         fi
   685         if test "x$NASM" != x -a "x$NASM" != x'"$NASM"'; then
   686             AC_DEFINE(SDL_HERMES_BLITTERS)
   687             SOURCES="$SOURCES $srcdir/src/hermes/*.asm"
   688             NASMFLAGS="$NASMFLAGS -I $srcdir/src/hermes/"
   689 
   690             dnl See if hidden visibility is supported
   691             echo "GLOBAL _bar:function hidden" > symbol-visibility
   692             echo "_bar:" >> symbol-visibility
   693             CompileNASM symbol-visibility && NASMFLAGS="$NASMFLAGS -DHIDDEN_VISIBILITY"
   694 
   695             AC_SUBST(NASM)
   696             AC_SUBST(NASMFLAGS)
   697 
   698             case "$host" in
   699                 # this line is needed for QNX, because it's not defined the __ELF__
   700                 *-*-qnx*)
   701                      EXTRA_CFLAGS="$EXTRA_CFLAGS -D__ELF__";;
   702                 *-*-solaris*)
   703                      EXTRA_CFLAGS="$EXTRA_CFLAGS -D__ELF__";;
   704             esac
   705         fi
   706     fi
   707 }
   708 
   709 dnl Check for altivec instruction support using gas syntax
   710 CheckAltivec()
   711 {
   712     AC_ARG_ENABLE(altivec,
   713 AC_HELP_STRING([--enable-altivec], [use altivec assembly blitters on PPC [[default=yes]]]),
   714                   , enable_altivec=yes)
   715     if test x$enable_video = xyes -a x$enable_assembly = xyes -a x$enable_altivec = xyes; then
   716         have_altivec_h_hdr=no
   717         AC_CHECK_HEADER(altivec.h, have_altivec_h_hdr=yes)
   718 
   719         save_CFLAGS="$CFLAGS"
   720         have_gcc_altivec=no
   721         AC_MSG_CHECKING(for Altivec with GCC -maltivec option)
   722         altivec_CFLAGS="-maltivec"
   723         CFLAGS="$save_CFLAGS $altivec_CFLAGS"
   724 
   725         if test x$have_altivec_h_hdr = xyes; then
   726           AC_TRY_COMPILE([
   727           #include <altivec.h>
   728           vector unsigned int vzero() {
   729               return vec_splat_u32(0);
   730           }
   731           ],[
   732           ],[
   733           have_gcc_altivec=yes
   734           ])
   735           AC_MSG_RESULT($have_gcc_altivec)
   736         else
   737           AC_TRY_COMPILE([
   738           vector unsigned int vzero() {
   739               return vec_splat_u32(0);
   740           }
   741           ],[
   742           ],[
   743           have_gcc_altivec=yes
   744           ])
   745           AC_MSG_RESULT($have_gcc_altivec)
   746         fi
   747 
   748         if test x$have_gcc_altivec = xno; then
   749             AC_MSG_CHECKING(for Altivec with GCC -faltivec option)
   750             altivec_CFLAGS="-faltivec"
   751             CFLAGS="$save_CFLAGS $altivec_CFLAGS"
   752             if test x$have_altivec_h_hdr = xyes; then
   753               AC_TRY_COMPILE([
   754               #include <altivec.h>
   755               vector unsigned int vzero() {
   756                   return vec_splat_u32(0);
   757               }
   758               ],[
   759               ],[
   760               have_gcc_altivec=yes
   761               ])
   762               AC_MSG_RESULT($have_gcc_altivec)
   763             else
   764               AC_TRY_COMPILE([
   765               vector unsigned int vzero() {
   766                   return vec_splat_u32(0);
   767               }
   768               ],[
   769               ],[
   770               have_gcc_altivec=yes
   771               ])
   772               AC_MSG_RESULT($have_gcc_altivec)
   773             fi
   774         fi
   775         CFLAGS="$save_CFLAGS"
   776 
   777         if test x$have_gcc_altivec = xyes; then
   778             AC_DEFINE(SDL_ALTIVEC_BLITTERS)
   779             if test x$have_altivec_h_hdr = xyes; then
   780               AC_DEFINE(HAVE_ALTIVEC_H)
   781             fi
   782             EXTRA_CFLAGS="$EXTRA_CFLAGS $altivec_CFLAGS"
   783         fi
   784     fi
   785 }
   786 
   787 dnl See if GCC's -fvisibility=hidden is supported (gcc4 and later, usually).
   788 dnl  Details of this flag are here: http://gcc.gnu.org/wiki/Visibility
   789 CheckVisibilityHidden()
   790 {
   791     AC_MSG_CHECKING(for GCC -fvisibility=hidden option)
   792     have_gcc_fvisibility=no
   793 
   794     visibility_CFLAGS="-fvisibility=hidden"
   795     save_CFLAGS="$CFLAGS"
   796     CFLAGS="$save_CFLAGS $visibility_CFLAGS"
   797     AC_TRY_COMPILE([
   798     #if !defined(__GNUC__) || __GNUC__ < 4
   799     #error SDL only uses visibility attributes in GCC 4 or newer
   800     #endif
   801     ],[
   802     ],[
   803     have_gcc_fvisibility=yes
   804     ])
   805     AC_MSG_RESULT($have_gcc_fvisibility)
   806     CFLAGS="$save_CFLAGS"
   807 
   808     if test x$have_gcc_fvisibility = xyes; then
   809         EXTRA_CFLAGS="$EXTRA_CFLAGS $visibility_CFLAGS"
   810     fi
   811 }
   812 
   813 
   814 dnl Do the iPod thing
   815 CheckIPod()
   816 {
   817     AC_ARG_ENABLE(ipod,
   818 AC_HELP_STRING([--enable-ipod], [configure SDL to work with iPodLinux [default=yes on arm-elf]]),
   819         , enable_ipod=yes)
   820 
   821     if test x$enable_ipod = xyes; then
   822         EXTRA_CFLAGS="$EXTRA_CFLAGS -DIPOD"
   823         AC_DEFINE(SDL_VIDEO_DRIVER_IPOD)
   824         SOURCES="$SOURCES $srcdir/src/video/ipod/*.c"
   825     fi
   826 }
   827 
   828 dnl Find the nanox include and library directories
   829 CheckNANOX()
   830 {
   831     AC_ARG_ENABLE(video-nanox,
   832         AC_HELP_STRING([--enable-video-nanox], [use nanox video driver [[default=no]]]),
   833         , enable_video_nanox=no)
   834 
   835     if test x$enable_video = xyes -a x$enable_video_nanox = xyes; then
   836         AC_ARG_ENABLE(nanox-debug,  
   837             AC_HELP_STRING([--enable-nanox-debug], [print debug messages [[default=no]]]),
   838             , enable_nanox_debug=no)
   839         if test x$enable_nanox_debug = xyes; then
   840             EXTRA_CFLAGS="$EXTRA_CFLAGS -DENABLE_NANOX_DEBUG"
   841         fi
   842 
   843         AC_ARG_ENABLE(nanox-share-memory,  
   844             AC_HELP_STRING([--enable-nanox-share-memory], [use share memory [[default=no]]]),
   845             , enable_nanox_share_memory=no)
   846         if test x$enable_nanox_share_memory = xyes; then
   847             EXTRA_CFLAGS="$EXTRA_CFLAGS -DNANOX_SHARE_MEMORY"
   848         fi
   849 
   850         AC_ARG_ENABLE(nanox_direct_fb, 
   851             AC_HELP_STRING([--enable-nanox-direct-fb], [use direct framebuffer access [[default=no]]]),
   852             , enable_nanox_direct_fb=no)
   853         if test x$enable_nanox_direct_fb = xyes; then
   854             EXTRA_CFLAGS="$EXTRA_CFLAGS -DENABLE_NANOX_DIRECT_FB"
   855         fi
   856 
   857         AC_DEFINE(SDL_VIDEO_DRIVER_NANOX)
   858         SOURCES="$SOURCES $srcdir/src/video/nanox/*.c"
   859         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lnano-X"
   860         have_video=yes
   861     fi
   862 }
   863 
   864 dnl Find the X11 include and library directories
   865 CheckX11()
   866 {
   867     AC_ARG_ENABLE(video-x11,
   868 AC_HELP_STRING([--enable-video-x11], [use X11 video driver [[default=yes]]]),
   869                   , enable_video_x11=yes)
   870     if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then
   871         case "$host" in
   872             *-*-darwin*)
   873                 # This isn't necessary for X11, but fixes GLX detection
   874                 if test "x$x_includes" = xNONE && test "x$x_libraries" = xNONE; then
   875                     x_includes="/usr/X11R6/include"
   876                     x_libraries="/usr/X11R6/lib"
   877                 fi
   878                 ;;
   879         esac
   880         AC_PATH_X
   881         AC_PATH_XTRA
   882         if test x$have_x = xyes; then
   883             # Only allow dynamically loaded X11 if the X11 function pointers
   884             # will not end up in the global namespace, which causes problems
   885             # with other libraries calling X11 functions.
   886             x11_symbols_private=$have_gcc_fvisibility
   887 
   888             AC_ARG_ENABLE(x11-shared,
   889 AC_HELP_STRING([--enable-x11-shared], [dynamically load X11 support [[default=maybe]]]),
   890                           , enable_x11_shared=maybe)
   891 
   892             case "$host" in
   893                 *-*-darwin*) # Latest Mac OS X actually ships with Xrandr/Xrender libs...
   894                     x11_symbols_private=yes
   895                     x11_lib='/usr/X11R6/lib/libX11.6.dylib'
   896                     x11ext_lib='/usr/X11R6/lib/libXext.6.dylib'
   897                     xrender_lib='/usr/X11R6/lib/libXrender.1.dylib'
   898                     xrandr_lib='/usr/X11R6/lib/libXrandr.2.dylib'
   899                     ;;
   900                 *-*-osf*)
   901                     x11_lib='libX11.so'
   902                     x11ext_lib='libXext.so'
   903                     ;;
   904                 *-*-irix*) # IRIX 6.5 requires that we use /usr/lib32
   905                     x11_lib='libX11.so'
   906                     x11ext_lib='libXext.so'
   907                     ;;
   908                 *)
   909                     x11_lib_spec=[`echo $X_LIBS | sed 's/.*-L\([^ ]*\).*/\1/'`]
   910                     for path in $x11_lib_path /usr/lib /usr/X11/lib /usr/X11R6/lib; do
   911                         if test "x$x11_lib" = "x"; then
   912                             x11_lib=[`ls -- $path/libX11.so.[0-9] 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   913                             if test "x$x11_lib" = "x"; then
   914                                 x11_lib=[`ls -- $path/libX11.so.[0-9]* 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   915                             fi
   916                         fi
   917                         if test "x$x11ext_lib" = "x"; then
   918                             x11ext_lib=[`ls -- $path/libXext.so.[0-9] 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   919                             if test "x$x11ext_lib" = "x"; then
   920                                 x11ext_lib=[`ls -- $path/libXext.so.[0-9]* 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   921                             fi
   922                         fi
   923                         if test "x$xrender_lib" = "x"; then
   924                             xrender_lib=[`ls -- $path/libXrender.so.[0-9] 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   925                             if test "x$xrender_lib" = "x"; then
   926                                 xrender_lib=[`ls -- $path/libXrender.so.[0-9]* 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   927                             fi
   928                         fi
   929                         if test "x$xrandr_lib" = "x"; then
   930                             xrandr_lib=[`ls -- $path/libXrandr.so.[0-9] 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   931                             if test "x$xrandr_lib" = "x"; then
   932                                 xrandr_lib=[`ls -- $path/libXrandr.so.[0-9]* 2>/dev/null | sort -r | sed 's/.*\/\(.*\)/\1/; q'`]
   933                             fi
   934                         fi
   935                     done
   936                     ;;
   937             esac
   938 
   939             X_CFLAGS="$X_CFLAGS -DXTHREADS"
   940             if test x$ac_cv_func_shmat != xyes; then
   941                 X_CFLAGS="$X_CFLAGS -DNO_SHARED_MEMORY"
   942             fi
   943             CFLAGS="$CFLAGS $X_CFLAGS"
   944             LDFLAGS="$LDFLAGS $X_LIBS"
   945 
   946             AC_DEFINE(SDL_VIDEO_DRIVER_X11)
   947             SOURCES="$SOURCES $srcdir/src/video/x11/*.c"
   948             SOURCES="$SOURCES $srcdir/src/video/Xext/XmuStdCmap/*.c"
   949             EXTRA_CFLAGS="$EXTRA_CFLAGS $X_CFLAGS"
   950 
   951             if test x$enable_x11_shared = xmaybe; then
   952                 enable_x11_shared=$x11_symbols_private
   953             fi
   954             if test x$have_loadso != xyes && \
   955                test x$enable_x11_shared = xyes; then
   956                 AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic X11 loading])
   957                 enable_x11_shared=no
   958             fi
   959             if test x$x11_symbols_private != xyes && \
   960                test x$enable_x11_shared = xyes; then
   961                 AC_MSG_WARN([You must have gcc4 (-fvisibility=hidden) for dynamic X11 loading])
   962                 enable_x11_shared=no
   963             fi
   964 
   965             if test x$have_loadso = xyes && \
   966                test x$enable_x11_shared = xyes && test x$x11_lib != x && test x$x11ext_lib != x; then
   967                 echo "-- dynamic libX11 -> $x11_lib"
   968                 echo "-- dynamic libX11ext -> $x11ext_lib"
   969                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib")
   970                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib")
   971             else
   972                 enable_x11_shared=no
   973                 EXTRA_LDFLAGS="$EXTRA_LDFLAGS $X_LIBS -lX11 -lXext"
   974             fi
   975             have_video=yes
   976 
   977             AC_ARG_ENABLE(video-x11-vm,
   978 AC_HELP_STRING([--enable-video-x11-vm], [use X11 VM extension for fullscreen [[default=yes]]]),
   979                           , enable_video_x11_vm=yes)
   980             if test x$enable_video_x11_vm = xyes; then
   981                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_VIDMODE)
   982                 SOURCES="$SOURCES $srcdir/src/video/Xext/Xxf86vm/*.c"
   983             fi
   984             AC_ARG_ENABLE(video-x11-xv,
   985 AC_HELP_STRING([--enable-video-x11-xv], [use X11 XvImage extension for video [[default=yes]]]),
   986                           , enable_video_x11_xv=yes)
   987             if test x$enable_video_x11_xv = xyes; then
   988                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XV)
   989                 SOURCES="$SOURCES $srcdir/src/video/Xext/Xv/*.c"
   990             fi
   991             AC_ARG_ENABLE(video-x11-xinerama,
   992 AC_HELP_STRING([--enable-video-x11-xinerama], [enable X11 Xinerama support [[default=yes]]]),
   993                             , enable_video_x11_xinerama=yes)
   994             if test x$enable_video_x11_xinerama = xyes; then
   995                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA)
   996                 SOURCES="$SOURCES $srcdir/src/video/Xext/Xinerama/*.c"
   997             fi
   998             AC_ARG_ENABLE(video-x11-xme,
   999 AC_HELP_STRING([--enable-video-x11-xme], [enable Xi Graphics XME for fullscreen [[default=yes]]]),
  1000                             , enable_video_x11_xme=yes)
  1001             if test x$enable_video_x11_xme = xyes; then
  1002                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XME)
  1003                 SOURCES="$SOURCES $srcdir/src/video/Xext/XME/*.c"
  1004             fi
  1005             AC_ARG_ENABLE(video-x11-xrandr,
  1006 AC_HELP_STRING([--enable-video-x11-xrandr], [enable X11 Xrandr extension for fullscreen [[default=yes]]]),
  1007                             , enable_video_x11_xrandr=yes)
  1008             if test x$enable_video_x11_xrandr = xyes; then
  1009                 definitely_enable_video_x11_xrandr=no
  1010                 AC_CHECK_HEADER(X11/extensions/Xrandr.h,
  1011                                 have_xrandr_h_hdr=yes,
  1012                                 have_xrandr_h_hdr=no,
  1013                                 [#include <X11/Xlib.h>
  1014                                 ])
  1015                 if test x$have_xrandr_h_hdr = xyes; then
  1016                     if test x$enable_x11_shared = xyes && test x$xrandr_lib != x ; then
  1017                         echo "-- dynamic libXrender -> $xrender_lib"
  1018                         echo "-- dynamic libXrandr -> $xrandr_lib"
  1019                         AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER, "$xrender_lib")
  1020                         AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib")
  1021                         definitely_enable_video_x11_xrandr=yes
  1022                     else
  1023                         AC_CHECK_LIB(Xrender, XRenderQueryExtension, have_xrender_lib=yes)
  1024                         AC_CHECK_LIB(Xrandr, XRRQueryExtension, have_xrandr_lib=yes)
  1025                         if test x$have_xrender_lib = xyes && test x$have_xrandr_lib = xyes ; then
  1026                             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lXrandr -lXrender"
  1027                             definitely_enable_video_x11_xrandr=yes
  1028                         fi
  1029                     fi
  1030                 fi
  1031             fi
  1032             if test x$definitely_enable_video_x11_xrandr = xyes; then
  1033                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR)
  1034             fi
  1035             AC_ARG_ENABLE(video-x11-dpms,
  1036 AC_HELP_STRING([--enable-video-x11-dpms], [enable X11 DPMS extension [[default=yes]]]),
  1037                             , enable_video_x11_dpms=yes)
  1038             if test x$enable_video_x11_dpms = xyes; then
  1039                 AC_CHECK_HEADER(X11/extensions/dpms.h,
  1040                                 have_dpms_h_hdr=yes,
  1041                                 have_dpms_h_hdr=no,
  1042                                 [#include <X11/Xlib.h>
  1043                                 ])
  1044                 if test x$have_dpms_h_hdr = xyes; then
  1045                     AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS)
  1046                 fi
  1047             fi
  1048         fi
  1049     fi
  1050 }
  1051 
  1052 dnl Check for QNX photon video driver
  1053 CheckPHOTON()
  1054 {
  1055     AC_ARG_ENABLE(video-photon,
  1056 AC_HELP_STRING([--enable-video-photon], [use QNX Photon video driver [[default=yes]]]),
  1057                   , enable_video_photon=yes)
  1058     if test x$enable_video = xyes -a x$enable_video_photon = xyes; then
  1059         AC_MSG_CHECKING(for QNX Photon support)
  1060         video_photon=no
  1061         AC_TRY_COMPILE([
  1062           #include <Ph.h>
  1063           #include <Pt.h>
  1064           #include <photon/Pg.h>
  1065           #include <photon/PdDirect.h>
  1066         ],[
  1067          PgDisplaySettings_t *visual;
  1068         ],[
  1069         video_photon=yes
  1070         ])
  1071         AC_MSG_RESULT($video_photon)
  1072         if test x$video_photon = xyes; then
  1073             AC_DEFINE(SDL_VIDEO_DRIVER_PHOTON)
  1074             SOURCES="$SOURCES $srcdir/src/video/photon/*.c"
  1075             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lph"
  1076             have_video=yes
  1077 
  1078             CheckOpenGLQNX
  1079         fi
  1080     fi
  1081 }
  1082 
  1083 dnl Set up the BWindow video driver if enabled
  1084 CheckBWINDOW()
  1085 {
  1086     if test x$enable_video = xyes; then
  1087         AC_DEFINE(SDL_VIDEO_DRIVER_BWINDOW)
  1088         SOURCES="$SOURCES $srcdir/src/video/bwindow/*.cc"
  1089         have_video=yes
  1090     fi
  1091 }
  1092 
  1093 dnl Set up the Cocoa video driver for Mac OS X (but not Darwin)
  1094 CheckCOCOA()
  1095 {
  1096     AC_ARG_ENABLE(video-cocoa,
  1097 AC_HELP_STRING([--enable-video-cocoa], [use Cocoa video driver [[default=yes]]]),
  1098                   , enable_video_cocoa=yes)
  1099     if test x$enable_video = xyes -a x$enable_video_cocoa = xyes; then
  1100         save_CFLAGS="$CFLAGS"
  1101         dnl work around that we don't have Objective-C support in autoconf
  1102         CFLAGS="$CFLAGS -x objective-c"
  1103         AC_MSG_CHECKING(for Cocoa framework)
  1104         have_cocoa=no
  1105         AC_TRY_COMPILE([
  1106           #import <Cocoa/Cocoa.h>
  1107         ],[
  1108         ],[
  1109         have_cocoa=yes
  1110         ])
  1111         AC_MSG_RESULT($have_cocoa)
  1112         CFLAGS="$save_CFLAGS"
  1113         if test x$have_cocoa = xyes; then
  1114             AC_DEFINE(SDL_VIDEO_DRIVER_COCOA)
  1115             SOURCES="$SOURCES $srcdir/src/video/cocoa/*.m"
  1116             have_video=yes
  1117         fi
  1118     fi
  1119 }
  1120 
  1121 dnl Find the framebuffer console includes
  1122 CheckFBCON()
  1123 {
  1124     AC_ARG_ENABLE(video-fbcon,
  1125 AC_HELP_STRING([--enable-video-fbcon], [use framebuffer console video driver [[default=no]]]),
  1126                   , enable_video_fbcon=no)
  1127     if test x$enable_video = xyes -a x$enable_video_fbcon = xyes; then
  1128         AC_MSG_CHECKING(for framebuffer console support)
  1129         video_fbcon=no
  1130         AC_TRY_COMPILE([
  1131          #include <linux/fb.h>
  1132          #include <linux/kd.h>
  1133          #include <linux/keyboard.h>
  1134         ],[
  1135         ],[
  1136         video_fbcon=yes
  1137         ])
  1138         AC_MSG_RESULT($video_fbcon)
  1139         if test x$video_fbcon = xyes; then
  1140             AC_CHECK_FUNCS(getpagesize)
  1141             AC_DEFINE(SDL_VIDEO_DRIVER_FBCON)
  1142             SOURCES="$SOURCES $srcdir/src/video/fbcon/*.c"
  1143             have_video=yes
  1144         fi
  1145     fi
  1146 }
  1147 
  1148 dnl Find DirectFB
  1149 CheckDirectFB()
  1150 {
  1151     AC_ARG_ENABLE(video-directfb,
  1152 AC_HELP_STRING([--enable-video-directfb], [use DirectFB video driver [[default=yes]]]),
  1153                   , enable_video_directfb=yes)
  1154     if test x$enable_video = xyes -a x$enable_video_directfb = xyes; then
  1155         video_directfb=no
  1156 
  1157         DIRECTFB_REQUIRED_VERSION=0.9.15
  1158 
  1159         AC_PATH_PROG(DIRECTFBCONFIG, directfb-config, no)
  1160         if test x$DIRECTFBCONFIG = xno; then
  1161             AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
  1162             AC_MSG_CHECKING(for DirectFB $DIRECTFB_REQUIRED_VERSION support)
  1163             if test x$PKG_CONFIG != xno; then
  1164                 if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb; then
  1165                     DIRECTFB_CFLAGS=`$PKG_CONFIG --cflags directfb`
  1166                     DIRECTFB_LIBS=`$PKG_CONFIG --libs directfb`
  1167                     video_directfb=yes
  1168                 fi
  1169             fi
  1170             AC_MSG_RESULT($video_directfb)
  1171         else
  1172             AC_MSG_CHECKING(for DirectFB $DIRECTFB_REQUIRED_VERSION support)
  1173             set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
  1174             NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
  1175             set -- `directfb-config --version | sed 's/\./ /g'`
  1176             HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
  1177             if test $HAVE_VERSION -ge $NEED_VERSION; then
  1178                 DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
  1179                 DIRECTFB_LIBS=`$DIRECTFBCONFIG --libs`
  1180                 video_directfb=yes
  1181             fi
  1182             AC_MSG_RESULT($video_directfb)
  1183         fi
  1184 
  1185         if test x$video_directfb = xyes; then
  1186             AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB)
  1187             SOURCES="$SOURCES $srcdir/src/video/directfb/*.c"
  1188             EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS"
  1189             EXTRA_LDFLAGS="$EXTRA_LDFLAGS $DIRECTFB_LIBS"
  1190             have_video=yes
  1191         fi
  1192     fi
  1193 }
  1194 
  1195 dnl See if we're running on PlayStation 2 hardware
  1196 CheckPS2GS()
  1197 {
  1198     AC_ARG_ENABLE(video-ps2gs,
  1199 AC_HELP_STRING([--enable-video-ps2gs], [use PlayStation 2 GS video driver [[default=yes]]]),
  1200                   , enable_video_ps2gs=yes)
  1201     if test x$enable_video = xyes -a x$enable_video_ps2gs = xyes; then
  1202         AC_MSG_CHECKING(for PlayStation 2 GS support)
  1203         video_ps2gs=no
  1204         AC_TRY_COMPILE([
  1205          #include <linux/ps2/dev.h>
  1206          #include <linux/ps2/gs.h>
  1207         ],[
  1208         ],[
  1209         video_ps2gs=yes
  1210         ])
  1211         AC_MSG_RESULT($video_ps2gs)
  1212         if test x$video_ps2gs = xyes; then
  1213             AC_DEFINE(SDL_VIDEO_DRIVER_PS2GS)
  1214             SOURCES="$SOURCES $srcdir/src/video/ps2gs/*.c"
  1215             have_video=yes
  1216         fi
  1217     fi
  1218 }
  1219 
  1220 dnl Find the SVGAlib includes and libraries
  1221 CheckSVGA()
  1222 {
  1223     AC_ARG_ENABLE(video-svga,
  1224 AC_HELP_STRING([--enable-video-svga], [use SVGAlib video driver [[default=yes]]]),
  1225                   , enable_video_svga=yes)
  1226     if test x$enable_video = xyes -a x$enable_video_svga = xyes; then
  1227         AC_MSG_CHECKING(for SVGAlib (1.4.0+) support)
  1228         video_svga=no
  1229         AC_TRY_COMPILE([
  1230          #include <vga.h>
  1231          #include <vgamouse.h>
  1232          #include <vgakeyboard.h>
  1233         ],[
  1234          if ( SCANCODE_RIGHTWIN && SCANCODE_LEFTWIN ) {
  1235              exit(0);
  1236          }
  1237         ],[
  1238         video_svga=yes
  1239         ])
  1240         AC_MSG_RESULT($video_svga)
  1241         if test x$video_svga = xyes; then
  1242             AC_DEFINE(SDL_VIDEO_DRIVER_SVGALIB)
  1243             SOURCES="$SOURCES $srcdir/src/video/svga/*.c"
  1244             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvga"
  1245             have_video=yes
  1246         fi
  1247     fi
  1248 }
  1249 
  1250 dnl Find the VGL includes and libraries
  1251 CheckVGL()
  1252 {
  1253     AC_ARG_ENABLE(video-vgl,
  1254 AC_HELP_STRING([--enable-video-vgl], [use VGL video driver [[default=yes]]]),
  1255                   , enable_video_vgl=yes)
  1256     if test x$enable_video = xyes -a x$enable_video_vgl = xyes; then
  1257         AC_MSG_CHECKING(for libVGL support)
  1258         video_vgl=no
  1259         AC_TRY_COMPILE([
  1260          #include <sys/fbio.h>
  1261          #include <sys/consio.h>
  1262          #include <sys/kbio.h>
  1263          #include <vgl.h>
  1264         ],[
  1265          VGLBitmap bitmap;
  1266          bitmap.Type = VIDBUF32;
  1267          bitmap.PixelBytes = 4;
  1268          exit(bitmap.Bitmap);
  1269         ],[
  1270         video_vgl=yes
  1271         ])
  1272         AC_MSG_RESULT($video_vgl)
  1273         if test x$video_vgl = xyes; then
  1274             AC_DEFINE(SDL_VIDEO_DRIVER_VGL)
  1275             SOURCES="$SOURCES $srcdir/src/video/vgl/*.c"
  1276             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvgl"
  1277             have_video=yes
  1278         fi
  1279     fi
  1280 }
  1281 
  1282 dnl Set up the wscons video driver if enabled
  1283 CheckWscons()
  1284 {
  1285     AC_ARG_ENABLE(video-wscons,
  1286 AC_HELP_STRING([--enable-video-wscons], [use wscons video driver [[default=yes]]]),
  1287                   , enable_video_wscons=yes)
  1288     if test x$enable_video = xyes -a x$enable_video_wscons = xyes; then
  1289         AC_MSG_CHECKING(for wscons support)
  1290         video_wscons=no
  1291         AC_TRY_COMPILE([
  1292          #include <sys/time.h>
  1293          #include <dev/wscons/wsconsio.h>
  1294          #include <dev/wscons/wsdisplay_usl_io.h>
  1295         ],[
  1296          int wsmode = WSDISPLAYIO_MODE_DUMBFB;
  1297         ],[
  1298         video_wscons=yes
  1299         ])
  1300         AC_MSG_RESULT($video_wscons)
  1301         if test x$video_wscons = xyes; then
  1302             AC_DEFINE(SDL_VIDEO_DRIVER_WSCONS)
  1303             SOURCES="$SOURCES $srcdir/src/video/wscons/*.c"
  1304             have_video=yes
  1305         fi
  1306     fi
  1307 }
  1308 
  1309 dnl Set up the Atari Bios keyboard driver
  1310 CheckAtariBiosEvent()
  1311 {
  1312     SOURCES="$SOURCES $srcdir/src/video/ataricommon/*.c"
  1313     SOURCES="$SOURCES $srcdir/src/video/ataricommon/*.S"
  1314 }
  1315 
  1316 dnl Set up the Atari Xbios driver
  1317 CheckAtariXbiosVideo()
  1318 {
  1319     AC_ARG_ENABLE(video-xbios,
  1320 AC_HELP_STRING([--enable-video-xbios], [use Atari Xbios video driver [[default=yes]]]),
  1321                   , enable_video_xbios=yes)
  1322     video_xbios=no
  1323     if test x$enable_video = xyes -a x$enable_video_xbios = xyes; then
  1324         video_xbios=yes
  1325         AC_DEFINE(SDL_VIDEO_DRIVER_XBIOS)
  1326         SOURCES="$SOURCES $srcdir/src/video/xbios/*.c"
  1327         have_video=yes
  1328     fi
  1329 }
  1330 
  1331 dnl Set up the Atari Gem driver
  1332 CheckAtariGemVideo()
  1333 {
  1334     AC_ARG_ENABLE(video-gem,
  1335 AC_HELP_STRING([--enable-video-gem], [use Atari Gem video driver [[default=yes]]]),
  1336                   , enable_video_gem=yes)
  1337     if test x$enable_video = xyes -a x$enable_video_gem = xyes; then
  1338         video_gem=no
  1339         AC_CHECK_HEADER(gem.h, have_gem_hdr=yes)
  1340         AC_CHECK_LIB(gem, appl_init, have_gem_lib=yes)
  1341         if test x$have_gem_hdr = xyes -a x$have_gem_lib = xyes; then
  1342             video_gem=yes
  1343             AC_DEFINE(SDL_VIDEO_DRIVER_GEM)
  1344             SOURCES="$SOURCES $srcdir/src/video/gem/*.c"
  1345             SDL_LIBS="$SDL_LIBS -lgem"
  1346             have_video=yes
  1347         fi
  1348     fi
  1349 }
  1350 
  1351 dnl rcg04172001 Set up the Null video driver.
  1352 CheckDummyVideo()
  1353 {
  1354     AC_ARG_ENABLE(video-dummy,
  1355 AC_HELP_STRING([--enable-video-dummy], [use dummy video driver [[default=yes]]]),
  1356                   , enable_video_dummy=yes)
  1357     if test x$enable_video_dummy = xyes; then
  1358         AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY)
  1359         SOURCES="$SOURCES $srcdir/src/video/dummy/*.c"
  1360         have_video=yes
  1361     fi
  1362 }
  1363 
  1364 dnl Check to see if OpenGL support is desired
  1365 AC_ARG_ENABLE(video-opengl,
  1366 AC_HELP_STRING([--enable-video-opengl], [include OpenGL support [[default=yes]]]),
  1367               , enable_video_opengl=yes)
  1368 
  1369 dnl Find OpenGL
  1370 CheckOpenGLX11()
  1371 {
  1372     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1373         AC_MSG_CHECKING(for OpenGL (GLX) support)
  1374         video_opengl=no
  1375         AC_TRY_COMPILE([
  1376          #include <GL/gl.h>
  1377          #include <GL/glx.h>
  1378          #include <GL/glu.h>
  1379         ],[
  1380         ],[
  1381         video_opengl=yes
  1382         ])
  1383         AC_MSG_RESULT($video_opengl)
  1384         if test x$video_opengl = xyes; then
  1385             AC_DEFINE(SDL_VIDEO_OPENGL)
  1386             AC_DEFINE(SDL_VIDEO_OPENGL_GLX)
  1387             AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1388         fi
  1389     fi
  1390 }
  1391 
  1392 dnl Find QNX RtP OpenGL
  1393 CheckOpenGLQNX()
  1394 {
  1395     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1396         AC_MSG_CHECKING(for OpenGL (Photon) support)
  1397         video_opengl=no
  1398         AC_TRY_COMPILE([
  1399          #include <GL/gl.h>
  1400         ],[
  1401         ],[
  1402         video_opengl=yes
  1403         ])
  1404         AC_MSG_RESULT($video_opengl)
  1405         if test x$video_opengl = xyes; then
  1406             AC_DEFINE(SDL_VIDEO_OPENGL)
  1407             AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1408             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL"
  1409         fi
  1410     fi
  1411 }
  1412 
  1413 dnl Check for Win32 OpenGL
  1414 CheckWIN32GL()
  1415 {
  1416     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1417         AC_DEFINE(SDL_VIDEO_OPENGL)
  1418         AC_DEFINE(SDL_VIDEO_OPENGL_WGL)
  1419         AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1420     fi
  1421 }
  1422 
  1423 dnl Check for BeOS OpenGL
  1424 CheckBeGL()
  1425 {
  1426     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1427         AC_DEFINE(SDL_VIDEO_OPENGL)
  1428         AC_DEFINE(SDL_VIDEO_OPENGL_BGL)
  1429         AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1430         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL"
  1431     fi
  1432 }
  1433 
  1434 dnl Check for MacOS OpenGL
  1435 CheckMacGL()
  1436 {
  1437     if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then
  1438         AC_DEFINE(SDL_VIDEO_OPENGL)
  1439         AC_DEFINE(SDL_VIDEO_OPENGL_CGL)
  1440         AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1441         case "$host" in
  1442             *-*-darwin*)
  1443                 if test x$enable_video_cocoa = xyes; then
  1444                     EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGL"
  1445                 fi
  1446         esac
  1447     fi
  1448 }
  1449 
  1450 dnl Check for Mesa offscreen rendering
  1451 CheckAtariOSMesa()
  1452 {
  1453     if test "x$enable_video" = "xyes" -a "x$enable_video_opengl" = "xyes"; then
  1454         AC_CHECK_HEADER(GL/osmesa.h, have_osmesa_hdr=yes)
  1455         AC_CHECK_LIB(OSMesa, OSMesaCreateContext, have_osmesa_lib=yes, have_osmesa_lib=no, -lm)
  1456 
  1457         # Static linking to -lOSMesa
  1458         AC_PATH_PROG(OSMESA_CONFIG, osmesa-config, no)
  1459         if test "x$OSMESA_CONFIG" = "xno" -o "x$enable_atari_ldg" = "xno"; then
  1460             # -lOSMesa is really the static library
  1461             if test "x$have_osmesa_hdr" = "xyes" -a "x$have_osmesa_lib" = "xyes"; then
  1462                 OSMESA_LIBS="-lOSMesa"
  1463             fi
  1464         else
  1465             # -lOSMesa is a loader for OSMesa.ldg
  1466             OSMESA_CFLAGS=`$OSMESA_CONFIG --cflags`
  1467             OSMESA_LIBS=`$OSMESA_CONFIG --libs`
  1468         fi
  1469         AC_DEFINE(SDL_VIDEO_OPENGL)
  1470         AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA)
  1471         AC_DEFINE(SDL_VIDEO_RENDER_OGL)
  1472         SDL_CFLAGS="$SDL_CFLAGS $OSMESA_CFLAGS"
  1473         SDL_LIBS="$SDL_LIBS $OSMESA_LIBS"
  1474 
  1475         AC_ARG_ENABLE(osmesa-shared,
  1476 AC_HELP_STRING([--enable-osmesa-shared], [dynamically load OSMesa OpenGL support [[default=yes]]]),
  1477                               , enable_osmesa_shared=yes)
  1478         if test "x$enable_osmesa_shared" = "xyes" -a "x$enable_atari_ldg" = "xyes"; then
  1479             # Dynamic linking
  1480             if test "x$have_osmesa_hdr" = "xyes"; then
  1481                 AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA_DYNAMIC)
  1482             fi
  1483         fi
  1484     fi
  1485 }
  1486 
  1487 dnl See if we can use the new unified event interface in Linux 2.4
  1488 CheckInputEvents()
  1489 {
  1490     dnl Check for Linux 2.4 unified input event interface support
  1491     AC_ARG_ENABLE(input-events,
  1492 AC_HELP_STRING([--enable-input-events], [use Linux 2.4 unified input interface [[default=yes]]]),
  1493                   , enable_input_events=yes)
  1494     if test x$enable_input_events = xyes; then
  1495         AC_MSG_CHECKING(for Linux 2.4 unified input interface)
  1496         use_input_events=no
  1497         AC_TRY_COMPILE([
  1498           #include <linux/input.h>
  1499         ],[
  1500           #ifndef EVIOCGNAME
  1501           #error EVIOCGNAME() ioctl not available
  1502           #endif
  1503         ],[
  1504         use_input_events=yes
  1505         ])
  1506         AC_MSG_RESULT($use_input_events)
  1507         if test x$use_input_events = xyes; then
  1508             AC_DEFINE(SDL_INPUT_LINUXEV)
  1509         fi
  1510     fi
  1511 }
  1512 
  1513 dnl See if we can use the Touchscreen input library
  1514 CheckTslib()
  1515 {
  1516     AC_ARG_ENABLE(input-tslib,
  1517 AC_HELP_STRING([--enable-input-tslib], [use the Touchscreen library for input [[default=yes]]]),
  1518                   , enable_input_tslib=yes)
  1519     if test x$enable_input_tslib = xyes; then
  1520         AC_MSG_CHECKING(for Touchscreen library support)
  1521         enable_input_tslib=no
  1522         AC_TRY_COMPILE([
  1523           #include "tslib.h"
  1524         ],[
  1525         ],[
  1526         enable_input_tslib=yes
  1527         ])
  1528         AC_MSG_RESULT($enable_input_tslib)
  1529         if test x$enable_input_tslib = xyes; then
  1530             AC_DEFINE(SDL_INPUT_TSLIB)
  1531             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lts"
  1532         fi
  1533     fi
  1534 }
  1535 
  1536 dnl See if we can use GNU pth library for threads
  1537 CheckPTH()
  1538 {
  1539     dnl Check for pth support
  1540     AC_ARG_ENABLE(pth,
  1541 AC_HELP_STRING([--enable-pth], [use GNU pth library for multi-threading [[default=yes]]]),
  1542                   , enable_pth=yes)
  1543     if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  1544         AC_PATH_PROG(PTH_CONFIG, pth-config, no)
  1545         if test "$PTH_CONFIG" = "no"; then
  1546             use_pth=no
  1547         else
  1548             use_pth=yes
  1549         fi
  1550         AC_MSG_CHECKING(pth)
  1551         AC_MSG_RESULT($use_pth)
  1552         if test "x$use_pth" = xyes; then
  1553             AC_DEFINE(SDL_THREAD_PTH)
  1554             SOURCES="$SOURCES $srcdir/src/thread/pth/*.c"
  1555             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syssem.c"
  1556             SDL_CFLAGS="$SDL_CFLAGS `$PTH_CONFIG --cflags`"
  1557             SDL_LIBS="$SDL_LIBS `$PTH_CONFIG --libs --all`"
  1558             have_threads=yes
  1559         fi
  1560     fi
  1561 }
  1562 
  1563 dnl See what type of thread model to use on Linux and Solaris
  1564 CheckPTHREAD()
  1565 {
  1566     dnl Check for pthread support
  1567     AC_ARG_ENABLE(pthreads,
  1568 AC_HELP_STRING([--enable-pthreads], [use POSIX threads for multi-threading [[default=yes]]]),
  1569                   , enable_pthreads=yes)
  1570     dnl This is used on Linux for glibc binary compatibility (Doh!)
  1571     AC_ARG_ENABLE(pthread-sem,
  1572 AC_HELP_STRING([--enable-pthread-sem], [use pthread semaphores [[default=yes]]]),
  1573                   , enable_pthread_sem=yes)
  1574     case "$host" in
  1575         *-*-linux*|*-*-uclinux*)
  1576             pthread_cflags="-D_REENTRANT"
  1577             pthread_lib="-lpthread"
  1578             ;;
  1579         *-*-bsdi*)
  1580             pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1581             pthread_lib=""
  1582             ;;
  1583         *-*-darwin*)
  1584             pthread_cflags="-D_THREAD_SAFE"
  1585 # causes Carbon.p complaints?
  1586 #            pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1587             ;;
  1588         *-*-freebsd*|*-*-dragonfly*)
  1589             pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1590             pthread_lib="-pthread"
  1591             ;;
  1592         *-*-netbsd*)
  1593             pthread_cflags="-D_REENTRANT -D_THREAD_SAFE"
  1594             pthread_lib="-lpthread"
  1595             ;;
  1596         *-*-openbsd*)
  1597             pthread_cflags="-D_REENTRANT"
  1598             pthread_lib="-pthread"
  1599             ;;
  1600         *-*-solaris*)
  1601             pthread_cflags="-D_REENTRANT"
  1602             pthread_lib="-lpthread -lposix4"
  1603             ;;
  1604         *-*-sysv5*)
  1605             pthread_cflags="-D_REENTRANT -Kthread"
  1606             pthread_lib=""
  1607             ;;
  1608         *-*-irix*)
  1609             pthread_cflags="-D_SGI_MP_SOURCE"
  1610             pthread_lib="-lpthread"
  1611             ;;
  1612         *-*-aix*)
  1613             pthread_cflags="-D_REENTRANT -mthreads"
  1614             pthread_lib="-lpthread"
  1615             ;;
  1616         *-*-hpux11*)
  1617             pthread_cflags="-D_REENTRANT"
  1618             pthread_lib="-L/usr/lib -lpthread"
  1619             ;;
  1620         *-*-qnx*)
  1621             pthread_cflags=""
  1622             pthread_lib=""
  1623             ;;
  1624         *-*-osf*)
  1625             pthread_cflags="-D_REENTRANT"
  1626             if test x$ac_cv_prog_gcc = xyes; then
  1627                 pthread_lib="-lpthread -lrt"
  1628             else
  1629                 pthread_lib="-lpthread -lexc -lrt"
  1630             fi
  1631             ;;
  1632         *)
  1633             pthread_cflags="-D_REENTRANT"
  1634             pthread_lib="-lpthread"
  1635             ;;
  1636     esac
  1637     if test x$enable_threads = xyes -a x$enable_pthreads = xyes -a x$enable_ipod != xyes; then
  1638         # Save the original compiler flags and libraries
  1639         ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
  1640         # Add the pthread compiler flags and libraries
  1641         CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
  1642         # Check to see if we have pthread support on this system
  1643         AC_MSG_CHECKING(for pthreads)
  1644         use_pthreads=no
  1645         AC_TRY_LINK([
  1646          #include <pthread.h>
  1647         ],[
  1648          pthread_attr_t type;
  1649          pthread_attr_init(&type);
  1650         ],[
  1651         use_pthreads=yes
  1652         ])
  1653         AC_MSG_RESULT($use_pthreads)
  1654         # Restore the compiler flags and libraries
  1655         CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
  1656 
  1657         # Do futher testing if we have pthread support...
  1658         if test x$use_pthreads = xyes; then
  1659             AC_DEFINE(SDL_THREAD_PTHREAD)
  1660             EXTRA_CFLAGS="$EXTRA_CFLAGS $pthread_cflags"
  1661             EXTRA_LDFLAGS="$EXTRA_LDFLAGS $pthread_lib"
  1662             SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags"
  1663             SDL_LIBS="$SDL_LIBS $pthread_lib"
  1664 
  1665             # Save the original compiler flags and libraries
  1666             ac_save_cflags="$CFLAGS"; ac_save_libs="$LIBS"
  1667             # Add the pthread compiler flags and libraries
  1668             CFLAGS="$CFLAGS $pthread_cflags"; LIBS="$LIBS $pthread_lib"
  1669 
  1670             # Check to see if recursive mutexes are available
  1671             AC_MSG_CHECKING(for recursive mutexes)
  1672             has_recursive_mutexes=no
  1673             if test x$has_recursive_mutexes = xno; then
  1674                 AC_TRY_COMPILE([
  1675                   #include <pthread.h>
  1676                 ],[
  1677                   pthread_mutexattr_t attr;
  1678                   pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
  1679                 ],[
  1680                 has_recursive_mutexes=yes
  1681                 AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX)
  1682                 ])
  1683             fi
  1684             if test x$has_recursive_mutexes = xno; then
  1685                 AC_TRY_COMPILE([
  1686                   #include <pthread.h>
  1687                 ],[
  1688                   pthread_mutexattr_t attr;
  1689                   pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
  1690                 ],[
  1691                 has_recursive_mutexes=yes
  1692                 AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP)
  1693                 ])
  1694             fi
  1695             AC_MSG_RESULT($has_recursive_mutexes)
  1696 
  1697             # Check to see if pthread semaphore support is missing
  1698             if test x$enable_pthread_sem = xyes; then
  1699                 AC_MSG_CHECKING(for pthread semaphores)
  1700                 have_pthread_sem=no
  1701                 AC_TRY_COMPILE([
  1702                   #include <pthread.h>
  1703                   #include <semaphore.h>
  1704                 ],[
  1705                 ],[
  1706                 have_pthread_sem=yes
  1707                 ])
  1708                 AC_MSG_RESULT($have_pthread_sem)
  1709             fi
  1710 
  1711             # Restore the compiler flags and libraries
  1712             CFLAGS="$ac_save_cflags"; LIBS="$ac_save_libs"
  1713 
  1714             # Basic thread creation functions
  1715             SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_systhread.c"
  1716 
  1717             # Semaphores
  1718             # We can fake these with mutexes and condition variables if necessary
  1719             if test x$have_pthread_sem = xyes; then
  1720                 SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_syssem.c"
  1721             else
  1722                 SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syssem.c"
  1723             fi
  1724 
  1725             # Mutexes
  1726             # We can fake these with semaphores if necessary
  1727             SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_sysmutex.c"
  1728 
  1729             # Condition variables
  1730             # We can fake these with semaphores and mutexes if necessary
  1731             SOURCES="$SOURCES $srcdir/src/thread/pthread/SDL_syscond.c"
  1732 
  1733             have_threads=yes
  1734         else
  1735             CheckPTH
  1736         fi
  1737     fi
  1738 }
  1739 
  1740 dnl Determine whether the compiler can produce Win32 executables
  1741 CheckWIN32()
  1742 {
  1743     AC_MSG_CHECKING(Win32 compiler)
  1744     have_win32_gcc=no
  1745     AC_TRY_COMPILE([
  1746      #include <windows.h>
  1747     ],[
  1748     ],[
  1749     have_win32_gcc=yes
  1750     ])
  1751     AC_MSG_RESULT($have_win32_gcc)
  1752     if test x$have_win32_gcc != xyes; then
  1753        AC_MSG_ERROR([
  1754 *** Your compiler ($CC) does not produce Win32 executables!
  1755        ])
  1756     fi
  1757 
  1758     dnl See if the user wants to redirect standard output to files
  1759     AC_ARG_ENABLE(stdio-redirect,
  1760 AC_HELP_STRING([--enable-stdio-redirect], [Redirect STDIO to files on Win32 [[default=yes]]]),
  1761                   , enable_stdio_redirect=yes)
  1762     if test x$enable_stdio_redirect != xyes; then
  1763         EXTRA_CFLAGS="$EXTRA_CFLAGS -DNO_STDIO_REDIRECT"
  1764     fi
  1765 }
  1766 
  1767 dnl Find the DirectX includes and libraries
  1768 CheckDIRECTX()
  1769 {
  1770     AC_ARG_ENABLE(directx,
  1771 AC_HELP_STRING([--enable-directx], [use DirectX for Win32 audio/video [[default=yes]]]),
  1772                   , enable_directx=yes)
  1773     if test x$enable_directx = xyes; then
  1774         AC_CHECK_HEADER(d3d9.h, have_d3d=yes)
  1775         AC_CHECK_HEADER(dsound.h, have_dsound=yes)
  1776         AC_CHECK_HEADER(dinput.h, use_dinput=yes)
  1777     fi
  1778 }
  1779 
  1780 dnl Check for the dlfcn.h interface for dynamically loading objects
  1781 CheckDLOPEN()
  1782 {
  1783     AC_ARG_ENABLE(sdl-dlopen,
  1784 AC_HELP_STRING([--enable-sdl-dlopen], [use dlopen for shared object loading [[default=yes]]]),
  1785                   , enable_sdl_dlopen=yes)
  1786     if test x$enable_sdl_dlopen = xyes; then
  1787         AC_MSG_CHECKING(for dlopen)
  1788         have_dlopen=no
  1789         AC_TRY_COMPILE([
  1790          #include <dlfcn.h>
  1791         ],[
  1792          #if defined(MAC_OS_X_VERSION_MIN_REQUIRED) && MAC_OS_X_VERSION_MIN_REQUIRED <= 1020
  1793          #error Use dlcompat for Mac OS X 10.2 compatibility
  1794          #endif
  1795         ],[
  1796         have_dlopen=yes
  1797         ])
  1798         AC_MSG_RESULT($have_dlopen)
  1799 
  1800         if test x$have_dlopen = xyes; then
  1801             AC_CHECK_LIB(c, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS",
  1802                AC_CHECK_LIB(dl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ldl",
  1803                   AC_CHECK_LIB(ltdl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lltdl")))
  1804             AC_CHECK_LIB(dl, dlvsym, have_dlvsym=yes)
  1805             if test x$have_dlvsym = xyes; then
  1806                 AC_DEFINE(HAVE_DLVSYM)
  1807             fi
  1808             AC_DEFINE(SDL_LOADSO_DLOPEN)
  1809             SOURCES="$SOURCES $srcdir/src/loadso/dlopen/*.c"
  1810             have_loadso=yes
  1811         fi
  1812     fi
  1813 }
  1814 
  1815 dnl Set up the Atari LDG (shared object loader)
  1816 CheckAtariLdg()
  1817 {
  1818     AC_ARG_ENABLE(atari-ldg,
  1819 AC_HELP_STRING([--enable-atari-ldg], [use Atari LDG for shared object loading [[default=yes]]]),
  1820                   , enable_atari_ldg=yes)
  1821     if test x$video_gem = xyes -a x$enable_atari_ldg = xyes; then
  1822         AC_CHECK_HEADER(ldg.h, have_ldg_hdr=yes)
  1823         AC_CHECK_LIB(ldg, ldg_open, have_ldg_lib=yes, have_ldg_lib=no, -lgem)
  1824         if test x$have_ldg_hdr = xyes -a x$have_ldg_lib = xyes; then
  1825             AC_DEFINE(SDL_LOADSO_LDG)
  1826             SOURCES="$SOURCES $srcdir/src/loadso/mint/*.c"
  1827             SDL_LIBS="$SDL_LIBS -lldg -lgem"
  1828             have_loadso=yes
  1829         fi
  1830     fi
  1831 }
  1832 
  1833 dnl Check for the usbhid(3) library on *BSD
  1834 CheckUSBHID()
  1835 {
  1836     if test x$enable_joystick = xyes; then
  1837         AC_CHECK_LIB(usbhid, hid_init, have_libusbhid=yes)
  1838         if test x$have_libusbhid = xyes; then
  1839             AC_CHECK_HEADER(usbhid.h, [USB_CFLAGS="-DHAVE_USBHID_H"])
  1840             AC_CHECK_HEADER(libusbhid.h, [USB_CFLAGS="-DHAVE_LIBUSBHID_H"])
  1841             USB_LIBS="$USB_LIBS -lusbhid"
  1842         else
  1843             AC_CHECK_HEADER(usb.h, [USB_CFLAGS="-DHAVE_USB_H"])
  1844             AC_CHECK_HEADER(libusb.h, [USB_CFLAGS="-DHAVE_LIBUSB_H"])
  1845             AC_CHECK_LIB(usb, hid_init, [USB_LIBS="$USB_LIBS -lusb"])
  1846         fi
  1847             
  1848         save_CFLAGS="$CFLAGS"
  1849         CFLAGS="$CFLAGS $USB_CFLAGS"
  1850 
  1851         AC_MSG_CHECKING(for usbhid)
  1852         have_usbhid=no
  1853         AC_TRY_COMPILE([
  1854           #include <sys/types.h>
  1855           #if defined(HAVE_USB_H)
  1856           #include <usb.h>
  1857           #endif
  1858           #ifdef __DragonFly__
  1859           # include <bus/usb/usb.h>
  1860           # include <bus/usb/usbhid.h>
  1861           #else
  1862           # include <dev/usb/usb.h>
  1863           # include <dev/usb/usbhid.h>
  1864           #endif
  1865           #if defined(HAVE_USBHID_H)
  1866           #include <usbhid.h>
  1867           #elif defined(HAVE_LIBUSB_H)
  1868           #include <libusb.h>
  1869           #elif defined(HAVE_LIBUSBHID_H)
  1870           #include <libusbhid.h>
  1871           #endif
  1872         ],[
  1873           struct report_desc *repdesc;
  1874           struct usb_ctl_report *repbuf;
  1875           hid_kind_t hidkind;
  1876         ],[
  1877         have_usbhid=yes
  1878         ])
  1879         AC_MSG_RESULT($have_usbhid)
  1880 
  1881         if test x$have_usbhid = xyes; then
  1882             AC_MSG_CHECKING(for ucr_data member of usb_ctl_report)
  1883             have_usbhid_ucr_data=no
  1884             AC_TRY_COMPILE([
  1885               #include <sys/types.h>
  1886               #if defined(HAVE_USB_H)
  1887               #include <usb.h>
  1888               #endif
  1889               #ifdef __DragonFly__
  1890               # include <bus/usb/usb.h>
  1891               # include <bus/usb/usbhid.h>
  1892               #else
  1893               # include <dev/usb/usb.h>
  1894               # include <dev/usb/usbhid.h>
  1895               #endif
  1896               #if defined(HAVE_USBHID_H)
  1897               #include <usbhid.h>
  1898               #elif defined(HAVE_LIBUSB_H)
  1899               #include <libusb.h>
  1900               #elif defined(HAVE_LIBUSBHID_H)
  1901               #include <libusbhid.h>
  1902               #endif
  1903             ],[
  1904               struct usb_ctl_report buf;
  1905               if (buf.ucr_data) { }
  1906             ],[
  1907             have_usbhid_ucr_data=yes
  1908             ])
  1909             if test x$have_usbhid_ucr_data = xyes; then
  1910                 USB_CFLAGS="$USB_CFLAGS -DUSBHID_UCR_DATA"
  1911             fi
  1912             AC_MSG_RESULT($have_usbhid_ucr_data)
  1913             
  1914             AC_MSG_CHECKING(for new usbhid API)
  1915             have_usbhid_new=no
  1916             AC_TRY_COMPILE([
  1917               #include <sys/types.h>
  1918               #if defined(HAVE_USB_H)
  1919               #include <usb.h>
  1920               #endif
  1921 	      #ifdef __DragonFly__
  1922               #include <bus/usb/usb.h>
  1923               #include <bus/usb/usbhid.h>
  1924 	      #else
  1925               #include <dev/usb/usb.h>
  1926               #include <dev/usb/usbhid.h>
  1927 	      #endif
  1928               #if defined(HAVE_USBHID_H)
  1929               #include <usbhid.h>
  1930               #elif defined(HAVE_LIBUSB_H)
  1931               #include <libusb.h>
  1932               #elif defined(HAVE_LIBUSBHID_H)
  1933               #include <libusbhid.h>
  1934               #endif
  1935             ],[
  1936               report_desc_t d;
  1937               hid_start_parse(d, 1, 1);
  1938             ],[
  1939             have_usbhid_new=yes
  1940             ])
  1941             if test x$have_usbhid_new = xyes; then
  1942                 USB_CFLAGS="$USB_CFLAGS -DUSBHID_NEW"
  1943             fi
  1944             AC_MSG_RESULT($have_usbhid_new)
  1945 
  1946             AC_MSG_CHECKING(for struct joystick in machine/joystick.h)
  1947             have_machine_joystick=no
  1948             AC_TRY_COMPILE([
  1949               #include <machine/joystick.h>
  1950             ],[
  1951               struct joystick t;
  1952             ],[
  1953             have_machine_joystick=yes
  1954             ])
  1955             if test x$have_machine_joystick = xyes; then
  1956                 AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H)
  1957             fi
  1958             AC_MSG_RESULT($have_machine_joystick)
  1959 
  1960             AC_DEFINE(SDL_JOYSTICK_USBHID)
  1961             SOURCES="$SOURCES $srcdir/src/joystick/bsd/*.c"
  1962             EXTRA_CFLAGS="$EXTRA_CFLAGS $USB_CFLAGS"
  1963             EXTRA_LDFLAGS="$EXTRA_LDFLAGS $USB_LIBS"
  1964             have_joystick=yes
  1965         fi
  1966         CFLAGS="$save_CFLAGS"
  1967     fi
  1968 }
  1969 
  1970 dnl Check for clock_gettime()
  1971 CheckClockGettime()
  1972 {
  1973     AC_ARG_ENABLE(clock_gettime,
  1974 AC_HELP_STRING([--enable-clock_gettime], [use clock_gettime() instead of gettimeofday() on UNIX [[default=no]]]),
  1975                   , enable_clock_gettime=no)
  1976     if test x$enable_clock_gettime = xyes; then
  1977         AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes)
  1978         if test x$have_clock_gettime = xyes; then
  1979             AC_DEFINE(HAVE_CLOCK_GETTIME)
  1980             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt"
  1981         fi
  1982     fi
  1983 }
  1984 
  1985 dnl Check for a valid linux/version.h
  1986 CheckLinuxVersion()
  1987 {
  1988     AC_CHECK_HEADER(linux/version.h, have_linux_version_h=yes)
  1989     if test x$have_linux_version_h = xyes; then
  1990         EXTRA_CFLAGS="$EXTRA_CFLAGS -DHAVE_LINUX_VERSION_H"
  1991     fi
  1992 }
  1993 
  1994 dnl Check if we want to use RPATH
  1995 CheckRPATH()
  1996 {
  1997     AC_ARG_ENABLE(rpath,
  1998 AC_HELP_STRING([--enable-rpath], [use an rpath when linking SDL [[default=yes]]]),
  1999                   , enable_rpath=yes)
  2000 }
  2001 
  2002 dnl Set up the configuration based on the host platform!
  2003 case "$host" in
  2004     arm-*-elf*) # FIXME: Can we get more specific for iPodLinux?
  2005         ARCH=linux
  2006         CheckDummyVideo
  2007         CheckIPod
  2008         # Set up files for the timer library
  2009         if test x$enable_timers = xyes; then
  2010             AC_DEFINE(SDL_TIMER_UNIX)
  2011             SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
  2012             have_timers=yes
  2013         fi
  2014         ;;
  2015     *-*-linux*|*-*-uclinux*|*-*-gnu*|*-*-k*bsd*-gnu|*-*-bsdi*|*-*-freebsd*|*-*-dragonfly*|*-*-netbsd*|*-*-openbsd*|*-*-sysv5*|*-*-solaris*|*-*-hpux*|*-*-irix*|*-*-aix*|*-*-osf*)
  2016         case "$host" in
  2017             *-*-linux*)         ARCH=linux ;;
  2018             *-*-uclinux*)       ARCH=linux ;;
  2019             *-*-kfreebsd*-gnu)  ARCH=kfreebsd-gnu ;;
  2020             *-*-knetbsd*-gnu)   ARCH=knetbsd-gnu ;;
  2021             *-*-kopenbsd*-gnu)  ARCH=kopenbsd-gnu ;;
  2022             *-*-gnu*)           ARCH=gnu ;; # must be last of the gnu variants
  2023             *-*-bsdi*)          ARCH=bsdi ;;
  2024             *-*-freebsd*)       ARCH=freebsd ;;
  2025             *-*-dragonfly*)     ARCH=freebsd ;;
  2026             *-*-netbsd*)        ARCH=netbsd ;;
  2027             *-*-openbsd*)       ARCH=openbsd ;;
  2028             *-*-sysv5*)         ARCH=sysv5 ;;
  2029             *-*-solaris*)       ARCH=solaris ;;
  2030             *-*-hpux*)          ARCH=hpux ;;
  2031             *-*-irix*)          ARCH=irix ;;
  2032             *-*-aix*)           ARCH=aix ;;
  2033             *-*-osf*)           ARCH=osf ;;
  2034         esac
  2035         CheckVisibilityHidden
  2036         CheckDummyVideo
  2037         CheckDiskAudio
  2038         CheckDummyAudio
  2039         CheckDLOPEN
  2040         CheckNASM
  2041         CheckAltivec
  2042         CheckOSS
  2043         CheckDMEDIA
  2044         CheckMME
  2045         CheckALSA
  2046         CheckARTSC
  2047         CheckESD
  2048         CheckNAS
  2049         CheckX11
  2050         CheckNANOX
  2051         CheckFBCON
  2052         CheckDirectFB
  2053         CheckPS2GS
  2054         CheckSVGA
  2055         CheckVGL
  2056         CheckWscons
  2057         CheckOpenGLX11
  2058         CheckInputEvents
  2059         CheckTslib
  2060         CheckUSBHID
  2061         CheckPTHREAD
  2062         CheckClockGettime
  2063         CheckLinuxVersion
  2064         CheckRPATH
  2065         # Set up files for the audio library
  2066         if test x$enable_audio = xyes; then
  2067           case $ARCH in
  2068             sysv5|solaris|hpux)
  2069                 AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO)
  2070                 SOURCES="$SOURCES $srcdir/src/audio/sun/*.c"
  2071                 have_audio=yes
  2072             ;;
  2073             netbsd|openbsd)
  2074                 AC_DEFINE(SDL_AUDIO_DRIVER_BSD)
  2075                 SOURCES="$SOURCES $srcdir/src/audio/bsd/*.c"
  2076                 have_audio=yes
  2077             ;;
  2078             aix)
  2079                 AC_DEFINE(SDL_AUDIO_DRIVER_PAUDIO)
  2080                 SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c"
  2081                 have_audio=yes
  2082             ;;
  2083           esac
  2084         fi
  2085         # Set up files for the joystick library
  2086         if test x$enable_joystick = xyes; then
  2087           case $ARCH in
  2088             linux)
  2089                 AC_DEFINE(SDL_JOYSTICK_LINUX)
  2090                 SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
  2091                 have_joystick=yes
  2092             ;;
  2093           esac
  2094         fi
  2095         # Set up files for the cdrom library
  2096         if test x$enable_cdrom = xyes; then
  2097           case $ARCH in
  2098             linux|solaris)
  2099                 AC_DEFINE(SDL_CDROM_LINUX)
  2100                 SOURCES="$SOURCES $srcdir/src/cdrom/linux/*.c"
  2101                 have_cdrom=yes
  2102             ;;
  2103             *freebsd*)
  2104                 AC_DEFINE(SDL_CDROM_FREEBSD)
  2105                 SOURCES="$SOURCES $srcdir/src/cdrom/freebsd/*.c"
  2106                 have_cdrom=yes
  2107             ;;
  2108             *openbsd*|*netbsd*)
  2109                 AC_DEFINE(SDL_CDROM_OPENBSD)
  2110                 SOURCES="$SOURCES $srcdir/src/cdrom/openbsd/*.c"
  2111                 have_cdrom=yes
  2112             ;;
  2113             bsdi)
  2114                 AC_DEFINE(SDL_CDROM_BSDI)
  2115                 SOURCES="$SOURCES $srcdir/src/cdrom/bsdi/*.c"
  2116                 have_cdrom=yes
  2117             ;;
  2118             aix)
  2119                 AC_DEFINE(SDL_CDROM_AIX)
  2120                 SOURCES="$SOURCES $srcdir/src/cdrom/aix/*.c"
  2121                 have_cdrom=yes
  2122             ;;
  2123             osf)
  2124                 AC_DEFINE(SDL_CDROM_OSF)
  2125                 SOURCES="$SOURCES $srcdir/src/cdrom/osf/*.c"
  2126                 have_cdrom=yes
  2127             ;;
  2128           esac
  2129         fi
  2130         # Set up files for the thread library
  2131         if test x$enable_threads = xyes -a x$use_pthreads != xyes -a x$use_pth != xyes -a x$ARCH = xirix; then
  2132             AC_DEFINE(SDL_THREAD_SPROC)
  2133             SOURCES="$SOURCES $srcdir/src/thread/irix/*.c"
  2134             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c"
  2135             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c"
  2136             have_threads=yes
  2137         fi
  2138         # Set up files for the timer library
  2139         if test x$enable_timers = xyes; then
  2140             AC_DEFINE(SDL_TIMER_UNIX)
  2141             SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
  2142             have_timers=yes
  2143         fi
  2144         ;;
  2145     *-*-qnx*)
  2146         ARCH=qnx
  2147         CheckDummyVideo
  2148         CheckDiskAudio
  2149         CheckDummyAudio
  2150         # CheckNASM
  2151         CheckDLOPEN
  2152         CheckNAS
  2153         CheckPHOTON
  2154         CheckX11
  2155         CheckOpenGLX11
  2156         CheckPTHREAD
  2157         # Set up files for the audio library
  2158         if test x$enable_audio = xyes; then
  2159             AC_DEFINE(SDL_AUDIO_DRIVER_QNXNTO)
  2160             SOURCES="$SOURCES $srcdir/src/audio/nto/*.c"
  2161             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound"
  2162             have_audio=yes
  2163         fi
  2164         # Set up files for the cdrom library
  2165         if test x$enable_cdrom = xyes; then
  2166             AC_DEFINE(SDL_CDROM_QNX)
  2167             SOURCES="$SOURCES $srcdir/src/cdrom/qnx/*.c"
  2168             have_cdrom=yes
  2169         fi
  2170         # Set up files for the timer library
  2171         if test x$enable_timers = xyes; then
  2172             AC_DEFINE(SDL_TIMER_UNIX)
  2173             SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
  2174             have_timers=yes
  2175         fi
  2176         ;;
  2177     *-*-cygwin* | *-*-mingw32*)
  2178         ARCH=win32
  2179         if test "$build" != "$host"; then # cross-compiling
  2180             # Default cross-compile location
  2181             ac_default_prefix=/usr/local/cross-tools/i386-mingw32
  2182         else
  2183             # Look for the location of the tools and install there
  2184             if test "$BUILD_PREFIX" != ""; then
  2185                 ac_default_prefix=$BUILD_PREFIX
  2186             fi
  2187         fi
  2188         CheckDummyVideo
  2189         CheckDiskAudio
  2190         CheckDummyAudio
  2191         CheckWIN32
  2192         CheckWIN32GL
  2193         CheckDIRECTX
  2194         CheckNASM
  2195         # Set up files for the video library
  2196         if test x$enable_video = xyes; then
  2197             AC_DEFINE(SDL_VIDEO_DRIVER_WIN32)
  2198             SOURCES="$SOURCES $srcdir/src/video/win32/*.c"
  2199             have_video=yes
  2200             AC_ARG_ENABLE(render-gdi,
  2201 AC_HELP_STRING([--enable-render-gdi], [enable the GDI render driver [[default=yes]]]),
  2202                                 , enable_render_gdi=yes)
  2203             if test x$enable_render_gdi = xyes; then
  2204                 AC_DEFINE(SDL_VIDEO_RENDER_GDI)
  2205             fi
  2206             AC_ARG_ENABLE(render-d3d,
  2207 AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[default=yes]]]),
  2208                                 , enable_render_d3d=yes)
  2209             if test x$enable_render_d3d = xyes -a x$have_d3d = xyes; then
  2210                 AC_DEFINE(SDL_VIDEO_RENDER_D3D)
  2211             fi
  2212         fi
  2213         # Set up files for the audio library
  2214         if test x$enable_audio = xyes; then
  2215             AC_DEFINE(SDL_AUDIO_DRIVER_WINWAVEOUT)
  2216             SOURCES="$SOURCES $srcdir/src/audio/windib/*.c"
  2217             if test x$have_dsound = xyes; then
  2218                 AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND)
  2219                 SOURCES="$SOURCES $srcdir/src/audio/windx5/*.c"
  2220             fi
  2221             have_audio=yes
  2222         fi
  2223         # Set up files for the joystick library
  2224         if test x$enable_joystick = xyes; then
  2225             if test x$have_dinput = xyes; then
  2226                 AC_DEFINE(SDL_JOYSTICK_DINPUT)
  2227                 SOURCES="$SOURCES $srcdir/src/joystick/win32/SDL_dxjoystick.c"
  2228             else
  2229                 AC_DEFINE(SDL_JOYSTICK_WINMM)
  2230                 SOURCES="$SOURCES $srcdir/src/joystick/win32/SDL_mmjoystick.c"
  2231             fi
  2232             have_joystick=yes
  2233         fi
  2234         # Set up files for the cdrom library
  2235         if test x$enable_cdrom = xyes; then
  2236             AC_DEFINE(SDL_CDROM_WIN32)
  2237             SOURCES="$SOURCES $srcdir/src/cdrom/win32/*.c"
  2238             have_cdrom=yes
  2239         fi
  2240         # Set up files for the thread library
  2241         if test x$enable_threads = xyes; then
  2242             AC_DEFINE(SDL_THREAD_WIN32)
  2243             SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_sysmutex.c"
  2244             SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_syssem.c"
  2245             SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_systhread.c"
  2246             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c"
  2247             have_threads=yes
  2248         fi
  2249         # Set up files for the timer library
  2250         if test x$enable_timers = xyes; then
  2251             AC_DEFINE(SDL_TIMER_WIN32)
  2252             SOURCES="$SOURCES $srcdir/src/timer/win32/*.c"
  2253             have_timers=yes
  2254         fi
  2255         # Set up files for the shared object loading library
  2256         if test x$enable_loadso = xyes; then
  2257             AC_DEFINE(SDL_LOADSO_WIN32)
  2258             SOURCES="$SOURCES $srcdir/src/loadso/win32/*.c"
  2259             have_loadso=yes
  2260         fi
  2261         # Set up the system libraries we need
  2262         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lunicows -luser32 -lgdi32 -lmsimg32 -lwinmm"
  2263         # The Win32 platform requires special setup
  2264         SDLMAIN_SOURCES="$srcdir/src/main/win32/*.c"
  2265         SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
  2266         SDL_LIBS="-lmingw32 -lSDLmain $SDL_LIBS -mwindows"
  2267         ;;
  2268     *-*-beos*)
  2269         ARCH=beos
  2270         ac_default_prefix=/boot/develop/tools/gnupro
  2271         CheckDummyVideo
  2272         CheckDiskAudio
  2273         CheckDummyAudio
  2274         CheckNASM
  2275         CheckBWINDOW
  2276         CheckBeGL
  2277         # Set up files for the audio library
  2278         if test x$enable_audio = xyes; then
  2279             AC_DEFINE(SDL_AUDIO_DRIVER_BEOSAUDIO)
  2280             SOURCES="$SOURCES $srcdir/src/audio/baudio/*.cc"
  2281             have_audio=yes
  2282         fi
  2283         # Set up files for the joystick library
  2284         if test x$enable_joystick = xyes; then
  2285             AC_DEFINE(SDL_JOYSTICK_BEOS)
  2286             SOURCES="$SOURCES $srcdir/src/joystick/beos/*.cc"
  2287             have_joystick=yes
  2288         fi
  2289         # Set up files for the cdrom library
  2290         if test x$enable_cdrom = xyes; then
  2291             AC_DEFINE(SDL_CDROM_BEOS)
  2292             SOURCES="$SOURCES $srcdir/src/cdrom/beos/*.cc"
  2293             have_cdrom=yes
  2294         fi
  2295         # Set up files for the thread library
  2296         if test x$enable_threads = xyes; then
  2297             AC_DEFINE(SDL_THREAD_BEOS)
  2298             SOURCES="$SOURCES $srcdir/src/thread/beos/*.c"
  2299             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c"
  2300             SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c"
  2301             have_threads=yes
  2302         fi
  2303         # Set up files for the timer library
  2304         if test x$enable_timers = xyes; then
  2305             AC_DEFINE(SDL_TIMER_BEOS)
  2306             SOURCES="$SOURCES $srcdir/src/timer/beos/*.c"
  2307             have_timers=yes
  2308         fi
  2309         # Set up files for the shared object loading library
  2310         if test x$enable_loadso = xyes; then
  2311             AC_DEFINE(SDL_LOADSO_BEOS)
  2312             SOURCES="$SOURCES $srcdir/src/loadso/beos/*.c"
  2313             have_loadso=yes
  2314         fi
  2315         # The BeOS platform requires special setup.
  2316         SOURCES="$srcdir/src/main/beos/*.cc $SOURCES"
  2317         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding"
  2318         ;;
  2319     *-*-darwin* )
  2320         # This could be either full "Mac OS X", or plain "Darwin" which is
  2321         # just the OS X kernel sans upper layers like Carbon and Cocoa.
  2322         # Next line is broken, and a few files below require Mac OS X (full)
  2323         ARCH=macosx
  2324 
  2325         # Mac OS X builds with both the Carbon and OSX APIs at the moment
  2326         EXTRA_CFLAGS="$EXTRA_CFLAGS -DTARGET_API_MAC_CARBON"
  2327         EXTRA_CFLAGS="$EXTRA_CFLAGS -DTARGET_API_MAC_OSX"
  2328 
  2329         # HACK: Reset EXTRA_LDFLAGS; the only thing it contains at this point
  2330         # is -lm which is not needed under Mac OS X. But for some reasons it
  2331         # also tends to contain spurious -L switches, which we don't want to
  2332         # use here or in sdl-config. Hence we reset it.
  2333         EXTRA_LDFLAGS=""
  2334 
  2335         CheckVisibilityHidden
  2336         CheckDummyVideo
  2337         CheckDiskAudio
  2338         CheckDummyAudio
  2339         CheckDLOPEN
  2340         CheckNASM
  2341 
  2342         # Set up files for the shared object loading library
  2343         # (this needs to be done before the dynamic X11 check)
  2344         if test x$enable_loadso = xyes -a x$have_dlopen != xyes; then
  2345             AC_DEFINE(SDL_LOADSO_DLCOMPAT)
  2346             SOURCES="$SOURCES $srcdir/src/loadso/macosx/*.c"
  2347             have_loadso=yes
  2348         fi
  2349 
  2350         CheckCOCOA
  2351         CheckX11
  2352         CheckMacGL
  2353         CheckOpenGLX11
  2354         CheckPTHREAD
  2355         CheckAltivec
  2356 
  2357         # Need this or things might misbuild on a G3.
  2358         EXTRA_CFLAGS="$EXTRA_CFLAGS -force_cpusubtype_ALL"
  2359 
  2360         # Set up files for the audio library
  2361         if test x$enable_audio = xyes; then
  2362             AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO)
  2363             SOURCES="$SOURCES $srcdir/src/audio/macosx/*.c"
  2364             AC_DEFINE(SDL_AUDIO_DRIVER_SNDMGR)
  2365             SOURCES="$SOURCES $srcdir/src/audio/macrom/*.c"
  2366             have_audio=yes
  2367         fi
  2368         # Set up files for the joystick library
  2369         if test x$enable_joystick = xyes; then
  2370             AC_DEFINE(SDL_JOYSTICK_IOKIT)
  2371             SOURCES="$SOURCES $srcdir/src/joystick/darwin/*.c"
  2372             have_joystick=yes
  2373         fi
  2374         # Set up files for the cdrom library
  2375         if test x$enable_cdrom = xyes; then
  2376             AC_DEFINE(SDL_CDROM_MACOSX)
  2377             SOURCES="$SOURCES $srcdir/src/cdrom/macosx/*.c"
  2378             have_cdrom=yes
  2379         fi
  2380         # Set up files for the timer library
  2381         if test x$enable_timers = xyes; then
  2382             AC_DEFINE(SDL_TIMER_UNIX)
  2383             SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
  2384             have_timers=yes
  2385         fi
  2386         # The Mac OS X platform requires special setup.
  2387         EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings"
  2388         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Cocoa"
  2389         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Carbon"
  2390         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit"
  2391         # If either the audio or CD driver is used, add the AudioUnit framework
  2392         if test x$enable_audio = xyes -o x$enable_cdrom = xyes; then
  2393             EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio -framework,AudioToolbox -Wl,-framework,AudioUnit"
  2394         fi
  2395         ;;
  2396     *-*-mint*)
  2397         ARCH=mint
  2398         CheckDummyVideo
  2399         CheckDiskAudio
  2400         CheckDummyAudio
  2401         CheckAtariBiosEvent
  2402         CheckAtariXbiosVideo
  2403         CheckAtariGemVideo
  2404         CheckAtariAudio
  2405         CheckAtariLdg
  2406         CheckAtariOSMesa
  2407         CheckPTH
  2408         # Set up files for the audio library
  2409         if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  2410             if test x$enable_audio = xyes; then
  2411                 AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO)
  2412                 SOURCES="$SOURCES $srcdir/src/audio/sun/*.c"
  2413                 have_audio=yes
  2414             fi
  2415         fi
  2416         # Set up files for the joystick library
  2417         if test x$enable_joystick = xyes; then
  2418             AC_DEFINE(SDL_JOYSTICK_MINT)
  2419             SOURCES="$SOURCES $srcdir/src/joystick/mint/*.c"
  2420             have_joystick=yes
  2421         fi
  2422         # Set up files for the cdrom library
  2423         if test x$enable_cdrom = xyes; then
  2424             AC_DEFINE(SDL_CDROM_MINT)
  2425             SOURCES="$SOURCES $srcdir/src/cdrom/mint/*.c"
  2426             have_cdrom=yes
  2427         fi
  2428         # Set up files for the timer library
  2429         if test x$enable_timers = xyes; then
  2430             if test x$enable_threads = xyes -a x$enable_pth = xyes; then
  2431                 AC_DEFINE(SDL_TIMER_UNIX)
  2432                 SOURCES="$SOURCES $srcdir/src/timer/unix/*.c"
  2433             else
  2434                 AC_DEFINE(SDL_TIMER_MINT)
  2435                 SOURCES="$SOURCES $srcdir/src/timer/mint/*.c"
  2436                 SOURCES="$SOURCES $srcdir/src/timer/mint/*.S"
  2437             fi
  2438             have_timers=yes
  2439         fi
  2440         ;;
  2441     *-riscos)
  2442         ARCH=riscos
  2443         CheckOSS
  2444         CheckPTHREAD
  2445         # Set up files for the video library
  2446         if test x$enable_video = xyes; then
  2447             AC_DEFINE(SDL_VIDEO_DRIVER_RISCOS)
  2448             SOURCES="$SOURCES $srcdir/src/video/riscos/*.c"
  2449             SOURCES="$SOURCES $srcdir/src/video/riscos/*.S"
  2450             have_video=yes
  2451         fi
  2452         # Set up files for the joystick library
  2453         if test x$enable_joystick = xyes; then
  2454             AC_DEFINE(SDL_JOYSTICK_RISCOS)
  2455             SOURCES="$SOURCES $srcdir/src/joystick/riscos/*.c"
  2456             have_joystick=yes
  2457         fi
  2458         # Set up files for the timer library
  2459         if test x$enable_timers = xyes; then
  2460             AC_DEFINE(SDL_TIMER_RISCOS)
  2461             SOURCES="$SOURCES $srcdir/src/timer/riscos/*.c"
  2462             have_timers=yes
  2463         fi
  2464         # The RISC OS platform requires special setup.
  2465         EXTRA_LDFLAGS="$EXTRA_LDFLAGS -ljpeg -ltiff -lpng -lz"
  2466         ;;
  2467     *)
  2468         AC_MSG_ERROR([
  2469 *** Unsupported host:  Please add to configure.in
  2470         ])
  2471         ;;
  2472 esac
  2473 
  2474 # Verify that we have all the platform specific files we need
  2475 
  2476 if test x$enable_joystick = xyes; then
  2477   if test x$have_joystick != xyes; then
  2478     # Wants joystick subsystem, but doesn't have a platform-specific backend...
  2479     SOURCES="$SOURCES $srcdir/src/joystick/dummy/*.c"
  2480   fi
  2481 fi
  2482 if test x$have_cdrom != xyes; then
  2483     if test x$enable_cdrom = xyes; then
  2484         AC_DEFINE(SDL_CDROM_DISABLED)
  2485     fi
  2486     SOURCES="$SOURCES $srcdir/src/cdrom/dummy/*.c"
  2487 fi
  2488 if test x$have_threads != xyes; then
  2489     if test x$enable_threads = xyes; then
  2490         AC_DEFINE(SDL_THREADS_DISABLED)
  2491     fi
  2492     SOURCES="$SOURCES $srcdir/src/thread/generic/*.c"
  2493 fi
  2494 if test x$have_timers != xyes; then
  2495     if test x$enable_timers = xyes; then
  2496         AC_DEFINE(SDL_TIMERS_DISABLED)
  2497     fi
  2498     SOURCES="$SOURCES $srcdir/src/timer/dummy/*.c"
  2499 fi
  2500 if test x$have_loadso != xyes; then
  2501     if test x$enable_loadso = xyes; then
  2502         AC_DEFINE(SDL_LOADSO_DISABLED)
  2503     fi
  2504     SOURCES="$SOURCES $srcdir/src/loadso/dummy/*.c"
  2505 fi
  2506 if test x$SDLMAIN_SOURCES = x; then
  2507     SDLMAIN_SOURCES="$srcdir/src/main/dummy/*.c"
  2508 fi
  2509 
  2510 OBJECTS=`echo $SOURCES | sed 's,[[^ ]]*/\([[^ ]]*\)\.asm,$(objects)/\1.lo,g'`
  2511 OBJECTS=`echo $OBJECTS | sed 's,[[^ ]]*/\([[^ ]]*\)\.cc,$(objects)/\1.lo,g'`
  2512 OBJECTS=`echo $OBJECTS | sed 's,[[^ ]]*/\([[^ ]]*\)\.m,$(objects)/\1.lo,g'`
  2513 OBJECTS=`echo $OBJECTS | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.lo,g'`
  2514 OBJECTS=`echo $OBJECTS | sed 's,[[^ ]]*/\([[^ ]]*\)\.S,$(objects)/\1.lo,g'`
  2515 
  2516 SDLMAIN_OBJECTS=`echo $SDLMAIN_SOURCES | sed 's,[[^ ]]*/\([[^ ]]*\)\.cc,$(objects)/\1.o,g'`
  2517 SDLMAIN_OBJECTS=`echo $SDLMAIN_OBJECTS | sed 's,[[^ ]]*/\([[^ ]]*\)\.c,$(objects)/\1.o,g'`
  2518 
  2519 # Set runtime shared library paths as needed
  2520 
  2521 if test "x$enable_rpath" = "xyes"; then
  2522   if test $ARCH = bsdi -o $ARCH = freebsd -o $ARCH = irix -o $ARCH = linux -o $ARCH = netbsd; then
  2523     SDL_RLD_FLAGS="-Wl,-rpath,\${libdir}"
  2524   fi
  2525   if test $ARCH = solaris; then
  2526     SDL_RLD_FLAGS="-R\${libdir}"
  2527   fi
  2528 else
  2529   SDL_RLD_FLAGS=""
  2530 fi
  2531 
  2532 case "$ARCH" in
  2533   macosx)
  2534     # Evil hack to allow static linking on Mac OS X
  2535     SDL_STATIC_LIBS="\${libdir}/libSDL.a $EXTRA_LDFLAGS"
  2536     ;;
  2537   *)
  2538     SDL_STATIC_LIBS="$SDL_LIBS"
  2539     ;;
  2540 esac
  2541 
  2542 dnl Expand the cflags and libraries needed by apps using SDL
  2543 AC_SUBST(SDL_CFLAGS)
  2544 AC_SUBST(SDL_LIBS)
  2545 AC_SUBST(SDL_STATIC_LIBS)
  2546 AC_SUBST(SDL_RLD_FLAGS)
  2547 if test x$enable_shared = xyes; then
  2548     ENABLE_SHARED_TRUE=
  2549     ENABLE_SHARED_FALSE="#"
  2550 else
  2551     ENABLE_SHARED_TRUE="#"
  2552     ENABLE_SHARED_FALSE=
  2553 fi
  2554 if test x$enable_static = xyes; then
  2555     ENABLE_STATIC_TRUE=
  2556     ENABLE_STATIC_FALSE="#"
  2557 else
  2558     ENABLE_STATIC_TRUE="#"
  2559     ENABLE_STATIC_FALSE=
  2560 fi
  2561 AC_SUBST(ENABLE_SHARED_TRUE)
  2562 AC_SUBST(ENABLE_SHARED_FALSE)
  2563 AC_SUBST(ENABLE_STATIC_TRUE)
  2564 AC_SUBST(ENABLE_STATIC_FALSE)
  2565 
  2566 dnl Expand the sources and objects needed to build the library
  2567 AC_SUBST(ac_aux_dir)
  2568 AC_SUBST(INCLUDE)
  2569 AC_SUBST(SOURCES)
  2570 AC_SUBST(OBJECTS)
  2571 AC_SUBST(SDLMAIN_SOURCES)
  2572 AC_SUBST(SDLMAIN_OBJECTS)
  2573 AC_SUBST(BUILD_CFLAGS)
  2574 AC_SUBST(EXTRA_CFLAGS)
  2575 AC_SUBST(BUILD_LDFLAGS)
  2576 AC_SUBST(EXTRA_LDFLAGS)
  2577 
  2578 AC_OUTPUT([
  2579     Makefile sdl-config SDL.spec SDL.qpg sdl.pc
  2580 ], [
  2581     : >build-deps
  2582     if test x"$MAKE" = x; then MAKE=make; fi; $MAKE depend
  2583 ])