Initial revision
authorSam Lantinga <slouken@lokigames.com>
Thu, 26 Apr 2001 16:45:43 +0000
changeset 0 74212992fb08
child 1 cf2af46e9e2a
Initial revision
.cvsignore
BUGS
COPYING
CREDITS
CWprojects.sea.bin
INSTALL
MPWmake.sea.bin
Makefile.am
README
README-SDL.txt
README.CVS
README.MacOS
README.MacOSX
README.Win32
README.WinCE
SDL.spec.in
TODO
VisualC.html
VisualC.zip
WhatsNew
acinclude.m4
autogen.sh
config.guess
config.sub
configure.in
docs.html
docs/.cvsignore
docs/Makefile.am
docs/html/.cvsignore
docs/html/Makefile.am
docs/html/audio.html
docs/html/cdrom.html
docs/html/event.html
docs/html/eventfunctions.html
docs/html/eventstructures.html
docs/html/general.html
docs/html/guide.html
docs/html/guideaboutsdldoc.html
docs/html/guideaudioexamples.html
docs/html/guidebasicsinit.html
docs/html/guidecdromexamples.html
docs/html/guidecredits.html
docs/html/guideeventexamples.html
docs/html/guideexamples.html
docs/html/guideinput.html
docs/html/guideinputkeyboard.html
docs/html/guidepreface.html
docs/html/guidethebasics.html
docs/html/guidetimeexamples.html
docs/html/guidevideo.html
docs/html/guidevideoexamples.html
docs/html/index.html
docs/html/joystick.html
docs/html/reference.html
docs/html/sdlactiveevent.html
docs/html/sdladdtimer.html
docs/html/sdlaudiocvt.html
docs/html/sdlaudiospec.html
docs/html/sdlblitsurface.html
docs/html/sdlbuildaudiocvt.html
docs/html/sdlcd.html
docs/html/sdlcdclose.html
docs/html/sdlcdeject.html
docs/html/sdlcdname.html
docs/html/sdlcdnumdrives.html
docs/html/sdlcdopen.html
docs/html/sdlcdpause.html
docs/html/sdlcdplay.html
docs/html/sdlcdplaytracks.html
docs/html/sdlcdresume.html
docs/html/sdlcdstatus.html
docs/html/sdlcdstop.html
docs/html/sdlcdtrack.html
docs/html/sdlcloseaudio.html
docs/html/sdlcolor.html
docs/html/sdlcondbroadcast.html
docs/html/sdlcondsignal.html
docs/html/sdlcondwait.html
docs/html/sdlcondwaittimeout.html
docs/html/sdlconvertaudio.html
docs/html/sdlconvertsurface.html
docs/html/sdlcreatecond.html
docs/html/sdlcreatecursor.html
docs/html/sdlcreatemutex.html
docs/html/sdlcreatergbsurface.html
docs/html/sdlcreatergbsurfacefrom.html
docs/html/sdlcreatesemaphore.html
docs/html/sdlcreatethread.html
docs/html/sdlcreateyuvoverlay.html
docs/html/sdldelay.html
docs/html/sdldestroycond.html
docs/html/sdldestroymutex.html
docs/html/sdldestroysemaphore.html
docs/html/sdldisplayformat.html
docs/html/sdldisplayformatalpha.html
docs/html/sdldisplayyuvoverlay.html
docs/html/sdlenablekeyrepeat.html
docs/html/sdlenableunicode.html
docs/html/sdlevent.html
docs/html/sdleventstate.html
docs/html/sdlfillrect.html
docs/html/sdlflip.html
docs/html/sdlfreecursor.html
docs/html/sdlfreesurface.html
docs/html/sdlfreewav.html
docs/html/sdlfreeyuvoverlay.html
docs/html/sdlgetappstate.html
docs/html/sdlgetaudiostatus.html
docs/html/sdlgetcliprect.html
docs/html/sdlgetcursor.html
docs/html/sdlgeteventfilter.html
docs/html/sdlgetgammaramp.html
docs/html/sdlgetkeyname.html
docs/html/sdlgetkeystate.html
docs/html/sdlgetmodstate.html
docs/html/sdlgetmousestate.html
docs/html/sdlgetrelativemousestate.html
docs/html/sdlgetrgb.html
docs/html/sdlgetrgba.html
docs/html/sdlgetthreadid.html
docs/html/sdlgetticks.html
docs/html/sdlgetvideoinfo.html
docs/html/sdlgetvideosurface.html
docs/html/sdlglattr.html
docs/html/sdlglgetattribute.html
docs/html/sdlglgetprocaddress.html
docs/html/sdlglloadlibrary.html
docs/html/sdlglsetattribute.html
docs/html/sdlglswapbuffers.html
docs/html/sdlinit.html
docs/html/sdlinitsubsystem.html
docs/html/sdljoyaxisevent.html
docs/html/sdljoyballevent.html
docs/html/sdljoybuttonevent.html
docs/html/sdljoyhatevent.html
docs/html/sdljoystickclose.html
docs/html/sdljoystickeventstate.html
docs/html/sdljoystickgetaxis.html
docs/html/sdljoystickgetball.html
docs/html/sdljoystickgetbutton.html
docs/html/sdljoystickgethat.html
docs/html/sdljoystickindex.html
docs/html/sdljoystickname.html
docs/html/sdljoysticknumaxes.html
docs/html/sdljoysticknumballs.html
docs/html/sdljoysticknumbuttons.html
docs/html/sdljoysticknumhats.html
docs/html/sdljoystickopen.html
docs/html/sdljoystickopened.html
docs/html/sdljoystickupdate.html
docs/html/sdlkey.html
docs/html/sdlkeyboardevent.html
docs/html/sdlkeysym.html
docs/html/sdlkillthread.html
docs/html/sdllistmodes.html
docs/html/sdlloadbmp.html
docs/html/sdlloadwav.html
docs/html/sdllockaudio.html
docs/html/sdllocksurface.html
docs/html/sdllockyuvoverlay.html
docs/html/sdlmaprgb.html
docs/html/sdlmaprgba.html
docs/html/sdlmixaudio.html
docs/html/sdlmousebuttonevent.html
docs/html/sdlmousemotionevent.html
docs/html/sdlmutexp.html
docs/html/sdlmutexv.html
docs/html/sdlnumjoysticks.html
docs/html/sdlopenaudio.html
docs/html/sdloverlay.html
docs/html/sdlpalette.html
docs/html/sdlpauseaudio.html
docs/html/sdlpeepevents.html
docs/html/sdlpixelformat.html
docs/html/sdlpollevent.html
docs/html/sdlpumpevents.html
docs/html/sdlpushevent.html
docs/html/sdlquit.html
docs/html/sdlquitevent.html
docs/html/sdlquitsubsystem.html
docs/html/sdlrect.html
docs/html/sdlremovetimer.html
docs/html/sdlresizeevent.html
docs/html/sdlsavebmp.html
docs/html/sdlsempost.html
docs/html/sdlsemtrywait.html
docs/html/sdlsemvalue.html
docs/html/sdlsemwait.html
docs/html/sdlsemwaittimeout.html
docs/html/sdlsetalpha.html
docs/html/sdlsetcliprect.html
docs/html/sdlsetcolorkey.html
docs/html/sdlsetcolors.html
docs/html/sdlsetcursor.html
docs/html/sdlseteventfilter.html
docs/html/sdlsetgamma.html
docs/html/sdlsetgammaramp.html
docs/html/sdlsetmodstate.html
docs/html/sdlsetpalette.html
docs/html/sdlsettimer.html
docs/html/sdlsetvideomode.html
docs/html/sdlshowcursor.html
docs/html/sdlsurface.html
docs/html/sdlsyswmevent.html
docs/html/sdlthreadid.html
docs/html/sdlunlockaudio.html
docs/html/sdlunlocksurface.html
docs/html/sdlunlockyuvoverlay.html
docs/html/sdlupdaterect.html
docs/html/sdlupdaterects.html
docs/html/sdluserevent.html
docs/html/sdlvideodrivername.html
docs/html/sdlvideoinfo.html
docs/html/sdlvideomodeok.html
docs/html/sdlwaitevent.html
docs/html/sdlwaitthread.html
docs/html/sdlwarpmouse.html
docs/html/sdlwasinit.html
docs/html/sdlwmgetcaption.html
docs/html/sdlwmgrabinput.html
docs/html/sdlwmiconifywindow.html
docs/html/sdlwmsetcaption.html
docs/html/sdlwmseticon.html
docs/html/sdlwmtogglefullscreen.html
docs/html/thread.html
docs/html/time.html
docs/html/video.html
docs/html/wm.html
docs/images/rainbow.gif
docs/index.html
docs/man3/.cvsignore
docs/man3/Makefile.am
docs/man3/SDLKey.3
docs/man3/SDL_ActiveEvent.3
docs/man3/SDL_AddTimer.3
docs/man3/SDL_AudioCVT.3
docs/man3/SDL_AudioSpec.3
docs/man3/SDL_BlitSurface.3
docs/man3/SDL_BuildAudioCVT.3
docs/man3/SDL_CD.3
docs/man3/SDL_CDClose.3
docs/man3/SDL_CDEject.3
docs/man3/SDL_CDName.3
docs/man3/SDL_CDNumDrives.3
docs/man3/SDL_CDOpen.3
docs/man3/SDL_CDPause.3
docs/man3/SDL_CDPlay.3
docs/man3/SDL_CDPlayTracks.3
docs/man3/SDL_CDResume.3
docs/man3/SDL_CDStatus.3
docs/man3/SDL_CDStop.3
docs/man3/SDL_CDtrack.3
docs/man3/SDL_CloseAudio.3
docs/man3/SDL_Color.3
docs/man3/SDL_CondBroadcast.3
docs/man3/SDL_CondSignal.3
docs/man3/SDL_CondWait.3
docs/man3/SDL_CondWaitTimeout.3
docs/man3/SDL_ConvertAudio.3
docs/man3/SDL_ConvertSurface.3
docs/man3/SDL_CreateCond.3
docs/man3/SDL_CreateCursor.3
docs/man3/SDL_CreateMutex.3
docs/man3/SDL_CreateRGBSurface.3
docs/man3/SDL_CreateRGBSurfaceFrom.3
docs/man3/SDL_CreateSemaphore.3
docs/man3/SDL_CreateThread.3
docs/man3/SDL_CreateYUVOverlay.3
docs/man3/SDL_Delay.3
docs/man3/SDL_DestroyCond.3
docs/man3/SDL_DestroyMutex.3
docs/man3/SDL_DestroySemaphore.3
docs/man3/SDL_DisplayFormat.3
docs/man3/SDL_DisplayFormatAlpha.3
docs/man3/SDL_DisplayYUVOverlay.3
docs/man3/SDL_EnableKeyRepeat.3
docs/man3/SDL_EnableUNICODE.3
docs/man3/SDL_Event.3
docs/man3/SDL_EventState.3
docs/man3/SDL_FillRect.3
docs/man3/SDL_Flip.3
docs/man3/SDL_FreeCursor.3
docs/man3/SDL_FreeSurface.3
docs/man3/SDL_FreeWAV.3
docs/man3/SDL_FreeYUVOverlay.3
docs/man3/SDL_GL_GetAttribute.3
docs/man3/SDL_GL_GetProcAddress.3
docs/man3/SDL_GL_LoadLibrary.3
docs/man3/SDL_GL_SetAttribute.3
docs/man3/SDL_GL_SwapBuffers.3
docs/man3/SDL_GLattr.3
docs/man3/SDL_GetAppState.3
docs/man3/SDL_GetAudioStatus.3
docs/man3/SDL_GetClipRect.3
docs/man3/SDL_GetCursor.3
docs/man3/SDL_GetEventFilter.3
docs/man3/SDL_GetGamma.3
docs/man3/SDL_GetGammaRamp.3
docs/man3/SDL_GetKeyName.3
docs/man3/SDL_GetKeyState.3
docs/man3/SDL_GetModState.3
docs/man3/SDL_GetMouseState.3
docs/man3/SDL_GetRGB.3
docs/man3/SDL_GetRGBA.3
docs/man3/SDL_GetRelativeMouseState.3
docs/man3/SDL_GetThreadID.3
docs/man3/SDL_GetTicks.3
docs/man3/SDL_GetVideoInfo.3
docs/man3/SDL_GetVideoSurface.3
docs/man3/SDL_Init.3
docs/man3/SDL_InitSubSystem.3
docs/man3/SDL_JoyAxisEvent.3
docs/man3/SDL_JoyBallEvent.3
docs/man3/SDL_JoyButtonEvent.3
docs/man3/SDL_JoyHatEvent.3
docs/man3/SDL_JoystickClose.3
docs/man3/SDL_JoystickEventState.3
docs/man3/SDL_JoystickGetAxis.3
docs/man3/SDL_JoystickGetBall.3
docs/man3/SDL_JoystickGetButton.3
docs/man3/SDL_JoystickGetHat.3
docs/man3/SDL_JoystickIndex.3
docs/man3/SDL_JoystickName.3
docs/man3/SDL_JoystickNumAxes.3
docs/man3/SDL_JoystickNumBalls.3
docs/man3/SDL_JoystickNumButtons.3
docs/man3/SDL_JoystickNumHats.3
docs/man3/SDL_JoystickOpen.3
docs/man3/SDL_JoystickOpened.3
docs/man3/SDL_JoystickUpdate.3
docs/man3/SDL_KeyboardEvent.3
docs/man3/SDL_KillThread.3
docs/man3/SDL_ListModes.3
docs/man3/SDL_LoadBMP.3
docs/man3/SDL_LoadWAV.3
docs/man3/SDL_LockAudio.3
docs/man3/SDL_LockSurface.3
docs/man3/SDL_LockYUVOverlay.3
docs/man3/SDL_MapRGB.3
docs/man3/SDL_MapRGBA.3
docs/man3/SDL_MixAudio.3
docs/man3/SDL_MouseButtonEvent.3
docs/man3/SDL_MouseMotionEvent.3
docs/man3/SDL_NumJoysticks.3
docs/man3/SDL_OpenAudio.3
docs/man3/SDL_Overlay.3
docs/man3/SDL_Palette.3
docs/man3/SDL_PauseAudio.3
docs/man3/SDL_PeepEvents.3
docs/man3/SDL_PixelFormat.3
docs/man3/SDL_PollEvent.3
docs/man3/SDL_PumpEvents.3
docs/man3/SDL_PushEvent.3
docs/man3/SDL_Quit.3
docs/man3/SDL_QuitEvent.3
docs/man3/SDL_QuitSubSystem.3
docs/man3/SDL_RWFromFile.3
docs/man3/SDL_Rect.3
docs/man3/SDL_RemoveTimer.3
docs/man3/SDL_ResizeEvent.3
docs/man3/SDL_SaveBMP.3
docs/man3/SDL_SemPost.3
docs/man3/SDL_SemTryWait.3
docs/man3/SDL_SemValue.3
docs/man3/SDL_SemWait.3
docs/man3/SDL_SemWaitTimeout.3
docs/man3/SDL_SetAlpha.3
docs/man3/SDL_SetClipRect.3
docs/man3/SDL_SetColorKey.3
docs/man3/SDL_SetColors.3
docs/man3/SDL_SetCursor.3
docs/man3/SDL_SetEventFilter.3
docs/man3/SDL_SetGamma.3
docs/man3/SDL_SetGammaRamp.3
docs/man3/SDL_SetModState.3
docs/man3/SDL_SetPalette.3
docs/man3/SDL_SetTimer.3
docs/man3/SDL_SetVideoMode.3
docs/man3/SDL_ShowCursor.3
docs/man3/SDL_Surface.3
docs/man3/SDL_SysWMEvent.3
docs/man3/SDL_ThreadID.3
docs/man3/SDL_UnlockAudio.3
docs/man3/SDL_UnlockSurface.3
docs/man3/SDL_UnlockYUVOverlay.3
docs/man3/SDL_UpdateRect.3
docs/man3/SDL_UpdateRects.3
docs/man3/SDL_UserEvent.3
docs/man3/SDL_VideoDriverName.3
docs/man3/SDL_VideoInfo.3
docs/man3/SDL_VideoModeOK.3
docs/man3/SDL_WM_GetCaption.3
docs/man3/SDL_WM_GrabInput.3
docs/man3/SDL_WM_IconifyWindow.3
docs/man3/SDL_WM_SetCaption.3
docs/man3/SDL_WM_SetIcon.3
docs/man3/SDL_WM_ToggleFullScreen.3
docs/man3/SDL_WaitEvent.3
docs/man3/SDL_WaitThread.3
docs/man3/SDL_WarpMouse.3
docs/man3/SDL_WasInit.3
docs/man3/SDL_keysym.3
docs/man3/SDL_mutexP.3
docs/man3/SDL_mutexV.3
include/.cvsignore
include/Makefile.am
include/SDL.h
include/SDL_active.h
include/SDL_audio.h
include/SDL_byteorder.h
include/SDL_cdrom.h
include/SDL_copying.h
include/SDL_endian.h
include/SDL_error.h
include/SDL_events.h
include/SDL_getenv.h
include/SDL_joystick.h
include/SDL_keyboard.h
include/SDL_keysym.h
include/SDL_main.h
include/SDL_mouse.h
include/SDL_mutex.h
include/SDL_quit.h
include/SDL_rwops.h
include/SDL_syswm.h
include/SDL_thread.h
include/SDL_timer.h
include/SDL_types.h
include/SDL_version.h
include/SDL_video.h
include/begin_code.h
include/close_code.h
install-sh
ltconfig
ltmain.sh
missing
mkinstalldirs
sdl-config.in
sdl.m4
src/.cvsignore
src/Makefile.am
src/SDL.c
src/SDL_error.c
src/SDL_error_c.h
src/SDL_fatal.c
src/SDL_fatal.h
src/SDL_getenv.c
src/audio/.cvsignore
src/audio/Makefile.am
src/audio/SDL_audio.c
src/audio/SDL_audio_c.h
src/audio/SDL_audiocvt.c
src/audio/SDL_audiodev.c
src/audio/SDL_audiodev_c.h
src/audio/SDL_audiomem.c
src/audio/SDL_audiomem.h
src/audio/SDL_mixer.c
src/audio/SDL_sysaudio.h
src/audio/SDL_wave.c
src/audio/SDL_wave.h
src/audio/alsa/.cvsignore
src/audio/alsa/Makefile.am
src/audio/alsa/SDL_alsa_audio.c
src/audio/alsa/SDL_alsa_audio.h
src/audio/amigaos/Makefile.am
src/audio/amigaos/SDL_ahiaudio.c
src/audio/amigaos/SDL_audio.c
src/audio/amigaos/SDL_lowaudio.h
src/audio/amigaos/SDL_sysaudio.h
src/audio/arts/.cvsignore
src/audio/arts/Makefile.am
src/audio/arts/SDL_artsaudio.c
src/audio/arts/SDL_artsaudio.h
src/audio/baudio/.cvsignore
src/audio/baudio/Makefile.am
src/audio/baudio/SDL_beaudio.cc
src/audio/baudio/SDL_beaudio.h
src/audio/dma/.cvsignore
src/audio/dma/Makefile.am
src/audio/dma/SDL_dmaaudio.c
src/audio/dma/SDL_dmaaudio.h
src/audio/dmedia/.cvsignore
src/audio/dmedia/Makefile.am
src/audio/dmedia/SDL_irixaudio.c
src/audio/dmedia/SDL_irixaudio.h
src/audio/dsp/.cvsignore
src/audio/dsp/Makefile.am
src/audio/dsp/SDL_dspaudio.c
src/audio/dsp/SDL_dspaudio.h
src/audio/esd/.cvsignore
src/audio/esd/Makefile.am
src/audio/esd/SDL_esdaudio.c
src/audio/esd/SDL_esdaudio.h
src/audio/macrom/.cvsignore
src/audio/macrom/Makefile.am
src/audio/macrom/SDL_romaudio.c
src/audio/macrom/SDL_romaudio.h
src/audio/nas/.cvsignore
src/audio/nas/Makefile.am
src/audio/nas/SDL_nasaudio.c
src/audio/nas/SDL_nasaudio.h
src/audio/nto/.cvsignore
src/audio/nto/Makefile.am
src/audio/nto/SDL_nto_audio.c
src/audio/nto/SDL_nto_audio.h
src/audio/paudio/.cvsignore
src/audio/paudio/Makefile.am
src/audio/paudio/SDL_paudio.c
src/audio/paudio/SDL_paudio.h
src/audio/sun/.cvsignore
src/audio/sun/Makefile.am
src/audio/sun/SDL_sunaudio.c
src/audio/sun/SDL_sunaudio.h
src/audio/ums/.cvsignore
src/audio/ums/Makefile.am
src/audio/ums/SDL_umsaudio.c
src/audio/ums/SDL_umsaudio.h
src/audio/windib/.cvsignore
src/audio/windib/Makefile.am
src/audio/windib/SDL_dibaudio.c
src/audio/windib/SDL_dibaudio.h
src/audio/windx5/.cvsignore
src/audio/windx5/Makefile.am
src/audio/windx5/SDL_dx5audio.c
src/audio/windx5/SDL_dx5audio.h
src/cdrom/.cvsignore
src/cdrom/Makefile.am
src/cdrom/SDL_cdrom.c
src/cdrom/SDL_syscdrom.h
src/cdrom/aix/SDL_syscdrom.c
src/cdrom/beos/SDL_syscdrom.c
src/cdrom/dummy/SDL_syscdrom.c
src/cdrom/freebsd/SDL_syscdrom.c
src/cdrom/linux/SDL_syscdrom.c
src/cdrom/macos/SDL_syscdrom.c
src/cdrom/macos/SDL_syscdrom_c.h
src/cdrom/openbsd/SDL_syscdrom.c
src/cdrom/qnx/SDL_syscdrom.c
src/cdrom/win32/SDL_syscdrom.c
src/endian/.cvsignore
src/endian/Makefile.am
src/endian/SDL_endian.c
src/events/.cvsignore
src/events/Makefile.am
src/events/SDL_active.c
src/events/SDL_events.c
src/events/SDL_events_c.h
src/events/SDL_expose.c
src/events/SDL_keyboard.c
src/events/SDL_mouse.c
src/events/SDL_quit.c
src/events/SDL_resize.c
src/events/SDL_sysevents.h
src/file/.cvsignore
src/file/Makefile.am
src/file/SDL_rwops.c
src/hermes/.cvsignore
src/hermes/COPYING.LIB
src/hermes/HeadMMX.h
src/hermes/HeadX86.h
src/hermes/Makefile.am
src/hermes/README
src/hermes/mmx_main.asm
src/hermes/mmxp2_32.asm
src/hermes/x86_main.asm
src/hermes/x86p_16.asm
src/hermes/x86p_32.asm
src/joystick/.cvsignore
src/joystick/Makefile.am
src/joystick/SDL_joystick.c
src/joystick/SDL_joystick_c.h
src/joystick/SDL_sysjoystick.h
src/joystick/beos/.cvsignore
src/joystick/beos/Makefile.am
src/joystick/beos/SDL_bejoystick.cc
src/joystick/dummy/.cvsignore
src/joystick/dummy/Makefile.am
src/joystick/dummy/SDL_sysjoystick.c
src/joystick/linux/.cvsignore
src/joystick/linux/Makefile.am
src/joystick/linux/SDL_sysjoystick.c
src/joystick/macos/.cvsignore
src/joystick/macos/Makefile.am
src/joystick/macos/SDL_sysjoystick.c
src/joystick/win32/.cvsignore
src/joystick/win32/Makefile.am
src/joystick/win32/SDL_mmjoystick.c
src/main/.cvsignore
src/main/Makefile.am
src/main/beos/SDL_BeApp.cc
src/main/beos/SDL_BeApp.h
src/main/beos/exports/Makefile
src/main/beos/exports/SDL.exp
src/main/beos/exports/genexp.pl
src/main/dummy.c
src/main/linux/SDL_main.c
src/main/macos/SDL.r
src/main/macos/SDL_main.c
src/main/macos/SIZE.r
src/main/macos/exports/Makefile
src/main/macos/exports/SDL.x
src/main/macos/exports/gendef.pl
src/main/win32/SDL_main.c
src/main/win32/exports/Makefile
src/main/win32/exports/SDL.def
src/main/win32/exports/gendef.pl
src/thread/.cvsignore
src/thread/Makefile.am
src/thread/SDL_systhread.h
src/thread/SDL_thread.c
src/thread/SDL_thread_c.h
src/thread/amigaos/SDL_syssem.c
src/thread/amigaos/SDL_systhread.c
src/thread/amigaos/SDL_systhread_c.h
src/thread/amigaos/SDL_thread.c
src/thread/beos/SDL_syssem.c
src/thread/beos/SDL_systhread.c
src/thread/beos/SDL_systhread_c.h
src/thread/generic/SDL_syscond.c
src/thread/generic/SDL_syscond_c.h
src/thread/generic/SDL_sysmutex.c
src/thread/generic/SDL_sysmutex_c.h
src/thread/generic/SDL_syssem.c
src/thread/generic/SDL_syssem_c.h
src/thread/generic/SDL_systhread.c
src/thread/generic/SDL_systhread_c.h
src/thread/irix/SDL_systhread.c
src/thread/irix/SDL_systhread_c.h
src/thread/linux/SDL_syscond.c
src/thread/linux/SDL_sysmutex.c
src/thread/linux/SDL_sysmutex_c.h
src/thread/linux/SDL_syssem.c
src/thread/linux/SDL_systhread.c
src/thread/linux/SDL_systhread_c.h
src/thread/linux/clone.S
src/thread/win32/SDL_sysmutex.c
src/thread/win32/SDL_syssem.c
src/thread/win32/SDL_systhread.c
src/thread/win32/SDL_systhread_c.h
src/timer/.cvsignore
src/timer/Makefile.am
src/timer/SDL_systimer.h
src/timer/SDL_timer_c.h
src/timer/amigaos/SDL_systimer.c
src/timer/beos/SDL_systimer.c
src/timer/linux/SDL_systimer.c
src/timer/macos/FastTimes.c
src/timer/macos/FastTimes.h
src/timer/macos/SDL_MPWtimer.c
src/timer/macos/SDL_systimer.c
src/timer/win32/SDL_systimer.c
src/video/.cvsignore
src/video/Makefile.am
src/video/SDL_RLEaccel.c
src/video/SDL_RLEaccel_c.h
src/video/SDL_blit.c
src/video/SDL_blit.h
src/video/SDL_blit_0.c
src/video/SDL_blit_1.c
src/video/SDL_blit_A.c
src/video/SDL_blit_A.h
src/video/SDL_blit_N.c
src/video/SDL_bmp.c
src/video/SDL_cursor.c
src/video/SDL_cursor_c.h
src/video/SDL_gamma.c
src/video/SDL_glfuncs.h
src/video/SDL_leaks.h
src/video/SDL_memops.h
src/video/SDL_pixels.c
src/video/SDL_pixels_c.h
src/video/SDL_stretch.c
src/video/SDL_stretch_c.h
src/video/SDL_surface.c
src/video/SDL_sysvideo.h
src/video/SDL_video.c
src/video/SDL_yuv.c
src/video/SDL_yuv_mmx.c
src/video/SDL_yuv_sw.c
src/video/SDL_yuv_sw_c.h
src/video/SDL_yuvfuncs.h
src/video/aalib/.cvsignore
src/video/aalib/Makefile.am
src/video/aalib/SDL_aaevents.c
src/video/aalib/SDL_aaevents_c.h
src/video/aalib/SDL_aamouse.c
src/video/aalib/SDL_aamouse_c.h
src/video/aalib/SDL_aavideo.c
src/video/aalib/SDL_aavideo.h
src/video/blank_cursor.h
src/video/bwindow/.cvsignore
src/video/bwindow/Makefile.am
src/video/bwindow/SDL_BView.h
src/video/bwindow/SDL_BWin.h
src/video/bwindow/SDL_lowvideo.h
src/video/bwindow/SDL_sysevents.cc
src/video/bwindow/SDL_sysevents_c.h
src/video/bwindow/SDL_sysmouse.cc
src/video/bwindow/SDL_sysmouse_c.h
src/video/bwindow/SDL_sysvideo.cc
src/video/bwindow/SDL_syswm.cc
src/video/bwindow/SDL_syswm_c.h
src/video/cybergfx/.cvsignore
src/video/cybergfx/Makefile.am
src/video/cybergfx/SDL_amigaevents.c
src/video/cybergfx/SDL_amigaevents_c.h
src/video/cybergfx/SDL_amigamouse.c
src/video/cybergfx/SDL_amigamouse_c.h
src/video/cybergfx/SDL_cgxaccel.c
src/video/cybergfx/SDL_cgxgl.c
src/video/cybergfx/SDL_cgxgl_c.h
src/video/cybergfx/SDL_cgximage.c
src/video/cybergfx/SDL_cgximage_c.h
src/video/cybergfx/SDL_cgxmodes.c
src/video/cybergfx/SDL_cgxmodes_c.h
src/video/cybergfx/SDL_cgxvideo.c
src/video/cybergfx/SDL_cgxvideo.h
src/video/cybergfx/SDL_cgxwm.c
src/video/cybergfx/SDL_cgxwm_c.h
src/video/default_cursor.h
src/video/dga/.cvsignore
src/video/dga/Makefile.am
src/video/dga/SDL_dgaevents.c
src/video/dga/SDL_dgaevents_c.h
src/video/dga/SDL_dgamouse.c
src/video/dga/SDL_dgamouse_c.h
src/video/dga/SDL_dgavideo.c
src/video/dga/SDL_dgavideo.h
src/video/fbcon/.cvsignore
src/video/fbcon/3dfx_mmio.h
src/video/fbcon/3dfx_regs.h
src/video/fbcon/Makefile.am
src/video/fbcon/SDL_fb3dfx.c
src/video/fbcon/SDL_fb3dfx.h
src/video/fbcon/SDL_fbelo.c
src/video/fbcon/SDL_fbelo.h
src/video/fbcon/SDL_fbevents.c
src/video/fbcon/SDL_fbevents_c.h
src/video/fbcon/SDL_fbkeys.h
src/video/fbcon/SDL_fbmatrox.c
src/video/fbcon/SDL_fbmatrox.h
src/video/fbcon/SDL_fbmouse.c
src/video/fbcon/SDL_fbmouse_c.h
src/video/fbcon/SDL_fbvideo.c
src/video/fbcon/SDL_fbvideo.h
src/video/fbcon/matrox_mmio.h
src/video/fbcon/matrox_regs.h
src/video/ggi/.cvsignore
src/video/ggi/Makefile.am
src/video/ggi/SDL_ggievents.c
src/video/ggi/SDL_ggievents_c.h
src/video/ggi/SDL_ggikeys.h
src/video/ggi/SDL_ggimouse.c
src/video/ggi/SDL_ggimouse_c.h
src/video/ggi/SDL_ggivideo.c
src/video/ggi/SDL_ggivideo.h
src/video/maccommon/.cvsignore
src/video/maccommon/Makefile.am
src/video/maccommon/SDL_lowvideo.h
src/video/maccommon/SDL_macevents.c
src/video/maccommon/SDL_macevents_c.h
src/video/maccommon/SDL_macgl.c
src/video/maccommon/SDL_macgl_c.h
src/video/maccommon/SDL_mackeys.h
src/video/maccommon/SDL_macmouse.c
src/video/maccommon/SDL_macmouse_c.h
src/video/maccommon/SDL_macwm.c
src/video/maccommon/SDL_macwm_c.h
src/video/macdsp/.cvsignore
src/video/macdsp/Makefile.am
src/video/macdsp/SDL_dspvideo.c
src/video/macdsp/SDL_dspvideo.h
src/video/macrom/.cvsignore
src/video/macrom/Makefile.am
src/video/macrom/SDL_romvideo.c
src/video/macrom/SDL_romvideo.h
src/video/photon/.cvsignore
src/video/photon/Makefile.am
src/video/photon/SDL_ph_events.c
src/video/photon/SDL_ph_events_c.h
src/video/photon/SDL_ph_image.c
src/video/photon/SDL_ph_image_c.h
src/video/photon/SDL_ph_modes.c
src/video/photon/SDL_ph_modes_c.h
src/video/photon/SDL_ph_mouse.c
src/video/photon/SDL_ph_mouse_c.h
src/video/photon/SDL_ph_video.c
src/video/photon/SDL_ph_video.h
src/video/photon/SDL_ph_wm.c
src/video/photon/SDL_ph_wm_c.h
src/video/photon/SDL_phyuv.c
src/video/photon/SDL_phyuv_c.h
src/video/svga/.cvsignore
src/video/svga/Makefile.am
src/video/svga/SDL_svgaevents.c
src/video/svga/SDL_svgaevents_c.h
src/video/svga/SDL_svgamouse.c
src/video/svga/SDL_svgamouse_c.h
src/video/svga/SDL_svgavideo.c
src/video/svga/SDL_svgavideo.h
src/video/wincommon/.cvsignore
src/video/wincommon/Makefile.am
src/video/wincommon/SDL_lowvideo.h
src/video/wincommon/SDL_sysevents.c
src/video/wincommon/SDL_sysmouse.c
src/video/wincommon/SDL_sysmouse_c.h
src/video/wincommon/SDL_syswm.c
src/video/wincommon/SDL_syswm_c.h
src/video/wincommon/SDL_wingl.c
src/video/wincommon/SDL_wingl_c.h
src/video/wincommon/wmmsg.h
src/video/windib/.cvsignore
src/video/windib/Makefile.am
src/video/windib/SDL_dibevents.c
src/video/windib/SDL_dibevents_c.h
src/video/windib/SDL_dibvideo.c
src/video/windib/SDL_dibvideo.h
src/video/windib/SDL_vkeys.h
src/video/windx5/.cvsignore
src/video/windx5/Makefile.am
src/video/windx5/SDL_dx5events.c
src/video/windx5/SDL_dx5events_c.h
src/video/windx5/SDL_dx5video.c
src/video/windx5/SDL_dx5video.h
src/video/windx5/SDL_dx5yuv.c
src/video/windx5/SDL_dx5yuv_c.h
src/video/windx5/directx.h
src/video/x11/.cvsignore
src/video/x11/Makefile.am
src/video/x11/SDL_x11dga.c
src/video/x11/SDL_x11dga_c.h
src/video/x11/SDL_x11events.c
src/video/x11/SDL_x11events_c.h
src/video/x11/SDL_x11gamma.c
src/video/x11/SDL_x11gamma_c.h
src/video/x11/SDL_x11gl.c
src/video/x11/SDL_x11gl_c.h
src/video/x11/SDL_x11image.c
src/video/x11/SDL_x11image_c.h
src/video/x11/SDL_x11modes.c
src/video/x11/SDL_x11modes_c.h
src/video/x11/SDL_x11mouse.c
src/video/x11/SDL_x11mouse_c.h
src/video/x11/SDL_x11video.c
src/video/x11/SDL_x11video.h
src/video/x11/SDL_x11wm.c
src/video/x11/SDL_x11wm_c.h
src/video/x11/SDL_x11yuv.c
src/video/x11/SDL_x11yuv_c.h
strip_fPIC.sh
test/.cvsignore
test/.gdbinit
test/COPYING
test/Makefile.am
test/README
test/acinclude.m4
test/autogen.sh
test/checkkeys.c
test/config.guess
test/config.sub
test/configure.in
test/graywin.c
test/icon.bmp
test/install-sh
test/loopwave.c
test/missing
test/mkinstalldirs
test/picture.xbm
test/sail.bmp
test/sample.bmp
test/sample.wav
test/testalpha.c
test/testbitmap.c
test/testcdrom.c
test/testerror.c
test/testgamma.c
test/testgl.c
test/testhread.c
test/testjoystick.c
test/testkeys.c
test/testlock.c
test/testpalette.c
test/testsem.c
test/testsprite.c
test/testtimer.c
test/testtypes.c
test/testver.c
test/testvidinfo.c
test/testwin.c
test/testwm.c
test/threadwin.c
test/torturethread.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.cvsignore	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,10 @@
+Makefile.in
+configure
+aclocal.m4
+config.log
+config.cache
+libtool
+config.status
+Makefile
+sdl-config
+SDL.spec
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/BUGS	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,199 @@
+
+All:
+	Audio rate conversion is only implemented by multiplying or dividing
+	by a power of two.  This is a side-effect of the requirement that the
+	raw audio buffer size be a power of two, and can hopefully be fixed.
+	This means 8 KHz audio converted to 22 KHz ends up being 16 KHz. :-/
+
+	When the implementation is writing directly to video memory the mouse
+	cursor doesn't work properly.  Applications which do this should use
+	their own mouse cursor and call SDL_ShowCursor(0) to hide the system
+	cursor.
+
+Linux:
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+	The AAlib, GGI, and SVGAlib video drivers are not heavily tested.
+
+Win32:
+	The MCI driver can't tell if the CD-ROM drive is paused or stopped.
+
+	The SDL_INIT_EVENTTHREAD flag is not supported on Win32
+	(Idea: create a separate DirectInput polling thread)
+	The main purpose of this flag is for smooth cursor motion in
+	fullscreen environments.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	This requires the ToUnicode() API which is only implemented on
+	Windows NT/2000, not on Windows 95/98.
+	Latin-1 keyboard input works fine.
+
+	Joysticks are only supported under the Win32 MultiMedia API,
+	DirectInput support is not yet implemented.
+
+BeOS:
+	BePPC is not supported, apparently not even by Be Inc.
+
+	SDL_WM_GrabInput() is not implemented.
+	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
+	to prevent the user from switching input and mouse focus away from
+	the SDL application.
+
+	Continuous relative mouse motion is not implemented.
+
+	The CD driver doesn't detect SCSI CD-ROMs yet.
+
+	Wide UNICODE character input (Kanji, etc.) has not been tested.
+	Latin-1 keyboard input works fine.
+
+MacOS:
+	Palette handling isn't implemented in windowed mode yet.
+
+	Audio hasn't been extensively tested, in particular the locking
+	isn't implemented and mixer routines may not call malloc() or free()
+	because they are called at interrupt time.
+
+	SDL_WM_GrabInput() is not implemented.
+	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
+	to prevent the user from switching input and mouse focus away from
+	the SDL application.
+
+	Continuous relative mouse motion is not implemented.
+
+	SDL_AddTimer() and SDL_RemoveTimer() haven't been implemented yet.
+
+	Not all of the keys are properly recognized on the keyboard.
+
+MacOS X:
+	Fullscreen mode doesn't work - it requires the QuickTime framework
+	and that the new SDL window gets raised to the top of the Z order.
+
+	Palette handling isn't implemented in windowed mode yet.
+
+	Native sound and video routines are not finished, though Carbon
+	seems to work fairly well.
+
+	Joysticks and CD-ROM functions are not implemented yet.
+
+	SDL_WM_GrabInput() is not implemented.
+	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
+	to prevent the user from switching input and mouse focus away from
+	the SDL application.
+
+	Continuous relative mouse motion is not implemented.
+
+	Not all of the keys are properly recognized on the keyboard.
+
+	MacOS X seems to have a broken pthread_cancel() implementation.
+
+FreeBSD:
+	pthread_cancel() isn't supported by FreeBSD 3.X, so threads don't
+	work on versions of FreeBSD earlier than 4.0.
+
+	The CD-ROM handling doesn't work completely.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+Solaris:
+	The joystick functions are not implemented yet.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+IRIX:
+	The CD-ROM handling doesn't work completely.
+
+	The joystick functions are not implemented yet.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+OpenBSD:  -= NOT YET SUPPORTED =-
+	This is reported to work, but I haven't verified this.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+OSF/Tru64:  -= NOT YET SUPPORTED =-
+	The audio functions are not implemented yet.
+
+	Joysticks and CD-ROM functions are not implemented yet.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+AIX:  -= NOT YET SUPPORTED =-
+	This port has only been tested with AIX 4.3.3
+
+	The OpenGL support doesn't work yet.
+
+	The joystick subsystem isn't implemented yet.
+
+	Endian detection doesn't work yet - needs a unique CPP symbol.
+
+	Wide UNICODE character input (Kanji, etc.) is not yet supported.
+	It requires handling of keyboard mapping events and using the XIM
+	input translation extension.  I will implement it as requested.
+	Latin-1 keyboard input works fine.
+
+	The AIX port was done by Carsten.Griwodz@KOM.tu-darmstadt.de
+	More information on this port is available at:
+	http://www.kom.e-technik.tu-darmstadt.de/~griff/SDL/
+
+QNX:  -= NOT YET SUPPORTED =-
+	Configuration doesn't work right, Makefiles still need to be
+	tweaked (need to add libraries to any apps that use sdl_config
+	to figure out what libs they need).
+ 
+	Only static libraries are being made, no shared ones.
+ 
+	The only hardware surface is the primary view surface.
+ 
+	Mouse events don't seem to be working right.
+ 
+	Fullscreen doesn't display correctly.
+ 
+	The software surfaces could use some speed up.
+ 
+	Many of the test apps segment violate on exit, and I'm not sure
+	they're all working either
+ 
+	It doesn't look like the OpenGL stuff is there. (did a grep for
+	PdCreateOpenGLContext, nothing found).
+ 
+	The mouse cursor doesn't look right.
+
+AmigaOS:  -= NOT YET SUPPORTED =-
+	The OpenGL support isn't implemented yet.
+
+	SDL_WM_GrabInput() is not implemented.
+	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
+	to prevent the user from switching input and mouse focus away from
+	the SDL application.
+
+	Continuous relative mouse motion is not implemented.
+
+	Audio can work, but isn't completely integrated in the CVS
+	version of SDL.
+
+	The joystick subsystem isn't implemented yet.
+
+	There's some confusion about the multi-threaded synchronization
+	primitives on AmigaOS, so mutexes and semaphores aren't correctly
+	implemented yet.
+
+	The AmigaOS port was done by Gabriele.Greco@galactica.it
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/COPYING	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,437 @@
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1991 Free Software Foundation, Inc.
+    		    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the library GPL.  It is
+ numbered 2 because it goes with version 2 of the ordinary GPL.]
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Library General Public License, applies to some
+specially designated Free Software Foundation software, and to any
+other libraries whose authors decide to use it.  You can use it for
+your libraries, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if
+you distribute copies of the library, or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link a program with the library, you must provide
+complete object files to the recipients so that they can relink them
+with the library, after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  Our method of protecting your rights has two steps: (1) copyright
+the library, and (2) offer you this license which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  Also, for each distributor's protection, we want to make certain
+that everyone understands that there is no warranty for this free
+library.  If the library is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original
+version, so that any problems introduced by others will not reflect on
+the original authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that companies distributing free
+software will individually obtain patent licenses, thus in effect
+transforming the program into proprietary software.  To prevent this,
+we have made it clear that any patent must be licensed for everyone's
+free use or not licensed at all.
+
+  Most GNU software, including some libraries, is covered by the ordinary
+GNU General Public License, which was designed for utility programs.  This
+license, the GNU Library General Public License, applies to certain
+designated libraries.  This license is quite different from the ordinary
+one; be sure to read it in full, and don't assume that anything in it is
+the same as in the ordinary license.
+
+  The reason we have a separate public license for some libraries is that
+they blur the distinction we usually make between modifying or adding to a
+program and simply using it.  Linking a program with a library, without
+changing the library, is in some sense simply using the library, and is
+analogous to running a utility program or application program.  However, in
+a textual and legal sense, the linked executable is a combined work, a
+derivative of the original library, and the ordinary General Public License
+treats it as such.
+
+  Because of this blurred distinction, using the ordinary General
+Public License for libraries did not effectively promote software
+sharing, because most developers did not use the libraries.  We
+concluded that weaker conditions might promote sharing better.
+
+  However, unrestricted linking of non-free programs would deprive the
+users of those programs of all benefit from the free status of the
+libraries themselves.  This Library General Public License is intended to
+permit developers of non-free programs to use free libraries, while
+preserving your freedom as a user of such programs to change the free
+libraries that are incorporated in them.  (We have not seen how to achieve
+this as regards changes in header files, but we have achieved it as regards
+changes in the actual functions of the Library.)  The hope is that this
+will lead to faster development of free libraries.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, while the latter only
+works together with the library.
+
+  Note that it is possible for a library to be covered by the ordinary
+General Public License rather than by this special one.
+
+		  GNU LIBRARY GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library which
+contains a notice placed by the copyright holder or other authorized
+party saying it may be distributed under the terms of this Library
+General Public License (also called "this License").  Each licensee is
+addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+  
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also compile or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    c) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    d) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the source code distributed need not include anything that is normally
+distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Library General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+			    NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CREDITS	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,51 @@
+
+Simple DirectMedia Layer CREDITS
+Thanks to everyone who made this possible, including:
+
+* Cliff Matthews, for giving me a reason to start this project. :)
+ -- Executor rocks!  *grin*
+
+* Scott Call, for making a home for SDL on the 'Net, Thanks! :)
+
+* Michael Samuel and Loki Entertainment Software, for the SDL mailing list
+
+* Patrick Trainor and Jim Boucher, for the QNX Neutrino port
+
+* Gabriele Greco, for the Amiga port
+
+* Stan Shebs, for the initial MacOS X port
+
+* Carsten Griwodz for the AIX port
+
+* Mattias Engdegerd, for help with the Solaris port and lots of other code
+
+* Kent B Mein, for a place to do the IRIX port
+
+* Ash, for a place to do the OSF/1 Alpha port
+
+* David Sowsy, for help with the BeOS port
+
+* Max Watson, Matt Slot, and Kyle for help with the MacOS port
+
+* Jon Taylor for the GGI front-end
+
+* Paulus Esterhazy, for the Visual C++ testing and libraries
+
+* Brenda Tantzen, for Metrowerks CodeWarrior on MacOS
+
+* Chris Nentwich, for the Hermes assembly blitters
+
+* Michael Vance and Jim Kutter for the X11 OpenGL support
+
+* Peter Wiklund, for the 1998 winning SDL logo,
+  and Arto Hamara, Steven Wong, and Kent Mein for other logo entries.
+
+* Stephane Peter, for the AAlib front-end and multi-threaded timer idea.
+
+ And a big hand to everyone else who gave me appreciation, advice,
+ and suggestions, especially the good folks on the SDL mailing list.
+
+THANKS! :)
+
+  -- Sam Lantinga			<slouken@libsdl.org>
+
Binary file CWprojects.sea.bin has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/INSTALL	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,22 @@
+
+To compile and install SDL:
+
+    1.  Run './configure; make; make install'
+
+        If you are cross-compiling from Linux to Win32, you should read
+        the file README.Win32
+
+        If you are compiling using Visual C++ on Win32, you should read
+        the file VisualC.html
+
+    2.  Look at the example programs in ./test, and check out the HTML
+        documentation in ./docs to see how to use the SDL library.
+
+    3.  Join the SDL developer mailing list by sending E-mail to
+    	majordomo@lokigames.com
+        and including the line "subscribe sdl" in the body.
+
+
+	
+That's it!
+Sam Lantinga <slouken@libsdl.org>
Binary file MPWmake.sea.bin has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Makefile.am	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,85 @@
+# The top-level input Makefile for SDL
+
+# require automake 1.4
+AUTOMAKE_OPTIONS = 1.4
+
+## Any directories that you want built and installed should go here.
+SUBDIRS = src include docs
+
+## Any directories you want a part of the distribution should be listed
+## here, as well as have a Makefile generated at the end of configure.in
+##
+## This only works for subdirectories one level deep.
+DIST_SUBDIRS = $(SUBDIRS) docs
+
+# SDL runtime configuration script
+bin_SCRIPTS = sdl-config
+
+# All the rest of the distributed files
+EXTRA_DIST =		\
+	BUGS		\
+	TODO		\
+        COPYING		\
+        CREDITS		\
+        INSTALL		\
+        README		\
+        README-SDL.txt	\
+        README.Win32	\
+        README.WinCE	\
+        README.MacOS	\
+        README.MacOSX	\
+        VisualC.html	\
+        VisualC.zip	\
+        MPWmake.sea.bin	\
+	CWprojects.sea.bin \
+        WhatsNew	\
+        docs.html	\
+        sdl.m4		\
+        autogen.sh	\
+        strip_fPIC.sh
+
+# M4 macro file for inclusion with autoconf
+m4datadir = $(datadir)/aclocal
+m4data_DATA = sdl.m4
+
+# Rule to build tar-gzipped distribution package
+$(PACKAGE)-$(VERSION).tar.gz: dist
+
+# Rule to build RPM distribution package
+rpm: $(PACKAGE)-$(VERSION).tar.gz
+	cp $(PACKAGE)-$(VERSION).tar.gz /usr/src/redhat/SOURCES
+	rpm -ba SDL.spec
+
+# Rule to rebuild the export lists for BeOS, MacOS and Win32.
+exports:
+	(cd src/main/beos/exports; $(MAKE))
+	(cd src/main/macos/exports; $(MAKE))
+	(cd src/main/win32/exports; $(MAKE))
+
+# Rule to force automake to rebuild the library
+changed:
+	@echo "This build target is no longer necessary"
+
+# Rule to install the libraries only - prevent rebuilding apps
+install-lib:
+	cd src && $(MAKE) install-libLTLIBRARIES
+
+# Run ldconfig after installing the library:
+install-hook:
+	-ldconfig
+
+# Grab the test programs for the distribution:
+dist-hook:
+	if test -f test/Makefile; then (cd test; make distclean); fi
+	cp -rp test $(distdir)
+	rm -rf `find $(distdir) -type d -name CVS -print`
+
+# Create a CVS snapshot that people can run update -d on
+CVSROOT = :pserver:guest@cvs.lokigames.com:/cvs
+snapshot:
+	cvs -d $(CVSROOT) login
+	cvs -d $(CVSROOT) checkout -r devel_1_1_0 SDL
+	(cd SDL && ./autogen.sh)
+	mv SDL SDL-1.2
+	tar zcvf $(HOME)/SDL-1.2.tar.gz SDL-1.2
+	rm -rf SDL-1.2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,44 @@
+
+                         Simple DirectMedia Layer
+
+                                  (SDL)
+
+                                Version 1.2
+
+---
+http://www.libsdl.org/
+
+This is the Simple DirectMedia Layer, a generic API that provides low
+level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL,
+and 2D framebuffer across multiple platforms.
+
+SDL is written in C, but works with C++ natively, and has bindings to
+several other languages, including Ada, Eiffel, ML, Perl, and Python. 
+
+The current version supports Linux, Windows, BeOS, MacOS, MacOS X,
+FreeBSD, Solaris, and IRIX.  The code contains support for Windows CE,
+OpenBSD, NetBSD, AIX, OSF/Tru64, and QNX, but these are not yet
+officially supported.
+
+This library is distributed under GNU LGPL version 2, which can be
+found in the file  "COPYING".  This license allows you to use SDL
+freely in commercial programs as long as you link with the dynamic
+library.
+
+The best way to learn how to use SDL is to check out the header files in
+the "include" subdirectory and the programs in the "test" subdirectory.
+The header files and test programs are well commented and always up to date.
+More documentation is available in HTML format in "./docs/index.html"
+
+The test programs in the "test" subdirectory are in the public domain.
+
+Frequently asked questions are answered online:
+	http://www.libsdl.org/faqs.html
+
+If you need help with the library, or just want to discuss SDL related
+issues, you can join the developers mailing list:
+	http://www.libsdl.org/mailing-list.html
+
+Enjoy!
+	Sam Lantinga				(slouken@libsdl.org)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README-SDL.txt	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,13 @@
+
+Please distribute this file with the SDL runtime environment:
+
+The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library
+designed to make it easy to write multi-media software, such as games and
+emulators.
+
+The Simple DirectMedia Layer library source code is available from:
+http://www.libsdl.org/
+
+This library is distributed under the terms of the GNU LGPL license:
+http://www.gnu.org/copyleft/lesser.html
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.CVS	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,13 @@
+
+The latest development version of SDL is available via CVS:
+
+cvs -d :pserver:guest@cvs.lokigames.com:/cvs login
+# use the password "guest"
+cvs -d :pserver:guest@cvs.lokigames.com:/cvs checkout SDL
+
+When you check a fresh copy of SDL out of CVS, you need to generate
+the files used by make by running the "autogen.sh" script, which will
+run aclocal, automake, autoconf and then run configure.
+
+There is a web interface to cvs at http://cvs.lokigames.com/
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.MacOS	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,60 @@
+
+==============================================================================
+Using the Simple DirectMedia Layer with MacOS 7,8,9 on PPC
+==============================================================================
+
+These instructions are for people using the Apple MPW environment:
+http://developer.apple.com/tools/mpw-tools/
+
+CodeWarrior projects are available in the CWprojects directory.
+
+==============================================================================
+I.  Building the Simple DirectMedia Layer libraries:
+    (This step isn't necessary if you have the SDL binary distribution)
+
+  First, unpack the MPWmake.sea.hqx archive and move SDL.make into the
+  SDL directory.
+
+  Start MPW
+
+  Set the current directory within MPW to the SDL toplevel directory.
+
+  Build "SDL"  (Type Command-B and enter "SDL" in the dialog)
+
+  If everything compiles successfully, you now have the PPC libraries
+  "SDL" and "SDLmain.o" in the 'lib' subdirectory.
+
+==============================================================================
+II. Building the Simple DirectMedia Layer test programs:
+
+  First, unpack the MPWmake.sea.hqx archive, move the new rsrc directory to
+  the main SDL directory, and move the makefiles in the new test subdirectory
+  to the SDL 'test' subdirectory.
+
+  Start MPW
+
+  Set the current directory within MPW to the SDL 'test' subdirectory.
+
+  Build the programs that have an associated MPW makefile (file ending
+  with .make), including "testwin", "testalpha", and "graywin".
+
+  Copy the SDL library file into the test directory, and run!
+
+==============================================================================
+III. Building the Simple DirectMedia Layer demo programs:
+
+  Copy one of the test program Makefiles to the demo directory
+  and modify it to match the sources in the demo.
+
+==============================================================================
+IV.  Enjoy! :)
+
+  If you have a project you'd like me to know about, or want to ask questions,
+  go ahead and join the SDL developer's mailing list by sending e-mail to:
+
+	majordomo@lokigames.com
+
+  and put the line "subscribe sdl" in the body of the message.
+  
+==============================================================================
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.MacOSX	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,44 @@
+==============================================================================
+Using the Simple DirectMedia Layer with Mac OS X
+==============================================================================
+
+These instructions are for people using Apple's Mac OS X (pronounced
+"ten").
+
+From the developer's point of view, OS X is a sort of hybrid Mac and
+Unix system, and you have the option of using either traditional
+command line tools or Apple's IDE ProjectBuilder (PB).
+
+To build using the command line, use the standard configure and make
+process:
+
+	./configure
+	make
+	make install
+
+(You may need to create the subdirs of /usr/local manually.)
+
+For some reason, libtool doesn't run ranlib properly, so do this
+manually:
+
+	ranlib /usr/local/lib/libSDL.a
+
+To use the library once it's built, you need to use the "Carbon
+framework", which is the port of the old Mac Toolbox to OS X.
+To do this, use the -F and -framework arguments for compiling
+and linking, respectively:
+
+	cc -c myprog.c -I/usr/local/include/SDL -F/System/Library/Frameworks/Carbon.framework
+	cc myprog.o -L/usr/local/lib -lSDL -framework Carbon
+
+sdl-config knows about the linking path and -framework, so it's
+recommended to use it to fill in your Makefile variables.
+
+[Add instructions for how to build using PB]
+
+As of this writing (Sep 2000), OS X is in public beta.  This means
+that while most of the APIs are frozen, things are still subject to
+change, and many of the known problems will be resolved before the
+final release comes out.
+
+Known bugs are listed in the file "BUGS"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.Win32	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,53 @@
+
+==============================================================================
+Using the Simple DirectMedia Layer with Windows 95,NT
+==============================================================================
+
+These instructions are for people using the GNU free compilers.
+If you want to use Microsoft VC++ with SDL, read "VisualC.html"
+
+==============================================================================
+I.  Building the Simple DirectMedia Layer libraries:
+    (This step isn't necessary if you have the SDL binary distribution)
+
+  First, get gcc compiler for Win32, which can be found at:
+	http://www.libsdl.org/Xmingw32/index.html
+
+  Grab the cross configure and make scripts, and then run:
+	sh cross-configure.sh
+	sh cross-make.sh install
+  If you have already built SDL natively, you must do "make distclean"
+  before you build for Win32.
+
+  If everything compiles successfully, you now have SDL.dll and gcc archive
+  libraries libSDLmain.a and libSDL.a installed in /usr/local/cross-tools/
+
+==============================================================================
+II. Building the Simple DirectMedia Layer test programs:
+
+  This is easy once you have built the libraries:
+
+	cd test; sh ../cross-configure.sh; sh ../cross-make.sh
+
+==============================================================================
+III. Building the Simple DirectMedia Layer demo programs:
+
+  Go to the directory containing the demo you want to build and type:
+
+	sh cross-configure.sh; sh cross-make.sh
+
+  Be sure to rename the demo to use the .exe extension, or Windows will
+  not be able to execute it.
+
+==============================================================================
+IV.  Enjoy! :)
+
+  If you have a project you'd like me to know about, or want to ask questions,
+  go ahead and join the SDL developer's mailing list by sending e-mail to:
+
+	majordomo@lokigames.com
+
+  and put the line "subscribe sdl" in the body of the message.
+  
+==============================================================================
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.WinCE	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,37 @@
+
+NOTE:
+SDL is NOT SUPPORTED on the WinCE platform!  This is for experimental
+purposes only.
+
+There are several SDL features not available in the WinCE port of SDL.
+
+- DirectX is not yet available
+- Semaphores are not available
+- Joystick support is not available
+- CD-ROM control is not available
+
+In addition, there are several features that run in "degraded" mode:
+
+Preprocessor Symbol		Effect
+===================		=================================
+
+SDL_systimer.c:
+USE_GETTICKCOUNT		Less accurate values for SDL time functions
+USE_SETTIMER			Use only a single marginally accurate timer
+
+SDL_syswm.c:
+DISABLE_ICON_SUPPORT		Can't set the runtime window icon
+
+SDL_sysmouse.c:
+USE_STATIC_CURSOR		Only the arrow cursor is available
+
+SDL_sysevents.c:
+NO_GETKEYBOARDSTATE		Can't get modifier state on keyboard focus
+
+SDL_dibevents.c:
+NO_GETKEYBOARDSTATE		Very limited keycode translation
+
+SDL_dibvideo.c:
+NO_GETDIBITS			Can't distinguish between 15 bpp and 16 bpp
+NO_CHANGEDISPLAYSETTINGS	No fullscreen support
+NO_GAMMA_SUPPORT		Gamma correction not available
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SDL.spec.in	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,90 @@
+%define name @PACKAGE@
+%define version @VERSION@
+%define release 1
+
+Summary: Simple DirectMedia Layer
+Name: %{name}
+Version: %{version}
+Release: %{release}
+Source0: %{name}-%{version}.tar.gz
+URL: http://www.libsdl.org/
+Copyright: LGPL
+Group: System Environment/Libraries
+BuildRoot: /var/tmp/%{name}-buildroot
+Prefix: %{_prefix}
+
+%description
+This is the Simple DirectMedia Layer, a generic API that provides low
+level access to audio, keyboard, mouse, and display framebuffer across
+multiple platforms.
+
+%package devel
+Summary: Libraries, includes and more to develop SDL applications.
+Group: Development/Libraries
+Requires: %{name}
+
+%description devel
+This is the Simple DirectMedia Layer, a generic API that provides low
+level access to audio, keyboard, mouse, and display framebuffer across
+multiple platforms.
+
+This is the libraries, include files and other resources you can use
+to develop SDL applications.
+
+
+%prep
+rm -rf ${RPM_BUILD_ROOT}
+
+%setup -q 
+
+%build
+CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-video-svga --disable-video-ggi --disable-video-aalib --disable-debug --enable-xfree86-glidehack
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make install prefix=$RPM_BUILD_ROOT/%{prefix}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root)
+%doc README-SDL.txt COPYING CREDITS BUGS
+%{prefix}/lib/lib*.so.*
+
+%files devel
+%defattr(-,root,root)
+%doc README README-SDL.txt COPYING CREDITS BUGS WhatsNew docs.html
+%doc docs/index.html docs/html
+%{prefix}/bin/*-config
+%{prefix}/lib/lib*.a
+%{prefix}/lib/lib*.so
+%{prefix}/include/SDL/
+%{prefix}/man/man3/*
+%{prefix}/share/aclocal/*
+
+%changelog
+* Wed Jan 19 2000 Sam Lantinga <slouken@libsdl.org>
+- Re-integrated spec file into SDL distribution
+- 'name' and 'version' come from configure 
+- Some of the documentation is devel specific
+- Removed SMP support from %build - it doesn't work with libtool anyway
+
+* Tue Jan 18 2000 Hakan Tandogan <hakan@iconsult.com>
+- Hacked Mandrake sdl spec to build 1.1
+
+* Sun Dec 19 1999 John Buswell <johnb@mandrakesoft.com>
+- Build Release
+
+* Sat Dec 18 1999 John Buswell <johnb@mandrakesoft.com>
+- Add symlink for libSDL-1.0.so.0 required by sdlbomber
+- Added docs
+
+* Thu Dec 09 1999 Lenny Cartier <lenny@mandrakesoft.com>
+- v 1.0.0
+
+* Mon Nov  1 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
+- First spec file for Mandrake distribution.
+
+# end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/TODO	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,23 @@
+
+TODO list for the 1.2 release:
+
+ * Use /etc/fb.modes, if available, like GGI does
+
+Wish list for the 1.3 development branch:
+
+ * Add mousewheel events (new unified event architecture?)
+ * DirectInput joystick support needs to be implemented
+ * Be able to enumerate and select available audio and video drivers
+ * Fullscreen video mode support for MacOS X
+ * Explicit vertical retrace wait (maybe separate from SDL_Flip?)
+ * Shaped windows, windows without borders
+ * Multiple windows, multiple display support
+ * SDL_INIT_EVENTTHREAD on Windows and MacOS?
+ * Add a timestamp to events
+ * Use RDTSC for timer resolution on x86 hardware
+ * Add audio input API
+
+In the jump from 1.2 to 1.3, we should change the SDL_Rect members to
+int and evaluate all the rest of the datatypes.  This is the only place
+we should do it though, since the 1.2 series should not break binary
+compatibility in this way.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/VisualC.html	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,235 @@
+<HTML>
+
+
+
+<HEAD>
+
+
+
+<TITLE> Using SDL with Microsoft Visual C++ 5 and 6 </TITLE>
+
+
+
+</HEAD>
+
+
+
+<BODY>
+
+
+
+<H1> Using SDL with Microsoft Visual C++ 5 and 6 </H1>
+
+<H3>
+     by <A HREF="mailto:snowlion@sprynet.com"> Lion Kimbro </A>
+</H3>
+
+
+
+<p>
+    You can either use the precompiled libraries from
+    <A HREF="http://www.libsdl.org/download.html">
+    the SDL Download web site </A>,
+    or you can build SDL yourself.
+</p>
+
+
+<H3> Building SDL </H3>
+
+<P>
+     Unzip the <CODE>VisualC.zip</CODE> file into the directory
+     that contains this file (<CODE>VisualC.html</CODE>).
+</P>
+
+<P>
+     Be certain that you unzip <CODE> VisualC.zip </CODE>
+     into <strong>this</strong> directory and not any other
+     directory. If you are using WinZip, be careful to
+     make sure that it extracts to <strong>this</strong>
+     folder, because it's convenient feature of
+     unzipping to a folder with the name of the
+     file currently being unzipped will get you in
+     trouble if you use it right now. And that's all
+     I have to say about that.
+</P>
+
+<P>
+     Now that it's unzipped, go into the VisualC directory
+     that is created, and double-click on the VC++
+     workspace file &quot;<CODE>SDL.dsw</CODE>&quot;.
+     This should open up VisualC.
+</P>
+
+<P>
+     You may be prompted at this point to upgrade the
+     workspace, should you be using a more recent version
+     of Visual C++. If so, allow the workspace to be
+     upgraded.
+</P>
+
+
+<P>
+     Build the <CODE>.dll</CODE> and <CODE>.lib</CODE> files.
+</P>
+
+<P>
+     This is done by right clicking on each project in turn
+     (Projects are listed in the Workspace panel in the
+     FileView tab), and selecting &quot;Build&quot;.
+</P>
+
+<P>
+     You may get a few warnings, but you should not get
+     any errors. You do have to have at least the DirectX
+     5 SDK installed, however. (I believe...) The latest
+     version of DirectX can be downloaded or purchased
+     on a cheap CD (my recommendation) from
+     <A HREF="http://www.microsoft.com"> Microsoft </A>.
+</P>
+
+<P>
+    Later, we will refer to the following .lib and .dll
+    files that have just been generated:
+</P>
+
+    <list>
+    <li> SDL.dll
+    <li> SDL.lib
+    <li> SDLmain.lib
+    </list>
+
+<P>
+    Search for these using the Windows Find (Windows-F)
+    utility, if you don't already know where they should be.
+    For those of you with a clue, look inside the Debug
+    or Release directories of the subdirectories of the
+    VisualC folder. (It might be easier to just use
+    Windows Find if this sounds confusing. And don't worry
+    about needing a clue; we all need visits from the
+    clue fairy frequently.)
+</P>
+
+
+
+<H3> Creating a Project with SDL </H3>
+
+<P>
+     Create a project as a Win32 Application.
+</P>
+
+<P>
+     Create a C++ file for your project.
+</P>
+
+<P>
+     Set the C runtime to "Multi-threaded DLL" in the menu:
+     <CODE> Project|Settings|C/C++ tab|Code Generation|Runtime Library </CODE>.
+</P>
+
+<P>
+     Add the SDL <CODE>include</CODE> directory to your list
+     of includes in the menu:
+     <CODE> Project|Settings|C/C++ tab|Preprocessor|Additional include directories </CODE>.
+</P>
+
+<P>
+     The &quot;include directory&quot; I am referring to is the
+     <CODE>include</CODE> folder within the main SDL
+     directory (the one that this HTML file located
+     within.
+</P>
+
+<P>
+     Now we're going to use the files that we had created
+     earlier in the Build SDL step.
+</P>
+
+<P>
+     Copy the following files into your Project directory:
+</P>
+
+     <list>
+     <li> SDL.dll </li>
+     </list>
+
+<P>
+     Copy the following files into your Project directory,
+     and <em>add them to your Project</em> as well:
+</P>
+
+     <list>
+     <li> SDL.lib </li>
+     <li> SDLmain.lib </li>
+     </list>
+
+<P>
+     (To add them to your project, right click on your
+     project, and select &quot;Add files to project&quot;)
+</P>
+
+<P>
+     (I believe that it's not necessary to actually
+     copy the .lib files into your directory; you only
+     have to be certain that you add them to your Project.
+     If someone is so inclined, correct this document, or
+     <A HREF="mailto:snowlion@sprynet.com">
+     e-mail me </A>,
+     and I'll fix this document.)
+</P>
+
+
+
+<H3> SDL 101, First Day of Class </H3>
+
+<P>
+     Now create the basic body of your project.
+     The body of your program should take the following form:
+
+<CODE>
+<PRE>
+#include &quot;SDL.h&quot;
+
+int main( int argc, char* argv[] )
+{
+  // Body of the program goes here.
+  return 0;
+}
+</PRE>
+</CODE>
+</P>
+
+<H3> That's it! </H3>
+
+<P>
+     I hope that this document has helped you get
+     through the most difficult part of using the
+     SDL: installing it. Suggestions for improvements
+     to this document should be sent to the writers
+     of this document.
+</P>
+
+<P>
+     Thanks to Paulus Esterhazy (pesterhazy@gmx.net), for the work on VC++ port.
+</P>
+
+<P>
+     This document was originally called &quot;VisualC.txt&quot;,
+     and was written by 
+     <A HREF="mailto:slouken@libsdl.org">Sam Lantinga</A>.
+</P>
+
+<P>
+     Later, it was converted to HTML and expanded into
+     the document that you see today by 
+     <A HREF="mailto:snowlion@sprynet.com">Lion Kimbro</A>.
+</P>
+
+
+
+</BODY>
+
+
+
+</HTML>
+
+
Binary file VisualC.zip has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/WhatsNew	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,664 @@
+
+This is a list of API changes in SDL's version history.
+
+Version 1.0:
+
+1.2.0:
+	Added SDL_VIDEOEXPOSE event to signal that the screen needs to
+	be redrawn.  This is currently only delivered to OpenGL windows
+	on X11, though it may be delivered in the future when the video
+	memory is lost under DirectX.
+
+1.1.8:
+	You can pass SDL_NOFRAME to SDL_VideoMode() to create a window
+	that has no title bar or frame decoration.  Fullscreen video
+	modes automatically have this flag set.
+
+	Added a function to query the clipping rectangle for a surface:
+		void SDL_GetClipRect(SDL_Surface *surface, SDL_Rect *rect)
+
+	Added a function to query the current event filter:
+		SDL_EventFilter SDL_GetEventFilter(void)
+
+	If you pass -1 to SDL_ShowCursor(), it won't change the current
+	cursor visibility state, but will still return it.
+
+	SDL_LockSurface() and SDL_UnlockSurface() are recursive, meaning
+	you can nest them as deep as you want, as long as each lock call
+	has a matching unlock call.  The surface remains locked until the
+	last matching unlock call.
+
+	Note that you may not blit to or from a locked surface.
+
+1.1.7:
+	The SDL_SetGammaRamp() and SDL_GetGammaRamp() functions now take
+	arrays of Uint16 values instead of Uint8 values.  For the most part,
+	you can just take your old values and shift them up 8 bits to get
+	new correct values for your gamma ramps.
+
+	You can pass SDL_RLEACCEL in flags passed to SDL_ConvertSurface()
+        and SDL will try to RLE accelerate colorkey and alpha blits in the
+	resulting surface.
+
+1.1.6:
+	Added a function to return the thread ID of a specific thread:
+		Uint32 SDL_GetThreadID(SDL_Thread *thread)
+	If 'thread' is NULL, this function returns the id for this thread.
+
+1.1.5:
+	The YUV overlay structure has been changed to use an array of
+	pitches and pixels representing the planes of a YUV image, to
+	better enable hardware acceleration.  The YV12 and IYUV formats
+	each have three planes, corresponding to the Y, U, and V portions
+	of the image, while packed pixel YUV formats just have one plane.
+
+	For palettized mode (8bpp), the screen colormap is now split in
+	a physical and a logical palette. The physical palette determines
+	what colours the screen pixels will get when displayed, and the
+	logical palette controls the mapping from blits to/from the screen.
+	A new function, SDL_SetPalette() has been added to change
+	logical and physical palettes separately. SDL_SetColors() works
+	just as before, and is equivalent to calling SDL_SetPalette() with
+	a flag argument of (SDL_LOGPAL|SDL_PHYSPAL).
+
+	SDL_BlitSurface() no longer modifies the source rectangle, only the
+	destination rectangle. The width/height members of the destination
+	rectangle are ignored, only the position is used.
+
+	The old source clipping function SDL_SetClipping() has been replaced
+	with a more useful function to set the destination clipping rectangle:
+		SDL_bool SDL_SetClipRect(SDL_Surface *surface, SDL_Rect *rect)
+		
+	Added a function to see what subsystems have been initialized:
+		Uint32 SDL_WasInit(Uint32 flags)
+
+	The Big Alpha Flip: SDL now treats alpha as opacity like everybody
+	else, and not as transparency:
+
+	A new cpp symbol: SDL_ALPHA_OPAQUE is defined as 255
+	A new cpp symbol: SDL_ALPHA_TRANSPARENT is defined as 0
+	Values between 0 and 255 vary from fully transparent to fully opaque.
+
+	New functions:
+	SDL_DisplayFormatAlpha()
+	    Returns a surface converted to a format with alpha-channel
+	    that can be blit efficiently to the screen. (In other words,
+	    like SDL_DisplayFormat() but the resulting surface has
+	    an alpha channel.)  This is useful for surfaces with alpha.
+	SDL_MapRGBA()
+	    Works as SDL_MapRGB() but takes an additional alpha parameter.
+	SDL_GetRGBA()
+	    Works as SDL_GetRGB() but also returns the alpha value
+	    (SDL_ALPHA_OPAQUE for formats without an alpha channel)
+
+	Both SDL_GetRGB() and SDL_GetRGBA() now always return values in
+	the [0..255] interval. Previously, SDL_GetRGB() would return
+	(0xf8, 0xfc, 0xf8) for a completely white pixel in RGB565 format.
+	(N.B.: This is broken for bit fields < 3 bits.)
+
+	SDL_MapRGB() returns pixels in which the alpha channel is set opaque.
+
+	SDL_SetAlpha() can now be used for both setting the per-surface
+	alpha, using the new way of thinking of alpha, and also to enable
+	and disable per-pixel alpha blending for surfaces with an alpha
+	channel:
+		To disable alpha blending:
+			SDL_SetAlpha(surface, 0, 0);
+		To re-enable alpha blending:
+			SDL_SetAlpha(surface, SDL_SRCALPHA, 0);
+	Surfaces with an alpha channel have blending enabled by default.
+
+	SDL_SetAlpha() now accepts SDL_RLEACCEL as a flag, which requests
+	RLE acceleration of blits, just as like with SDL_SetColorKey().
+	This flag can be set for both surfaces with an alpha channel
+	and surfaces with an alpha value set by SDL_SetAlpha().
+	As always, RLE surfaces must be locked before pixel access is
+	allowed, and unlocked before any other SDL operations are done
+	on it.
+
+	The blit semantics for surfaces with and without alpha and colorkey
+	have now been defined:
+
+	RGBA->RGB:
+	    SDL_SRCALPHA set:
+		alpha-blend (using alpha-channel).
+		SDL_SRCCOLORKEY ignored.
+	    SDL_SRCALPHA not set:
+		copy RGB.
+		if SDL_SRCCOLORKEY set, only copy the pixels matching the
+		RGB values of the source colour key, ignoring alpha in the
+		comparison.
+
+	RGB->RGBA:
+	    SDL_SRCALPHA set:
+		alpha-blend (using the source per-surface alpha value);
+		set destination alpha to opaque.
+	    SDL_SRCALPHA not set:
+		copy RGB, set destination alpha to opaque.
+	    both:
+		if SDL_SRCCOLORKEY set, only copy the pixels matching the
+		source colour key.
+
+	RGBA->RGBA:
+	    SDL_SRCALPHA set:
+		alpha-blend (using the source alpha channel) the RGB values;
+		leave destination alpha untouched. [Note: is this correct?]
+		SDL_SRCCOLORKEY ignored.
+	    SDL_SRCALPHA not set:
+		copy all of RGBA to the destination.
+		if SDL_SRCCOLORKEY set, only copy the pixels matching the
+		RGB values of the source colour key, ignoring alpha in the
+		comparison.
+
+	RGB->RGB: 
+	    SDL_SRCALPHA set:
+		alpha-blend (using the source per-surface alpha value).
+	    SDL_SRCALPHA not set:
+		copy RGB.
+	    both:
+		if SDL_SRCCOLORKEY set, only copy the pixels matching the
+		source colour key.
+
+	As a special case, blits from surfaces with per-surface alpha
+	value of 128 (50% transparency) are optimised and much faster
+	than other alpha values. This does not apply to surfaces with
+	alpha channels (per-pixel alpha).
+
+	New functions for manipulating the gamma of the display have
+	been added:
+		int SDL_SetGamma(float red, float green, float blue);
+		int SDL_SetGammaRamp(Uint8 *red, Uint8 *green, Uint8 *blue);
+		int SDL_GetGammaRamp(Uint8 *red, Uint8 *green, Uint8 *blue);
+	Gamma ramps are tables with 256 entries which map the screen color
+	components into actually displayed colors.  For an example of
+	implementing gamma correction and gamma fades, see test/testgamma.c
+	Gamma control is not supported on all hardware.
+
+1.1.4:
+	The size of the SDL_CDtrack structure changed from 8 to 12 bytes
+	as the size of the length member was extended to 32 bits.
+
+        You can now use SDL for 2D blitting with a GL mode by passing the
+	SDL_OPENGLBLIT flag to SDL_SetVideoMode().  You can specify 16 or
+	32 bpp, and the data in the framebuffer is put into the GL scene
+	when you call SDL_UpdateRects(), and the scene will be visible
+	when you call SDL_GL_SwapBuffers().
+
+	Run the "testgl" test program with the -logo command line option
+	to see an example of this blending of 2D and 3D in SDL.
+
+1.1.3:
+	Added SDL_FreeRW() to the API, to complement SDL_AllocRW()
+
+	Added resizable window support - just add SDL_RESIZABLE to the
+	SDL_SetVideoMode() flags, and then wait for SDL_VIDEORESIZE events.
+	See SDL_events.h for details on the new SDL_ResizeEvent structure.
+
+	Added condition variable support, based on mutexes and semaphores.
+		SDL_CreateCond()
+		SDL_DestroyCond()
+		SDL_CondSignal()
+		SDL_CondBroadcast()
+		SDL_CondWait()
+		SDL_CondTimedWait()
+	The new function prototypes are in SDL_mutex.h
+
+	Added counting semaphore support, based on the mutex primitive.
+		SDL_CreateSemaphore()
+		SDL_DestroySemaphore()
+		SDL_SemWait()
+		SDL_SemTryWait()
+		SDL_SemWaitTimeout()
+		SDL_SemPost()
+		SDL_SemValue()
+	The new function prototypes are in SDL_mutex.h
+
+	Added support for asynchronous blitting.  To take advantage of this,
+	you must set the SDL_ASYNCBLIT flag when setting the video mode and
+	creating surfaces that you want accelerated in this way.  You must
+	lock surfaces that have this flag set, and the lock will block until
+	any queued blits have completed.
+
+	Added YUV video overlay support.
+	The supported YUV formats are: YV12, IYUV, YUY2, UYVY, and YVYU.
+	This function creates an overlay surface:
+		SDL_CreateYUVOverlay()
+	You must lock and unlock the overlay to get access to the data:
+		SDL_LockYUVOverlay() SDL_UnlockYUVOverlay()
+	You can then display the overlay:
+		SDL_DisplayYUVOverlay()
+	You must free the overlay when you are done using it:
+		SDL_FreeYUVOverlay()
+	See SDL_video.h for the full function prototypes.
+
+	The joystick hat position constants have been changed:
+	Old constant            New constant
+	------------            ------------
+	     0                  SDL_HAT_CENTERED
+	     1                  SDL_HAT_UP
+	     2                  SDL_HAT_RIGHTUP
+	     3                  SDL_HAT_RIGHT
+	     4                  SDL_HAT_RIGHTDOWN
+	     5                  SDL_HAT_DOWN
+	     6                  SDL_HAT_LEFTDOWN
+	     7                  SDL_HAT_LEFT
+	     8                  SDL_HAT_LEFTUP
+	The new constants are bitmasks, so you can check for the
+	individual axes like this:
+		if ( hat_position & SDL_HAT_UP ) {
+		}
+	and you'll catch left-up, up, and right-up.
+
+1.1.2:
+	Added multiple timer support:
+		SDL_AddTimer() and SDL_RemoveTimer()
+
+	SDL_WM_SetIcon() now respects the icon colorkey if mask is NULL.
+
+1.1.0:
+	Added initial OpenGL support.
+	First set GL attributes (such as RGB depth, alpha depth, etc.)
+		SDL_GL_SetAttribute()
+	Then call SDL_SetVideoMode() with the SDL_OPENGL flag.
+	Perform all of your normal GL drawing.
+	Finally swap the buffers with the new SDL function:
+		SDL_GL_SwapBuffers()
+	See the new 'testgl' test program for an example of using GL with SDL.
+
+	You can load GL extension functions by using the function:
+		SDL_GL_LoadProcAddress()
+
+	Added functions to initialize and cleanup specific SDL subsystems:
+		SDL_InitSubSystem() and SDL_QuitSubSystem()
+
+	Added user-defined event type:
+		typedef struct {
+        		Uint8 type;
+        		int code;
+        		void *data1;
+        		void *data2;
+		} SDL_UserEvent;
+	This structure is in the "user" member of an SDL_Event.
+
+	Added a function to push events into the event queue:
+		SDL_PushEvent()
+
+	Example of using the new SDL user-defined events:
+	{
+		SDL_Event event;
+
+		event.type = SDL_USEREVENT;
+		event.user.code = my_event_code;
+		event.user.data1 = significant_data;
+		event.user.data2 = 0;
+		SDL_PushEvent(&event);
+	}
+
+	Added a function to get mouse deltas since last query:
+		SDL_GetRelativeMouseState()
+
+	Added a boolean datatype to SDL_types.h:
+		SDL_bool = { SDL_TRUE, SDL_FALSE }
+
+	Added a function to get the current audio status:
+		SDL_GetAudioState();
+	It returns one of:
+		SDL_AUDIO_STOPPED,
+		SDL_AUDIO_PLAYING,
+		SDL_AUDIO_PAUSED
+
+	Added an AAlib driver (ASCII Art) - by Stephane Peter.
+
+1.0.6:
+	The input grab state is reset after each call to SDL_SetVideoMode().
+	The input is grabbed by default in fullscreen mode, and ungrabbed in
+	windowed mode.  If you want to set input grab to a particular value,
+	you should set it after each call to SDL_SetVideoMode().
+
+1.0.5:
+	Exposed SDL_AudioInit(), SDL_VideoInit()
+	Added SDL_AudioDriverName() and SDL_VideoDriverName()
+
+	Added new window manager function:
+		SDL_WM_ToggleFullScreen()
+	This is currently implemented only on Linux
+
+	The ALT-ENTER code has been removed - it's not appropriate for a
+	lib to bind keys when they aren't even emergency escape sequences.
+
+	ALT-ENTER functionality can be implemented with the following code:
+
+	int Handle_AltEnter(const SDL_Event *event)
+	{
+	    if ( event->type == SDL_KEYDOWN ) {
+	        if ( (event->key.keysym.sym == SDLK_RETURN) &&
+	             (event->key.keysym.mod & KMOD_ALT) ) {   
+	                SDL_WM_ToggleFullScreen(SDL_GetVideoSurface());
+	                return(0);
+	        }
+	    }
+	    return(1);
+	}
+	SDL_SetEventFilter(Handle_AltEnter);
+
+1.0.3:
+	Under X11, if you grab the input and hide the mouse cursor,
+	the mouse will go into a "relative motion" mode where you
+	will always get relative motion events no matter how far in
+	each direction you move the mouse - relative motion is not
+	bounded by the edges of the window (though the absolute values
+	of the mouse positions are clamped by the size of the window).
+	The SVGAlib, framebuffer console, and DirectInput drivers all
+	have this behavior naturally, and the GDI and BWindow drivers
+	never go into "relative motion" mode.
+
+1.0.2:
+	Added a function to enable keyboard repeat:
+		SDL_EnableKeyRepeat()
+
+	Added a function to grab the mouse and keyboard input
+		SDL_WM_GrabInput()
+
+	Added a function to iconify the window.
+		SDL_WM_IconifyWindow()
+	If this function succeeds, the application will receive an event
+	signaling SDL_APPACTIVE event 
+
+1.0.1:
+	Added constants to SDL_audio.h for 16-bit native byte ordering:
+		AUDIO_U16SYS, AUDIO_S16SYS
+
+1.0.0:
+	New public release
+
+Version 0.11:
+
+0.11.5:
+	A new function SDL_GetVideoSurface() has been added, and returns
+	a pointer to the current display surface.
+
+	SDL_AllocSurface() has been renamed SDL_CreateRGBSurface(), and
+	a new function SDL_CreateRGBSurfaceFrom() has been added to allow
+	creating an SDL surface from an existing pixel data buffer.
+
+	Added SDL_GetRGB() to the headers and documentation.
+
+0.11.4:
+	SDL_SetLibraryPath() is no longer meaningful, and has been removed.
+
+0.11.3:
+	A new flag for SDL_Init(), SDL_INIT_NOPARACHUTE, prevents SDL from
+	installing fatal signal handlers on operating systems that support
+	them.
+
+Version 0.9:
+
+0.9.15:
+	SDL_CreateColorCursor() has been removed.  Color cursors should
+	be implemented as sprites, blitted by the application when the
+	cursor moves.  To get smooth color cursor updates when the app
+	is busy, pass the SDL_INIT_EVENTTHREAD flag to SDL_Init().  This
+	allows you to handle the mouse motion in another thread from an
+	event filter function, but is currently only supported by Linux
+	and BeOS.  Note that you'll have to protect the display surface
+	from multi-threaded access by using mutexes if you do this.
+
+	Thread-safe surface support has been removed from SDL.
+	This makes blitting somewhat faster, by removing SDL_MiddleBlit().
+	Code that used SDL_MiddleBlit() should use SDL_LowerBlit() instead.
+	You can make your surfaces thread-safe by allocating your own
+	mutex and making lock/unlock calls around accesses to your surface.
+
+0.9.14:
+	SDL_GetMouseState() now takes pointers to int rather than Uint16.
+
+	If you set the SDL_WINDOWID environment variable under UNIX X11,
+	SDL will use that as the main window instead of creating it's own.
+	This is an unsupported extension to SDL, and not portable at all.
+
+0.9.13:
+	Added a function SDL_SetLibraryPath() which can be used to specify
+	the directory containing the SDL dynamic libraries.  This is useful
+	for commercial applications which ship with particular versions
+	of the libraries, and for security on multi-user systems.
+	If this function is not used, the default system directories are 
+	searched using the native dynamic object loading mechanism.
+
+	In order to support C linkage under Visual C++, you must declare
+	main() without any return type:
+		main(int argc, char *argv[]) {
+			/* Do the program... */
+			return(0);
+		}
+	C++ programs should also return a value if compiled under VC++.
+
+	The blit_endian member of the SDL_VideoInfo struct has been removed.
+
+	SDL_SymToASCII() has been replaced with SDL_GetKeyName(), so there
+	is now no longer any function to translate a keysym to a character.
+
+	The SDL_keysym structure has been extended with a 'scancode' and
+	'unicode' member.  The 'scancode' is a hardware specific scancode
+	for the key that was pressed, and may be 0.  The 'unicode' member
+	is a 16-bit UNICODE translation of the key that was pressed along
+	with any modifiers or compose keys that have been pressed.
+	If no UNICODE translation exists for the key, 'unicode' will be 0.
+
+	Added a function SDL_EnableUNICODE() to enable/disable UNICODE
+	translation of character keypresses.  Translation defaults off.
+
+	To convert existing code to use the new API, change code which
+	uses SDL_SymToASCII() to get the keyname to use SDL_GetKeyName(),
+	and change code which uses it to get the ASCII value of a sym to
+	use the 'unicode' member of the event keysym.
+
+0.9.12:
+	There is partial support for 64-bit datatypes.  I don't recommend 
+	you use this if you have a choice, because 64-bit datatypes are not
+	supported on many platforms.  On platforms for which it is supported,
+	the SDL_HAS_64BIT_TYPE C preprocessor define will be enabled, and
+	you can use the Uint64 and Sint64 datatypes.
+
+	Added functions to SDL_endian.h to support 64-bit datatypes:
+	    SDL_SwapLE64(), SDL_SwapBE64(),
+	    SDL_ReadLE64(), SDL_ReadBE64(), SDL_WriteLE64(), SDL_WriteBE64()
+
+	A new member "len_ratio" has been added to the SDL_AudioCVT structure,
+	and allows you to determine either the original buffer length or the
+	converted buffer length, given the other.
+
+	A new function SDL_FreeWAV() has been added to the API to free data
+	allocated by SDL_LoadWAV_RW().  This is necessary under Win32 since
+	the gcc compiled DLL uses a different heap than VC++ compiled apps.
+
+	SDL now has initial support for international keyboards using the
+	Latin character set.
+	If a particular mapping is desired, you can set the DEFAULT_KEYBOARD
+	compile-time variable, or you can set the environment variable 
+	"SDL_KEYBOARD" to a string identifying the keyboard mapping you desire.
+	The valid values for these variables can be found in SDL_keyboard.c
+
+	Full support for German and French keyboards under X11 is implemented.
+
+0.9.11:
+	The THREADED_EVENTS compile-time define has been replaced with the
+	SDL_INIT_EVENTTHREAD flag.  If this flag is passed to SDL_Init(),
+	SDL will create a separate thread to perform input event handling.
+	If this flag is passed to SDL_Init(), and the OS doesn't support 
+	event handling in a separate thread, SDL_Init() will fail.
+	Be sure to add calls to SDL_Delay() in your main thread to allow
+	the OS to schedule your event thread, or it may starve, leading
+	to slow event delivery and/or dropped events.
+	Currently MacOS and Win32 do not support this flag, while BeOS 
+	and Linux do support it.  I recommend that your application only
+	use this flag if absolutely necessary.
+
+	The SDL thread function passed to SDL_CreateThread() now returns a
+	status.  This status can be retrieved by passing a non-NULL pointer
+	as the 'status' argument to SDL_WaitThread().
+
+	The volume parameter to SDL_MixAudio() has been increased in range
+	from (0-8) to (0-128)
+
+	SDL now has a data source abstraction which can encompass a file,
+	an area of memory, or any custom object you can envision.  It uses
+	these abstractions, SDL_RWops, in the endian read/write functions,
+	and the built-in WAV and BMP file loaders.  This means you can load
+	WAV chunks from memory mapped files, compressed archives, network
+	pipes, or anything else that has a data read abstraction.
+
+	There are three built-in data source abstractions:
+	    SDL_RWFromFile(), SDL_RWFromFP(), SDL_RWFromMem()
+	along with a generic data source allocation function:
+	    SDL_AllocRW()
+	These data sources can be used like stdio file pointers with the
+	following convenience functions:
+	    SDL_RWseek(), SDL_RWread(), SDL_RWwrite(), SDL_RWclose()
+	These functions are defined in the new header file "SDL_rwops.h"
+
+	The endian swapping functions have been turned into macros for speed
+	and SDL_CalculateEndian() has been removed.  SDL_endian.h now defines
+	SDL_BYTEORDER as either SDL_BIG_ENDIAN or SDL_LIL_ENDIAN depending on
+	the endianness of the host system.
+
+	The endian read/write functions now take an SDL_RWops pointer
+	instead of a stdio FILE pointer, to support the new data source
+	abstraction.
+
+	The SDL_*LoadWAV() functions have been replaced with a single
+	SDL_LoadWAV_RW() function that takes a SDL_RWops pointer as it's
+	first parameter, and a flag whether or not to automatically 
+	free it as the second parameter.  SDL_LoadWAV() is a macro for
+	backward compatibility and convenience:
+	    SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, ...);
+
+	The SDL_*LoadBMP()/SDL_*SaveBMP() functions have each been replaced
+	with a single function that takes a SDL_RWops pointer as it's
+	first parameter, and a flag whether or not to automatically 
+	free it as the second parameter.  SDL_LoadBMP() and SDL_SaveBMP()
+	are macros for backward compatibility and convenience:
+	    SDL_LoadBMP_RW(SDL_RWFromFile("sample.bmp", "rb"), 1, ...);
+	    SDL_SaveBMP_RW(SDL_RWFromFile("sample.bmp", "wb"), 1, ...);
+	Note that these functions use SDL_RWseek() extensively, and should
+	not be used on pipes or other non-seekable data sources.
+
+0.9.10:
+	The Linux SDL_SysWMInfo and SDL_SysWMMsg structures have been 
+	extended to support multiple types of display drivers, as well as
+        safe access to the X11 display when THREADED_EVENTS is enabled.
+        The new structures are documented in the SDL_syswm.h header file.
+
+	Thanks to John Elliott <jce@seasip.demon.co.uk>, the UK keyboard
+	should now work properly, as well as the "Windows" keys on US
+	keyboards.
+
+	The Linux CD-ROM code now reads the CD-ROM devices from /etc/fstab
+	instead of trying to open each block device on the system.
+	The CD must be listed in /etc/fstab as using the iso9660 filesystem.
+
+	On Linux, if you define THREADED_EVENTS at compile time, a separate
+	thread will be spawned to gather X events asynchronously from the
+	graphics updates.  This hasn't been extensively tested, but it does
+	provide a means of handling keyboard and mouse input in a separate
+	thread from the graphics thread.  (This is now enabled by default.)
+
+	A special access function SDL_PeepEvents() allows you to manipulate
+	the event queue in a thread-safe manner, including peeking at events,
+	removing events of a specified type, and adding new events of arbitrary
+	type to the queue (use the new 'user' member of the SDL_Event type).
+
+	If you use SDL_PeepEvents() to gather events, then the main graphics
+	thread needs to call SDL_PumpEvents() periodically to drive the event
+	loop and generate input events.  This is not necessary if SDL has been 
+	compiled with THREADED_EVENTS defined, but doesn't hurt.
+
+	A new function SDL_ThreadID() returns the identifier associated with
+	the current thread.
+
+0.9.9:
+	The AUDIO_STEREO format flag has been replaced with a new 'channels'
+	member of the SDL_AudioSpec structure.  The channels are 1 for mono
+	audio, and 2 for stereo audio.  In the future more channels may be
+	supported for 3D surround sound.
+
+	The SDL_MixAudio() function now takes an additional volume parameter,
+	which should be set to SDL_MIX_MAXVOLUME for compatibility with the
+	original function.
+
+	The CD-ROM functions which take a 'cdrom' parameter can now be
+	passed NULL, and will act on the last successfully opened CD-ROM.
+
+0.9.8:
+	No changes, bugfixes only.
+	
+0.9.7:
+	No changes, bugfixes only.
+	
+0.9.6:
+	Added a fast rectangle fill function: SDL_FillRect()
+
+	Addition of a useful function for getting info on the video hardware:
+	    const SDL_VideoInfo *SDL_GetVideoInfo(void)
+        This function replaces SDL_GetDisplayFormat().
+
+	Initial support for double-buffering:
+	  Use the SDL_DOUBLEBUF flag in SDL_SetVideoMode()
+	  Update the screen with a new function: SDL_Flip()
+
+	SDL_AllocSurface() takes two new flags:
+	SDL_SRCCOLORKEY means that the surface will be used for colorkey blits
+	  and if the hardware supports hardware acceleration of colorkey blits
+	  between two surfaces in video memory, to place the surface in video
+	  memory if possible, otherwise it will be placed in system memory.
+	SDL_SRCALPHA means that the surface will be used for alpha blits and
+	  if the hardware supports hardware acceleration of alpha blits between
+	  two surfaces in video memory, to place the surface in video memory
+	  if possible, otherwise it will be placed in system memory.
+	SDL_HWSURFACE now means that the surface will be created with the 
+	  same format as the display surface, since having surfaces in video
+	  memory is only useful for fast blitting to the screen, and you can't
+	  blit surfaces with different surface formats in video memory.
+
+0.9.5:
+	You can now pass a NULL mask to SDL_WM_SetIcon(), and it will assume
+	that the icon consists of the entire image.
+
+	SDL_LowerBlit() is back -- but don't use it on the display surface.
+	It is exactly the same as SDL_MiddleBlit(), but doesn't check for
+	thread safety.
+
+	Added SDL_FPLoadBMP(), SDL_FPSaveBMP(), SDL_FPLoadWAV(), which take
+	a FILE pointer instead of a file name.
+
+	Added CD-ROM audio control API:
+	    SDL_CDNumDrives()
+	    SDL_CDName()
+	    SDL_CDOpen()
+	    SDL_CDStatus()
+	    SDL_CDPlayTracks()
+	    SDL_CDPlay()
+	    SDL_CDPause()
+	    SDL_CDResume()
+	    SDL_CDStop()
+	    SDL_CDEject()
+	    SDL_CDClose()
+
+0.9.4:
+	No changes, bugfixes only.
+
+0.9.3:
+	Mouse motion event now includes relative motion information:
+	    Sint16 event->motion.xrel, Sint16 event->motion.yrel
+
+	X11 keyrepeat handling can be disabled by defining IGNORE_X_KEYREPEAT
+	    (Add -DIGNORE_X_KEYREPEAT to CFLAGS line in obj/x11Makefile)
+
+0.9.2:
+	No changes, bugfixes only.
+
+0.9.1:
+	Removed SDL_MapSurface() and SDL_UnmapSurface() -- surfaces are now
+	automatically mapped on blit.
+
+0.8.0:
+	SDL stable release
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/acinclude.m4	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,619 @@
+# Local macros for the SDL configure.in script
+
+dnl Function to link an architecture specific file
+dnl LINK_ARCH_SRC(source_dir, arch, source_file)
+AC_DEFUN(COPY_ARCH_SRC,
+[
+  echo "Copying $1/$2/$3 -> $1/$3"
+  old="$srcdir/$1/$2/$3"
+  new="$srcdir/$1/$3"
+  cat >$new <<__EOF__
+/* WARNING:  This file was automatically generated!
+ * Original: $old
+ */
+__EOF__
+  cat >>$new <$old
+])
+
+#
+# --- esd.m4 ---
+#
+# Configure paths for ESD
+# Manish Singh    98-9-30
+# stolen back from Frank Belew
+# stolen from Manish Singh
+# Shamelessly stolen from Owen Taylor
+
+dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS
+dnl
+AC_DEFUN(AM_PATH_ESD,
+[dnl 
+dnl Get the cflags and libraries from the esd-config script
+dnl
+AC_ARG_WITH(esd-prefix,[  --with-esd-prefix=PFX   Prefix where ESD is installed (optional)],
+            esd_prefix="$withval", esd_prefix="")
+AC_ARG_WITH(esd-exec-prefix,[  --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)],
+            esd_exec_prefix="$withval", esd_exec_prefix="")
+AC_ARG_ENABLE(esdtest, [  --disable-esdtest       Do not try to compile and run a test ESD program],
+		    , enable_esdtest=yes)
+
+  if test x$esd_exec_prefix != x ; then
+     esd_args="$esd_args --exec-prefix=$esd_exec_prefix"
+     if test x${ESD_CONFIG+set} != xset ; then
+        ESD_CONFIG=$esd_exec_prefix/bin/esd-config
+     fi
+  fi
+  if test x$esd_prefix != x ; then
+     esd_args="$esd_args --prefix=$esd_prefix"
+     if test x${ESD_CONFIG+set} != xset ; then
+        ESD_CONFIG=$esd_prefix/bin/esd-config
+     fi
+  fi
+
+  AC_PATH_PROG(ESD_CONFIG, esd-config, no)
+  min_esd_version=ifelse([$1], ,0.2.7,$1)
+  AC_MSG_CHECKING(for ESD - version >= $min_esd_version)
+  no_esd=""
+  if test "$ESD_CONFIG" = "no" ; then
+    no_esd=yes
+  else
+    ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags`
+    ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs`
+
+    esd_major_version=`$ESD_CONFIG $esd_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+    esd_minor_version=`$ESD_CONFIG $esd_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+    esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \
+           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+    if test "x$enable_esdtest" = "xyes" ; then
+      ac_save_CFLAGS="$CFLAGS"
+      ac_save_LIBS="$LIBS"
+      CFLAGS="$CFLAGS $ESD_CFLAGS"
+      LIBS="$LIBS $ESD_LIBS"
+dnl
+dnl Now check if the installed ESD is sufficiently new. (Also sanity
+dnl checks the results of esd-config to some extent
+dnl
+      rm -f conf.esdtest
+      AC_TRY_RUN([
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <esd.h>
+
+char*
+my_strdup (char *str)
+{
+  char *new_str;
+  
+  if (str)
+    {
+      new_str = malloc ((strlen (str) + 1) * sizeof(char));
+      strcpy (new_str, str);
+    }
+  else
+    new_str = NULL;
+  
+  return new_str;
+}
+
+int main ()
+{
+  int major, minor, micro;
+  char *tmp_version;
+
+  system ("touch conf.esdtest");
+
+  /* HP/UX 9 (%@#!) writes to sscanf strings */
+  tmp_version = my_strdup("$min_esd_version");
+  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
+     printf("%s, bad version string\n", "$min_esd_version");
+     exit(1);
+   }
+
+   if (($esd_major_version > major) ||
+      (($esd_major_version == major) && ($esd_minor_version > minor)) ||
+      (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro)))
+    {
+      return 0;
+    }
+  else
+    {
+      printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version);
+      printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro);
+      printf("*** best to upgrade to the required version.\n");
+      printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n");
+      printf("*** to point to the correct copy of esd-config, and remove the file\n");
+      printf("*** config.cache before re-running configure\n");
+      return 1;
+    }
+}
+
+],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
+       CFLAGS="$ac_save_CFLAGS"
+       LIBS="$ac_save_LIBS"
+     fi
+  fi
+  if test "x$no_esd" = x ; then
+     AC_MSG_RESULT(yes)
+     ifelse([$2], , :, [$2])     
+  else
+     AC_MSG_RESULT(no)
+     if test "$ESD_CONFIG" = "no" ; then
+       echo "*** The esd-config script installed by ESD could not be found"
+       echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in"
+       echo "*** your path, or set the ESD_CONFIG environment variable to the"
+       echo "*** full path to esd-config."
+     else
+       if test -f conf.esdtest ; then
+        :
+       else
+          echo "*** Could not run ESD test program, checking why..."
+          CFLAGS="$CFLAGS $ESD_CFLAGS"
+          LIBS="$LIBS $ESD_LIBS"
+          AC_TRY_LINK([
+#include <stdio.h>
+#include <esd.h>
+],      [ return 0; ],
+        [ echo "*** The test program compiled, but did not run. This usually means"
+          echo "*** that the run-time linker is not finding ESD or finding the wrong"
+          echo "*** version of ESD. If it is not finding ESD, you'll need to set your"
+          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
+          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
+          echo "*** is required on your system"
+	  echo "***"
+          echo "*** If you have an old version installed, it is best to remove it, although"
+          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
+        [ echo "*** The test program failed to compile or link. See the file config.log for the"
+          echo "*** exact error that occured. This usually means ESD was incorrectly installed"
+          echo "*** or that you have moved ESD since it was installed. In the latter case, you"
+          echo "*** may want to edit the esd-config script: $ESD_CONFIG" ])
+          CFLAGS="$ac_save_CFLAGS"
+          LIBS="$ac_save_LIBS"
+       fi
+     fi
+     ESD_CFLAGS=""
+     ESD_LIBS=""
+     ifelse([$3], , :, [$3])
+  fi
+  AC_SUBST(ESD_CFLAGS)
+  AC_SUBST(ESD_LIBS)
+  rm -f conf.esdtest
+])
+
+## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
+## Copyright (C) 1996-1999, 2000 Free Software Foundation, Inc.
+## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+##
+## As a special exception to the GNU General Public License, if you
+## distribute this file as part of a program that contains a
+## configuration script generated by Autoconf, you may include it under
+## the same distribution terms that you use for the rest of that program.
+
+# serial 40 AC_PROG_LIBTOOL
+AC_DEFUN(AC_PROG_LIBTOOL,
+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
+
+# Save cache, so that ltconfig can load it
+AC_CACHE_SAVE
+
+# Actually configure libtool.  ac_aux_dir is where install-sh is found.
+CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
+LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
+LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
+DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
+${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
+$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
+|| AC_MSG_ERROR([libtool configure failed])
+
+# Reload cache, that may have been modified by ltconfig
+AC_CACHE_LOAD
+
+# This can be used to rebuild libtool when needed
+LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
+
+# Always use our own libtool.
+LIBTOOL='$(SHELL) $(top_builddir)/libtool'
+AC_SUBST(LIBTOOL)dnl
+
+# Redirect the config.log output again, so that the ltconfig log is not
+# clobbered by the next message.
+exec 5>>./config.log
+])
+
+AC_DEFUN(AC_LIBTOOL_SETUP,
+[AC_PREREQ(2.13)dnl
+AC_REQUIRE([AC_ENABLE_SHARED])dnl
+AC_REQUIRE([AC_ENABLE_STATIC])dnl
+AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_REQUIRE([AC_PROG_RANLIB])dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_LD])dnl
+AC_REQUIRE([AC_PROG_NM])dnl
+AC_REQUIRE([AC_PROG_LN_S])dnl
+dnl
+
+case "$target" in
+NONE) lt_target="$host" ;;
+*) lt_target="$target" ;;
+esac
+
+# Check for any special flags to pass to ltconfig.
+libtool_flags="--cache-file=$cache_file"
+test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
+test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
+test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
+test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
+test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
+[libtool_flags="$libtool_flags --enable-dlopen"])
+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
+[libtool_flags="$libtool_flags --enable-win32-dll"])
+AC_ARG_ENABLE(libtool-lock,
+  [  --disable-libtool-lock  avoid locking (might break parallel builds)])
+test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
+test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case "$lt_target" in
+*-*-irix6*)
+  # Find out which ABI we are using.
+  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
+  if AC_TRY_EVAL(ac_compile); then
+    case "`/usr/bin/file conftest.o`" in
+    *32-bit*)
+      LD="${LD-ld} -32"
+      ;;
+    *N32*)
+      LD="${LD-ld} -n32"
+      ;;
+    *64-bit*)
+      LD="${LD-ld} -64"
+      ;;
+    esac
+  fi
+  rm -rf conftest*
+  ;;
+
+*-*-sco3.2v5*)
+  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+  SAVE_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -belf"
+  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
+    [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
+  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+    CFLAGS="$SAVE_CFLAGS"
+  fi
+  ;;
+
+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
+[*-*-cygwin* | *-*-mingw*)
+  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
+  AC_CHECK_TOOL(AS, as, false)
+  AC_CHECK_TOOL(OBJDUMP, objdump, false)
+  ;;
+])
+esac
+])
+
+# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
+AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
+
+# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
+AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
+
+# AC_ENABLE_SHARED - implement the --enable-shared flag
+# Usage: AC_ENABLE_SHARED[(DEFAULT)]
+#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
+#   `yes'.
+AC_DEFUN(AC_ENABLE_SHARED, [dnl
+define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE(shared,
+changequote(<<, >>)dnl
+<<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
+changequote([, ])dnl
+[p=${PACKAGE-default}
+case "$enableval" in
+yes) enable_shared=yes ;;
+no) enable_shared=no ;;
+*)
+  enable_shared=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_shared=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac],
+enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
+])
+
+# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
+AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_SHARED(no)])
+
+# AC_ENABLE_STATIC - implement the --enable-static flag
+# Usage: AC_ENABLE_STATIC[(DEFAULT)]
+#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
+#   `yes'.
+AC_DEFUN(AC_ENABLE_STATIC, [dnl
+define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE(static,
+changequote(<<, >>)dnl
+<<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
+changequote([, ])dnl
+[p=${PACKAGE-default}
+case "$enableval" in
+yes) enable_static=yes ;;
+no) enable_static=no ;;
+*)
+  enable_static=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_static=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac],
+enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
+])
+
+# AC_DISABLE_STATIC - set the default static flag to --disable-static
+AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_STATIC(no)])
+
+
+# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
+# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
+#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
+#   `yes'.
+AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
+define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE(fast-install,
+changequote(<<, >>)dnl
+<<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
+changequote([, ])dnl
+[p=${PACKAGE-default}
+case "$enableval" in
+yes) enable_fast_install=yes ;;
+no) enable_fast_install=no ;;
+*)
+  enable_fast_install=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_fast_install=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac],
+enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
+])
+
+# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
+AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_FAST_INSTALL(no)])
+
+# AC_PROG_LD - find the path to the GNU or non-GNU linker
+AC_DEFUN(AC_PROG_LD,
+[AC_ARG_WITH(gnu-ld,
+[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
+test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+ac_prog=ld
+if test "$ac_cv_prog_gcc" = yes; then
+  # Check if gcc -print-prog-name=ld gives a path.
+  AC_MSG_CHECKING([for ld used by GCC])
+  ac_prog=`($CC -print-prog-name=ld | tr -d '\r') 2>&5`
+  case "$ac_prog" in
+    # Accept absolute paths.
+changequote(,)dnl
+    [\\/]* | [A-Za-z]:[\\/]*)
+      re_direlt='/[^/][^/]*/\.\./'
+changequote([,])dnl
+      # Canonicalize the path of ld
+      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
+	ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
+      done
+      test -z "$LD" && LD="$ac_prog"
+      ;;
+  "")
+    # If it fails, then pretend we aren't using GCC.
+    ac_prog=ld
+    ;;
+  *)
+    # If it is relative, then search for the first ld in PATH.
+    with_gnu_ld=unknown
+    ;;
+  esac
+elif test "$with_gnu_ld" = yes; then
+  AC_MSG_CHECKING([for GNU ld])
+else
+  AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(ac_cv_path_LD,
+[if test -z "$LD"; then
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  for ac_dir in $PATH; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+      ac_cv_path_LD="$ac_dir/$ac_prog"
+      # Check to see if the program is GNU ld.  I'd rather use --version,
+      # but apparently some GNU ld's only accept -v.
+      # Break only if it was the GNU/non-GNU ld that we prefer.
+      if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
+	test "$with_gnu_ld" != no && break
+      else
+	test "$with_gnu_ld" != yes && break
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+else
+  ac_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$ac_cv_path_LD"
+if test -n "$LD"; then
+  AC_MSG_RESULT($LD)
+else
+  AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+AC_PROG_LD_GNU
+])
+
+AC_DEFUN(AC_PROG_LD_GNU,
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
+  ac_cv_prog_gnu_ld=yes
+else
+  ac_cv_prog_gnu_ld=no
+fi])
+])
+
+# AC_PROG_NM - find the path to a BSD-compatible name lister
+AC_DEFUN(AC_PROG_NM,
+[AC_MSG_CHECKING([for BSD-compatible nm])
+AC_CACHE_VAL(ac_cv_path_NM,
+[if test -n "$NM"; then
+  # Let the user override the test.
+  ac_cv_path_NM="$NM"
+else
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
+      # Check to see if the nm accepts a BSD-compat flag.
+      # Adding the `sed 1q' prevents false positives on HP-UX, which says:
+      #   nm: unknown option "B" ignored
+      if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+	ac_cv_path_NM="$ac_dir/nm -B"
+	break
+      elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+	ac_cv_path_NM="$ac_dir/nm -p"
+	break
+      else
+	ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
+	continue # so that we can try to find one that supports BSD flags
+      fi
+    fi
+  done
+  IFS="$ac_save_ifs"
+  test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
+fi])
+NM="$ac_cv_path_NM"
+AC_MSG_RESULT([$NM])
+])
+
+# AC_CHECK_LIBM - check for math library
+AC_DEFUN(AC_CHECK_LIBM,
+[AC_REQUIRE([AC_CANONICAL_HOST])dnl
+LIBM=
+case "$lt_target" in
+*-*-beos* | *-*-cygwin*)
+  # These system don't have libm
+  ;;
+*-ncr-sysv4.3*)
+  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+  AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
+  ;;
+*)
+  AC_CHECK_LIB(m, main, LIBM="-lm")
+  ;;
+esac
+])
+
+# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
+# the libltdl convenience library and INCLTDL to the include flags for
+# the libltdl header and adds --enable-ltdl-convenience to the
+# configure arguments.  Note that LIBLTDL and INCLTDL are not
+# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
+# provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
+# with '${top_builddir}/' and INCLTDL will be prefixed with
+# '${top_srcdir}/' (note the single quotes!).  If your package is not
+# flat and you're not using automake, define top_builddir and
+# top_srcdir appropriately in the Makefiles.
+AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+  case "$enable_ltdl_convenience" in
+  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
+  "") enable_ltdl_convenience=yes
+      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
+  esac
+  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
+  INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+])
+
+# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
+# the libltdl installable library and INCLTDL to the include flags for
+# the libltdl header and adds --enable-ltdl-install to the configure
+# arguments.  Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
+# AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
+# libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
+# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
+# with '${top_srcdir}/' (note the single quotes!).  If your package is
+# not flat and you're not using automake, define top_builddir and
+# top_srcdir appropriately in the Makefiles.
+# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
+AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+  AC_CHECK_LIB(ltdl, main,
+  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
+  [if test x"$enable_ltdl_install" = xno; then
+     AC_MSG_WARN([libltdl not installed, but installation disabled])
+   else
+     enable_ltdl_install=yes
+   fi
+  ])
+  if test x"$enable_ltdl_install" = x"yes"; then
+    ac_configure_args="$ac_configure_args --enable-ltdl-install"
+    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
+    INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
+  else
+    ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
+    LIBLTDL="-lltdl"
+    INCLTDL=
+  fi
+])
+
+dnl old names
+AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
+AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
+AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
+AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
+AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
+AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
+AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
+
+dnl This is just to silence aclocal about the macro not being used
+ifelse([AC_DISABLE_FAST_INSTALL])dnl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/autogen.sh	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+echo "Generating build information using aclocal, automake and autoconf"
+echo "This may take a while ..."
+
+# Touch the timestamps on all the files since CVS messes them up
+directory=`dirname $0`
+touch $directory/configure.in
+
+# Regenerate configuration files
+aclocal
+automake --foreign --include-deps
+autoconf
+(cd test; aclocal; automake --foreign --include-deps; autoconf)
+
+# Run configure for this platform
+#./configure $*
+echo "Now you are ready to run ./configure"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/config.guess	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,1368 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+#   Free Software Foundation, Inc.
+
+timestamp='2001-03-16'
+
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Written by Per Bothner <bothner@cygnus.com>.
+# Please send patches to <config-patches@gnu.org>.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub.  If it succeeds, it prints the system name on stdout, and
+# exits with 0.  Otherwise, it exits with 1.
+#
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
+
+dummy=dummy-$$
+trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script.
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int dummy(){}" > $dummy.c
+	for c in cc gcc c89 ; do
+	  ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1
+	  if test $? = 0 ; then
+	     CC_FOR_BUILD="$c"; break
+	  fi
+	done
+	rm -f $dummy.c $dummy.o $dummy.rel
+	if test x"$CC_FOR_BUILD" = x ; then
+	  CC_FOR_BUILD=no_compiler_found
+	fi
+	;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi@noc.rutgers.edu 8/24/94.)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+	PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+	# Netbsd (nbsd) targets should (where applicable) match one or
+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+	# switched to ELF, *-*-netbsd* would select the old
+	# object file format.  This provides both forward
+	# compatibility and a consistent mechanism for selecting the
+	# object file format.
+	# Determine the machine/vendor (is the vendor relevant).
+	case "${UNAME_MACHINE}" in
+	    amiga) machine=m68k-unknown ;;
+	    arm32) machine=arm-unknown ;;
+	    atari*) machine=m68k-atari ;;
+	    sun3*) machine=m68k-sun ;;
+	    mac68k) machine=m68k-apple ;;
+	    macppc) machine=powerpc-apple ;;
+	    hp3[0-9][05]) machine=m68k-hp ;;
+	    ibmrt|romp-ibm) machine=romp-ibm ;;
+	    *) machine=${UNAME_MACHINE}-unknown ;;
+	esac
+	# The Operating System including object format, if it has switched
+	# to ELF recently, or will in the future.
+	case "${UNAME_MACHINE}" in
+	    i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+			| grep __ELF__ >/dev/null
+		then
+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+		    # Return netbsd for either.  FIX?
+		    os=netbsd
+		else
+		    os=netbsdelf
+		fi
+		;;
+	    *)
+	        os=netbsd
+		;;
+	esac
+	# The OS release
+	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+	# contains redundant information, the shorter form:
+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+	echo "${machine}-${os}${release}"
+	exit 0 ;;
+    alpha:OSF1:*:*)
+	if test $UNAME_RELEASE = "V4.0"; then
+		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+	fi
+	# A Vn.n version is a released version.
+	# A Tn.n version is a released field test version.
+	# A Xn.n version is an unreleased experimental baselevel.
+	# 1.2 uses "1.2" for uname -r.
+	cat <<EOF >$dummy.s
+	.data
+\$Lformat:
+	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
+
+	.text
+	.globl main
+	.align 4
+	.ent main
+main:
+	.frame \$30,16,\$26,0
+	ldgp \$29,0(\$27)
+	.prologue 1
+	.long 0x47e03d80 # implver \$0
+	lda \$2,-1
+	.long 0x47e20c21 # amask \$2,\$1
+	lda \$16,\$Lformat
+	mov \$0,\$17
+	not \$1,\$18
+	jsr \$26,printf
+	ldgp \$29,0(\$26)
+	mov 0,\$16
+	jsr \$26,exit
+	.end main
+EOF
+	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
+	if test "$?" = 0 ; then
+		case `./$dummy` in
+			0-0)
+				UNAME_MACHINE="alpha"
+				;;
+			1-0)
+				UNAME_MACHINE="alphaev5"
+				;;
+			1-1)
+				UNAME_MACHINE="alphaev56"
+				;;
+			1-101)
+				UNAME_MACHINE="alphapca56"
+				;;
+			2-303)
+				UNAME_MACHINE="alphaev6"
+				;;
+			2-307)
+				UNAME_MACHINE="alphaev67"
+				;;
+		esac
+	fi
+	rm -f $dummy.s $dummy
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	exit 0 ;;
+    Alpha\ *:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# Should we change UNAME_MACHINE based on the output of uname instead
+	# of the specific Alpha model?
+	echo alpha-pc-interix
+	exit 0 ;;
+    21064:Windows_NT:50:3)
+	echo alpha-dec-winnt3.5
+	exit 0 ;;
+    Amiga*:UNIX_System_V:4.0:*)
+	echo m68k-unknown-sysv4
+	exit 0;;
+    amiga:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    *:[Aa]miga[Oo][Ss]:*:*)
+	echo ${UNAME_MACHINE}-unknown-amigaos
+	exit 0 ;;
+    arc64:OpenBSD:*:*)
+	echo mips64el-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    arc:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    hkmips:OpenBSD:*:*)
+	echo mips-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    pmax:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    sgi:OpenBSD:*:*)
+	echo mips-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    wgrisc:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    *:OS/390:*:*)
+	echo i370-ibm-openedition
+	exit 0 ;;
+    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+	echo arm-acorn-riscix${UNAME_RELEASE}
+	exit 0;;
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+	echo hppa1.1-hitachi-hiuxmpp
+	exit 0;;
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+	if test "`(/bin/universe) 2>/dev/null`" = att ; then
+		echo pyramid-pyramid-sysv3
+	else
+		echo pyramid-pyramid-bsd
+	fi
+	exit 0 ;;
+    NILE*:*:*:dcosx)
+	echo pyramid-pyramid-svr4
+	exit 0 ;;
+    sun4H:SunOS:5.*:*)
+	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit 0 ;;
+    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit 0 ;;
+    i86pc:SunOS:5.*:*)
+	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit 0 ;;
+    sun4*:SunOS:6*:*)
+	# According to config.sub, this is the proper way to canonicalize
+	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
+	# it's likely to be more like Solaris than SunOS4.
+	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit 0 ;;
+    sun4*:SunOS:*:*)
+	case "`/usr/bin/arch -k`" in
+	    Series*|S4*)
+		UNAME_RELEASE=`uname -v`
+		;;
+	esac
+	# Japanese Language versions have a version number like `4.1.3-JL'.
+	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+	exit 0 ;;
+    sun3*:SunOS:*:*)
+	echo m68k-sun-sunos${UNAME_RELEASE}
+	exit 0 ;;
+    sun*:*:4.2BSD:*)
+	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+	case "`/bin/arch`" in
+	    sun3)
+		echo m68k-sun-sunos${UNAME_RELEASE}
+		;;
+	    sun4)
+		echo sparc-sun-sunos${UNAME_RELEASE}
+		;;
+	esac
+	exit 0 ;;
+    aushp:SunOS:*:*)
+	echo sparc-auspex-sunos${UNAME_RELEASE}
+	exit 0 ;;
+    atari*:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+	exit 0 ;;
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+	exit 0 ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit 0 ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit 0 ;;
+    sun3*:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mac68k:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mvme68k:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mvme88k:OpenBSD:*:*)
+	echo m88k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    powerpc:machten:*:*)
+	echo powerpc-apple-machten${UNAME_RELEASE}
+	exit 0 ;;
+    RISC*:Mach:*:*)
+	echo mips-dec-mach_bsd4.3
+	exit 0 ;;
+    RISC*:ULTRIX:*:*)
+	echo mips-dec-ultrix${UNAME_RELEASE}
+	exit 0 ;;
+    VAX*:ULTRIX*:*:*)
+	echo vax-dec-ultrix${UNAME_RELEASE}
+	exit 0 ;;
+    2020:CLIX:*:* | 2430:CLIX:*:*)
+	echo clipper-intergraph-clix${UNAME_RELEASE}
+	exit 0 ;;
+    mips:*:*:UMIPS | mips:*:*:RISCos)
+	sed 's/^	//' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
+	#if defined (host_mips) && defined (MIPSEB)
+	#if defined (SYSTYPE_SYSV)
+	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_SVR4)
+	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+	#endif
+	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+	#endif
+	#endif
+	  exit (-1);
+	}
+EOF
+	$CC_FOR_BUILD $dummy.c -o $dummy \
+	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+	  && rm -f $dummy.c $dummy && exit 0
+	rm -f $dummy.c $dummy
+	echo mips-mips-riscos${UNAME_RELEASE}
+	exit 0 ;;
+    Night_Hawk:Power_UNIX:*:*)
+	echo powerpc-harris-powerunix
+	exit 0 ;;
+    m88k:CX/UX:7*:*)
+	echo m88k-harris-cxux7
+	exit 0 ;;
+    m88k:*:4*:R4*)
+	echo m88k-motorola-sysv4
+	exit 0 ;;
+    m88k:*:3*:R3*)
+	echo m88k-motorola-sysv3
+	exit 0 ;;
+    AViiON:dgux:*:*)
+        # DG/UX returns AViiON for all architectures
+        UNAME_PROCESSOR=`/usr/bin/uname -p`
+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	then
+	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    then
+		echo m88k-dg-dgux${UNAME_RELEASE}
+	    else
+		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+	    fi
+	else
+	    echo i586-dg-dgux${UNAME_RELEASE}
+	fi
+ 	exit 0 ;;
+    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
+	echo m88k-dolphin-sysv3
+	exit 0 ;;
+    M88*:*:R3*:*)
+	# Delta 88k system running SVR3
+	echo m88k-motorola-sysv3
+	exit 0 ;;
+    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+	echo m88k-tektronix-sysv3
+	exit 0 ;;
+    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+	echo m68k-tektronix-bsd
+	exit 0 ;;
+    *:IRIX*:*:*)
+	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+	exit 0 ;;
+    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
+	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
+    i?86:AIX:*:*)
+	echo i386-ibm-aix
+	exit 0 ;;
+    ia64:AIX:*:*)
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+	exit 0 ;;
+    *:AIX:2:3)
+	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+		sed 's/^		//' << EOF >$dummy.c
+		#include <sys/systemcfg.h>
+
+		main()
+			{
+			if (!__power_pc())
+				exit(1);
+			puts("powerpc-ibm-aix3.2.5");
+			exit(0);
+			}
+EOF
+		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
+		rm -f $dummy.c $dummy
+		echo rs6000-ibm-aix3.2.5
+	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+		echo rs6000-ibm-aix3.2.4
+	else
+		echo rs6000-ibm-aix3.2
+	fi
+	exit 0 ;;
+    *:AIX:*:[45])
+	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
+	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+		IBM_ARCH=rs6000
+	else
+		IBM_ARCH=powerpc
+	fi
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+	exit 0 ;;
+    *:AIX:*:*)
+	echo rs6000-ibm-aix
+	exit 0 ;;
+    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+	echo romp-ibm-bsd4.4
+	exit 0 ;;
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
+	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+	exit 0 ;;                           # report: romp-ibm BSD 4.3
+    *:BOSX:*:*)
+	echo rs6000-bull-bosx
+	exit 0 ;;
+    DPX/2?00:B.O.S.:*:*)
+	echo m68k-bull-sysv3
+	exit 0 ;;
+    9000/[34]??:4.3bsd:1.*:*)
+	echo m68k-hp-bsd
+	exit 0 ;;
+    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+	echo m68k-hp-bsd4.4
+	exit 0 ;;
+    9000/[34678]??:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	case "${UNAME_MACHINE}" in
+	    9000/31? )            HP_ARCH=m68000 ;;
+	    9000/[34]?? )         HP_ARCH=m68k ;;
+	    9000/[678][0-9][0-9])
+              case "${HPUX_REV}" in
+                11.[0-9][0-9])
+                  if [ -x /usr/bin/getconf ]; then
+                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+                    case "${sc_cpu_version}" in
+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                      532)                      # CPU_PA_RISC2_0
+                        case "${sc_kernel_bits}" in
+                          32) HP_ARCH="hppa2.0n" ;;
+                          64) HP_ARCH="hppa2.0w" ;;
+                        esac ;;
+                    esac
+                  fi ;;
+              esac
+              if [ "${HP_ARCH}" = "" ]; then
+              sed 's/^              //' << EOF >$dummy.c
+
+              #define _HPUX_SOURCE
+              #include <stdlib.h>
+              #include <unistd.h>
+
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+              	{
+              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+              	case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+              	    switch (bits)
+              		{
+              		case 64: puts ("hppa2.0w"); break;
+              		case 32: puts ("hppa2.0n"); break;
+              		default: puts ("hppa2.0"); break;
+              		} break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+              	    puts ("hppa2.0"); break;
+              #endif
+              	default: puts ("hppa1.0"); break;
+              	}
+                  exit (0);
+              }
+EOF
+	(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
+	if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
+	rm -f $dummy.c $dummy
+	fi ;;
+	esac
+	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+	exit 0 ;;
+    ia64:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	echo ia64-hp-hpux${HPUX_REV}
+	exit 0 ;;
+    3050*:HI-UX:*:*)
+	sed 's/^	//' << EOF >$dummy.c
+	#include <unistd.h>
+	int
+	main ()
+	{
+	  long cpu = sysconf (_SC_CPU_VERSION);
+	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
+	     results, however.  */
+	  if (CPU_IS_PA_RISC (cpu))
+	    {
+	      switch (cpu)
+		{
+		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+		  default: puts ("hppa-hitachi-hiuxwe2"); break;
+		}
+	    }
+	  else if (CPU_IS_HP_MC68K (cpu))
+	    puts ("m68k-hitachi-hiuxwe2");
+	  else puts ("unknown-hitachi-hiuxwe2");
+	  exit (0);
+	}
+EOF
+	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
+	rm -f $dummy.c $dummy
+	echo unknown-hitachi-hiuxwe2
+	exit 0 ;;
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+	echo hppa1.1-hp-bsd
+	exit 0 ;;
+    9000/8??:4.3bsd:*:*)
+	echo hppa1.0-hp-bsd
+	exit 0 ;;
+    *9??*:MPE/iX:*:*)
+	echo hppa1.0-hp-mpeix
+	exit 0 ;;
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+	echo hppa1.1-hp-osf
+	exit 0 ;;
+    hp8??:OSF1:*:*)
+	echo hppa1.0-hp-osf
+	exit 0 ;;
+    i?86:OSF1:*:*)
+	if [ -x /usr/sbin/sysversion ] ; then
+	    echo ${UNAME_MACHINE}-unknown-osf1mk
+	else
+	    echo ${UNAME_MACHINE}-unknown-osf1
+	fi
+	exit 0 ;;
+    parisc*:Lites*:*:*)
+	echo hppa1.1-hp-lites
+	exit 0 ;;
+    hppa*:OpenBSD:*:*)
+	echo hppa-unknown-openbsd
+	exit 0 ;;
+    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+	echo c1-convex-bsd
+        exit 0 ;;
+    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+        exit 0 ;;
+    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+	echo c34-convex-bsd
+        exit 0 ;;
+    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+	echo c38-convex-bsd
+        exit 0 ;;
+    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+	echo c4-convex-bsd
+        exit 0 ;;
+    CRAY*X-MP:*:*:*)
+	echo xmp-cray-unicos
+        exit 0 ;;
+    CRAY*Y-MP:*:*:*)
+	echo ymp-cray-unicos${UNAME_RELEASE}
+	exit 0 ;;
+    CRAY*[A-Z]90:*:*:*)
+	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
+	exit 0 ;;
+    CRAY*TS:*:*:*)
+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*T3D:*:*:*)
+	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*T3E:*:*:*)
+	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*SV1:*:*:*)
+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY-2:*:*:*)
+	echo cray2-cray-unicos
+        exit 0 ;;
+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        exit 0 ;;
+    hp300:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+	exit 0 ;;
+    sparc*:BSD/OS:*:*)
+	echo sparc-unknown-bsdi${UNAME_RELEASE}
+	exit 0 ;;
+    *:BSD/OS:*:*)
+	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+	exit 0 ;;
+    *:FreeBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	exit 0 ;;
+    *:OpenBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+	exit 0 ;;
+    i*:CYGWIN*:*)
+	echo ${UNAME_MACHINE}-pc-cygwin
+	exit 0 ;;
+    i*:MINGW*:*)
+	echo ${UNAME_MACHINE}-pc-mingw32
+	exit 0 ;;
+    i*:PW*:*)
+	echo ${UNAME_MACHINE}-pc-pw32
+	exit 0 ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+	# UNAME_MACHINE based on the output of uname instead of i386?
+	echo i386-pc-interix
+	exit 0 ;;
+    i*:UWIN*:*)
+	echo ${UNAME_MACHINE}-pc-uwin
+	exit 0 ;;
+    p*:CYGWIN*:*)
+	echo powerpcle-unknown-cygwin
+	exit 0 ;;
+    prep*:SunOS:5.*:*)
+	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	exit 0 ;;
+    *:GNU:*:*)
+	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	exit 0 ;;
+    i*86:Minix:*:*)
+	echo ${UNAME_MACHINE}-pc-minix
+	exit 0 ;;
+    arm*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    ia64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux
+	exit 0 ;;
+    m68*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    mips:Linux:*:*)
+	cat >$dummy.c <<EOF
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+int main (int argc, char *argv[]) {
+#else
+int main (argc, argv) int argc; char *argv[]; {
+#endif
+#ifdef __MIPSEB__
+  printf ("%s-unknown-linux-gnu\n", argv[1]);
+#endif
+#ifdef __MIPSEL__
+  printf ("%sel-unknown-linux-gnu\n", argv[1]);
+#endif
+  return 0;
+}
+EOF
+	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
+	rm -f $dummy.c $dummy
+	;;
+    ppc:Linux:*:*)
+	# Determine Lib Version
+	cat >$dummy.c <<EOF
+#include <features.h>
+#if defined(__GLIBC__)
+extern char __libc_version[];
+extern char __libc_release[];
+#endif
+main(argc, argv)
+     int argc;
+     char *argv[];
+{
+#if defined(__GLIBC__)
+  printf("%s %s\n", __libc_version, __libc_release);
+#else
+  printf("unknown\n");
+#endif
+  return 0;
+}
+EOF
+	LIBC=""
+	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
+	if test "$?" = 0 ; then
+		./$dummy | grep 1\.99 > /dev/null
+		if test "$?" = 0 ; then LIBC="libc1" ; fi
+	fi
+	rm -f $dummy.c $dummy
+	echo powerpc-unknown-linux-gnu${LIBC}
+	exit 0 ;;
+    alpha:Linux:*:*)
+	cat <<EOF >$dummy.s
+	  .data
+	  \$Lformat:
+		.byte 37,100,45,37,120,10,0	# "%d-%x\n"
+	   .text
+		.globl main
+		.align 4
+		.ent main
+	    main:
+		.frame \$30,16,\$26,0
+		ldgp \$29,0(\$27)
+		.prologue 1
+		.long 0x47e03d80 # implver \$0
+		lda \$2,-1
+		.long 0x47e20c21 # amask \$2,\$1
+		lda \$16,\$Lformat
+		mov \$0,\$17
+		not \$1,\$18
+		jsr \$26,printf
+		ldgp \$29,0(\$26)
+		mov 0,\$16
+		jsr \$26,exit
+		.end main
+EOF
+	LIBC=""
+	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
+	if test "$?" = 0 ; then
+		case `./$dummy` in
+		0-0)	UNAME_MACHINE="alpha" ;;
+		1-0)	UNAME_MACHINE="alphaev5" ;;
+		1-1)    UNAME_MACHINE="alphaev56" ;;
+		1-101)	UNAME_MACHINE="alphapca56" ;;
+		2-303)	UNAME_MACHINE="alphaev6" ;;
+		2-307)	UNAME_MACHINE="alphaev67" ;;
+		esac
+		objdump --private-headers $dummy | \
+		  grep ld.so.1 > /dev/null
+		if test "$?" = 0 ; then
+			LIBC="libc1"
+		fi
+	fi
+	rm -f $dummy.s $dummy
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	exit 0 ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+	# Look for CPU level
+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
+	esac
+	exit 0 ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
+	exit 0 ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+	echo ${UNAME_MACHINE}-ibm-linux
+	exit 0 ;;
+    sh*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    x86_64:Linux:*:*)
+	echo x86_64-unknown-linux-gnu
+	exit 0 ;;
+    i?86:Linux:*:*)
+	# The BFD linker knows what the default object file format is, so
+	# first see if it will tell us. cd to the root directory to prevent
+	# problems with other programs or directories called `ld' in the path.
+	ld_supported_emulations=`cd /; ld --help 2>&1 \
+			 | sed -ne '/supported emulations:/!d
+				    s/[ 	][ 	]*/ /g
+				    s/.*supported emulations: *//
+				    s/ .*//
+				    p'`
+        case "$ld_supported_emulations" in
+	  i?86linux)
+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+		exit 0
+		;;
+	  elf_i?86)
+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+		;;
+	  i?86coff)
+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+		exit 0
+		;;
+	esac
+	# Either a pre-BFD a.out linker (linux-gnuoldld)
+	# or one that does not give us useful --help.
+	# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
+	# If ld does not provide *any* "supported emulations:"
+	# that means it is gnuoldld.
+	test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
+	case "${UNAME_MACHINE}" in
+	i?86)
+	  VENDOR=pc;
+	  ;;
+	*)
+	  VENDOR=unknown;
+	  ;;
+	esac
+	# Determine whether the default compiler is a.out or elf
+	cat >$dummy.c <<EOF
+#include <features.h>
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
+#ifdef __ELF__
+# ifdef __GLIBC__
+#  if __GLIBC__ >= 2
+    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
+#  else
+    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+#  endif
+# else
+   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+# endif
+#else
+  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
+#endif
+  return 0;
+}
+EOF
+	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
+	rm -f $dummy.c $dummy
+	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+	;;
+# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
+# are messed up and put the nodename in both sysname and nodename.
+    i?86:DYNIX/ptx:4*:*)
+	echo i386-sequent-sysv4
+	exit 0 ;;
+    i?86:UNIX_SV:4.2MP:2.*)
+        # Unixware is an offshoot of SVR4, but it has its own version
+        # number series starting with 2...
+        # I am not positive that other SVR4 systems won't match this,
+	# I just have to hope.  -- rms.
+        # Use sysv4.2uw... so that sysv4* matches it.
+	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+	exit 0 ;;
+    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
+	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+	else
+		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+	fi
+	exit 0 ;;
+    i?86:*:5:7*)
+        # Fixed at (any) Pentium or better
+        UNAME_MACHINE=i586
+        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
+	    echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
+	else
+	    echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
+	fi
+	exit 0 ;;
+    i?86:*:3.2:*)
+	if test -f /usr/options/cb.name; then
+		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+	elif /bin/uname -X 2>/dev/null >/dev/null ; then
+		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
+		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
+		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
+			&& UNAME_MACHINE=i586
+		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+	else
+		echo ${UNAME_MACHINE}-pc-sysv32
+	fi
+	exit 0 ;;
+    i?86:*DOS:*:*)
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+	exit 0 ;;
+    pc:*:*:*)
+	# Left here for compatibility:
+        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+        # the processor, so we play safe by assuming i386.
+	echo i386-pc-msdosdjgpp
+        exit 0 ;;
+    Intel:Mach:3*:*)
+	echo i386-pc-mach3
+	exit 0 ;;
+    paragon:*:*:*)
+	echo i860-intel-osf1
+	exit 0 ;;
+    i860:*:4.*:*) # i860-SVR4
+	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+	else # Add other i860-SVR4 vendors below as they are discovered.
+	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	fi
+	exit 0 ;;
+    mini*:CTIX:SYS*5:*)
+	# "miniframe"
+	echo m68010-convergent-sysv
+	exit 0 ;;
+    M68*:*:R3V[567]*:*)
+	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
+	OS_REL=''
+	test -r /etc/.relid \
+	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+          && echo i486-ncr-sysv4 && exit 0 ;;
+    m68*:LynxOS:2.*:*)
+	echo m68k-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
+    mc68030:UNIX_System_V:4.*:*)
+	echo m68k-atari-sysv4
+	exit 0 ;;
+    i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
+	echo i386-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
+    TSUNAMI:LynxOS:2.*:*)
+	echo sparc-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
+    rs6000:LynxOS:2.*:*)
+	echo rs6000-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
+    SM[BE]S:UNIX_SV:*:*)
+	echo mips-dde-sysv${UNAME_RELEASE}
+	exit 0 ;;
+    RM*:ReliantUNIX-*:*:*)
+	echo mips-sni-sysv4
+	exit 0 ;;
+    RM*:SINIX-*:*:*)
+	echo mips-sni-sysv4
+	exit 0 ;;
+    *:SINIX-*:*:*)
+	if uname -p 2>/dev/null >/dev/null ; then
+		UNAME_MACHINE=`(uname -p) 2>/dev/null`
+		echo ${UNAME_MACHINE}-sni-sysv4
+	else
+		echo ns32k-sni-sysv
+	fi
+	exit 0 ;;
+    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                           # says <Richard.M.Bartel@ccMail.Census.GOV>
+        echo i586-unisys-sysv4
+        exit 0 ;;
+    *:UNIX_System_V:4*:FTX*)
+	# From Gerald Hewes <hewes@openmarket.com>.
+	# How about differentiating between stratus architectures? -djm
+	echo hppa1.1-stratus-sysv4
+	exit 0 ;;
+    *:*:*:FTX*)
+	# From seanf@swdc.stratus.com.
+	echo i860-stratus-sysv4
+	exit 0 ;;
+    mc68*:A/UX:*:*)
+	echo m68k-apple-aux${UNAME_RELEASE}
+	exit 0 ;;
+    news*:NEWS-OS:6*:*)
+	echo mips-sony-newsos6
+	exit 0 ;;
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+	if [ -d /usr/nec ]; then
+	        echo mips-nec-sysv${UNAME_RELEASE}
+	else
+	        echo mips-unknown-sysv${UNAME_RELEASE}
+	fi
+        exit 0 ;;
+    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
+	echo powerpc-be-beos
+	exit 0 ;;
+    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
+	echo powerpc-apple-beos
+	exit 0 ;;
+    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
+	echo i586-pc-beos
+	exit 0 ;;
+    SX-4:SUPER-UX:*:*)
+	echo sx4-nec-superux${UNAME_RELEASE}
+	exit 0 ;;
+    SX-5:SUPER-UX:*:*)
+	echo sx5-nec-superux${UNAME_RELEASE}
+	exit 0 ;;
+    Power*:Rhapsody:*:*)
+	echo powerpc-apple-rhapsody${UNAME_RELEASE}
+	exit 0 ;;
+    *:Rhapsody:*:*)
+	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+	exit 0 ;;
+    *:Darwin:*:*)
+	echo `uname -p`-apple-darwin${UNAME_RELEASE}
+	exit 0 ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+	if test "${UNAME_MACHINE}" = "x86pc"; then
+		UNAME_MACHINE=pc
+	fi
+	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
+	exit 0 ;;
+    *:QNX:*:4*)
+	echo i386-pc-qnx
+	exit 0 ;;
+    NSR-[KW]:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk${UNAME_RELEASE}
+	exit 0 ;;
+    *:NonStop-UX:*:*)
+	echo mips-compaq-nonstopux
+	exit 0 ;;
+    BS2000:POSIX*:*:*)
+	echo bs2000-siemens-sysv
+	exit 0 ;;
+    DS/*:UNIX_System_V:*:*)
+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+	exit 0 ;;
+    *:Plan9:*:*)
+	# "uname -m" is not consistent, so use $cputype instead. 386
+	# is converted to i386 for consistency with other x86
+	# operating systems.
+	if test "$cputype" = "386"; then
+	    UNAME_MACHINE=i386
+	else
+	    UNAME_MACHINE="$cputype"
+	fi
+	echo ${UNAME_MACHINE}-unknown-plan9
+	exit 0 ;;
+    i?86:OS/2:*:*)
+	# If we were able to find `uname', then EMX Unix compatibility
+	# is probably installed.
+	echo ${UNAME_MACHINE}-pc-os2-emx
+	exit 0 ;;
+    *:TOPS-10:*:*)
+	echo pdp10-unknown-tops10
+	exit 0 ;;
+    *:TENEX:*:*)
+	echo pdp10-unknown-tenex
+	exit 0 ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+	echo pdp10-dec-tops20
+	exit 0 ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+	echo pdp10-xkl-tops20
+	exit 0 ;;
+    *:TOPS-20:*:*)
+	echo pdp10-unknown-tops20
+	exit 0 ;;
+    *:ITS:*:*)
+	echo pdp10-unknown-its
+	exit 0 ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
+     I don't know....  */
+  printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+  printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+          "4"
+#else
+	  ""
+#endif
+         ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+  printf ("arm-acorn-riscix"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+  printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+  int version;
+  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+  exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+  printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+  printf ("ns32k-encore-mach\n"); exit (0);
+#else
+  printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+  printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+  printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+  printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+    struct utsname un;
+
+    uname(&un);
+
+    if (strncmp(un.version, "V2", 2) == 0) {
+	printf ("i386-sequent-ptx2\n"); exit (0);
+    }
+    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+	printf ("i386-sequent-ptx1\n"); exit (0);
+    }
+    printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+  printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+  exit (1);
+}
+EOF
+
+$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
+rm -f $dummy.c $dummy
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+    case `getsysinfo -f cpu_type` in
+    c1*)
+	echo c1-convex-bsd
+	exit 0 ;;
+    c2*)
+	if getsysinfo -f scalar_acc
+	then echo c32-convex-bsd
+	else echo c2-convex-bsd
+	fi
+	exit 0 ;;
+    c34*)
+	echo c34-convex-bsd
+	exit 0 ;;
+    c38*)
+	echo c38-convex-bsd
+	exit 0 ;;
+    c4*)
+	echo c4-convex-bsd
+	exit 0 ;;
+    esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the