Mercurial > sdl-ios-xcode
view configure.in @ 172:37e3ca9254c7
Date: Sat, 8 Sep 2001 04:42:23 +0200
From: Max Horn <max@quendi.de>
Subject: SDL/OSX: Joystick; Better key handling
I just finished implementing improved keyhandling for OS X (in fact
the code should be easily ported to the "normal" MacOS part of SDL, I
just had no chance yet). Works like this:
First init the mapping table statically like before. Them, it queries
the OS for the "official" key table, then iterates over all 127
scancode and gets the associates ascii code. It ignores everythng
below 32 (has to, as it would lead to many problems if we did not...
e.g. both ESC and NUM LOCk produce an ascii code 27 on my keyboard),
and all stuff above 127 is mapped to SDLK_WORLD_* simply in the order
it is encountered.
In addition, caps lock is now working, too.
The code work flawless for me, but since I only have one keyboard, I
may have not encountered some serious problem... but I am pretty
confident that it is better than the old code in most cases.
The joystick driver works fine for me, too. I think it can be added
to CVS already. It would simply be helpful if more people would test
it. Hm, I wonder if Maelstrom or GLTron has Joystick support? That
would be a wonderful test application :)
I also took the liberty of modifying some text files like BUGS,
README.CVS, README.MacOSX (which now contains the OS X docs I long
promised)
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Tue, 11 Sep 2001 19:00:18 +0000 |
parents | e92aa316c517 |
children | da9a97f693a8 |
line wrap: on
line source
dnl Process this file with autoconf to produce a configure script. AC_INIT(README) dnl Set various version strings - taken gratefully from the GTk sources # # Making releases: # Edit include/SDL/SDL_version.h and change the version, then: # SDL_MICRO_VERSION += 1; # SDL_INTERFACE_AGE += 1; # SDL_BINARY_AGE += 1; # if any functions have been added, set SDL_INTERFACE_AGE to 0. # if backwards compatibility has been broken, # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0. # SDL_MAJOR_VERSION=1 SDL_MINOR_VERSION=2 SDL_MICRO_VERSION=3 SDL_INTERFACE_AGE=3 SDL_BINARY_AGE=3 SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION AC_SUBST(SDL_MAJOR_VERSION) AC_SUBST(SDL_MINOR_VERSION) AC_SUBST(SDL_MICRO_VERSION) AC_SUBST(SDL_INTERFACE_AGE) AC_SUBST(SDL_BINARY_AGE) AC_SUBST(SDL_VERSION) # libtool versioning LT_RELEASE=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION LT_CURRENT=`expr $SDL_MICRO_VERSION - $SDL_INTERFACE_AGE` LT_REVISION=$SDL_INTERFACE_AGE LT_AGE=`expr $SDL_BINARY_AGE - $SDL_INTERFACE_AGE` AC_SUBST(LT_RELEASE) AC_SUBST(LT_CURRENT) AC_SUBST(LT_REVISION) AC_SUBST(LT_AGE) dnl Detect the canonical host and target build environment AC_CANONICAL_HOST AC_CANONICAL_TARGET dnl Setup for automake AM_INIT_AUTOMAKE(SDL, $SDL_VERSION) dnl Check for tools AC_LIBTOOL_WIN32_DLL AM_PROG_LIBTOOL AC_PROG_MAKE_SET AC_PROG_CC AC_C_INLINE AC_C_CONST case "$target" in *-*-beos*) AC_PROG_CXX ;; *-*-aix*) AC_PROG_CXX ;; # This is stupid, but necessary on some versions of Linux (joysticks) *-*-linux*) AC_PROG_CXX ;; esac AC_PROG_INSTALL AC_FUNC_ALLOCA dnl The alpha architecture needs special flags for binary portability case "$target" in alpha*-*-linux*) if test x$ac_cv_prog_gcc = xyes; then CFLAGS="$CFLAGS -mcpu=ev4 -Wa,-mall" fi ;; esac dnl Add compiler-specific optimization flags dnl See if the user wants aggressive optimizations of the code AC_ARG_ENABLE(debug, [ --enable-debug Disable aggressive optimizations [default=yes]], , enable_debug=yes) if test x$enable_debug != xyes; then if test x$ac_cv_prog_gcc = xyes; then CFLAGS="$CFLAGS -fexpensive-optimizations" # Ack! This breaks the MMX YV12 conversion on gcc 2.95.2 # CFLAGS="$CFLAGS -fomit-frame-pointer" fi case "$target" in i486-*-*) if test x$ac_cv_prog_gcc = xyes; then CFLAGS="$CFLAGS -march=486" fi ;; i?86-*-*) if test x$ac_cv_prog_gcc = xyes; then CFLAGS="$CFLAGS -march=pentium -mcpu=pentiumpro" fi ;; *-*-osf*) if test x$ac_cv_prog_gcc != xyes; then CFLAGS="-g3 -fast -arch host" fi ;; esac fi dnl Add verbose warnings by default, and allow ANSI compliance checking AC_ARG_ENABLE(strict-ansi, [ --enable-strict-ansi Enable strict ANSI compliance build [default=no]], , enable_strict_ansi=no) if test x$ac_cv_prog_gcc = xyes; then CFLAGS="$CFLAGS -Wall" if test x$enable_strict_ansi = xyes; then CFLAGS="$CFLAGS -ansi -pedantic -D_XOPEN_SOURCE" fi fi dnl Initialize the compiler and linker flags for SDL applications SDL_CFLAGS="" SDL_LIBS="-lSDL" dnl Add the math library for the new gamma correction support case "$target" in *-*-cygwin* | *-*-mingw32*) MATHLIB="" ;; *-*-beos*) MATHLIB="" ;; *-*-darwin*) MATHLIB="" ;; *) MATHLIB="-lm" ;; esac SYSTEM_LIBS="$SYSTEM_LIBS $MATHLIB" dnl Enable/disable various subsystems of the SDL library AC_ARG_ENABLE(audio, [ --enable-audio Enable the audio subsystem [default=yes]], , enable_audio=yes) if test x$enable_audio = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS audio" SDL_EXTRALIBS="$SDL_EXTRALIBS audio/libaudio.la" else CFLAGS="$CFLAGS -DDISABLE_AUDIO" fi AC_ARG_ENABLE(video, [ --enable-video Enable the video subsystem [default=yes]], , enable_video=yes) if test x$enable_video = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS video" SDL_EXTRALIBS="$SDL_EXTRALIBS video/libvideo.la" else CFLAGS="$CFLAGS -DDISABLE_VIDEO" fi AC_ARG_ENABLE(events, [ --enable-events Enable the events subsystem [default=yes]], , enable_events=yes) if test x$enable_video = xyes -a x$enable_events = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS events" SDL_EXTRALIBS="$SDL_EXTRALIBS events/libevents.la" else CFLAGS="$CFLAGS -DDISABLE_EVENTS" fi AC_ARG_ENABLE(joystick, [ --enable-joystick Enable the joystick subsystem [default=yes]], , enable_joystick=yes) if test x$enable_joystick = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS joystick" SDL_EXTRALIBS="$SDL_EXTRALIBS joystick/libjoystick.la" else CFLAGS="$CFLAGS -DDISABLE_JOYSTICK" fi AC_ARG_ENABLE(cdrom, [ --enable-cdrom Enable the cdrom subsystem [default=yes]], , enable_cdrom=yes) if test x$enable_cdrom = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS cdrom" SDL_EXTRALIBS="$SDL_EXTRALIBS cdrom/libcdrom.la" else CFLAGS="$CFLAGS -DDISABLE_CDROM" fi AC_ARG_ENABLE(threads, [ --enable-threads Enable the threading subsystem [default=yes]], , enable_threads=yes) SDL_EXTRADIRS="$SDL_EXTRADIRS thread" SDL_EXTRALIBS="$SDL_EXTRALIBS thread/libthread.la" if test x$enable_threads != xyes; then CFLAGS="$CFLAGS -DDISABLE_THREADS" COPY_ARCH_SRC(src/thread, generic, SDL_systhread.c) COPY_ARCH_SRC(src/thread, generic, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi AC_ARG_ENABLE(timers, [ --enable-timers Enable the timer subsystem [default=yes]], , enable_timers=yes) if test x$enable_timers = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS timer" SDL_EXTRALIBS="$SDL_EXTRALIBS timer/libtimer.la" else CFLAGS="$CFLAGS -DDISABLE_TIMERS" fi AC_ARG_ENABLE(endian, [ --enable-endian Enable the endian subsystem [default=yes]], , enable_endian=yes) if test x$enable_endian = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS endian" SDL_EXTRALIBS="$SDL_EXTRALIBS endian/libendian.la" else CFLAGS="$CFLAGS -DDISABLE_ENDIAN" fi AC_ARG_ENABLE(file, [ --enable-file Enable the file subsystem [default=yes]], , enable_file=yes) if test x$enable_file = xyes; then SDL_EXTRADIRS="$SDL_EXTRADIRS file" SDL_EXTRALIBS="$SDL_EXTRALIBS file/libfile.la" else CFLAGS="$CFLAGS -DDISABLE_FILE" fi dnl See if the OSS audio interface is supported CheckOSS() { AC_ARG_ENABLE(oss, [ --enable-oss support the OSS audio API [default=yes]], , enable_oss=yes) if test x$enable_audio = xyes -a x$enable_oss = xyes; then AC_MSG_CHECKING(for OSS audio support) have_oss=no if test x$have_oss != xyes; then AC_TRY_COMPILE([ #include <sys/soundcard.h> ],[ int arg = SNDCTL_DSP_SETFRAGMENT; ],[ have_oss=yes ]) fi if test x$have_oss != xyes; then AC_TRY_COMPILE([ #include <soundcard.h> ],[ int arg = SNDCTL_DSP_SETFRAGMENT; ],[ have_oss=yes CFLAGS="$CFLAGS -DOSS_USE_SOUNDCARD_H" ]) fi AC_MSG_RESULT($have_oss) if test x$have_oss = xyes; then CFLAGS="$CFLAGS -DOSS_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS dsp" AUDIO_DRIVERS="$AUDIO_DRIVERS dsp/libaudio_dsp.la" AUDIO_SUBDIRS="$AUDIO_SUBDIRS dma" AUDIO_DRIVERS="$AUDIO_DRIVERS dma/libaudio_dma.la" fi fi } dnl See if the ALSA audio interface is supported CheckALSA() { AC_ARG_ENABLE(alsa, [ --enable-alsa support the ALSA audio API [default=yes]], , enable_alsa=yes) if test x$enable_audio = xyes -a x$enable_alsa = xyes; then have_alsa=no AC_CHECK_HEADER(sys/asoundlib.h, have_alsa_hdr=yes) AC_CHECK_LIB(asound, snd_pcm_open, have_alsa_lib=yes) if test x$have_alsa_hdr = xyes -a x$have_alsa_lib = xyes; then CFLAGS="$CFLAGS -DALSA_SUPPORT" SYSTEM_LIBS="$SYSTEM_LIBS -lasound" AUDIO_SUBDIRS="$AUDIO_SUBDIRS alsa" AUDIO_DRIVERS="$AUDIO_DRIVERS alsa/libaudio_alsa.la" fi fi } dnl Check whether we want to use OpenBSD native audio or not CheckOPENBSDAUDIO() { AC_ARG_ENABLE(openbsdaudio, [ --enable-openbsdaudio OpenBSD native audio support [default=yes]], , enable_openbsdaudio=yes) if test x$enable_audio = xyes -a x$enable_openbsdaudio = xyes; then CFLAGS="$CFLAGS -DOPENBSD_AUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS openbsd" AUDIO_DRIVERS="$AUDIO_DRIVERS openbsd/libaudio_openbsd.la" fi } dnl Check whether we want to use IRIX 6.5+ native audio or not CheckDMEDIA() { if test x$enable_audio = xyes; then AC_MSG_CHECKING(for dmedia audio support) have_dmedia=no AC_TRY_COMPILE([ #include <dmedia/audio.h> ],[ ALport audio_port; ],[ have_dmedia=yes ]) # Set up files for the audio library if test x$have_dmedia = xyes; then CFLAGS="$CFLAGS -DDMEDIA_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS dmedia" AUDIO_DRIVERS="$AUDIO_DRIVERS dmedia/libaudio_dmedia.la" SYSTEM_LIBS="$SYSTEM_LIBS -laudio" fi fi } dnl Find the ESD includes and libraries CheckESD() { AC_ARG_ENABLE(esd, [ --enable-esd support the Enlightened Sound Daemon [default=yes]], , enable_esd=yes) if test x$enable_audio = xyes -a x$enable_esd = xyes; then AM_PATH_ESD(0.2.8, [ CFLAGS="$CFLAGS -DESD_SUPPORT $ESD_CFLAGS" SYSTEM_LIBS="$SYSTEM_LIBS $ESD_LIBS" AUDIO_SUBDIRS="$AUDIO_SUBDIRS esd" AUDIO_DRIVERS="$AUDIO_DRIVERS esd/libaudio_esd.la" ]) fi } CheckARTSC() { AC_ARG_ENABLE(arts, [ --enable-arts support the Analog Real Time Synthesizer [default=yes]], , enable_arts=yes) if test x$enable_audio = xyes -a x$enable_arts = xyes; then AC_PATH_PROG(ARTSCCONFIG, artsc-config) if test x$ARTSCCONFIG = x -o x$ARTSCCONFIG = x'"$ARTSCCONFIG"'; then : # arts isn't installed else ARTSC_CFLAGS=`$ARTSCCONFIG --cflags` ARTSC_LIBS=`$ARTSCCONFIG --libs` AC_MSG_CHECKING(for aRts development environment) audio_arts=no save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $ARTSC_CFLAGS" AC_TRY_COMPILE([ #include <artsc.h> ],[ arts_stream_t stream; ],[ audio_arts=yes ]) CFLAGS="$save_CFLAGS" AC_MSG_RESULT($audio_arts) if test x$audio_arts = xyes; then CFLAGS="$CFLAGS -DARTSC_SUPPORT $ARTSC_CFLAGS" SYSTEM_LIBS="$SYSTEM_LIBS $ARTSC_LIBS" AUDIO_SUBDIRS="$AUDIO_SUBDIRS arts" AUDIO_DRIVERS="$AUDIO_DRIVERS arts/libaudio_arts.la" fi fi fi } dnl See if the NAS audio interface is supported CheckNAS() { AC_ARG_ENABLE(nas, [ --enable-nas support the NAS audio API [default=yes]], , enable_nas=yes) if test x$enable_audio = xyes -a x$enable_nas = xyes; then AC_MSG_CHECKING(for NAS audio support) have_nas=no if test -r /usr/X11R6/include/audio/audiolib.h; then have_nas=yes fi AC_MSG_RESULT($have_nas) if test x$have_nas = xyes; then CFLAGS="$CFLAGS -DNAS_SUPPORT" SYSTEM_LIBS="$SYSTEM_LIBS -laudio -lXt" AUDIO_SUBDIRS="$AUDIO_SUBDIRS nas" AUDIO_DRIVERS="$AUDIO_DRIVERS nas/libaudio_nas.la" fi fi } dnl rcg07142001 See if the user wants the disk writer audio driver... CheckDiskAudio() { AC_ARG_ENABLE(diskaudio, [ --enable-diskaudio support the disk writer audio driver [default=yes]], , enable_diskaudio=yes) if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then CFLAGS="$CFLAGS -DDISKAUD_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS disk" AUDIO_DRIVERS="$AUDIO_DRIVERS disk/libaudio_disk.la" fi } dnl See if we can use x86 assembly blitters CheckNASM() { dnl Make sure we are running on an x86 platform case $target in i?86*) ;; *) # Nope, bail early. return ;; esac dnl Check for NASM (for assembly blit routines) AC_ARG_ENABLE(nasm, [ --enable-nasm use nasm assembly blitters on x86 [default=yes]], , enable_nasm=yes) if test x$enable_video = xyes -a x$enable_nasm = xyes; then AC_PATH_PROG(NASM, nasm) if test x$NASM = x -o x$NASM = x'"$NASM"'; then : # nasm isn't installed else CFLAGS="$CFLAGS -DUSE_ASMBLIT -I$srcdir/hermes" case $ARCH in win32) NASMFLAGS="-f win32" ;; *) NASMFLAGS="-f elf" ;; esac AC_SUBST(NASMFLAGS) CFLAGS="$CFLAGS -I\$(top_srcdir)/src/hermes" SDL_EXTRADIRS="$SDL_EXTRADIRS hermes" SDL_EXTRALIBS="$SDL_EXTRALIBS hermes/libhermes.la" fi fi } dnl Find the nanox include and library directories CheckNANOX() { AC_ARG_ENABLE(video-nanox, [ --enable-video-nanox use nanox video driver [default=no]], , enable_video_nanox=no) AC_ARG_ENABLE(nanox-debug, [ --enable-nanox-debug print debug messages [default=no]], , enable_nanox_debug=no) AC_ARG_ENABLE(nanox-share-memory, [ --enable-nanox-share-memory use share memory [default=no]], , enable_nanox_share_memory=no) AC_ARG_WITH(nanox_pixel_type, [ --with-nanox-pixel-type=[rgb/0888/888/565/555/332/pal]]) if test x$enable_video = xyes -a x$enable_video_nanox = xyes; then if test x$enable_nanox_debug = xyes; then CFLAGS="$CFLAGS -DENABLE_NANOX_DEBUG" fi if test x$enable_nanox_share_memory = xyes; then CFLAGS="$CFLAGS -DNANOX_SHARE_MEMORY" fi case "$with_nanox_pixel_type" in rgb) CFLAGS="$CFLAGS -DNANOX_PIXEL_RGB" ;; 0888) CFLAGS="$CFLAGS -DNANOX_PIXEL_0888" ;; 888) CFLAGS="$CFLAGS -DNANOX_PIXEL_888" ;; 565) CFLAGS="$CFLAGS -DNANOX_PIXEL_565" ;; 555) CFLAGS="$CFLAGS -DNANOX_PIXEL_555" ;; 332) CFLAGS="$CFLAGS -DNANOX_PIXEL_332" ;; pal) CFLAGS="$CFLAGS -DNANOX_PIXEL_PAL" ;; *) AC_MSG_ERROR([Invalid nanox_pixel_type]);; esac CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_NANOX" SYSTEM_LIBS="$SYSTEM_LIBS -lnano-X" VIDEO_SUBDIRS="$VIDEO_SUBDIRS nanox" VIDEO_DRIVERS="$VIDEO_DRIVERS nanox/libvideo_nanox.la" fi } dnl Find the X11 include and library directories CheckX11() { AC_ARG_ENABLE(video-x11, [ --enable-video-x11 use X11 video driver [default=yes]], , enable_video_x11=yes) if test x$enable_video = xyes -a x$enable_video_x11 = xyes; then AC_PATH_X AC_PATH_XTRA if test x$have_x = xyes; then CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_X11" if test x$ac_cv_func_shmat != xyes; then CFLAGS="$CFLAGS -DNO_SHARED_MEMORY" fi SYSTEM_LIBS="$SYSTEM_LIBS $X_LIBS -lX11 -lXext" VIDEO_SUBDIRS="$VIDEO_SUBDIRS x11" VIDEO_DRIVERS="$VIDEO_DRIVERS x11/libvideo_x11.la" AC_ARG_ENABLE(video-x11-vm, [ --enable-video-x11-vm use X11 VM extension for fullscreen [default=yes]], , enable_video_x11_vm=yes) if test x$enable_video_x11_vm = xyes; then AC_MSG_CHECKING(for XFree86 VidMode 1.0 support) video_x11_vm=no AC_TRY_COMPILE([ #include <X11/Xlib.h> #include <X11/extensions/xf86vmode.h> ],[ ],[ video_x11_vm=yes ]) AC_MSG_RESULT($video_x11_vm) if test x$video_x11_vm = xyes; then CFLAGS="$CFLAGS -DXFREE86_VM" # Check for nasty XFree86 4.0/Glide hack AC_ARG_ENABLE(xfree86_glidehack, [ --enable-xfree86-glidehack Alternate vidmode lib for old Glide [default=no]], , enable_xfreeglidehack=no) if test x$enable_xfree86_glidehack = xyes; then ac_save_libs="$LIBS" LIBS="$LIBS $X_LIBS -lX11 -lXext" if test x$xfree86_glidehack = x; then AC_CHECK_LIB(Xxf86vm, XF40VidModeQueryExtension, xfree86_glidehack=Xxf86vm) fi if test x$xfree86_glidehack = x; then AC_CHECK_LIB(Xxf86vm40, XF40VidModeQueryExtension, xfree86_glidehack=Xxf86vm40) fi LIBS="$ac_save_libs" fi if test x$xfree86_glidehack != x; then CFLAGS="$CFLAGS -DXFREE86_VM_DYNAMIC_HACK" SYSTEM_LIBS="$SYSTEM_LIBS -l$xfree86_glidehack" else SYSTEM_LIBS="$SYSTEM_LIBS -lXxf86vm" fi AC_MSG_CHECKING(for XFree86 VidMode gamma support) video_x11_vmgamma=no AC_TRY_COMPILE([ #include <X11/Xlib.h> #include <X11/extensions/xf86vmode.h> ],[ XF86VidModeGamma gamma; ],[ video_x11_vmgamma=yes ]) AC_MSG_RESULT($video_x11_vmgamma) if test x$video_x11_vmgamma = xyes; then CFLAGS="$CFLAGS -DXFREE86_VMGAMMA" fi fi fi AC_ARG_ENABLE(dga, [ --enable-dga allow use of X11 DGA code [default=yes]], , enable_dga=yes) AC_ARG_ENABLE(video-x11-dgamouse, [ --enable-video-x11-dgamouse use X11 DGA for mouse events [default=yes]], , enable_video_x11_dgamouse=yes) if test x$enable_dga = xyes; then AC_MSG_CHECKING(for XFree86 DGA 1.0 support) video_x11_dga=no AC_TRY_COMPILE([ #include <X11/Xlib.h> #include <X11/extensions/xf86dga.h> ],[ ],[ video_x11_dga=yes ]) AC_MSG_RESULT($video_x11_dga) if test x$video_x11_dga = xyes; then CFLAGS="$CFLAGS -DXFREE86_DGAMOUSE" if test x$enable_video_x11_dgamouse = xyes; then CFLAGS="$CFLAGS -DDEFAULT_DGAMOUSE" fi SYSTEM_LIBS="$SYSTEM_LIBS -lXxf86dga" fi fi AC_ARG_ENABLE(video-x11-xv, [ --enable-video-x11-xv use X11 XvImage extension for video [default=yes]], , enable_video_x11_xv=yes) if test x$enable_video_x11_xv = xyes; then AC_MSG_CHECKING(for XFree86 XvImage support) video_x11_xv=no AC_TRY_COMPILE([ #include <X11/Xlib.h> #include <sys/ipc.h> #include <sys/shm.h> #include <X11/extensions/XShm.h> #include <X11/extensions/Xvlib.h> ],[ XvImage *image; ],[ video_x11_xv=yes ]) AC_MSG_RESULT($video_x11_xv) if test x$video_x11_xv = xyes; then CFLAGS="$CFLAGS -DXFREE86_XV" SYSTEM_LIBS="$SYSTEM_LIBS -lXv" fi fi fi fi } CheckPHOTON() { AC_ARG_ENABLE(video-photon, [ --enable-video-photon use QNX Photon video driver [default=yes]], , enable_video_photon=yes) if test x$enable_video = xyes -a x$enable_video_photon = xyes; then AC_MSG_CHECKING(for QNX Photon support) video_photon=no AC_TRY_COMPILE([ #include <Ph.h> #include <Pt.h> #include <photon/Pg.h> #include <photon/PdDirect.h> ],[ PgDisplaySettings_t *visual; ],[ video_photon=yes ]) AC_MSG_RESULT($video_photon) if test x$video_photon = xyes; then CFLAGS="$CFLAGS -DENABLE_PHOTON" SYSTEM_LIBS="$SYSTEM_LIBS -lph" VIDEO_SUBDIRS="$VIDEO_SUBDIRS photon" VIDEO_DRIVERS="$VIDEO_DRIVERS photon/libvideo_photon.la" fi fi } dnl Find the X11 DGA 2.0 include and library directories CheckDGA() { AC_ARG_ENABLE(video-dga, [ --enable-video-dga use DGA 2.0 video driver [default=yes]], , enable_video_dga=yes) if test x$video_x11_dga = xyes -a x$enable_video_dga = xyes; then AC_MSG_CHECKING(for XFree86 DGA 2.0 support) video_x11_dga2=no AC_TRY_COMPILE([ #include <X11/Xlib.h> #include <X11/extensions/xf86dga.h> ],[ XDGAEvent xevent; ],[ video_x11_dga2=yes ]) AC_MSG_RESULT($video_x11_dga2) if test x$video_x11_dga2 = xyes; then CFLAGS="$CFLAGS -DENABLE_DGA" VIDEO_SUBDIRS="$VIDEO_SUBDIRS dga" VIDEO_DRIVERS="$VIDEO_DRIVERS dga/libvideo_dga.la" fi fi } dnl Find the framebuffer console includes CheckFBCON() { AC_ARG_ENABLE(video-fbcon, [ --enable-video-fbcon use framebuffer console video driver [default=yes]], , enable_video_fbcon=yes) if test x$enable_video = xyes -a x$enable_video_fbcon = xyes; then AC_MSG_CHECKING(for framebuffer console support) video_fbcon=no AC_TRY_COMPILE([ #include <linux/fb.h> #include <linux/kd.h> #include <linux/keyboard.h> ],[ ],[ video_fbcon=yes ]) AC_MSG_RESULT($video_fbcon) if test x$video_fbcon = xyes; then CFLAGS="$CFLAGS -DENABLE_FBCON" VIDEO_SUBDIRS="$VIDEO_SUBDIRS fbcon" VIDEO_DRIVERS="$VIDEO_DRIVERS fbcon/libvideo_fbcon.la" fi fi } dnl Find DirectFB CheckDirectFB() { AC_ARG_ENABLE(video-directfb, [ --enable-video-directfb use DirectFB video driver [default=yes]], , enable_video_directfb=yes) if test x$enable_video = xyes -a x$enable_video_directfb = xyes; then video_directfb=no AC_PATH_PROG(PKG_CONFIG, pkg-config, no) if test x$PKG_CONFIG = xno ; then AC_MSG_WARN([*** pkg-config is required to build the DirectFB video driver.]) else AC_MSG_CHECKING(for DirectFB support) if ! pkg-config --atleast-pkgconfig-version 0.5 ; then AC_MSG_ERROR([*** pkg-config too old; version 0.5 or better required.]) fi DIRECTFB_REQUIRED_VERSION=0.9.5 if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb ; then DIRECTFB_CFLAGS=`$PKG_CONFIG --cflags directfb` DIRECTFB_LIBS=`$PKG_CONFIG --libs directfb` video_directfb=yes fi fi AC_MSG_RESULT($video_directfb) if test x$video_directfb = xyes; then CFLAGS="$CFLAGS -DENABLE_DIRECTFB" VIDEO_SUBDIRS="$VIDEO_SUBDIRS directfb" VIDEO_DRIVERS="$VIDEO_DRIVERS directfb/libvideo_directfb.la" AC_SUBST(DIRECTFB_CFLAGS) AC_SUBST(DIRECTFB_LIBS) fi fi } dnl See if we're running on PlayStation 2 hardware CheckPS2GS() { AC_ARG_ENABLE(video-ps2gs, [ --enable-video-ps2gs use PlayStation 2 GS video driver [default=yes]], , enable_video_ps2gs=yes) if test x$enable_video = xyes -a x$enable_video_ps2gs = xyes; then AC_MSG_CHECKING(for PlayStation 2 GS support) video_ps2gs=no AC_TRY_COMPILE([ #include <linux/ps2/dev.h> #include <linux/ps2/gs.h> ],[ ],[ video_ps2gs=yes ]) AC_MSG_RESULT($video_ps2gs) if test x$video_ps2gs = xyes; then CFLAGS="$CFLAGS -DENABLE_PS2GS" VIDEO_SUBDIRS="$VIDEO_SUBDIRS ps2gs" VIDEO_DRIVERS="$VIDEO_DRIVERS ps2gs/libvideo_ps2gs.la" fi fi } dnl Find the GGI includes CheckGGI() { AC_ARG_ENABLE(video-ggi, [ --enable-video-ggi use GGI video driver [default=no]], , enable_video_ggi=no) if test x$enable_video = xyes -a x$enable_video_ggi = xyes; then AC_MSG_CHECKING(for GGI support) video_ggi=no AC_TRY_COMPILE([ #include <ggi/ggi.h> #include <ggi/gii.h> ],[ ],[ video_ggi=yes ]) AC_MSG_RESULT($video_ggi) if test x$video_ggi = xyes; then CFLAGS="$CFLAGS $X_CFLAGS -DENABLE_GGI" SYSTEM_LIBS="$SYSTEM_LIBS -lggi -lgii -lgg" VIDEO_SUBDIRS="$VIDEO_SUBDIRS ggi" VIDEO_DRIVERS="$VIDEO_DRIVERS ggi/libvideo_ggi.la" fi fi } dnl Find the SVGAlib includes and libraries CheckSVGA() { AC_ARG_ENABLE(video-svga, [ --enable-video-svga use SVGAlib video driver [default=no]], , enable_video_svga=no) if test x$enable_video = xyes -a x$enable_video_svga = xyes; then AC_MSG_CHECKING(for SVGAlib (1.4.0+) support) video_svga=no AC_TRY_COMPILE([ #include <vga.h> #include <vgamouse.h> #include <vgakeyboard.h> ],[ if ( SCANCODE_RIGHTWIN && SCANCODE_LEFTWIN ) { exit(0); } ],[ video_svga=yes ]) AC_MSG_RESULT($video_svga) if test x$video_svga = xyes; then CFLAGS="$CFLAGS -DENABLE_SVGALIB" SYSTEM_LIBS="$SYSTEM_LIBS -lvga" VIDEO_SUBDIRS="$VIDEO_SUBDIRS svga" VIDEO_DRIVERS="$VIDEO_DRIVERS svga/libvideo_svga.la" fi fi } dnl Find the VGL includes and libraries CheckVGL() { AC_ARG_ENABLE(video-vgl, [ --enable-video-vgl use VGL video driver [default=no]], , enable_video_vgl=no) if test x$enable_video = xyes -a x$enable_video_vgl = xyes; then AC_MSG_CHECKING(for libVGL support) video_vgl=no AC_TRY_COMPILE([ #include <sys/fbio.h> #include <sys/consio.h> #include <sys/kbio.h> #include <vgl.h> ],[ VGLBitmap bitmap; exit(bitmap.Bitmap); ],[ video_vgl=yes ]) AC_MSG_RESULT($video_vgl) if test x$video_vgl = xyes; then CFLAGS="$CFLAGS -DENABLE_VGL" SYSTEM_LIBS="$SYSTEM_LIBS -lvgl" VIDEO_SUBDIRS="$VIDEO_SUBDIRS vgl" VIDEO_DRIVERS="$VIDEO_DRIVERS vgl/libvideo_vgl.la" fi fi } dnl Find the AAlib includes CheckAAlib() { AC_ARG_ENABLE(video-aalib, [ --enable-video-aalib use AAlib video driver [default=no]], , enable_video_aalib=no) if test x$enable_video = xyes -a x$enable_video_aalib = xyes; then AC_MSG_CHECKING(for AAlib support) video_aalib=no AC_TRY_COMPILE([ #include <aalib.h> ],[ ],[ video_aalib=yes ]) AC_MSG_RESULT($video_aalib) if test x$video_aalib = xyes; then CFLAGS="$CFLAGS -DENABLE_AALIB" SYSTEM_LIBS="$SYSTEM_LIBS -laa" VIDEO_SUBDIRS="$VIDEO_SUBDIRS aalib" VIDEO_DRIVERS="$VIDEO_DRIVERS aalib/libvideo_aa.la" fi fi } dnl rcg04172001 Set up the Null video driver. CheckDummyVideo() { AC_ARG_ENABLE(video-dummy, [ --enable-video-dummy use dummy video driver [default=yes]], , enable_video_dummy=yes) if test x$enable_video_dummy = xyes; then CFLAGS="$CFLAGS -DENABLE_DUMMYVIDEO" VIDEO_SUBDIRS="$VIDEO_SUBDIRS dummy" VIDEO_DRIVERS="$VIDEO_DRIVERS dummy/libvideo_null.la" fi } dnl Check to see if OpenGL support is desired AC_ARG_ENABLE(video-opengl, [ --enable-video-opengl include OpenGL context creation [default=yes]], , enable_video_opengl=yes) dnl Find OpenGL CheckOpenGL() { if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then AC_MSG_CHECKING(for OpenGL (GLX) support) video_opengl=no AC_TRY_COMPILE([ #include <GL/gl.h> #include <GL/glx.h> #include <dlfcn.h> /* For loading extensions */ ],[ ],[ video_opengl=yes ]) AC_MSG_RESULT($video_opengl) if test x$video_opengl = xyes; then CFLAGS="$CFLAGS -DHAVE_OPENGL" AC_CHECK_LIB(dl, dlopen, SYSTEM_LIBS="$SYSTEM_LIBS -ldl") fi fi } dnl Check for BeOS OpenGL CheckBeGL() { if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then CFLAGS="$CFLAGS -DHAVE_OPENGL" SYSTEM_LIBS="$SYSTEM_LIBS -lGL" fi } dnl Check for MacOS OpenGL CheckMacGL() { if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then CFLAGS="$CFLAGS -DHAVE_OPENGL" case "$target" in *-*-darwin*) SDL_LIBS="$SDL_LIBS -framework OpenGL -framework AGL" esac fi } dnl See if we can use the new unified event interface in Linux 2.4 CheckInputEvents() { dnl Check for Linux 2.4 unified input event interface support AC_ARG_ENABLE(input-events, [ --enable-input-events use Linux 2.4 unified input interface [default=no]], , enable_input_events=no) if test x$enable_input_events = xyes; then AC_MSG_CHECKING(for Linux 2.4 unified input interface) use_input_events=no AC_TRY_COMPILE([ #include <linux/input.h> ],[ #ifndef EVIOCGNAME #error EVIOCGNAME() ioctl not available #endif ],[ use_input_events=yes ]) AC_MSG_RESULT($use_input_events) if test x$use_input_events = xyes; then CFLAGS="$CFLAGS -DUSE_INPUT_EVENTS" fi fi } dnl See what type of thread model to use on Linux and Solaris CheckPTHREAD() { dnl Check for pthread support AC_ARG_ENABLE(pthreads, [ --enable-pthreads use POSIX threads for multi-threading [default=yes]], , enable_pthreads=yes) dnl This is used on Linux for glibc binary compatibility (Doh!) AC_ARG_ENABLE(pthread-sem, [ --enable-pthread-sem use pthread semaphores [default=yes]], , enable_pthread_sem=yes) ac_save_libs="$LIBS" case "$target" in *-*-bsdi*) pthread_cflags="-D_REENTRANT -D_THREAD_SAFE" pthread_lib="" ;; *-*-darwin*) pthread_cflags="-D_THREAD_SAFE" # causes Carbon.p complaints? # pthread_cflags="-D_REENTRANT -D_THREAD_SAFE" ;; *-*-freebsd*) pthread_cflags="-D_REENTRANT -D_THREAD_SAFE" pthread_lib="-pthread" ;; *-*-netbsd*) pthread_cflags="-I/usr/pkg/include -D_REENTRANT" pthread_lib="-L/usr/pkg/lib -lpthread -lsem" ;; *-*-openbsd*) pthread_cflags="-D_REENTRANT" pthread_lib="-pthread" ;; *-*-solaris*) pthread_cflags="-D_REENTRANT" pthread_lib="-lpthread -lposix4" ;; *-*-sysv5*) pthread_cflags="-D_REENTRANT -Kthread" pthread_lib="" ;; *-*-irix*) pthread_cflags="-D_SGI_MP_SOURCE" pthread_lib="-lpthread" ;; *-*-aix*) pthread_cflags="-D_REENTRANT -mthreads" pthread_lib="-lpthread" ;; *-*-qnx*) pthread_cflags="" pthread_lib="" ;; *) pthread_cflags="-D_REENTRANT" pthread_lib="-lpthread" ;; esac LIBS="$LIBS $pthread_lib" if test x$enable_threads = xyes -a x$enable_pthreads = xyes; then AC_MSG_CHECKING(for pthreads) use_pthreads=no AC_TRY_LINK([ #include <pthread.h> ],[ pthread_attr_t type; pthread_attr_init(&type); ],[ use_pthreads=yes ]) AC_MSG_RESULT($use_pthreads) if test x$use_pthreads = xyes; then CFLAGS="$CFLAGS $pthread_cflags -DSDL_USE_PTHREADS" SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags" SDL_LIBS="$SDL_LIBS $pthread_lib" # Check to see if recursive mutexes are available AC_MSG_CHECKING(for recursive mutexes) has_recursive_mutexes=no AC_TRY_LINK([ #include <pthread.h> ],[ pthread_mutexattr_t attr; #ifdef linux pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP); #else pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); #endif ],[ has_recursive_mutexes=yes ]) # Some systems have broken recursive mutex implementations case "$target" in *-*-solaris*) has_recursive_mutexes=no ;; esac AC_MSG_RESULT($has_recursive_mutexes) if test x$has_recursive_mutexes != xyes; then CFLAGS="$CFLAGS -DPTHREAD_NO_RECURSIVE_MUTEX" fi # Check to see if pthread semaphore support is missing if test x$enable_pthread_sem = xyes; then AC_MSG_CHECKING(for pthread semaphores) have_pthread_sem=no AC_TRY_COMPILE([ #include <pthread.h> #include <semaphore.h> ],[ ],[ have_pthread_sem=yes ]) AC_MSG_RESULT($have_pthread_sem) fi # Check to see if this is broken glibc 2.0 pthreads case "$target" in *-*-linux*) AC_MSG_CHECKING(for broken glibc 2.0 pthreads) glibc20_pthreads=no AC_TRY_COMPILE([ #include <features.h> #if (__GLIBC__ == 2) && (__GLIBC_MINOR__ == 0) #warning Working around a bug in glibc 2.0 pthreads #else #error pthread implementation okay #endif /* glibc 2.0 */ ],[ ],[ glibc20_pthreads=yes ]) AC_MSG_RESULT($glibc20_pthreads) esac fi fi LIBS="$ac_save_libs" AC_MSG_CHECKING(whether semun is defined in /usr/include/sys/sem.h) have_semun=no AC_TRY_COMPILE([ #include <sys/types.h> #include <sys/sem.h> ],[ union semun t; ],[ have_semun=yes ]) AC_MSG_RESULT($have_semun) if test x$have_semun = xyes; then CFLAGS="$CFLAGS -DHAVE_SEMUN" fi # See if we can use clone() on Linux directly use_clone=no if test x$enable_threads = xyes -a x$use_pthreads != xyes; then case "$target" in *-*-linux*) use_clone=yes ;; *) CFLAGS="$CFLAGS -DFORK_HACK" ;; esac fi AM_CONDITIONAL(USE_CLONE, test x$use_clone = xyes) } dnl Determine whether the compiler can produce Win32 executables CheckWIN32() { AC_MSG_CHECKING(Win32 compiler) have_win32_gcc=no AC_TRY_COMPILE([ #include <windows.h> ],[ ],[ have_win32_gcc=yes ]) AC_MSG_RESULT($have_win32_gcc) if test x$have_win32_gcc != xyes; then AC_MSG_ERROR([ *** Your compiler ($CC) does not produce Win32 executables! ]) fi dnl See if the user wants to redirect standard output to files AC_ARG_ENABLE(stdio-redirect, [ --enable-stdio-redirect Redirect STDIO to files on Win32 [default=yes]], , enable_stdio_redirect=yes) if test x$enable_stdio_redirect != xyes; then CFLAGS="$CFLAGS -DNO_STDIO_REDIRECT" fi } dnl Find the DirectX includes and libraries CheckDIRECTX() { AC_ARG_ENABLE(directx, [ --enable-directx use DirectX for Win32 audio/video [default=yes]], , enable_directx=yes) if test x$enable_directx = xyes; then AC_MSG_CHECKING(for DirectX headers and libraries) use_directx=no AC_TRY_COMPILE([ #include "src/video/windx5/directx.h" ],[ ],[ use_directx=yes ]) AC_MSG_RESULT($use_directx) fi AM_CONDITIONAL(USE_DIRECTX, test x$use_directx = xyes) CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video/wincommon" SYSTEM_LIBS="$SYSTEM_LIBS -luser32 -lgdi32 -lwinmm" VIDEO_SUBDIRS="$VIDEO_SUBDIRS wincommon" VIDEO_DRIVERS="$VIDEO_DRIVERS wincommon/libvideo_wincommon.la" # Enable the DIB driver CFLAGS="$CFLAGS -DENABLE_WINDIB" VIDEO_SUBDIRS="$VIDEO_SUBDIRS windib" VIDEO_DRIVERS="$VIDEO_DRIVERS windib/libvideo_windib.la" # See if we should enable the DirectX driver if test x$use_directx = xyes; then CFLAGS="$CFLAGS -DENABLE_DIRECTX" SYSTEM_LIBS="$SYSTEM_LIBS -ldxguid" VIDEO_SUBDIRS="$VIDEO_SUBDIRS windx5" VIDEO_DRIVERS="$VIDEO_DRIVERS windx5/libvideo_windx5.la" fi } dnl Set up the BWindow video driver on BeOS CheckBWINDOW() { CFLAGS="$CFLAGS -DENABLE_BWINDOW" VIDEO_SUBDIRS="$VIDEO_SUBDIRS bwindow" VIDEO_DRIVERS="$VIDEO_DRIVERS bwindow/libvideo_bwindow.la" } dnl Set up the Mac toolbox video driver for Mac OS 7-9 CheckTOOLBOX() { VIDEO_SUBDIRS="$VIDEO_SUBDIRS maccommon" VIDEO_DRIVERS="$VIDEO_DRIVERS maccommon/libvideo_maccommon.la" VIDEO_SUBDIRS="$VIDEO_SUBDIRS macrom" VIDEO_DRIVERS="$VIDEO_DRIVERS macrom/libvideo_macrom.la" } dnl Set up the Mac toolbox video driver for Mac OS X CheckCARBON() { # "MACOSX" is not an official definition, but it's commonly # accepted as a way to differentiate between what runs on X # and what runs on older Macs - while in theory "Carbon" defns # are consistent between the two, in practice Carbon is still # changing. -sts Aug 2000 mac_autoconf_target_workaround="MAC" CFLAGS="$CFLAGS -I/System/Library/Frameworks/Carbon.framework/Headers \ -fpascal-strings -DENABLE_TOOLBOX -DMACOSX -DTARGET_API_${mac_autoconf_target_workaround}_CARBON=1 -I\$(top_srcdir)/src/video/maccommon -I\$(top_srcdir)/src/video/macrom -I\$(top_srcdir)/src/video/macdsp" VIDEO_SUBDIRS="$VIDEO_SUBDIRS maccommon" VIDEO_DRIVERS="$VIDEO_DRIVERS maccommon/libvideo_maccommon.la" VIDEO_SUBDIRS="$VIDEO_SUBDIRS macrom" VIDEO_DRIVERS="$VIDEO_DRIVERS macrom/libvideo_macrom.la" } dnl Set up the Mac toolbox video driver for Mac OS X CheckQUARTZ() { # "MACOSX" is not an official definition, but it's commonly # accepted as a way to differentiate between what runs on X # and what runs on older Macs - while in theory "Carbon" defns # are consistent between the two, in practice Carbon is still # changing. -sts Aug 2000 mac_autoconf_target_workaround="MAC" CFLAGS="$CFLAGS -I/System/Library/Frameworks/Carbon.framework/Headers \ -I/System/Library/Frameworks/Cocoa.framework/Headers -fpascal-strings \ -DENABLE_QUARTZ -DMACOSX -DTARGET_API_${mac_autoconf_target_workaround}_CARBON=1 -I\$(top_srcdir)/src/video/quartz" VIDEO_SUBDIRS="$VIDEO_SUBDIRS quartz" VIDEO_DRIVERS="$VIDEO_DRIVERS quartz/libvideo_quartz.la" } case "$target" in *-*-linux*) ARCH=linux CheckDummyVideo CheckDiskAudio CheckNASM CheckOSS CheckALSA CheckARTSC CheckESD CheckNAS CheckX11 CheckNANOX CheckDGA CheckFBCON CheckDirectFB CheckPS2GS CheckGGI CheckSVGA CheckAAlib CheckOpenGL CheckInputEvents CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library # We use the OSS and ALSA API's, not the Sun audio API #if test x$enable_audio = xyes; then # CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" # AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" # AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" #fi # Set up files for the joystick library if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS linux" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS linux/libjoystick_linux.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS linux" CDROM_DRIVERS="$CDROM_DRIVERS linux/libcdrom_linux.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then if test x$use_pthreads != xyes; then COPY_ARCH_SRC(src/thread, linux, clone.S) fi COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) if test x$glibc20_pthreads = xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) else COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-bsdi*) ARCH=bsdi CheckDummyVideo CheckDiskAudio CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckDGA CheckSVGA CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library # We use the OSS and ALSA API's, not the Sun audio API #if test x$enable_audio = xyes; then # CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" # AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" # AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" #fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library # (No cdrom support yet) if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-freebsd*) ARCH=freebsd CheckDummyVideo CheckDiskAudio CheckVGL CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckDGA CheckSVGA CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library # We use the OSS and ALSA API's, not the Sun audio API #if test x$enable_audio = xyes; then # CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" # AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" # AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" #fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS freebsd" CDROM_DRIVERS="$CDROM_DRIVERS freebsd/libcdrom_freebsd.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-netbsd*) ARCH=netbsd CheckDummyVideo CheckDiskAudio CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS openbsd" CDROM_DRIVERS="$CDROM_DRIVERS openbsd/libcdrom_openbsd.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi # NetBSD does not define "unix" CFLAGS="$CFLAGS -Dunix -D_POSIX_THREAD_SYSCALL_SOFT=1" ;; *-*-openbsd*) ARCH=openbsd CheckDummyVideo CheckDiskAudio CheckOPENBSDAUDIO CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library # We use the OSS and native API's, not the Sun audio API #if test x$enable_audio = xyes; then # CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" # AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" # AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" #fi # OpenBSD needs linking with ossaudio emulation library if test x$have_oss = xyes; then SYSTEM_LIBS="$SYSTEM_LIBS -lossaudio" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS openbsd" CDROM_DRIVERS="$CDROM_DRIVERS openbsd/libcdrom_openbsd.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi # OpenBSD does not define "unix" CFLAGS="$CFLAGS -Dunix" ;; *-*-sysv5*) ARCH=sysv5 CheckDummyVideo CheckDiskAudio CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_systhread.c) COPY_ARCH_SRC(src/thread, generic, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-solaris*) ARCH=solaris CFLAGS="$CFLAGS -D__ELF__" # Fix for nasm on Solaris x86 CheckDummyVideo CheckDiskAudio CheckNASM CheckOSS CheckARTSC CheckESD CheckNAS CheckX11 CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS linux" CDROM_DRIVERS="$CDROM_DRIVERS linux/libcdrom_linux.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-irix*) ARCH=irix CheckDummyVideo CheckDiskAudio CheckDMEDIA CheckESD CheckNAS CheckX11 CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # We use the dmedia audio API, not the Sun audio API #if test x$enable_audio = xyes; then # CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" # AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" # AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" #fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library # (No CD-ROM support yet) if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then if test x$use_pthreads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) if test x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) else COPY_ARCH_SRC(src/thread, irix, SDL_systhread.c) COPY_ARCH_SRC(src/thread, irix, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-hpux*) ARCH=hpux CheckDummyVideo CheckDiskAudio CheckOSS CheckNAS CheckX11 CheckGGI CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library # (No CD-ROM support yet) if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-aix*) ARCH=aix CheckDummyVideo CheckDiskAudio CheckOSS CheckNAS CheckX11 CheckGGI CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS paudio" AUDIO_DRIVERS="$AUDIO_DRIVERS paudio/libaudio_paudio.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS aix" CDROM_DRIVERS="$CDROM_DRIVERS aix/libcdrom_aix.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-osf*) ARCH=osf CheckDummyVideo CheckDiskAudio CheckNAS CheckX11 CheckGGI CheckAAlib CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DSUNAUDIO_SUPPORT" AUDIO_SUBDIRS="$AUDIO_SUBDIRS sun" AUDIO_DRIVERS="$AUDIO_DRIVERS sun/libaudio_sun.la" fi # Set up files for the joystick library # (No joystick support yet) if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library # (No cdrom support yet) if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-qnx*) ARCH=qnx CheckDummyVideo CheckDiskAudio CheckNAS CheckPHOTON CheckX11 CheckOpenGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then CFLAGS="$CFLAGS -DALSA_SUPPORT" SYSTEM_LIBS="$SYSTEM_LIBS -lasound" AUDIO_SUBDIRS="$AUDIO_SUBDIRS nto" AUDIO_DRIVERS="$AUDIO_DRIVERS nto/libaudio_nto.la" fi # Set up files for the joystick library if test x$enable_joystick = xyes; then # (No joystick support yet) JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS dummy" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS dummy/libjoystick_dummy.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS qnx" CDROM_DRIVERS="$CDROM_DRIVERS qnx/libcdrom_qnx.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi ;; *-*-cygwin* | *-*-mingw32*) ARCH=win32 if test "$build" != "$target"; then # cross-compiling # Default cross-compile location ac_default_prefix=/usr/local/cross-tools/i386-mingw32msvc else # Look for the location of the tools and install there if [ "$BUILD_PREFIX" != "" ]; then ac_default_prefix=$BUILD_PREFIX fi fi CheckDummyVideo CheckDiskAudio CheckWIN32 CheckDIRECTX CheckNASM # Set up files for the main() stub COPY_ARCH_SRC(src/main, win32, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS windib" AUDIO_DRIVERS="$AUDIO_DRIVERS windib/libaudio_windib.la" if test x$use_directx = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS windx5" AUDIO_DRIVERS="$AUDIO_DRIVERS windx5/libaudio_windx5.la" fi fi # Set up files for the joystick library if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS win32" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS win32/libjoystick_winmm.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS win32" CDROM_DRIVERS="$CDROM_DRIVERS win32/libcdrom_win32.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, win32, SDL_systhread.c) COPY_ARCH_SRC(src/thread, win32, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, win32, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, win32, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, win32, SDL_systimer.c) fi # The Win32 platform requires special setup SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main" case "$target" in *-*-cygwin*) CFLAGS="$CFLAGS -I/usr/include/mingw -DWIN32 -Uunix" SDL_CFLAGS="$SDL_CFLAGS -I/usr/include/mingw -DWIN32 -Uunix" LIBS="$LIBS -mno-cygwin" SDL_LIBS="-lmingw32 -lSDLmain $SDL_LIBS -mwindows -mno-cygwin" ;; *-*-mingw32*) SDL_LIBS="-lmingw32 -lSDLmain $SDL_LIBS -mwindows" ;; esac ;; *-*-beos*) ARCH=beos ac_default_prefix=/boot/develop/tools/gnupro CheckDummyVideo CheckDiskAudio CheckNASM CheckBWINDOW CheckBeGL # Set up files for the main() stub COPY_ARCH_SRC(src/main, linux, SDL_main.c) COPY_ARCH_SRC(src/main, beos, SDL_BeApp.cc) COPY_ARCH_SRC(src/main, beos, SDL_BeApp.h) # Set up files for the audio library if test x$enable_audio = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS baudio" AUDIO_DRIVERS="$AUDIO_DRIVERS baudio/libaudio_baudio.la" fi # Set up files for the joystick library if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS beos" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS beos/libjoystick_beos.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS beos" CDROM_DRIVERS="$CDROM_DRIVERS beos/libcdrom_beos.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, beos, SDL_systhread.c) COPY_ARCH_SRC(src/thread, beos, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, beos, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, beos, SDL_systimer.c) fi # The BeOS platform requires special libraries SYSTEM_LIBS="$SYSTEM_LIBS -lroot -lbe -lmedia -lgame -ldevice -ltextencoding" ;; *-*-macos*) # This would be used if cross-compiling to MacOS 9. No way to # use it at present, but Apple is working on a X-to-9 compiler # for which this case would be handy. ARCH=macos CheckDummyVideo CheckDiskAudio CheckTOOLBOX CheckMacGL # Set up files for the main() stub COPY_ARCH_SRC(src/main, macos, SDL_main.c) # Set up files for the audio library if test x$enable_audio = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS macrom" AUDIO_DRIVERS="$AUDIO_DRIVERS macrom/libaudio_macrom.la" fi # Set up files for the joystick library if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS macos" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS macos/libjoystick_macos.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS macos" CDROM_DRIVERS="$CDROM_DRIVERS macos/libcdrom_macos.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, macos, SDL_systhread.c) COPY_ARCH_SRC(src/thread, macos, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, generic, SDL_sysmutex_c.h) COPY_ARCH_SRC(src/thread, macos, SDL_syssem.c) COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, macos, SDL_systimer.c) fi # The MacOS platform requires special setup SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main" SDL_LIBS="-lSDLmain $SDL_LIBS" ;; *-*-darwin* ) # Strictly speaking, we want "Mac OS X", not "Darwin", which is # just the OS X kernel sans upper layers like Carbon and Cocoa. # But config.guess comes back with "darwin", so go with the flow. ARCH=macosx CheckDummyVideo CheckDiskAudio CheckQUARTZ CheckMacGL CheckPTHREAD # Set up files for the main() stub COPY_ARCH_SRC(src/main, macosx, SDLmain.m) COPY_ARCH_SRC(src/main, macosx, SDLmain.h) # Set up files for the audio library if test x$enable_audio = xyes; then AUDIO_SUBDIRS="$AUDIO_SUBDIRS macrom" AUDIO_DRIVERS="$AUDIO_DRIVERS macrom/libaudio_macrom.la" fi # Set up files for the joystick library if test x$enable_joystick = xyes; then JOYSTICK_SUBDIRS="$JOYSTICK_SUBDIRS darwin" JOYSTICK_DRIVERS="$JOYSTICK_DRIVERS darwin/libjoystick_darwin.la" fi # Set up files for the cdrom library if test x$enable_cdrom = xyes; then CDROM_SUBDIRS="$CDROM_SUBDIRS dummy" CDROM_DRIVERS="$CDROM_DRIVERS dummy/libcdrom_dummy.la" fi # Set up files for the thread library if test x$enable_threads = xyes; then COPY_ARCH_SRC(src/thread, linux, SDL_systhread.c) COPY_ARCH_SRC(src/thread, linux, SDL_systhread_c.h) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex.c) COPY_ARCH_SRC(src/thread, linux, SDL_sysmutex_c.h) if test x$use_pthreads = xyes -a x$have_pthread_sem != xyes; then COPY_ARCH_SRC(src/thread, generic, SDL_syssem.c) else COPY_ARCH_SRC(src/thread, linux, SDL_syssem.c) fi COPY_ARCH_SRC(src/thread, generic, SDL_syssem_c.h) COPY_ARCH_SRC(src/thread, generic, SDL_syscond.c) COPY_ARCH_SRC(src/thread, generic, SDL_syscond_c.h) fi # Set up files for the timer library if test x$enable_timers = xyes; then COPY_ARCH_SRC(src/timer, linux, SDL_systimer.c) fi # The MacOS X platform requires special setup SDL_CFLAGS="$SDL_CFLAGS -F/System/Library/Frameworks/Carbon.framework -F/System/Library/Frameworks/Cocoa.framework" SDL_LIBS="-lSDLmain $SDL_LIBS -framework Carbon -framework Cocoa" ;; *) AC_MSG_ERROR(Unsupported target: Please add to configure.in) ;; esac AC_SUBST(ARCH) # Set the conditional variables for this target AM_CONDITIONAL(TARGET_LINUX, test $ARCH = linux) AM_CONDITIONAL(TARGET_SOLARIS, test $ARCH = solaris) AM_CONDITIONAL(TARGET_IRIX, test $ARCH = irix) AM_CONDITIONAL(TARGET_BSDI, test $ARCH = bsdi) AM_CONDITIONAL(TARGET_FREEBSD, test $ARCH = freebsd) AM_CONDITIONAL(TARGET_NETBSD, test $ARCH = netbsd) AM_CONDITIONAL(TARGET_OPENBSD, test $ARCH = openbsd) AM_CONDITIONAL(TARGET_AIX, test $ARCH = aix) AM_CONDITIONAL(TARGET_WIN32, test $ARCH = win32) AM_CONDITIONAL(TARGET_BEOS, test $ARCH = beos) AM_CONDITIONAL(TARGET_MACOS, test $ARCH = macos) AM_CONDITIONAL(TARGET_MACOSX, test $ARCH = macosx) # Set conditional variables for shared and static library selection. # These are not used in any Makefile.am but in sdl-config.in. AM_CONDITIONAL([ENABLE_SHARED], [test "$enable_shared" = yes]) AM_CONDITIONAL([ENABLE_STATIC], [test "$enable_static" = yes]) # Set runtime shared library paths as needed if test $ARCH = linux -o $ARCH = freebsd -o $ARCH = bsdi; then SDL_RLD_FLAGS="-Wl,-rpath,\${exec_prefix}/lib" fi if test $ARCH = solaris; then SDL_RLD_FLAGS="-R\${exec_prefix}/lib" fi if test $ARCH = openbsd; then SDL_RLD_FLAGS="-Wl,-rpath,\${exec_prefix}/lib $SYSTEM_LIBS" fi dnl Output the video drivers we use if test x$enable_video = xtrue; then if test "$VIDEO_SUBDIRS" = ""; then AC_MSG_ERROR(*** No video drivers are enabled!) fi fi AC_SUBST(AUDIO_SUBDIRS) AC_SUBST(AUDIO_DRIVERS) AC_SUBST(VIDEO_SUBDIRS) AC_SUBST(VIDEO_DRIVERS) AC_SUBST(JOYSTICK_SUBDIRS) AC_SUBST(JOYSTICK_DRIVERS) AC_SUBST(CDROM_SUBDIRS) AC_SUBST(CDROM_DRIVERS) AC_SUBST(SDL_EXTRADIRS) AC_SUBST(SDL_EXTRALIBS) AC_SUBST(SYSTEM_LIBS) dnl Expand the cflags and libraries needed by apps using SDL AC_SUBST(SDL_CFLAGS) AC_SUBST(SDL_LIBS) AC_SUBST(SDL_RLD_FLAGS) dnl Expand the libraries needed for static linking AC_SUBST(SYSTEM_LIBS) dnl Expand the include directories for building SDL CFLAGS="$CFLAGS -I\$(top_srcdir)/include" CFLAGS="$CFLAGS -I\$(top_srcdir)/include/SDL" CFLAGS="$CFLAGS -I\$(top_srcdir)/src -I\$(top_srcdir)/src/$ARCH" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/main" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/audio" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/video" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/events" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/joystick" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/cdrom" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/thread" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/timer" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/endian" CFLAGS="$CFLAGS -I\$(top_srcdir)/src/file" CXXFLAGS="$CFLAGS" # Check for darwin at the very end and set up the Objective C compiler # We do this here so that we get the full CFLAGS into OBJCFLAGS case "$target" in *-*-darwin*) OBJC="cc" OBJCFLAGS="$CFLAGS" AC_SUBST(OBJC) AC_SUBST(OBJCFLAGS) ;; esac # Finally create all the generated files dnl Important: Any directory that you want to be in the distcheck should dnl have a file listed here, so that configure generates the dnl subdirectories on the build target. AC_OUTPUT([ Makefile docs/Makefile docs/html/Makefile docs/man3/Makefile include/Makefile src/Makefile src/main/Makefile src/main/macosx/Makefile src/main/macosx/Info.plist src/audio/Makefile src/audio/alsa/Makefile src/audio/arts/Makefile src/audio/baudio/Makefile src/audio/dma/Makefile src/audio/dmedia/Makefile src/audio/dsp/Makefile src/audio/esd/Makefile src/audio/macrom/Makefile src/audio/nas/Makefile src/audio/nto/Makefile src/audio/openbsd/Makefile src/audio/paudio/Makefile src/audio/sun/Makefile src/audio/ums/Makefile src/audio/windib/Makefile src/audio/windx5/Makefile src/audio/disk/Makefile src/video/Makefile src/video/cybergfx/Makefile src/video/x11/Makefile src/video/dga/Makefile src/video/nanox/Makefile src/video/fbcon/Makefile src/video/directfb/Makefile src/video/ps2gs/Makefile src/video/ggi/Makefile src/video/maccommon/Makefile src/video/macdsp/Makefile src/video/macrom/Makefile src/video/quartz/Makefile src/video/svga/Makefile src/video/vgl/Makefile src/video/aalib/Makefile src/video/wincommon/Makefile src/video/windib/Makefile src/video/windx5/Makefile src/video/bwindow/Makefile src/video/photon/Makefile src/video/dummy/Makefile src/events/Makefile src/joystick/Makefile src/joystick/amigaos/Makefile src/joystick/beos/Makefile src/joystick/darwin/Makefile src/joystick/dummy/Makefile src/joystick/linux/Makefile src/joystick/macos/Makefile src/joystick/win32/Makefile src/cdrom/Makefile src/cdrom/aix/Makefile src/cdrom/beos/Makefile src/cdrom/dummy/Makefile src/cdrom/freebsd/Makefile src/cdrom/linux/Makefile src/cdrom/macos/Makefile src/cdrom/openbsd/Makefile src/cdrom/qnx/Makefile src/cdrom/win32/Makefile src/thread/Makefile src/timer/Makefile src/endian/Makefile src/file/Makefile src/hermes/Makefile sdl-config SDL.spec ], [chmod +x sdl-config])