Initial revision
authorSam Lantinga <slouken@lokigames.com>
Thu, 26 Apr 2001 16:45:43 +0000
changeset 074212992fb08
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
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/.cvsignore	Thu Apr 26 16:45:43 2001 +0000
     1.3 @@ -0,0 +1,10 @@
     1.4 +Makefile.in
     1.5 +configure
     1.6 +aclocal.m4
     1.7 +config.log
     1.8 +config.cache
     1.9 +libtool
    1.10 +config.status
    1.11 +Makefile
    1.12 +sdl-config
    1.13 +SDL.spec
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/BUGS	Thu Apr 26 16:45:43 2001 +0000
     2.3 @@ -0,0 +1,199 @@
     2.4 +
     2.5 +All:
     2.6 +	Audio rate conversion is only implemented by multiplying or dividing
     2.7 +	by a power of two.  This is a side-effect of the requirement that the
     2.8 +	raw audio buffer size be a power of two, and can hopefully be fixed.
     2.9 +	This means 8 KHz audio converted to 22 KHz ends up being 16 KHz. :-/
    2.10 +
    2.11 +	When the implementation is writing directly to video memory the mouse
    2.12 +	cursor doesn't work properly.  Applications which do this should use
    2.13 +	their own mouse cursor and call SDL_ShowCursor(0) to hide the system
    2.14 +	cursor.
    2.15 +
    2.16 +Linux:
    2.17 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
    2.18 +	It requires handling of keyboard mapping events and using the XIM
    2.19 +	input translation extension.  I will implement it as requested.
    2.20 +	Latin-1 keyboard input works fine.
    2.21 +
    2.22 +	The AAlib, GGI, and SVGAlib video drivers are not heavily tested.
    2.23 +
    2.24 +Win32:
    2.25 +	The MCI driver can't tell if the CD-ROM drive is paused or stopped.
    2.26 +
    2.27 +	The SDL_INIT_EVENTTHREAD flag is not supported on Win32
    2.28 +	(Idea: create a separate DirectInput polling thread)
    2.29 +	The main purpose of this flag is for smooth cursor motion in
    2.30 +	fullscreen environments.
    2.31 +
    2.32 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
    2.33 +	This requires the ToUnicode() API which is only implemented on
    2.34 +	Windows NT/2000, not on Windows 95/98.
    2.35 +	Latin-1 keyboard input works fine.
    2.36 +
    2.37 +	Joysticks are only supported under the Win32 MultiMedia API,
    2.38 +	DirectInput support is not yet implemented.
    2.39 +
    2.40 +BeOS:
    2.41 +	BePPC is not supported, apparently not even by Be Inc.
    2.42 +
    2.43 +	SDL_WM_GrabInput() is not implemented.
    2.44 +	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
    2.45 +	to prevent the user from switching input and mouse focus away from
    2.46 +	the SDL application.
    2.47 +
    2.48 +	Continuous relative mouse motion is not implemented.
    2.49 +
    2.50 +	The CD driver doesn't detect SCSI CD-ROMs yet.
    2.51 +
    2.52 +	Wide UNICODE character input (Kanji, etc.) has not been tested.
    2.53 +	Latin-1 keyboard input works fine.
    2.54 +
    2.55 +MacOS:
    2.56 +	Palette handling isn't implemented in windowed mode yet.
    2.57 +
    2.58 +	Audio hasn't been extensively tested, in particular the locking
    2.59 +	isn't implemented and mixer routines may not call malloc() or free()
    2.60 +	because they are called at interrupt time.
    2.61 +
    2.62 +	SDL_WM_GrabInput() is not implemented.
    2.63 +	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
    2.64 +	to prevent the user from switching input and mouse focus away from
    2.65 +	the SDL application.
    2.66 +
    2.67 +	Continuous relative mouse motion is not implemented.
    2.68 +
    2.69 +	SDL_AddTimer() and SDL_RemoveTimer() haven't been implemented yet.
    2.70 +
    2.71 +	Not all of the keys are properly recognized on the keyboard.
    2.72 +
    2.73 +MacOS X:
    2.74 +	Fullscreen mode doesn't work - it requires the QuickTime framework
    2.75 +	and that the new SDL window gets raised to the top of the Z order.
    2.76 +
    2.77 +	Palette handling isn't implemented in windowed mode yet.
    2.78 +
    2.79 +	Native sound and video routines are not finished, though Carbon
    2.80 +	seems to work fairly well.
    2.81 +
    2.82 +	Joysticks and CD-ROM functions are not implemented yet.
    2.83 +
    2.84 +	SDL_WM_GrabInput() is not implemented.
    2.85 +	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
    2.86 +	to prevent the user from switching input and mouse focus away from
    2.87 +	the SDL application.
    2.88 +
    2.89 +	Continuous relative mouse motion is not implemented.
    2.90 +
    2.91 +	Not all of the keys are properly recognized on the keyboard.
    2.92 +
    2.93 +	MacOS X seems to have a broken pthread_cancel() implementation.
    2.94 +
    2.95 +FreeBSD:
    2.96 +	pthread_cancel() isn't supported by FreeBSD 3.X, so threads don't
    2.97 +	work on versions of FreeBSD earlier than 4.0.
    2.98 +
    2.99 +	The CD-ROM handling doesn't work completely.
   2.100 +
   2.101 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.102 +	It requires handling of keyboard mapping events and using the XIM
   2.103 +	input translation extension.  I will implement it as requested.
   2.104 +	Latin-1 keyboard input works fine.
   2.105 +
   2.106 +Solaris:
   2.107 +	The joystick functions are not implemented yet.
   2.108 +
   2.109 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.110 +	It requires handling of keyboard mapping events and using the XIM
   2.111 +	input translation extension.  I will implement it as requested.
   2.112 +	Latin-1 keyboard input works fine.
   2.113 +
   2.114 +IRIX:
   2.115 +	The CD-ROM handling doesn't work completely.
   2.116 +
   2.117 +	The joystick functions are not implemented yet.
   2.118 +
   2.119 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.120 +	It requires handling of keyboard mapping events and using the XIM
   2.121 +	input translation extension.  I will implement it as requested.
   2.122 +	Latin-1 keyboard input works fine.
   2.123 +
   2.124 +OpenBSD:  -= NOT YET SUPPORTED =-
   2.125 +	This is reported to work, but I haven't verified this.
   2.126 +
   2.127 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.128 +	It requires handling of keyboard mapping events and using the XIM
   2.129 +	input translation extension.  I will implement it as requested.
   2.130 +	Latin-1 keyboard input works fine.
   2.131 +
   2.132 +OSF/Tru64:  -= NOT YET SUPPORTED =-
   2.133 +	The audio functions are not implemented yet.
   2.134 +
   2.135 +	Joysticks and CD-ROM functions are not implemented yet.
   2.136 +
   2.137 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.138 +	It requires handling of keyboard mapping events and using the XIM
   2.139 +	input translation extension.  I will implement it as requested.
   2.140 +	Latin-1 keyboard input works fine.
   2.141 +
   2.142 +AIX:  -= NOT YET SUPPORTED =-
   2.143 +	This port has only been tested with AIX 4.3.3
   2.144 +
   2.145 +	The OpenGL support doesn't work yet.
   2.146 +
   2.147 +	The joystick subsystem isn't implemented yet.
   2.148 +
   2.149 +	Endian detection doesn't work yet - needs a unique CPP symbol.
   2.150 +
   2.151 +	Wide UNICODE character input (Kanji, etc.) is not yet supported.
   2.152 +	It requires handling of keyboard mapping events and using the XIM
   2.153 +	input translation extension.  I will implement it as requested.
   2.154 +	Latin-1 keyboard input works fine.
   2.155 +
   2.156 +	The AIX port was done by Carsten.Griwodz@KOM.tu-darmstadt.de
   2.157 +	More information on this port is available at:
   2.158 +	http://www.kom.e-technik.tu-darmstadt.de/~griff/SDL/
   2.159 +
   2.160 +QNX:  -= NOT YET SUPPORTED =-
   2.161 +	Configuration doesn't work right, Makefiles still need to be
   2.162 +	tweaked (need to add libraries to any apps that use sdl_config
   2.163 +	to figure out what libs they need).
   2.164 + 
   2.165 +	Only static libraries are being made, no shared ones.
   2.166 + 
   2.167 +	The only hardware surface is the primary view surface.
   2.168 + 
   2.169 +	Mouse events don't seem to be working right.
   2.170 + 
   2.171 +	Fullscreen doesn't display correctly.
   2.172 + 
   2.173 +	The software surfaces could use some speed up.
   2.174 + 
   2.175 +	Many of the test apps segment violate on exit, and I'm not sure
   2.176 +	they're all working either
   2.177 + 
   2.178 +	It doesn't look like the OpenGL stuff is there. (did a grep for
   2.179 +	PdCreateOpenGLContext, nothing found).
   2.180 + 
   2.181 +	The mouse cursor doesn't look right.
   2.182 +
   2.183 +AmigaOS:  -= NOT YET SUPPORTED =-
   2.184 +	The OpenGL support isn't implemented yet.
   2.185 +
   2.186 +	SDL_WM_GrabInput() is not implemented.
   2.187 +	Does anyone know how to do this?  SDL_WM_GrabInput() is designed
   2.188 +	to prevent the user from switching input and mouse focus away from
   2.189 +	the SDL application.
   2.190 +
   2.191 +	Continuous relative mouse motion is not implemented.
   2.192 +
   2.193 +	Audio can work, but isn't completely integrated in the CVS
   2.194 +	version of SDL.
   2.195 +
   2.196 +	The joystick subsystem isn't implemented yet.
   2.197 +
   2.198 +	There's some confusion about the multi-threaded synchronization
   2.199 +	primitives on AmigaOS, so mutexes and semaphores aren't correctly
   2.200 +	implemented yet.
   2.201 +
   2.202 +	The AmigaOS port was done by Gabriele.Greco@galactica.it
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/COPYING	Thu Apr 26 16:45:43 2001 +0000
     3.3 @@ -0,0 +1,437 @@
     3.4 +		  GNU LIBRARY GENERAL PUBLIC LICENSE
     3.5 +		       Version 2, June 1991
     3.6 +
     3.7 + Copyright (C) 1991 Free Software Foundation, Inc.
     3.8 +    		    59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     3.9 + Everyone is permitted to copy and distribute verbatim copies
    3.10 + of this license document, but changing it is not allowed.
    3.11 +
    3.12 +[This is the first released version of the library GPL.  It is
    3.13 + numbered 2 because it goes with version 2 of the ordinary GPL.]
    3.14 +
    3.15 +			    Preamble
    3.16 +
    3.17 +  The licenses for most software are designed to take away your
    3.18 +freedom to share and change it.  By contrast, the GNU General Public
    3.19 +Licenses are intended to guarantee your freedom to share and change
    3.20 +free software--to make sure the software is free for all its users.
    3.21 +
    3.22 +  This license, the Library General Public License, applies to some
    3.23 +specially designated Free Software Foundation software, and to any
    3.24 +other libraries whose authors decide to use it.  You can use it for
    3.25 +your libraries, too.
    3.26 +
    3.27 +  When we speak of free software, we are referring to freedom, not
    3.28 +price.  Our General Public Licenses are designed to make sure that you
    3.29 +have the freedom to distribute copies of free software (and charge for
    3.30 +this service if you wish), that you receive source code or can get it
    3.31 +if you want it, that you can change the software or use pieces of it
    3.32 +in new free programs; and that you know you can do these things.
    3.33 +
    3.34 +  To protect your rights, we need to make restrictions that forbid
    3.35 +anyone to deny you these rights or to ask you to surrender the rights.
    3.36 +These restrictions translate to certain responsibilities for you if
    3.37 +you distribute copies of the library, or if you modify it.
    3.38 +
    3.39 +  For example, if you distribute copies of the library, whether gratis
    3.40 +or for a fee, you must give the recipients all the rights that we gave
    3.41 +you.  You must make sure that they, too, receive or can get the source
    3.42 +code.  If you link a program with the library, you must provide
    3.43 +complete object files to the recipients so that they can relink them
    3.44 +with the library, after making changes to the library and recompiling
    3.45 +it.  And you must show them these terms so they know their rights.
    3.46 +
    3.47 +  Our method of protecting your rights has two steps: (1) copyright
    3.48 +the library, and (2) offer you this license which gives you legal
    3.49 +permission to copy, distribute and/or modify the library.
    3.50 +
    3.51 +  Also, for each distributor's protection, we want to make certain
    3.52 +that everyone understands that there is no warranty for this free
    3.53 +library.  If the library is modified by someone else and passed on, we
    3.54 +want its recipients to know that what they have is not the original
    3.55 +version, so that any problems introduced by others will not reflect on
    3.56 +the original authors' reputations.
    3.57 +
    3.58 +  Finally, any free program is threatened constantly by software
    3.59 +patents.  We wish to avoid the danger that companies distributing free
    3.60 +software will individually obtain patent licenses, thus in effect
    3.61 +transforming the program into proprietary software.  To prevent this,
    3.62 +we have made it clear that any patent must be licensed for everyone's
    3.63 +free use or not licensed at all.
    3.64 +
    3.65 +  Most GNU software, including some libraries, is covered by the ordinary
    3.66 +GNU General Public License, which was designed for utility programs.  This
    3.67 +license, the GNU Library General Public License, applies to certain
    3.68 +designated libraries.  This license is quite different from the ordinary
    3.69 +one; be sure to read it in full, and don't assume that anything in it is
    3.70 +the same as in the ordinary license.
    3.71 +
    3.72 +  The reason we have a separate public license for some libraries is that
    3.73 +they blur the distinction we usually make between modifying or adding to a
    3.74 +program and simply using it.  Linking a program with a library, without
    3.75 +changing the library, is in some sense simply using the library, and is
    3.76 +analogous to running a utility program or application program.  However, in
    3.77 +a textual and legal sense, the linked executable is a combined work, a
    3.78 +derivative of the original library, and the ordinary General Public License
    3.79 +treats it as such.
    3.80 +
    3.81 +  Because of this blurred distinction, using the ordinary General
    3.82 +Public License for libraries did not effectively promote software
    3.83 +sharing, because most developers did not use the libraries.  We
    3.84 +concluded that weaker conditions might promote sharing better.
    3.85 +
    3.86 +  However, unrestricted linking of non-free programs would deprive the
    3.87 +users of those programs of all benefit from the free status of the
    3.88 +libraries themselves.  This Library General Public License is intended to
    3.89 +permit developers of non-free programs to use free libraries, while
    3.90 +preserving your freedom as a user of such programs to change the free
    3.91 +libraries that are incorporated in them.  (We have not seen how to achieve
    3.92 +this as regards changes in header files, but we have achieved it as regards
    3.93 +changes in the actual functions of the Library.)  The hope is that this
    3.94 +will lead to faster development of free libraries.
    3.95 +
    3.96 +  The precise terms and conditions for copying, distribution and
    3.97 +modification follow.  Pay close attention to the difference between a
    3.98 +"work based on the library" and a "work that uses the library".  The
    3.99 +former contains code derived from the library, while the latter only
   3.100 +works together with the library.
   3.101 +
   3.102 +  Note that it is possible for a library to be covered by the ordinary
   3.103 +General Public License rather than by this special one.
   3.104 +
   3.105 +		  GNU LIBRARY GENERAL PUBLIC LICENSE
   3.106 +   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
   3.107 +
   3.108 +  0. This License Agreement applies to any software library which
   3.109 +contains a notice placed by the copyright holder or other authorized
   3.110 +party saying it may be distributed under the terms of this Library
   3.111 +General Public License (also called "this License").  Each licensee is
   3.112 +addressed as "you".
   3.113 +
   3.114 +  A "library" means a collection of software functions and/or data
   3.115 +prepared so as to be conveniently linked with application programs
   3.116 +(which use some of those functions and data) to form executables.
   3.117 +
   3.118 +  The "Library", below, refers to any such software library or work
   3.119 +which has been distributed under these terms.  A "work based on the
   3.120 +Library" means either the Library or any derivative work under
   3.121 +copyright law: that is to say, a work containing the Library or a
   3.122 +portion of it, either verbatim or with modifications and/or translated
   3.123 +straightforwardly into another language.  (Hereinafter, translation is
   3.124 +included without limitation in the term "modification".)
   3.125 +
   3.126 +  "Source code" for a work means the preferred form of the work for
   3.127 +making modifications to it.  For a library, complete source code means
   3.128 +all the source code for all modules it contains, plus any associated
   3.129 +interface definition files, plus the scripts used to control compilation
   3.130 +and installation of the library.
   3.131 +
   3.132 +  Activities other than copying, distribution and modification are not
   3.133 +covered by this License; they are outside its scope.  The act of
   3.134 +running a program using the Library is not restricted, and output from
   3.135 +such a program is covered only if its contents constitute a work based
   3.136 +on the Library (independent of the use of the Library in a tool for
   3.137 +writing it).  Whether that is true depends on what the Library does
   3.138 +and what the program that uses the Library does.
   3.139 +  
   3.140 +  1. You may copy and distribute verbatim copies of the Library's
   3.141 +complete source code as you receive it, in any medium, provided that
   3.142 +you conspicuously and appropriately publish on each copy an
   3.143 +appropriate copyright notice and disclaimer of warranty; keep intact
   3.144 +all the notices that refer to this License and to the absence of any
   3.145 +warranty; and distribute a copy of this License along with the
   3.146 +Library.
   3.147 +
   3.148 +  You may charge a fee for the physical act of transferring a copy,
   3.149 +and you may at your option offer warranty protection in exchange for a
   3.150 +fee.
   3.151 +
   3.152 +  2. You may modify your copy or copies of the Library or any portion
   3.153 +of it, thus forming a work based on the Library, and copy and
   3.154 +distribute such modifications or work under the terms of Section 1
   3.155 +above, provided that you also meet all of these conditions:
   3.156 +
   3.157 +    a) The modified work must itself be a software library.
   3.158 +
   3.159 +    b) You must cause the files modified to carry prominent notices
   3.160 +    stating that you changed the files and the date of any change.
   3.161 +
   3.162 +    c) You must cause the whole of the work to be licensed at no
   3.163 +    charge to all third parties under the terms of this License.
   3.164 +
   3.165 +    d) If a facility in the modified Library refers to a function or a
   3.166 +    table of data to be supplied by an application program that uses
   3.167 +    the facility, other than as an argument passed when the facility
   3.168 +    is invoked, then you must make a good faith effort to ensure that,
   3.169 +    in the event an application does not supply such function or
   3.170 +    table, the facility still operates, and performs whatever part of
   3.171 +    its purpose remains meaningful.
   3.172 +
   3.173 +    (For example, a function in a library to compute square roots has
   3.174 +    a purpose that is entirely well-defined independent of the
   3.175 +    application.  Therefore, Subsection 2d requires that any
   3.176 +    application-supplied function or table used by this function must
   3.177 +    be optional: if the application does not supply it, the square
   3.178 +    root function must still compute square roots.)
   3.179 +
   3.180 +These requirements apply to the modified work as a whole.  If
   3.181 +identifiable sections of that work are not derived from the Library,
   3.182 +and can be reasonably considered independent and separate works in
   3.183 +themselves, then this License, and its terms, do not apply to those
   3.184 +sections when you distribute them as separate works.  But when you
   3.185 +distribute the same sections as part of a whole which is a work based
   3.186 +on the Library, the distribution of the whole must be on the terms of
   3.187 +this License, whose permissions for other licensees extend to the
   3.188 +entire whole, and thus to each and every part regardless of who wrote
   3.189 +it.
   3.190 +
   3.191 +Thus, it is not the intent of this section to claim rights or contest
   3.192 +your rights to work written entirely by you; rather, the intent is to
   3.193 +exercise the right to control the distribution of derivative or
   3.194 +collective works based on the Library.
   3.195 +
   3.196 +In addition, mere aggregation of another work not based on the Library
   3.197 +with the Library (or with a work based on the Library) on a volume of
   3.198 +a storage or distribution medium does not bring the other work under
   3.199 +the scope of this License.
   3.200 +
   3.201 +  3. You may opt to apply the terms of the ordinary GNU General Public
   3.202 +License instead of this License to a given copy of the Library.  To do
   3.203 +this, you must alter all the notices that refer to this License, so
   3.204 +that they refer to the ordinary GNU General Public License, version 2,
   3.205 +instead of to this License.  (If a newer version than version 2 of the
   3.206 +ordinary GNU General Public License has appeared, then you can specify
   3.207 +that version instead if you wish.)  Do not make any other change in
   3.208 +these notices.
   3.209 +
   3.210 +  Once this change is made in a given copy, it is irreversible for
   3.211 +that copy, so the ordinary GNU General Public License applies to all
   3.212 +subsequent copies and derivative works made from that copy.
   3.213 +
   3.214 +  This option is useful when you wish to copy part of the code of
   3.215 +the Library into a program that is not a library.
   3.216 +
   3.217 +  4. You may copy and distribute the Library (or a portion or
   3.218 +derivative of it, under Section 2) in object code or executable form
   3.219 +under the terms of Sections 1 and 2 above provided that you accompany
   3.220 +it with the complete corresponding machine-readable source code, which
   3.221 +must be distributed under the terms of Sections 1 and 2 above on a
   3.222 +medium customarily used for software interchange.
   3.223 +
   3.224 +  If distribution of object code is made by offering access to copy
   3.225 +from a designated place, then offering equivalent access to copy the
   3.226 +source code from the same place satisfies the requirement to
   3.227 +distribute the source code, even though third parties are not
   3.228 +compelled to copy the source along with the object code.
   3.229 +
   3.230 +  5. A program that contains no derivative of any portion of the
   3.231 +Library, but is designed to work with the Library by being compiled or
   3.232 +linked with it, is called a "work that uses the Library".  Such a
   3.233 +work, in isolation, is not a derivative work of the Library, and
   3.234 +therefore falls outside the scope of this License.
   3.235 +
   3.236 +  However, linking a "work that uses the Library" with the Library
   3.237 +creates an executable that is a derivative of the Library (because it
   3.238 +contains portions of the Library), rather than a "work that uses the
   3.239 +library".  The executable is therefore covered by this License.
   3.240 +Section 6 states terms for distribution of such executables.
   3.241 +
   3.242 +  When a "work that uses the Library" uses material from a header file
   3.243 +that is part of the Library, the object code for the work may be a
   3.244 +derivative work of the Library even though the source code is not.
   3.245 +Whether this is true is especially significant if the work can be
   3.246 +linked without the Library, or if the work is itself a library.  The
   3.247 +threshold for this to be true is not precisely defined by law.
   3.248 +
   3.249 +  If such an object file uses only numerical parameters, data
   3.250 +structure layouts and accessors, and small macros and small inline
   3.251 +functions (ten lines or less in length), then the use of the object
   3.252 +file is unrestricted, regardless of whether it is legally a derivative
   3.253 +work.  (Executables containing this object code plus portions of the
   3.254 +Library will still fall under Section 6.)
   3.255 +
   3.256 +  Otherwise, if the work is a derivative of the Library, you may
   3.257 +distribute the object code for the work under the terms of Section 6.
   3.258 +Any executables containing that work also fall under Section 6,
   3.259 +whether or not they are linked directly with the Library itself.
   3.260 +
   3.261 +  6. As an exception to the Sections above, you may also compile or
   3.262 +link a "work that uses the Library" with the Library to produce a
   3.263 +work containing portions of the Library, and distribute that work
   3.264 +under terms of your choice, provided that the terms permit
   3.265 +modification of the work for the customer's own use and reverse
   3.266 +engineering for debugging such modifications.
   3.267 +
   3.268 +  You must give prominent notice with each copy of the work that the
   3.269 +Library is used in it and that the Library and its use are covered by
   3.270 +this License.  You must supply a copy of this License.  If the work
   3.271 +during execution displays copyright notices, you must include the
   3.272 +copyright notice for the Library among them, as well as a reference
   3.273 +directing the user to the copy of this License.  Also, you must do one
   3.274 +of these things:
   3.275 +
   3.276 +    a) Accompany the work with the complete corresponding
   3.277 +    machine-readable source code for the Library including whatever
   3.278 +    changes were used in the work (which must be distributed under
   3.279 +    Sections 1 and 2 above); and, if the work is an executable linked
   3.280 +    with the Library, with the complete machine-readable "work that
   3.281 +    uses the Library", as object code and/or source code, so that the
   3.282 +    user can modify the Library and then relink to produce a modified
   3.283 +    executable containing the modified Library.  (It is understood
   3.284 +    that the user who changes the contents of definitions files in the
   3.285 +    Library will not necessarily be able to recompile the application
   3.286 +    to use the modified definitions.)
   3.287 +
   3.288 +    b) Accompany the work with a written offer, valid for at
   3.289 +    least three years, to give the same user the materials
   3.290 +    specified in Subsection 6a, above, for a charge no more
   3.291 +    than the cost of performing this distribution.
   3.292 +
   3.293 +    c) If distribution of the work is made by offering access to copy
   3.294 +    from a designated place, offer equivalent access to copy the above
   3.295 +    specified materials from the same place.
   3.296 +
   3.297 +    d) Verify that the user has already received a copy of these
   3.298 +    materials or that you have already sent this user a copy.
   3.299 +
   3.300 +  For an executable, the required form of the "work that uses the
   3.301 +Library" must include any data and utility programs needed for
   3.302 +reproducing the executable from it.  However, as a special exception,
   3.303 +the source code distributed need not include anything that is normally
   3.304 +distributed (in either source or binary form) with the major
   3.305 +components (compiler, kernel, and so on) of the operating system on
   3.306 +which the executable runs, unless that component itself accompanies
   3.307 +the executable.
   3.308 +
   3.309 +  It may happen that this requirement contradicts the license
   3.310 +restrictions of other proprietary libraries that do not normally
   3.311 +accompany the operating system.  Such a contradiction means you cannot
   3.312 +use both them and the Library together in an executable that you
   3.313 +distribute.
   3.314 +
   3.315 +  7. You may place library facilities that are a work based on the
   3.316 +Library side-by-side in a single library together with other library
   3.317 +facilities not covered by this License, and distribute such a combined
   3.318 +library, provided that the separate distribution of the work based on
   3.319 +the Library and of the other library facilities is otherwise
   3.320 +permitted, and provided that you do these two things:
   3.321 +
   3.322 +    a) Accompany the combined library with a copy of the same work
   3.323 +    based on the Library, uncombined with any other library
   3.324 +    facilities.  This must be distributed under the terms of the
   3.325 +    Sections above.
   3.326 +
   3.327 +    b) Give prominent notice with the combined library of the fact
   3.328 +    that part of it is a work based on the Library, and explaining
   3.329 +    where to find the accompanying uncombined form of the same work.
   3.330 +
   3.331 +  8. You may not copy, modify, sublicense, link with, or distribute
   3.332 +the Library except as expressly provided under this License.  Any
   3.333 +attempt otherwise to copy, modify, sublicense, link with, or
   3.334 +distribute the Library is void, and will automatically terminate your
   3.335 +rights under this License.  However, parties who have received copies,
   3.336 +or rights, from you under this License will not have their licenses
   3.337 +terminated so long as such parties remain in full compliance.
   3.338 +
   3.339 +  9. You are not required to accept this License, since you have not
   3.340 +signed it.  However, nothing else grants you permission to modify or
   3.341 +distribute the Library or its derivative works.  These actions are
   3.342 +prohibited by law if you do not accept this License.  Therefore, by
   3.343 +modifying or distributing the Library (or any work based on the
   3.344 +Library), you indicate your acceptance of this License to do so, and
   3.345 +all its terms and conditions for copying, distributing or modifying
   3.346 +the Library or works based on it.
   3.347 +
   3.348 +  10. Each time you redistribute the Library (or any work based on the
   3.349 +Library), the recipient automatically receives a license from the
   3.350 +original licensor to copy, distribute, link with or modify the Library
   3.351 +subject to these terms and conditions.  You may not impose any further
   3.352 +restrictions on the recipients' exercise of the rights granted herein.
   3.353 +You are not responsible for enforcing compliance by third parties to
   3.354 +this License.
   3.355 +
   3.356 +  11. If, as a consequence of a court judgment or allegation of patent
   3.357 +infringement or for any other reason (not limited to patent issues),
   3.358 +conditions are imposed on you (whether by court order, agreement or
   3.359 +otherwise) that contradict the conditions of this License, they do not
   3.360 +excuse you from the conditions of this License.  If you cannot
   3.361 +distribute so as to satisfy simultaneously your obligations under this
   3.362 +License and any other pertinent obligations, then as a consequence you
   3.363 +may not distribute the Library at all.  For example, if a patent
   3.364 +license would not permit royalty-free redistribution of the Library by
   3.365 +all those who receive copies directly or indirectly through you, then
   3.366 +the only way you could satisfy both it and this License would be to
   3.367 +refrain entirely from distribution of the Library.
   3.368 +
   3.369 +If any portion of this section is held invalid or unenforceable under any
   3.370 +particular circumstance, the balance of the section is intended to apply,
   3.371 +and the section as a whole is intended to apply in other circumstances.
   3.372 +
   3.373 +It is not the purpose of this section to induce you to infringe any
   3.374 +patents or other property right claims or to contest validity of any
   3.375 +such claims; this section has the sole purpose of protecting the
   3.376 +integrity of the free software distribution system which is
   3.377 +implemented by public license practices.  Many people have made
   3.378 +generous contributions to the wide range of software distributed
   3.379 +through that system in reliance on consistent application of that
   3.380 +system; it is up to the author/donor to decide if he or she is willing
   3.381 +to distribute software through any other system and a licensee cannot
   3.382 +impose that choice.
   3.383 +
   3.384 +This section is intended to make thoroughly clear what is believed to
   3.385 +be a consequence of the rest of this License.
   3.386 +
   3.387 +  12. If the distribution and/or use of the Library is restricted in
   3.388 +certain countries either by patents or by copyrighted interfaces, the
   3.389 +original copyright holder who places the Library under this License may add
   3.390 +an explicit geographical distribution limitation excluding those countries,
   3.391 +so that distribution is permitted only in or among countries not thus
   3.392 +excluded.  In such case, this License incorporates the limitation as if
   3.393 +written in the body of this License.
   3.394 +
   3.395 +  13. The Free Software Foundation may publish revised and/or new
   3.396 +versions of the Library General Public License from time to time.
   3.397 +Such new versions will be similar in spirit to the present version,
   3.398 +but may differ in detail to address new problems or concerns.
   3.399 +
   3.400 +Each version is given a distinguishing version number.  If the Library
   3.401 +specifies a version number of this License which applies to it and
   3.402 +"any later version", you have the option of following the terms and
   3.403 +conditions either of that version or of any later version published by
   3.404 +the Free Software Foundation.  If the Library does not specify a
   3.405 +license version number, you may choose any version ever published by
   3.406 +the Free Software Foundation.
   3.407 +
   3.408 +  14. If you wish to incorporate parts of the Library into other free
   3.409 +programs whose distribution conditions are incompatible with these,
   3.410 +write to the author to ask for permission.  For software which is
   3.411 +copyrighted by the Free Software Foundation, write to the Free
   3.412 +Software Foundation; we sometimes make exceptions for this.  Our
   3.413 +decision will be guided by the two goals of preserving the free status
   3.414 +of all derivatives of our free software and of promoting the sharing
   3.415 +and reuse of software generally.
   3.416 +
   3.417 +			    NO WARRANTY
   3.418 +
   3.419 +  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
   3.420 +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
   3.421 +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
   3.422 +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
   3.423 +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
   3.424 +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   3.425 +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
   3.426 +LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
   3.427 +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
   3.428 +
   3.429 +  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
   3.430 +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
   3.431 +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
   3.432 +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
   3.433 +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
   3.434 +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
   3.435 +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
   3.436 +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
   3.437 +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
   3.438 +DAMAGES.
   3.439 +
   3.440 +		     END OF TERMS AND CONDITIONS
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/CREDITS	Thu Apr 26 16:45:43 2001 +0000
     4.3 @@ -0,0 +1,51 @@
     4.4 +
     4.5 +Simple DirectMedia Layer CREDITS
     4.6 +Thanks to everyone who made this possible, including:
     4.7 +
     4.8 +* Cliff Matthews, for giving me a reason to start this project. :)
     4.9 + -- Executor rocks!  *grin*
    4.10 +
    4.11 +* Scott Call, for making a home for SDL on the 'Net, Thanks! :)
    4.12 +
    4.13 +* Michael Samuel and Loki Entertainment Software, for the SDL mailing list
    4.14 +
    4.15 +* Patrick Trainor and Jim Boucher, for the QNX Neutrino port
    4.16 +
    4.17 +* Gabriele Greco, for the Amiga port
    4.18 +
    4.19 +* Stan Shebs, for the initial MacOS X port
    4.20 +
    4.21 +* Carsten Griwodz for the AIX port
    4.22 +
    4.23 +* Mattias Engdegerd, for help with the Solaris port and lots of other code
    4.24 +
    4.25 +* Kent B Mein, for a place to do the IRIX port
    4.26 +
    4.27 +* Ash, for a place to do the OSF/1 Alpha port
    4.28 +
    4.29 +* David Sowsy, for help with the BeOS port
    4.30 +
    4.31 +* Max Watson, Matt Slot, and Kyle for help with the MacOS port
    4.32 +
    4.33 +* Jon Taylor for the GGI front-end
    4.34 +
    4.35 +* Paulus Esterhazy, for the Visual C++ testing and libraries
    4.36 +
    4.37 +* Brenda Tantzen, for Metrowerks CodeWarrior on MacOS
    4.38 +
    4.39 +* Chris Nentwich, for the Hermes assembly blitters
    4.40 +
    4.41 +* Michael Vance and Jim Kutter for the X11 OpenGL support
    4.42 +
    4.43 +* Peter Wiklund, for the 1998 winning SDL logo,
    4.44 +  and Arto Hamara, Steven Wong, and Kent Mein for other logo entries.
    4.45 +
    4.46 +* Stephane Peter, for the AAlib front-end and multi-threaded timer idea.
    4.47 +
    4.48 + And a big hand to everyone else who gave me appreciation, advice,
    4.49 + and suggestions, especially the good folks on the SDL mailing list.
    4.50 +
    4.51 +THANKS! :)
    4.52 +
    4.53 +  -- Sam Lantinga			<slouken@libsdl.org>
    4.54 +
     5.1 Binary file CWprojects.sea.bin has changed
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/INSTALL	Thu Apr 26 16:45:43 2001 +0000
     6.3 @@ -0,0 +1,22 @@
     6.4 +
     6.5 +To compile and install SDL:
     6.6 +
     6.7 +    1.  Run './configure; make; make install'
     6.8 +
     6.9 +        If you are cross-compiling from Linux to Win32, you should read
    6.10 +        the file README.Win32
    6.11 +
    6.12 +        If you are compiling using Visual C++ on Win32, you should read
    6.13 +        the file VisualC.html
    6.14 +
    6.15 +    2.  Look at the example programs in ./test, and check out the HTML
    6.16 +        documentation in ./docs to see how to use the SDL library.
    6.17 +
    6.18 +    3.  Join the SDL developer mailing list by sending E-mail to
    6.19 +    	majordomo@lokigames.com
    6.20 +        and including the line "subscribe sdl" in the body.
    6.21 +
    6.22 +
    6.23 +	
    6.24 +That's it!
    6.25 +Sam Lantinga <slouken@libsdl.org>
     7.1 Binary file MPWmake.sea.bin has changed
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/Makefile.am	Thu Apr 26 16:45:43 2001 +0000
     8.3 @@ -0,0 +1,85 @@
     8.4 +# The top-level input Makefile for SDL
     8.5 +
     8.6 +# require automake 1.4
     8.7 +AUTOMAKE_OPTIONS = 1.4
     8.8 +
     8.9 +## Any directories that you want built and installed should go here.
    8.10 +SUBDIRS = src include docs
    8.11 +
    8.12 +## Any directories you want a part of the distribution should be listed
    8.13 +## here, as well as have a Makefile generated at the end of configure.in
    8.14 +##
    8.15 +## This only works for subdirectories one level deep.
    8.16 +DIST_SUBDIRS = $(SUBDIRS) docs
    8.17 +
    8.18 +# SDL runtime configuration script
    8.19 +bin_SCRIPTS = sdl-config
    8.20 +
    8.21 +# All the rest of the distributed files
    8.22 +EXTRA_DIST =		\
    8.23 +	BUGS		\
    8.24 +	TODO		\
    8.25 +        COPYING		\
    8.26 +        CREDITS		\
    8.27 +        INSTALL		\
    8.28 +        README		\
    8.29 +        README-SDL.txt	\
    8.30 +        README.Win32	\
    8.31 +        README.WinCE	\
    8.32 +        README.MacOS	\
    8.33 +        README.MacOSX	\
    8.34 +        VisualC.html	\
    8.35 +        VisualC.zip	\
    8.36 +        MPWmake.sea.bin	\
    8.37 +	CWprojects.sea.bin \
    8.38 +        WhatsNew	\
    8.39 +        docs.html	\
    8.40 +        sdl.m4		\
    8.41 +        autogen.sh	\
    8.42 +        strip_fPIC.sh
    8.43 +
    8.44 +# M4 macro file for inclusion with autoconf
    8.45 +m4datadir = $(datadir)/aclocal
    8.46 +m4data_DATA = sdl.m4
    8.47 +
    8.48 +# Rule to build tar-gzipped distribution package
    8.49 +$(PACKAGE)-$(VERSION).tar.gz: dist
    8.50 +
    8.51 +# Rule to build RPM distribution package
    8.52 +rpm: $(PACKAGE)-$(VERSION).tar.gz
    8.53 +	cp $(PACKAGE)-$(VERSION).tar.gz /usr/src/redhat/SOURCES
    8.54 +	rpm -ba SDL.spec
    8.55 +
    8.56 +# Rule to rebuild the export lists for BeOS, MacOS and Win32.
    8.57 +exports:
    8.58 +	(cd src/main/beos/exports; $(MAKE))
    8.59 +	(cd src/main/macos/exports; $(MAKE))
    8.60 +	(cd src/main/win32/exports; $(MAKE))
    8.61 +
    8.62 +# Rule to force automake to rebuild the library
    8.63 +changed:
    8.64 +	@echo "This build target is no longer necessary"
    8.65 +
    8.66 +# Rule to install the libraries only - prevent rebuilding apps
    8.67 +install-lib:
    8.68 +	cd src && $(MAKE) install-libLTLIBRARIES
    8.69 +
    8.70 +# Run ldconfig after installing the library:
    8.71 +install-hook:
    8.72 +	-ldconfig
    8.73 +
    8.74 +# Grab the test programs for the distribution:
    8.75 +dist-hook:
    8.76 +	if test -f test/Makefile; then (cd test; make distclean); fi
    8.77 +	cp -rp test $(distdir)
    8.78 +	rm -rf `find $(distdir) -type d -name CVS -print`
    8.79 +
    8.80 +# Create a CVS snapshot that people can run update -d on
    8.81 +CVSROOT = :pserver:guest@cvs.lokigames.com:/cvs
    8.82 +snapshot:
    8.83 +	cvs -d $(CVSROOT) login
    8.84 +	cvs -d $(CVSROOT) checkout -r devel_1_1_0 SDL
    8.85 +	(cd SDL && ./autogen.sh)
    8.86 +	mv SDL SDL-1.2
    8.87 +	tar zcvf $(HOME)/SDL-1.2.tar.gz SDL-1.2
    8.88 +	rm -rf SDL-1.2
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/README	Thu Apr 26 16:45:43 2001 +0000
     9.3 @@ -0,0 +1,44 @@
     9.4 +
     9.5 +                         Simple DirectMedia Layer
     9.6 +
     9.7 +                                  (SDL)
     9.8 +
     9.9 +                                Version 1.2
    9.10 +
    9.11 +---
    9.12 +http://www.libsdl.org/
    9.13 +
    9.14 +This is the Simple DirectMedia Layer, a generic API that provides low
    9.15 +level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL,
    9.16 +and 2D framebuffer across multiple platforms.
    9.17 +
    9.18 +SDL is written in C, but works with C++ natively, and has bindings to
    9.19 +several other languages, including Ada, Eiffel, ML, Perl, and Python. 
    9.20 +
    9.21 +The current version supports Linux, Windows, BeOS, MacOS, MacOS X,
    9.22 +FreeBSD, Solaris, and IRIX.  The code contains support for Windows CE,
    9.23 +OpenBSD, NetBSD, AIX, OSF/Tru64, and QNX, but these are not yet
    9.24 +officially supported.
    9.25 +
    9.26 +This library is distributed under GNU LGPL version 2, which can be
    9.27 +found in the file  "COPYING".  This license allows you to use SDL
    9.28 +freely in commercial programs as long as you link with the dynamic
    9.29 +library.
    9.30 +
    9.31 +The best way to learn how to use SDL is to check out the header files in
    9.32 +the "include" subdirectory and the programs in the "test" subdirectory.
    9.33 +The header files and test programs are well commented and always up to date.
    9.34 +More documentation is available in HTML format in "./docs/index.html"
    9.35 +
    9.36 +The test programs in the "test" subdirectory are in the public domain.
    9.37 +
    9.38 +Frequently asked questions are answered online:
    9.39 +	http://www.libsdl.org/faqs.html
    9.40 +
    9.41 +If you need help with the library, or just want to discuss SDL related
    9.42 +issues, you can join the developers mailing list:
    9.43 +	http://www.libsdl.org/mailing-list.html
    9.44 +
    9.45 +Enjoy!
    9.46 +	Sam Lantinga				(slouken@libsdl.org)
    9.47 +
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/README-SDL.txt	Thu Apr 26 16:45:43 2001 +0000
    10.3 @@ -0,0 +1,13 @@
    10.4 +
    10.5 +Please distribute this file with the SDL runtime environment:
    10.6 +
    10.7 +The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library
    10.8 +designed to make it easy to write multi-media software, such as games and
    10.9 +emulators.
   10.10 +
   10.11 +The Simple DirectMedia Layer library source code is available from:
   10.12 +http://www.libsdl.org/
   10.13 +
   10.14 +This library is distributed under the terms of the GNU LGPL license:
   10.15 +http://www.gnu.org/copyleft/lesser.html
   10.16 +
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/README.CVS	Thu Apr 26 16:45:43 2001 +0000
    11.3 @@ -0,0 +1,13 @@
    11.4 +
    11.5 +The latest development version of SDL is available via CVS:
    11.6 +
    11.7 +cvs -d :pserver:guest@cvs.lokigames.com:/cvs login
    11.8 +# use the password "guest"
    11.9 +cvs -d :pserver:guest@cvs.lokigames.com:/cvs checkout SDL
   11.10 +
   11.11 +When you check a fresh copy of SDL out of CVS, you need to generate
   11.12 +the files used by make by running the "autogen.sh" script, which will
   11.13 +run aclocal, automake, autoconf and then run configure.
   11.14 +
   11.15 +There is a web interface to cvs at http://cvs.lokigames.com/
   11.16 +
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/README.MacOS	Thu Apr 26 16:45:43 2001 +0000
    12.3 @@ -0,0 +1,60 @@
    12.4 +
    12.5 +==============================================================================
    12.6 +Using the Simple DirectMedia Layer with MacOS 7,8,9 on PPC
    12.7 +==============================================================================
    12.8 +
    12.9 +These instructions are for people using the Apple MPW environment:
   12.10 +http://developer.apple.com/tools/mpw-tools/
   12.11 +
   12.12 +CodeWarrior projects are available in the CWprojects directory.
   12.13 +
   12.14 +==============================================================================
   12.15 +I.  Building the Simple DirectMedia Layer libraries:
   12.16 +    (This step isn't necessary if you have the SDL binary distribution)
   12.17 +
   12.18 +  First, unpack the MPWmake.sea.hqx archive and move SDL.make into the
   12.19 +  SDL directory.
   12.20 +
   12.21 +  Start MPW
   12.22 +
   12.23 +  Set the current directory within MPW to the SDL toplevel directory.
   12.24 +
   12.25 +  Build "SDL"  (Type Command-B and enter "SDL" in the dialog)
   12.26 +
   12.27 +  If everything compiles successfully, you now have the PPC libraries
   12.28 +  "SDL" and "SDLmain.o" in the 'lib' subdirectory.
   12.29 +
   12.30 +==============================================================================
   12.31 +II. Building the Simple DirectMedia Layer test programs:
   12.32 +
   12.33 +  First, unpack the MPWmake.sea.hqx archive, move the new rsrc directory to
   12.34 +  the main SDL directory, and move the makefiles in the new test subdirectory
   12.35 +  to the SDL 'test' subdirectory.
   12.36 +
   12.37 +  Start MPW
   12.38 +
   12.39 +  Set the current directory within MPW to the SDL 'test' subdirectory.
   12.40 +
   12.41 +  Build the programs that have an associated MPW makefile (file ending
   12.42 +  with .make), including "testwin", "testalpha", and "graywin".
   12.43 +
   12.44 +  Copy the SDL library file into the test directory, and run!
   12.45 +
   12.46 +==============================================================================
   12.47 +III. Building the Simple DirectMedia Layer demo programs:
   12.48 +
   12.49 +  Copy one of the test program Makefiles to the demo directory
   12.50 +  and modify it to match the sources in the demo.
   12.51 +
   12.52 +==============================================================================
   12.53 +IV.  Enjoy! :)
   12.54 +
   12.55 +  If you have a project you'd like me to know about, or want to ask questions,
   12.56 +  go ahead and join the SDL developer's mailing list by sending e-mail to:
   12.57 +
   12.58 +	majordomo@lokigames.com
   12.59 +
   12.60 +  and put the line "subscribe sdl" in the body of the message.
   12.61 +  
   12.62 +==============================================================================
   12.63 +
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/README.MacOSX	Thu Apr 26 16:45:43 2001 +0000
    13.3 @@ -0,0 +1,44 @@
    13.4 +==============================================================================
    13.5 +Using the Simple DirectMedia Layer with Mac OS X
    13.6 +==============================================================================
    13.7 +
    13.8 +These instructions are for people using Apple's Mac OS X (pronounced
    13.9 +"ten").
   13.10 +
   13.11 +From the developer's point of view, OS X is a sort of hybrid Mac and
   13.12 +Unix system, and you have the option of using either traditional
   13.13 +command line tools or Apple's IDE ProjectBuilder (PB).
   13.14 +
   13.15 +To build using the command line, use the standard configure and make
   13.16 +process:
   13.17 +
   13.18 +	./configure
   13.19 +	make
   13.20 +	make install
   13.21 +
   13.22 +(You may need to create the subdirs of /usr/local manually.)
   13.23 +
   13.24 +For some reason, libtool doesn't run ranlib properly, so do this
   13.25 +manually:
   13.26 +
   13.27 +	ranlib /usr/local/lib/libSDL.a
   13.28 +
   13.29 +To use the library once it's built, you need to use the "Carbon
   13.30 +framework", which is the port of the old Mac Toolbox to OS X.
   13.31 +To do this, use the -F and -framework arguments for compiling
   13.32 +and linking, respectively:
   13.33 +
   13.34 +	cc -c myprog.c -I/usr/local/include/SDL -F/System/Library/Frameworks/Carbon.framework
   13.35 +	cc myprog.o -L/usr/local/lib -lSDL -framework Carbon
   13.36 +
   13.37 +sdl-config knows about the linking path and -framework, so it's
   13.38 +recommended to use it to fill in your Makefile variables.
   13.39 +
   13.40 +[Add instructions for how to build using PB]
   13.41 +
   13.42 +As of this writing (Sep 2000), OS X is in public beta.  This means
   13.43 +that while most of the APIs are frozen, things are still subject to
   13.44 +change, and many of the known problems will be resolved before the
   13.45 +final release comes out.
   13.46 +
   13.47 +Known bugs are listed in the file "BUGS"
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/README.Win32	Thu Apr 26 16:45:43 2001 +0000
    14.3 @@ -0,0 +1,53 @@
    14.4 +
    14.5 +==============================================================================
    14.6 +Using the Simple DirectMedia Layer with Windows 95,NT
    14.7 +==============================================================================
    14.8 +
    14.9 +These instructions are for people using the GNU free compilers.
   14.10 +If you want to use Microsoft VC++ with SDL, read "VisualC.html"
   14.11 +
   14.12 +==============================================================================
   14.13 +I.  Building the Simple DirectMedia Layer libraries:
   14.14 +    (This step isn't necessary if you have the SDL binary distribution)
   14.15 +
   14.16 +  First, get gcc compiler for Win32, which can be found at:
   14.17 +	http://www.libsdl.org/Xmingw32/index.html
   14.18 +
   14.19 +  Grab the cross configure and make scripts, and then run:
   14.20 +	sh cross-configure.sh
   14.21 +	sh cross-make.sh install
   14.22 +  If you have already built SDL natively, you must do "make distclean"
   14.23 +  before you build for Win32.
   14.24 +
   14.25 +  If everything compiles successfully, you now have SDL.dll and gcc archive
   14.26 +  libraries libSDLmain.a and libSDL.a installed in /usr/local/cross-tools/
   14.27 +
   14.28 +==============================================================================
   14.29 +II. Building the Simple DirectMedia Layer test programs:
   14.30 +
   14.31 +  This is easy once you have built the libraries:
   14.32 +
   14.33 +	cd test; sh ../cross-configure.sh; sh ../cross-make.sh
   14.34 +
   14.35 +==============================================================================
   14.36 +III. Building the Simple DirectMedia Layer demo programs:
   14.37 +
   14.38 +  Go to the directory containing the demo you want to build and type:
   14.39 +
   14.40 +	sh cross-configure.sh; sh cross-make.sh
   14.41 +
   14.42 +  Be sure to rename the demo to use the .exe extension, or Windows will
   14.43 +  not be able to execute it.
   14.44 +
   14.45 +==============================================================================
   14.46 +IV.  Enjoy! :)
   14.47 +
   14.48 +  If you have a project you'd like me to know about, or want to ask questions,
   14.49 +  go ahead and join the SDL developer's mailing list by sending e-mail to:
   14.50 +
   14.51 +	majordomo@lokigames.com
   14.52 +
   14.53 +  and put the line "subscribe sdl" in the body of the message.
   14.54 +  
   14.55 +==============================================================================
   14.56 +
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/README.WinCE	Thu Apr 26 16:45:43 2001 +0000
    15.3 @@ -0,0 +1,37 @@
    15.4 +
    15.5 +NOTE:
    15.6 +SDL is NOT SUPPORTED on the WinCE platform!  This is for experimental
    15.7 +purposes only.
    15.8 +
    15.9 +There are several SDL features not available in the WinCE port of SDL.
   15.10 +
   15.11 +- DirectX is not yet available
   15.12 +- Semaphores are not available
   15.13 +- Joystick support is not available
   15.14 +- CD-ROM control is not available
   15.15 +
   15.16 +In addition, there are several features that run in "degraded" mode:
   15.17 +
   15.18 +Preprocessor Symbol		Effect
   15.19 +===================		=================================
   15.20 +
   15.21 +SDL_systimer.c:
   15.22 +USE_GETTICKCOUNT		Less accurate values for SDL time functions
   15.23 +USE_SETTIMER			Use only a single marginally accurate timer
   15.24 +
   15.25 +SDL_syswm.c:
   15.26 +DISABLE_ICON_SUPPORT		Can't set the runtime window icon
   15.27 +
   15.28 +SDL_sysmouse.c:
   15.29 +USE_STATIC_CURSOR		Only the arrow cursor is available
   15.30 +
   15.31 +SDL_sysevents.c:
   15.32 +NO_GETKEYBOARDSTATE		Can't get modifier state on keyboard focus
   15.33 +
   15.34 +SDL_dibevents.c:
   15.35 +NO_GETKEYBOARDSTATE		Very limited keycode translation
   15.36 +
   15.37 +SDL_dibvideo.c:
   15.38 +NO_GETDIBITS			Can't distinguish between 15 bpp and 16 bpp
   15.39 +NO_CHANGEDISPLAYSETTINGS	No fullscreen support
   15.40 +NO_GAMMA_SUPPORT		Gamma correction not available
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/SDL.spec.in	Thu Apr 26 16:45:43 2001 +0000
    16.3 @@ -0,0 +1,90 @@
    16.4 +%define name @PACKAGE@
    16.5 +%define version @VERSION@
    16.6 +%define release 1
    16.7 +
    16.8 +Summary: Simple DirectMedia Layer
    16.9 +Name: %{name}
   16.10 +Version: %{version}
   16.11 +Release: %{release}
   16.12 +Source0: %{name}-%{version}.tar.gz
   16.13 +URL: http://www.libsdl.org/
   16.14 +Copyright: LGPL
   16.15 +Group: System Environment/Libraries
   16.16 +BuildRoot: /var/tmp/%{name}-buildroot
   16.17 +Prefix: %{_prefix}
   16.18 +
   16.19 +%description
   16.20 +This is the Simple DirectMedia Layer, a generic API that provides low
   16.21 +level access to audio, keyboard, mouse, and display framebuffer across
   16.22 +multiple platforms.
   16.23 +
   16.24 +%package devel
   16.25 +Summary: Libraries, includes and more to develop SDL applications.
   16.26 +Group: Development/Libraries
   16.27 +Requires: %{name}
   16.28 +
   16.29 +%description devel
   16.30 +This is the Simple DirectMedia Layer, a generic API that provides low
   16.31 +level access to audio, keyboard, mouse, and display framebuffer across
   16.32 +multiple platforms.
   16.33 +
   16.34 +This is the libraries, include files and other resources you can use
   16.35 +to develop SDL applications.
   16.36 +
   16.37 +
   16.38 +%prep
   16.39 +rm -rf ${RPM_BUILD_ROOT}
   16.40 +
   16.41 +%setup -q 
   16.42 +
   16.43 +%build
   16.44 +CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{prefix} --disable-video-svga --disable-video-ggi --disable-video-aalib --disable-debug --enable-xfree86-glidehack
   16.45 +make
   16.46 +
   16.47 +%install
   16.48 +rm -rf $RPM_BUILD_ROOT
   16.49 +make install prefix=$RPM_BUILD_ROOT/%{prefix}
   16.50 +
   16.51 +%clean
   16.52 +rm -rf $RPM_BUILD_ROOT
   16.53 +
   16.54 +%files
   16.55 +%defattr(-,root,root)
   16.56 +%doc README-SDL.txt COPYING CREDITS BUGS
   16.57 +%{prefix}/lib/lib*.so.*
   16.58 +
   16.59 +%files devel
   16.60 +%defattr(-,root,root)
   16.61 +%doc README README-SDL.txt COPYING CREDITS BUGS WhatsNew docs.html
   16.62 +%doc docs/index.html docs/html
   16.63 +%{prefix}/bin/*-config
   16.64 +%{prefix}/lib/lib*.a
   16.65 +%{prefix}/lib/lib*.so
   16.66 +%{prefix}/include/SDL/
   16.67 +%{prefix}/man/man3/*
   16.68 +%{prefix}/share/aclocal/*
   16.69 +
   16.70 +%changelog
   16.71 +* Wed Jan 19 2000 Sam Lantinga <slouken@libsdl.org>
   16.72 +- Re-integrated spec file into SDL distribution
   16.73 +- 'name' and 'version' come from configure 
   16.74 +- Some of the documentation is devel specific
   16.75 +- Removed SMP support from %build - it doesn't work with libtool anyway
   16.76 +
   16.77 +* Tue Jan 18 2000 Hakan Tandogan <hakan@iconsult.com>
   16.78 +- Hacked Mandrake sdl spec to build 1.1
   16.79 +
   16.80 +* Sun Dec 19 1999 John Buswell <johnb@mandrakesoft.com>
   16.81 +- Build Release
   16.82 +
   16.83 +* Sat Dec 18 1999 John Buswell <johnb@mandrakesoft.com>
   16.84 +- Add symlink for libSDL-1.0.so.0 required by sdlbomber
   16.85 +- Added docs
   16.86 +
   16.87 +* Thu Dec 09 1999 Lenny Cartier <lenny@mandrakesoft.com>
   16.88 +- v 1.0.0
   16.89 +
   16.90 +* Mon Nov  1 1999 Chmouel Boudjnah <chmouel@mandrakesoft.com>
   16.91 +- First spec file for Mandrake distribution.
   16.92 +
   16.93 +# end of file
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/TODO	Thu Apr 26 16:45:43 2001 +0000
    17.3 @@ -0,0 +1,23 @@
    17.4 +
    17.5 +TODO list for the 1.2 release:
    17.6 +
    17.7 + * Use /etc/fb.modes, if available, like GGI does
    17.8 +
    17.9 +Wish list for the 1.3 development branch:
   17.10 +
   17.11 + * Add mousewheel events (new unified event architecture?)
   17.12 + * DirectInput joystick support needs to be implemented
   17.13 + * Be able to enumerate and select available audio and video drivers
   17.14 + * Fullscreen video mode support for MacOS X
   17.15 + * Explicit vertical retrace wait (maybe separate from SDL_Flip?)
   17.16 + * Shaped windows, windows without borders
   17.17 + * Multiple windows, multiple display support
   17.18 + * SDL_INIT_EVENTTHREAD on Windows and MacOS?
   17.19 + * Add a timestamp to events
   17.20 + * Use RDTSC for timer resolution on x86 hardware
   17.21 + * Add audio input API
   17.22 +
   17.23 +In the jump from 1.2 to 1.3, we should change the SDL_Rect members to
   17.24 +int and evaluate all the rest of the datatypes.  This is the only place
   17.25 +we should do it though, since the 1.2 series should not break binary
   17.26 +compatibility in this way.
    18.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.2 +++ b/VisualC.html	Thu Apr 26 16:45:43 2001 +0000
    18.3 @@ -0,0 +1,235 @@
    18.4 +<HTML>
    18.5 +
    18.6 +
    18.7 +
    18.8 +<HEAD>
    18.9 +
   18.10 +
   18.11 +
   18.12 +<TITLE> Using SDL with Microsoft Visual C++ 5 and 6 </TITLE>
   18.13 +
   18.14 +
   18.15 +
   18.16 +</HEAD>
   18.17 +
   18.18 +
   18.19 +
   18.20 +<BODY>
   18.21 +
   18.22 +
   18.23 +
   18.24 +<H1> Using SDL with Microsoft Visual C++ 5 and 6 </H1>
   18.25 +
   18.26 +<H3>
   18.27 +     by <A HREF="mailto:snowlion@sprynet.com"> Lion Kimbro </A>
   18.28 +</H3>
   18.29 +
   18.30 +
   18.31 +
   18.32 +<p>
   18.33 +    You can either use the precompiled libraries from
   18.34 +    <A HREF="http://www.libsdl.org/download.html">
   18.35 +    the SDL Download web site </A>,
   18.36 +    or you can build SDL yourself.
   18.37 +</p>
   18.38 +
   18.39 +
   18.40 +<H3> Building SDL </H3>
   18.41 +
   18.42 +<P>
   18.43 +     Unzip the <CODE>VisualC.zip</CODE> file into the directory
   18.44 +     that contains this file (<CODE>VisualC.html</CODE>).
   18.45 +</P>
   18.46 +
   18.47 +<P>
   18.48 +     Be certain that you unzip <CODE> VisualC.zip </CODE>
   18.49 +     into <strong>this</strong> directory and not any other
   18.50 +     directory. If you are using WinZip, be careful to
   18.51 +     make sure that it extracts to <strong>this</strong>
   18.52 +     folder, because it's convenient feature of
   18.53 +     unzipping to a folder with the name of the
   18.54 +     file currently being unzipped will get you in
   18.55 +     trouble if you use it right now. And that's all
   18.56 +     I have to say about that.
   18.57 +</P>
   18.58 +
   18.59 +<P>
   18.60 +     Now that it's unzipped, go into the VisualC directory
   18.61 +     that is created, and double-click on the VC++
   18.62 +     workspace file &quot;<CODE>SDL.dsw</CODE>&quot;.
   18.63 +     This should open up VisualC.
   18.64 +</P>
   18.65 +
   18.66 +<P>
   18.67 +     You may be prompted at this point to upgrade the
   18.68 +     workspace, should you be using a more recent version
   18.69 +     of Visual C++. If so, allow the workspace to be
   18.70 +     upgraded.
   18.71 +</P>
   18.72 +
   18.73 +
   18.74 +<P>
   18.75 +     Build the <CODE>.dll</CODE> and <CODE>.lib</CODE> files.
   18.76 +</P>
   18.77 +
   18.78 +<P>
   18.79 +     This is done by right clicking on each project in turn
   18.80 +     (Projects are listed in the Workspace panel in the
   18.81 +     FileView tab), and selecting &quot;Build&quot;.
   18.82 +</P>
   18.83 +
   18.84 +<P>
   18.85 +     You may get a few warnings, but you should not get
   18.86 +     any errors. You do have to have at least the DirectX
   18.87 +     5 SDK installed, however. (I believe...) The latest
   18.88 +     version of DirectX can be downloaded or purchased
   18.89 +     on a cheap CD (my recommendation) from
   18.90 +     <A HREF="http://www.microsoft.com"> Microsoft </A>.
   18.91 +</P>
   18.92 +
   18.93 +<P>
   18.94 +    Later, we will refer to the following .lib and .dll
   18.95 +    files that have just been generated:
   18.96 +</P>
   18.97 +
   18.98 +    <list>
   18.99 +    <li> SDL.dll
  18.100 +    <li> SDL.lib
  18.101 +    <li> SDLmain.lib
  18.102 +    </list>
  18.103 +
  18.104 +<P>
  18.105 +    Search for these using the Windows Find (Windows-F)
  18.106 +    utility, if you don't already know where they should be.
  18.107 +    For those of you with a clue, look inside the Debug
  18.108 +    or Release directories of the subdirectories of the
  18.109 +    VisualC folder. (It might be easier to just use
  18.110 +    Windows Find if this sounds confusing. And don't worry
  18.111 +    about needing a clue; we all need visits from the
  18.112 +    clue fairy frequently.)
  18.113 +</P>
  18.114 +
  18.115 +
  18.116 +
  18.117 +<H3> Creating a Project with SDL </H3>
  18.118 +
  18.119 +<P>
  18.120 +     Create a project as a Win32 Application.
  18.121 +</P>
  18.122 +
  18.123 +<P>
  18.124 +     Create a C++ file for your project.
  18.125 +</P>
  18.126 +
  18.127 +<P>
  18.128 +     Set the C runtime to "Multi-threaded DLL" in the menu:
  18.129 +     <CODE> Project|Settings|C/C++ tab|Code Generation|Runtime Library </CODE>.
  18.130 +</P>
  18.131 +
  18.132 +<P>
  18.133 +     Add the SDL <CODE>include</CODE> directory to your list
  18.134 +     of includes in the menu:
  18.135 +     <CODE> Project|Settings|C/C++ tab|Preprocessor|Additional include directories </CODE>.
  18.136 +</P>
  18.137 +
  18.138 +<P>
  18.139 +     The &quot;include directory&quot; I am referring to is the
  18.140 +     <CODE>include</CODE> folder within the main SDL
  18.141 +     directory (the one that this HTML file located
  18.142 +     within.
  18.143 +</P>
  18.144 +
  18.145 +<P>
  18.146 +     Now we're going to use the files that we had created
  18.147 +     earlier in the Build SDL step.
  18.148 +</P>
  18.149 +
  18.150 +<P>
  18.151 +     Copy the following files into your Project directory:
  18.152 +</P>
  18.153 +
  18.154 +     <list>
  18.155 +     <li> SDL.dll </li>
  18.156 +     </list>
  18.157 +
  18.158 +<P>
  18.159 +     Copy the following files into your Project directory,
  18.160 +     and <em>add them to your Project</em> as well:
  18.161 +</P>
  18.162 +
  18.163 +     <list>
  18.164 +     <li> SDL.lib </li>
  18.165 +     <li> SDLmain.lib </li>
  18.166 +     </list>
  18.167 +
  18.168 +<P>
  18.169 +     (To add them to your project, right click on your
  18.170 +     project, and select &quot;Add files to project&quot;)
  18.171 +</P>
  18.172 +
  18.173 +<P>
  18.174 +     (I believe that it's not necessary to actually
  18.175 +     copy the .lib files into your directory; you only
  18.176 +     have to be certain that you add them to your Project.
  18.177 +     If someone is so inclined, correct this document, or
  18.178 +     <A HREF="mailto:snowlion@sprynet.com">
  18.179 +     e-mail me </A>,
  18.180 +     and I'll fix this document.)
  18.181 +</P>
  18.182 +
  18.183 +
  18.184 +
  18.185 +<H3> SDL 101, First Day of Class </H3>
  18.186 +
  18.187 +<P>
  18.188 +     Now create the basic body of your project.
  18.189 +     The body of your program should take the following form:
  18.190 +
  18.191 +<CODE>
  18.192 +<PRE>
  18.193 +#include &quot;SDL.h&quot;
  18.194 +
  18.195 +int main( int argc, char* argv[] )
  18.196 +{
  18.197 +  // Body of the program goes here.
  18.198 +  return 0;
  18.199 +}
  18.200 +</PRE>
  18.201 +</CODE>
  18.202 +</P>
  18.203 +
  18.204 +<H3> That's it! </H3>
  18.205 +
  18.206 +<P>
  18.207 +     I hope that this document has helped you get
  18.208 +     through the most difficult part of using the
  18.209 +     SDL: installing it. Suggestions for improvements
  18.210 +     to this document should be sent to the writers
  18.211 +     of this document.
  18.212 +</P>
  18.213 +
  18.214 +<P>
  18.215 +     Thanks to Paulus Esterhazy (pesterhazy@gmx.net), for the work on VC++ port.
  18.216 +</P>
  18.217 +
  18.218 +<P>
  18.219 +     This document was originally called &quot;VisualC.txt&quot;,
  18.220 +     and was written by 
  18.221 +     <A HREF="mailto:slouken@libsdl.org">Sam Lantinga</A>.
  18.222 +</P>
  18.223 +
  18.224 +<P>
  18.225 +     Later, it was converted to HTML and expanded into
  18.226 +     the document that you see today by 
  18.227 +     <A HREF="mailto:snowlion@sprynet.com">Lion Kimbro</A>.
  18.228 +</P>
  18.229 +
  18.230 +
  18.231 +
  18.232 +</BODY>
  18.233 +
  18.234 +
  18.235 +
  18.236 +</HTML>
  18.237 +
  18.238 +
    19.1 Binary file VisualC.zip has changed
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/WhatsNew	Thu Apr 26 16:45:43 2001 +0000
    20.3 @@ -0,0 +1,664 @@
    20.4 +
    20.5 +This is a list of API changes in SDL's version history.
    20.6 +
    20.7 +Version 1.0:
    20.8 +
    20.9 +1.2.0:
   20.10 +	Added SDL_VIDEOEXPOSE event to signal that the screen needs to
   20.11 +	be redrawn.  This is currently only delivered to OpenGL windows
   20.12 +	on X11, though it may be delivered in the future when the video
   20.13 +	memory is lost under DirectX.
   20.14 +
   20.15 +1.1.8:
   20.16 +	You can pass SDL_NOFRAME to SDL_VideoMode() to create a window
   20.17 +	that has no title bar or frame decoration.  Fullscreen video
   20.18 +	modes automatically have this flag set.
   20.19 +
   20.20 +	Added a function to query the clipping rectangle for a surface:
   20.21 +		void SDL_GetClipRect(SDL_Surface *surface, SDL_Rect *rect)
   20.22 +
   20.23 +	Added a function to query the current event filter:
   20.24 +		SDL_EventFilter SDL_GetEventFilter(void)
   20.25 +
   20.26 +	If you pass -1 to SDL_ShowCursor(), it won't change the current
   20.27 +	cursor visibility state, but will still return it.
   20.28 +
   20.29 +	SDL_LockSurface() and SDL_UnlockSurface() are recursive, meaning
   20.30 +	you can nest them as deep as you want, as long as each lock call
   20.31 +	has a matching unlock call.  The surface remains locked until the
   20.32 +	last matching unlock call.
   20.33 +
   20.34 +	Note that you may not blit to or from a locked surface.
   20.35 +
   20.36 +1.1.7:
   20.37 +	The SDL_SetGammaRamp() and SDL_GetGammaRamp() functions now take
   20.38 +	arrays of Uint16 values instead of Uint8 values.  For the most part,
   20.39 +	you can just take your old values and shift them up 8 bits to get
   20.40 +	new correct values for your gamma ramps.
   20.41 +
   20.42 +	You can pass SDL_RLEACCEL in flags passed to SDL_ConvertSurface()
   20.43 +        and SDL will try to RLE accelerate colorkey and alpha blits in the
   20.44 +	resulting surface.
   20.45 +
   20.46 +1.1.6:
   20.47 +	Added a function to return the thread ID of a specific thread:
   20.48 +		Uint32 SDL_GetThreadID(SDL_Thread *thread)
   20.49 +	If 'thread' is NULL, this function returns the id for this thread.
   20.50 +
   20.51 +1.1.5:
   20.52 +	The YUV overlay structure has been changed to use an array of
   20.53 +	pitches and pixels representing the planes of a YUV image, to
   20.54 +	better enable hardware acceleration.  The YV12 and IYUV formats
   20.55 +	each have three planes, corresponding to the Y, U, and V portions
   20.56 +	of the image, while packed pixel YUV formats just have one plane.
   20.57 +
   20.58 +	For palettized mode (8bpp), the screen colormap is now split in
   20.59 +	a physical and a logical palette. The physical palette determines
   20.60 +	what colours the screen pixels will get when displayed, and the
   20.61 +	logical palette controls the mapping from blits to/from the screen.
   20.62 +	A new function, SDL_SetPalette() has been added to change
   20.63 +	logical and physical palettes separately. SDL_SetColors() works
   20.64 +	just as before, and is equivalent to calling SDL_SetPalette() with
   20.65 +	a flag argument of (SDL_LOGPAL|SDL_PHYSPAL).
   20.66 +
   20.67 +	SDL_BlitSurface() no longer modifies the source rectangle, only the
   20.68 +	destination rectangle. The width/height members of the destination
   20.69 +	rectangle are ignored, only the position is used.
   20.70 +
   20.71 +	The old source clipping function SDL_SetClipping() has been replaced
   20.72 +	with a more useful function to set the destination clipping rectangle:
   20.73 +		SDL_bool SDL_SetClipRect(SDL_Surface *surface, SDL_Rect *rect)
   20.74 +		
   20.75 +	Added a function to see what subsystems have been initialized:
   20.76 +		Uint32 SDL_WasInit(Uint32 flags)
   20.77 +
   20.78 +	The Big Alpha Flip: SDL now treats alpha as opacity like everybody
   20.79 +	else, and not as transparency:
   20.80 +
   20.81 +	A new cpp symbol: SDL_ALPHA_OPAQUE is defined as 255
   20.82 +	A new cpp symbol: SDL_ALPHA_TRANSPARENT is defined as 0
   20.83 +	Values between 0 and 255 vary from fully transparent to fully opaque.
   20.84 +
   20.85 +	New functions:
   20.86 +	SDL_DisplayFormatAlpha()
   20.87 +	    Returns a surface converted to a format with alpha-channel
   20.88 +	    that can be blit efficiently to the screen. (In other words,
   20.89 +	    like SDL_DisplayFormat() but the resulting surface has
   20.90 +	    an alpha channel.)  This is useful for surfaces with alpha.
   20.91 +	SDL_MapRGBA()
   20.92 +	    Works as SDL_MapRGB() but takes an additional alpha parameter.
   20.93 +	SDL_GetRGBA()
   20.94 +	    Works as SDL_GetRGB() but also returns the alpha value
   20.95 +	    (SDL_ALPHA_OPAQUE for formats without an alpha channel)
   20.96 +
   20.97 +	Both SDL_GetRGB() and SDL_GetRGBA() now always return values in
   20.98 +	the [0..255] interval. Previously, SDL_GetRGB() would return
   20.99 +	(0xf8, 0xfc, 0xf8) for a completely white pixel in RGB565 format.
  20.100 +	(N.B.: This is broken for bit fields < 3 bits.)
  20.101 +
  20.102 +	SDL_MapRGB() returns pixels in which the alpha channel is set opaque.
  20.103 +
  20.104 +	SDL_SetAlpha() can now be used for both setting the per-surface
  20.105 +	alpha, using the new way of thinking of alpha, and also to enable
  20.106 +	and disable per-pixel alpha blending for surfaces with an alpha
  20.107 +	channel:
  20.108 +		To disable alpha blending:
  20.109 +			SDL_SetAlpha(surface, 0, 0);
  20.110 +		To re-enable alpha blending:
  20.111 +			SDL_SetAlpha(surface, SDL_SRCALPHA, 0);
  20.112 +	Surfaces with an alpha channel have blending enabled by default.
  20.113 +
  20.114 +	SDL_SetAlpha() now accepts SDL_RLEACCEL as a flag, which requests
  20.115 +	RLE acceleration of blits, just as like with SDL_SetColorKey().
  20.116 +	This flag can be set for both surfaces with an alpha channel
  20.117 +	and surfaces with an alpha value set by SDL_SetAlpha().
  20.118 +	As always, RLE surfaces must be locked before pixel access is
  20.119 +	allowed, and unlocked before any other SDL operations are done
  20.120 +	on it.
  20.121 +
  20.122 +	The blit semantics for surfaces with and without alpha and colorkey
  20.123 +	have now been defined:
  20.124 +
  20.125 +	RGBA->RGB:
  20.126 +	    SDL_SRCALPHA set:
  20.127 +		alpha-blend (using alpha-channel).
  20.128 +		SDL_SRCCOLORKEY ignored.
  20.129 +	    SDL_SRCALPHA not set:
  20.130 +		copy RGB.
  20.131 +		if SDL_SRCCOLORKEY set, only copy the pixels matching the
  20.132 +		RGB values of the source colour key, ignoring alpha in the
  20.133 +		comparison.
  20.134 +
  20.135 +	RGB->RGBA:
  20.136 +	    SDL_SRCALPHA set:
  20.137 +		alpha-blend (using the source per-surface alpha value);
  20.138 +		set destination alpha to opaque.
  20.139 +	    SDL_SRCALPHA not set:
  20.140 +		copy RGB, set destination alpha to opaque.
  20.141 +	    both:
  20.142 +		if SDL_SRCCOLORKEY set, only copy the pixels matching the
  20.143 +		source colour key.
  20.144 +
  20.145 +	RGBA->RGBA:
  20.146 +	    SDL_SRCALPHA set:
  20.147 +		alpha-blend (using the source alpha channel) the RGB values;
  20.148 +		leave destination alpha untouched. [Note: is this correct?]
  20.149 +		SDL_SRCCOLORKEY ignored.
  20.150 +	    SDL_SRCALPHA not set:
  20.151 +		copy all of RGBA to the destination.
  20.152 +		if SDL_SRCCOLORKEY set, only copy the pixels matching the
  20.153 +		RGB values of the source colour key, ignoring alpha in the
  20.154 +		comparison.
  20.155 +
  20.156 +	RGB->RGB: 
  20.157 +	    SDL_SRCALPHA set:
  20.158 +		alpha-blend (using the source per-surface alpha value).
  20.159 +	    SDL_SRCALPHA not set:
  20.160 +		copy RGB.
  20.161 +	    both:
  20.162 +		if SDL_SRCCOLORKEY set, only copy the pixels matching the
  20.163 +		source colour key.
  20.164 +
  20.165 +	As a special case, blits from surfaces with per-surface alpha
  20.166 +	value of 128 (50% transparency) are optimised and much faster
  20.167 +	than other alpha values. This does not apply to surfaces with
  20.168 +	alpha channels (per-pixel alpha).
  20.169 +
  20.170 +	New functions for manipulating the gamma of the display have
  20.171 +	been added:
  20.172 +		int SDL_SetGamma(float red, float green, float blue);
  20.173 +		int SDL_SetGammaRamp(Uint8 *red, Uint8 *green, Uint8 *blue);
  20.174 +		int SDL_GetGammaRamp(Uint8 *red, Uint8 *green, Uint8 *blue);
  20.175 +	Gamma ramps are tables with 256 entries which map the screen color
  20.176 +	components into actually displayed colors.  For an example of
  20.177 +	implementing gamma correction and gamma fades, see test/testgamma.c
  20.178 +	Gamma control is not supported on all hardware.
  20.179 +
  20.180 +1.1.4:
  20.181 +	The size of the SDL_CDtrack structure changed from 8 to 12 bytes
  20.182 +	as the size of the length member was extended to 32 bits.
  20.183 +
  20.184 +        You can now use SDL for 2D blitting with a GL mode by passing the
  20.185 +	SDL_OPENGLBLIT flag to SDL_SetVideoMode().  You can specify 16 or
  20.186 +	32 bpp, and the data in the framebuffer is put into the GL scene
  20.187 +	when you call SDL_UpdateRects(), and the scene will be visible
  20.188 +	when you call SDL_GL_SwapBuffers().
  20.189 +
  20.190 +	Run the "testgl" test program with the -logo command line option
  20.191 +	to see an example of this blending of 2D and 3D in SDL.
  20.192 +
  20.193 +1.1.3:
  20.194 +	Added SDL_FreeRW() to the API, to complement SDL_AllocRW()
  20.195 +
  20.196 +	Added resizable window support - just add SDL_RESIZABLE to the
  20.197 +	SDL_SetVideoMode() flags, and then wait for SDL_VIDEORESIZE events.
  20.198 +	See SDL_events.h for details on the new SDL_ResizeEvent structure.
  20.199 +
  20.200 +	Added condition variable support, based on mutexes and semaphores.
  20.201 +		SDL_CreateCond()
  20.202 +		SDL_DestroyCond()
  20.203 +		SDL_CondSignal()
  20.204 +		SDL_CondBroadcast()
  20.205 +		SDL_CondWait()
  20.206 +		SDL_CondTimedWait()
  20.207 +	The new function prototypes are in SDL_mutex.h
  20.208 +
  20.209 +	Added counting semaphore support, based on the mutex primitive.
  20.210 +		SDL_CreateSemaphore()
  20.211 +		SDL_DestroySemaphore()
  20.212 +		SDL_SemWait()
  20.213 +		SDL_SemTryWait()
  20.214 +		SDL_SemWaitTimeout()
  20.215 +		SDL_SemPost()
  20.216 +		SDL_SemValue()
  20.217 +	The new function prototypes are in SDL_mutex.h
  20.218 +
  20.219 +	Added support for asynchronous blitting.  To take advantage of this,
  20.220 +	you must set the SDL_ASYNCBLIT flag when setting the video mode and
  20.221 +	creating surfaces that you want accelerated in this way.  You must
  20.222 +	lock surfaces that have this flag set, and the lock will block until
  20.223 +	any queued blits have completed.
  20.224 +
  20.225 +	Added YUV video overlay support.
  20.226 +	The supported YUV formats are: YV12, IYUV, YUY2, UYVY, and YVYU.
  20.227 +	This function creates an overlay surface:
  20.228 +		SDL_CreateYUVOverlay()
  20.229 +	You must lock and unlock the overlay to get access to the data:
  20.230 +		SDL_LockYUVOverlay() SDL_UnlockYUVOverlay()
  20.231 +	You can then display the overlay:
  20.232 +		SDL_DisplayYUVOverlay()
  20.233 +	You must free the overlay when you are done using it:
  20.234 +		SDL_FreeYUVOverlay()
  20.235 +	See SDL_video.h for the full function prototypes.
  20.236 +
  20.237 +	The joystick hat position constants have been changed:
  20.238 +	Old constant            New constant
  20.239 +	------------            ------------
  20.240 +	     0                  SDL_HAT_CENTERED
  20.241 +	     1                  SDL_HAT_UP
  20.242 +	     2                  SDL_HAT_RIGHTUP
  20.243 +	     3                  SDL_HAT_RIGHT
  20.244 +	     4                  SDL_HAT_RIGHTDOWN
  20.245 +	     5                  SDL_HAT_DOWN
  20.246 +	     6                  SDL_HAT_LEFTDOWN
  20.247 +	     7                  SDL_HAT_LEFT
  20.248 +	     8                  SDL_HAT_LEFTUP
  20.249 +	The new constants are bitmasks, so you can check for the
  20.250 +	individual axes like this:
  20.251 +		if ( hat_position & SDL_HAT_UP ) {
  20.252 +		}
  20.253 +	and you'll catch left-up, up, and right-up.
  20.254 +
  20.255 +1.1.2:
  20.256 +	Added multiple timer support:
  20.257 +		SDL_AddTimer() and SDL_RemoveTimer()
  20.258 +
  20.259 +	SDL_WM_SetIcon() now respects the icon colorkey if mask is NULL.
  20.260 +
  20.261 +1.1.0:
  20.262 +	Added initial OpenGL support.
  20.263 +	First set GL attributes (such as RGB depth, alpha depth, etc.)
  20.264 +		SDL_GL_SetAttribute()
  20.265 +	Then call SDL_SetVideoMode() with the SDL_OPENGL flag.
  20.266 +	Perform all of your normal GL drawing.
  20.267 +	Finally swap the buffers with the new SDL function:
  20.268 +		SDL_GL_SwapBuffers()
  20.269 +	See the new 'testgl' test program for an example of using GL with SDL.
  20.270 +
  20.271 +	You can load GL extension functions by using the function:
  20.272 +		SDL_GL_LoadProcAddress()
  20.273 +
  20.274 +	Added functions to initialize and cleanup specific SDL subsystems:
  20.275 +		SDL_InitSubSystem() and SDL_QuitSubSystem()
  20.276 +
  20.277 +	Added user-defined event type:
  20.278 +		typedef struct {
  20.279 +        		Uint8 type;
  20.280 +        		int code;
  20.281 +        		void *data1;
  20.282 +        		void *data2;
  20.283 +		} SDL_UserEvent;
  20.284 +	This structure is in the "user" member of an SDL_Event.
  20.285 +
  20.286 +	Added a function to push events into the event queue:
  20.287 +		SDL_PushEvent()
  20.288 +
  20.289 +	Example of using the new SDL user-defined events:
  20.290 +	{
  20.291 +		SDL_Event event;
  20.292 +
  20.293 +		event.type = SDL_USEREVENT;
  20.294 +		event.user.code = my_event_code;
  20.295 +		event.user.data1 = significant_data;
  20.296 +		event.user.data2 = 0;
  20.297 +		SDL_PushEvent(&event);
  20.298 +	}
  20.299 +
  20.300 +	Added a function to get mouse deltas since last query:
  20.301 +		SDL_GetRelativeMouseState()
  20.302 +
  20.303 +	Added a boolean datatype to SDL_types.h:
  20.304 +		SDL_bool = { SDL_TRUE, SDL_FALSE }
  20.305 +
  20.306 +	Added a function to get the current audio status:
  20.307 +		SDL_GetAudioState();
  20.308 +	It returns one of:
  20.309 +		SDL_AUDIO_STOPPED,
  20.310 +		SDL_AUDIO_PLAYING,
  20.311 +		SDL_AUDIO_PAUSED
  20.312 +
  20.313 +	Added an AAlib driver (ASCII Art) - by Stephane Peter.
  20.314 +
  20.315 +1.0.6:
  20.316 +	The input grab state is reset after each call to SDL_SetVideoMode().
  20.317 +	The input is grabbed by default in fullscreen mode, and ungrabbed in
  20.318 +	windowed mode.  If you want to set input grab to a particular value,
  20.319 +	you should set it after each call to SDL_SetVideoMode().
  20.320 +
  20.321 +1.0.5:
  20.322 +	Exposed SDL_AudioInit(), SDL_VideoInit()
  20.323 +	Added SDL_AudioDriverName() and SDL_VideoDriverName()
  20.324 +
  20.325 +	Added new window manager function:
  20.326 +		SDL_WM_ToggleFullScreen()
  20.327 +	This is currently implemented only on Linux
  20.328 +
  20.329 +	The ALT-ENTER code has been removed - it's not appropriate for a
  20.330 +	lib to bind keys when they aren't even emergency escape sequences.
  20.331 +
  20.332 +	ALT-ENTER functionality can be implemented with the following code:
  20.333 +
  20.334 +	int Handle_AltEnter(const SDL_Event *event)
  20.335 +	{
  20.336 +	    if ( event->type == SDL_KEYDOWN ) {
  20.337 +	        if ( (event->key.keysym.sym == SDLK_RETURN) &&
  20.338 +	             (event->key.keysym.mod & KMOD_ALT) ) {   
  20.339 +	                SDL_WM_ToggleFullScreen(SDL_GetVideoSurface());
  20.340 +	                return(0);
  20.341 +	        }
  20.342 +	    }
  20.343 +	    return(1);
  20.344 +	}
  20.345 +	SDL_SetEventFilter(Handle_AltEnter);
  20.346 +
  20.347 +1.0.3:
  20.348 +	Under X11, if you grab the input and hide the mouse cursor,
  20.349 +	the mouse will go into a "relative motion" mode where you
  20.350 +	will always get relative motion events no matter how far in
  20.351 +	each direction you move the mouse - relative motion is not
  20.352 +	bounded by the edges of the window (though the absolute values
  20.353 +	of the mouse positions are clamped by the size of the window).
  20.354 +	The SVGAlib, framebuffer console, and DirectInput drivers all
  20.355 +	have this behavior naturally, and the GDI and BWindow drivers
  20.356 +	never go into "relative motion" mode.
  20.357 +
  20.358 +1.0.2:
  20.359 +	Added a function to enable keyboard repeat:
  20.360 +		SDL_EnableKeyRepeat()
  20.361 +
  20.362 +	Added a function to grab the mouse and keyboard input
  20.363 +		SDL_WM_GrabInput()
  20.364 +
  20.365 +	Added a function to iconify the window.
  20.366 +		SDL_WM_IconifyWindow()
  20.367 +	If this function succeeds, the application will receive an event
  20.368 +	signaling SDL_APPACTIVE event 
  20.369 +
  20.370 +1.0.1:
  20.371 +	Added constants to SDL_audio.h for 16-bit native byte ordering:
  20.372 +		AUDIO_U16SYS, AUDIO_S16SYS
  20.373 +
  20.374 +1.0.0:
  20.375 +	New public release
  20.376 +
  20.377 +Version 0.11:
  20.378 +
  20.379 +0.11.5:
  20.380 +	A new function SDL_GetVideoSurface() has been added, and returns
  20.381 +	a pointer to the current display surface.
  20.382 +
  20.383 +	SDL_AllocSurface() has been renamed SDL_CreateRGBSurface(), and
  20.384 +	a new function SDL_CreateRGBSurfaceFrom() has been added to allow
  20.385 +	creating an SDL surface from an existing pixel data buffer.
  20.386 +
  20.387 +	Added SDL_GetRGB() to the headers and documentation.
  20.388 +
  20.389 +0.11.4:
  20.390 +	SDL_SetLibraryPath() is no longer meaningful, and has been removed.
  20.391 +
  20.392 +0.11.3:
  20.393 +	A new flag for SDL_Init(), SDL_INIT_NOPARACHUTE, prevents SDL from
  20.394 +	installing fatal signal handlers on operating systems that support
  20.395 +	them.
  20.396 +
  20.397 +Version 0.9:
  20.398 +
  20.399 +0.9.15:
  20.400 +	SDL_CreateColorCursor() has been removed.  Color cursors should
  20.401 +	be implemented as sprites, blitted by the application when the
  20.402 +	cursor moves.  To get smooth color cursor updates when the app
  20.403 +	is busy, pass the SDL_INIT_EVENTTHREAD flag to SDL_Init().  This
  20.404 +	allows you to handle the mouse motion in another thread from an
  20.405 +	event filter function, but is currently only supported by Linux
  20.406 +	and BeOS.  Note that you'll have to protect the display surface
  20.407 +	from multi-threaded access by using mutexes if you do this.
  20.408 +
  20.409 +	Thread-safe surface support has been removed from SDL.
  20.410 +	This makes blitting somewhat faster, by removing SDL_MiddleBlit().
  20.411 +	Code that used SDL_MiddleBlit() should use SDL_LowerBlit() instead.
  20.412 +	You can make your surfaces thread-safe by allocating your own
  20.413 +	mutex and making lock/unlock calls around accesses to your surface.
  20.414 +
  20.415 +0.9.14:
  20.416 +	SDL_GetMouseState() now takes pointers to int rather than Uint16.
  20.417 +
  20.418 +	If you set the SDL_WINDOWID environment variable under UNIX X11,
  20.419 +	SDL will use that as the main window instead of creating it's own.
  20.420 +	This is an unsupported extension to SDL, and not portable at all.
  20.421 +
  20.422 +0.9.13:
  20.423 +	Added a function SDL_SetLibraryPath() which can be used to specify
  20.424 +	the directory containing the SDL dynamic libraries.  This is useful
  20.425 +	for commercial applications which ship with particular versions
  20.426 +	of the libraries, and for security on multi-user systems.
  20.427 +	If this function is not used, the default system directories are 
  20.428 +	searched using the native dynamic object loading mechanism.
  20.429 +
  20.430 +	In order to support C linkage under Visual C++, you must declare
  20.431 +	main() without any return type:
  20.432 +		main(int argc, char *argv[]) {
  20.433 +			/* Do the program... */
  20.434 +			return(0);
  20.435 +		}
  20.436 +	C++ programs should also return a value if compiled under VC++.
  20.437 +
  20.438 +	The blit_endian member of the SDL_VideoInfo struct has been removed.
  20.439 +
  20.440 +	SDL_SymToASCII() has been replaced with SDL_GetKeyName(), so there
  20.441 +	is now no longer any function to translate a keysym to a character.
  20.442 +
  20.443 +	The SDL_keysym structure has been extended with a 'scancode' and
  20.444 +	'unicode' member.  The 'scancode' is a hardware specific scancode
  20.445 +	for the key that was pressed, and may be 0.  The 'unicode' member
  20.446 +	is a 16-bit UNICODE translation of the key that was pressed along
  20.447 +	with any modifiers or compose keys that have been pressed.
  20.448 +	If no UNICODE translation exists for the key, 'unicode' will be 0.
  20.449 +
  20.450 +	Added a function SDL_EnableUNICODE() to enable/disable UNICODE
  20.451 +	translation of character keypresses.  Translation defaults off.
  20.452 +
  20.453 +	To convert existing code to use the new API, change code which
  20.454 +	uses SDL_SymToASCII() to get the keyname to use SDL_GetKeyName(),
  20.455 +	and change code which uses it to get the ASCII value of a sym to
  20.456 +	use the 'unicode' member of the event keysym.
  20.457 +
  20.458 +0.9.12:
  20.459 +	There is partial support for 64-bit datatypes.  I don't recommend 
  20.460 +	you use this if you have a choice, because 64-bit datatypes are not
  20.461 +	supported on many platforms.  On platforms for which it is supported,
  20.462 +	the SDL_HAS_64BIT_TYPE C preprocessor define will be enabled, and
  20.463 +	you can use the Uint64 and Sint64 datatypes.
  20.464 +
  20.465 +	Added functions to SDL_endian.h to support 64-bit datatypes:
  20.466 +	    SDL_SwapLE64(), SDL_SwapBE64(),
  20.467 +	    SDL_ReadLE64(), SDL_ReadBE64(), SDL_WriteLE64(), SDL_WriteBE64()
  20.468 +
  20.469 +	A new member "len_ratio" has been added to the SDL_AudioCVT structure,
  20.470 +	and allows you to determine either the original buffer length or the
  20.471 +	converted buffer length, given the other.
  20.472 +
  20.473 +	A new function SDL_FreeWAV() has been added to the API to free data
  20.474 +	allocated by SDL_LoadWAV_RW().  This is necessary under Win32 since
  20.475 +	the gcc compiled DLL uses a different heap than VC++ compiled apps.
  20.476 +
  20.477 +	SDL now has initial support for international keyboards using the
  20.478 +	Latin character set.
  20.479 +	If a particular mapping is desired, you can set the DEFAULT_KEYBOARD
  20.480 +	compile-time variable, or you can set the environment variable 
  20.481 +	"SDL_KEYBOARD" to a string identifying the keyboard mapping you desire.
  20.482 +	The valid values for these variables can be found in SDL_keyboard.c
  20.483 +
  20.484 +	Full support for German and French keyboards under X11 is implemented.
  20.485 +
  20.486 +0.9.11:
  20.487 +	The THREADED_EVENTS compile-time define has been replaced with the
  20.488 +	SDL_INIT_EVENTTHREAD flag.  If this flag is passed to SDL_Init(),
  20.489 +	SDL will create a separate thread to perform input event handling.
  20.490 +	If this flag is passed to SDL_Init(), and the OS doesn't support 
  20.491 +	event handling in a separate thread, SDL_Init() will fail.
  20.492 +	Be sure to add calls to SDL_Delay() in your main thread to allow
  20.493 +	the OS to schedule your event thread, or it may starve, leading
  20.494 +	to slow event delivery and/or dropped events.
  20.495 +	Currently MacOS and Win32 do not support this flag, while BeOS 
  20.496 +	and Linux do support it.  I recommend that your application only
  20.497 +	use this flag if absolutely necessary.
  20.498 +
  20.499 +	The SDL thread function passed to SDL_CreateThread() now returns a
  20.500 +	status.  This status can be retrieved by passing a non-NULL pointer
  20.501 +	as the 'status' argument to SDL_WaitThread().
  20.502 +
  20.503 +	The volume parameter to SDL_MixAudio() has been increased in range
  20.504 +	from (0-8) to (0-128)
  20.505 +
  20.506 +	SDL now has a data source abstraction which can encompass a file,
  20.507 +	an area of memory, or any custom object you can envision.  It uses
  20.508 +	these abstractions, SDL_RWops, in the endian read/write functions,
  20.509 +	and the built-in WAV and BMP file loaders.  This means you can load
  20.510 +	WAV chunks from memory mapped files, compressed archives, network
  20.511 +	pipes, or anything else that has a data read abstraction.
  20.512 +
  20.513 +	There are three built-in data source abstractions:
  20.514 +	    SDL_RWFromFile(), SDL_RWFromFP(), SDL_RWFromMem()
  20.515 +	along with a generic data source allocation function:
  20.516 +	    SDL_AllocRW()
  20.517 +	These data sources can be used like stdio file pointers with the
  20.518 +	following convenience functions:
  20.519 +	    SDL_RWseek(), SDL_RWread(), SDL_RWwrite(), SDL_RWclose()
  20.520 +	These functions are defined in the new header file "SDL_rwops.h"
  20.521 +
  20.522 +	The endian swapping functions have been turned into macros for speed
  20.523 +	and SDL_CalculateEndian() has been removed.  SDL_endian.h now defines
  20.524 +	SDL_BYTEORDER as either SDL_BIG_ENDIAN or SDL_LIL_ENDIAN depending on
  20.525 +	the endianness of the host system.
  20.526 +
  20.527 +	The endian read/write functions now take an SDL_RWops pointer
  20.528 +	instead of a stdio FILE pointer, to support the new data source
  20.529 +	abstraction.
  20.530 +
  20.531 +	The SDL_*LoadWAV() functions have been replaced with a single
  20.532 +	SDL_LoadWAV_RW() function that takes a SDL_RWops pointer as it's
  20.533 +	first parameter, and a flag whether or not to automatically 
  20.534 +	free it as the second parameter.  SDL_LoadWAV() is a macro for
  20.535 +	backward compatibility and convenience:
  20.536 +	    SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, ...);
  20.537 +
  20.538 +	The SDL_*LoadBMP()/SDL_*SaveBMP() functions have each been replaced
  20.539 +	with a single function that takes a SDL_RWops pointer as it's
  20.540 +	first parameter, and a flag whether or not to automatically 
  20.541 +	free it as the second parameter.  SDL_LoadBMP() and SDL_SaveBMP()
  20.542 +	are macros for backward compatibility and convenience:
  20.543 +	    SDL_LoadBMP_RW(SDL_RWFromFile("sample.bmp", "rb"), 1, ...);
  20.544 +	    SDL_SaveBMP_RW(SDL_RWFromFile("sample.bmp", "wb"), 1, ...);
  20.545 +	Note that these functions use SDL_RWseek() extensively, and should
  20.546 +	not be used on pipes or other non-seekable data sources.
  20.547 +
  20.548 +0.9.10:
  20.549 +	The Linux SDL_SysWMInfo and SDL_SysWMMsg structures have been 
  20.550 +	extended to support multiple types of display drivers, as well as
  20.551 +        safe access to the X11 display when THREADED_EVENTS is enabled.
  20.552 +        The new structures are documented in the SDL_syswm.h header file.
  20.553 +
  20.554 +	Thanks to John Elliott <jce@seasip.demon.co.uk>, the UK keyboard
  20.555 +	should now work properly, as well as the "Windows" keys on US
  20.556 +	keyboards.
  20.557 +
  20.558 +	The Linux CD-ROM code now reads the CD-ROM devices from /etc/fstab
  20.559 +	instead of trying to open each block device on the system.
  20.560 +	The CD must be listed in /etc/fstab as using the iso9660 filesystem.
  20.561 +
  20.562 +	On Linux, if you define THREADED_EVENTS at compile time, a separate
  20.563 +	thread will be spawned to gather X events asynchronously from the
  20.564 +	graphics updates.  This hasn't been extensively tested, but it does
  20.565 +	provide a means of handling keyboard and mouse input in a separate
  20.566 +	thread from the graphics thread.  (This is now enabled by default.)
  20.567 +
  20.568 +	A special access function SDL_PeepEvents() allows you to manipulate
  20.569 +	the event queue in a thread-safe manner, including peeking at events,
  20.570 +	removing events of a specified type, and adding new events of arbitrary
  20.571 +	type to the queue (use the new 'user' member of the SDL_Event type).
  20.572 +
  20.573 +	If you use SDL_PeepEvents() to gather events, then the main graphics
  20.574 +	thread needs to call SDL_PumpEvents() periodically to drive the event
  20.575 +	loop and generate input events.  This is not necessary if SDL has been 
  20.576 +	compiled with THREADED_EVENTS defined, but doesn't hurt.
  20.577 +
  20.578 +	A new function SDL_ThreadID() returns the identifier associated with
  20.579 +	the current thread.
  20.580 +
  20.581 +0.9.9:
  20.582 +	The AUDIO_STEREO format flag has been replaced with a new 'channels'
  20.583 +	member of the SDL_AudioSpec structure.  The channels are 1 for mono
  20.584 +	audio, and 2 for stereo audio.  In the future more channels may be
  20.585 +	supported for 3D surround sound.
  20.586 +
  20.587 +	The SDL_MixAudio() function now takes an additional volume parameter,
  20.588 +	which should be set to SDL_MIX_MAXVOLUME for compatibility with the
  20.589 +	original function.
  20.590 +
  20.591 +	The CD-ROM functions which take a 'cdrom' parameter can now be
  20.592 +	passed NULL, and will act on the last successfully opened CD-ROM.
  20.593 +
  20.594 +0.9.8:
  20.595 +	No changes, bugfixes only.
  20.596 +	
  20.597 +0.9.7:
  20.598 +	No changes, bugfixes only.
  20.599 +	
  20.600 +0.9.6:
  20.601 +	Added a fast rectangle fill function: SDL_FillRect()
  20.602 +
  20.603 +	Addition of a useful function for getting info on the video hardware:
  20.604 +	    const SDL_VideoInfo *SDL_GetVideoInfo(void)
  20.605 +        This function replaces SDL_GetDisplayFormat().
  20.606 +
  20.607 +	Initial support for double-buffering:
  20.608 +	  Use the SDL_DOUBLEBUF flag in SDL_SetVideoMode()
  20.609 +	  Update the screen with a new function: SDL_Flip()
  20.610 +
  20.611 +	SDL_AllocSurface() takes two new flags:
  20.612 +	SDL_SRCCOLORKEY means that the surface will be used for colorkey blits
  20.613 +	  and if the hardware supports hardware acceleration of colorkey blits
  20.614 +	  between two surfaces in video memory, to place the surface in video
  20.615 +	  memory if possible, otherwise it will be placed in system memory.
  20.616 +	SDL_SRCALPHA means that the surface will be used for alpha blits and
  20.617 +	  if the hardware supports hardware acceleration of alpha blits between
  20.618 +	  two surfaces in video memory, to place the surface in video memory
  20.619 +	  if possible, otherwise it will be placed in system memory.
  20.620 +	SDL_HWSURFACE now means that the surface will be created with the 
  20.621 +	  same format as the display surface, since having surfaces in video
  20.622 +	  memory is only useful for fast blitting to the screen, and you can't
  20.623 +	  blit surfaces with different surface formats in video memory.
  20.624 +
  20.625 +0.9.5:
  20.626 +	You can now pass a NULL mask to SDL_WM_SetIcon(), and it will assume
  20.627 +	that the icon consists of the entire image.
  20.628 +
  20.629 +	SDL_LowerBlit() is back -- but don't use it on the display surface.
  20.630 +	It is exactly the same as SDL_MiddleBlit(), but doesn't check for
  20.631 +	thread safety.
  20.632 +
  20.633 +	Added SDL_FPLoadBMP(), SDL_FPSaveBMP(), SDL_FPLoadWAV(), which take
  20.634 +	a FILE pointer instead of a file name.
  20.635 +
  20.636 +	Added CD-ROM audio control API:
  20.637 +	    SDL_CDNumDrives()
  20.638 +	    SDL_CDName()
  20.639 +	    SDL_CDOpen()
  20.640 +	    SDL_CDStatus()
  20.641 +	    SDL_CDPlayTracks()
  20.642 +	    SDL_CDPlay()
  20.643 +	    SDL_CDPause()
  20.644 +	    SDL_CDResume()
  20.645 +	    SDL_CDStop()
  20.646 +	    SDL_CDEject()
  20.647 +	    SDL_CDClose()
  20.648 +
  20.649 +0.9.4:
  20.650 +	No changes, bugfixes only.
  20.651 +
  20.652 +0.9.3:
  20.653 +	Mouse motion event now includes relative motion information:
  20.654 +	    Sint16 event->motion.xrel, Sint16 event->motion.yrel
  20.655 +
  20.656 +	X11 keyrepeat handling can be disabled by defining IGNORE_X_KEYREPEAT
  20.657 +	    (Add -DIGNORE_X_KEYREPEAT to CFLAGS line in obj/x11Makefile)
  20.658 +
  20.659 +0.9.2:
  20.660 +	No changes, bugfixes only.
  20.661 +
  20.662 +0.9.1:
  20.663 +	Removed SDL_MapSurface() and SDL_UnmapSurface() -- surfaces are now
  20.664 +	automatically mapped on blit.
  20.665 +
  20.666 +0.8.0:
  20.667 +	SDL stable release
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/acinclude.m4	Thu Apr 26 16:45:43 2001 +0000
    21.3 @@ -0,0 +1,619 @@
    21.4 +# Local macros for the SDL configure.in script
    21.5 +
    21.6 +dnl Function to link an architecture specific file
    21.7 +dnl LINK_ARCH_SRC(source_dir, arch, source_file)
    21.8 +AC_DEFUN(COPY_ARCH_SRC,
    21.9 +[
   21.10 +  echo "Copying $1/$2/$3 -> $1/$3"
   21.11 +  old="$srcdir/$1/$2/$3"
   21.12 +  new="$srcdir/$1/$3"
   21.13 +  cat >$new <<__EOF__
   21.14 +/* WARNING:  This file was automatically generated!
   21.15 + * Original: $old
   21.16 + */
   21.17 +__EOF__
   21.18 +  cat >>$new <$old
   21.19 +])
   21.20 +
   21.21 +#
   21.22 +# --- esd.m4 ---
   21.23 +#
   21.24 +# Configure paths for ESD
   21.25 +# Manish Singh    98-9-30
   21.26 +# stolen back from Frank Belew
   21.27 +# stolen from Manish Singh
   21.28 +# Shamelessly stolen from Owen Taylor
   21.29 +
   21.30 +dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
   21.31 +dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS
   21.32 +dnl
   21.33 +AC_DEFUN(AM_PATH_ESD,
   21.34 +[dnl 
   21.35 +dnl Get the cflags and libraries from the esd-config script
   21.36 +dnl
   21.37 +AC_ARG_WITH(esd-prefix,[  --with-esd-prefix=PFX   Prefix where ESD is installed (optional)],
   21.38 +            esd_prefix="$withval", esd_prefix="")
   21.39 +AC_ARG_WITH(esd-exec-prefix,[  --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)],
   21.40 +            esd_exec_prefix="$withval", esd_exec_prefix="")
   21.41 +AC_ARG_ENABLE(esdtest, [  --disable-esdtest       Do not try to compile and run a test ESD program],
   21.42 +		    , enable_esdtest=yes)
   21.43 +
   21.44 +  if test x$esd_exec_prefix != x ; then
   21.45 +     esd_args="$esd_args --exec-prefix=$esd_exec_prefix"
   21.46 +     if test x${ESD_CONFIG+set} != xset ; then
   21.47 +        ESD_CONFIG=$esd_exec_prefix/bin/esd-config
   21.48 +     fi
   21.49 +  fi
   21.50 +  if test x$esd_prefix != x ; then
   21.51 +     esd_args="$esd_args --prefix=$esd_prefix"
   21.52 +     if test x${ESD_CONFIG+set} != xset ; then
   21.53 +        ESD_CONFIG=$esd_prefix/bin/esd-config
   21.54 +     fi
   21.55 +  fi
   21.56 +
   21.57 +  AC_PATH_PROG(ESD_CONFIG, esd-config, no)
   21.58 +  min_esd_version=ifelse([$1], ,0.2.7,$1)
   21.59 +  AC_MSG_CHECKING(for ESD - version >= $min_esd_version)
   21.60 +  no_esd=""
   21.61 +  if test "$ESD_CONFIG" = "no" ; then
   21.62 +    no_esd=yes
   21.63 +  else
   21.64 +    ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags`
   21.65 +    ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs`
   21.66 +
   21.67 +    esd_major_version=`$ESD_CONFIG $esd_args --version | \
   21.68 +           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
   21.69 +    esd_minor_version=`$ESD_CONFIG $esd_args --version | \
   21.70 +           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
   21.71 +    esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \
   21.72 +           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
   21.73 +    if test "x$enable_esdtest" = "xyes" ; then
   21.74 +      ac_save_CFLAGS="$CFLAGS"
   21.75 +      ac_save_LIBS="$LIBS"
   21.76 +      CFLAGS="$CFLAGS $ESD_CFLAGS"
   21.77 +      LIBS="$LIBS $ESD_LIBS"
   21.78 +dnl
   21.79 +dnl Now check if the installed ESD is sufficiently new. (Also sanity
   21.80 +dnl checks the results of esd-config to some extent
   21.81 +dnl
   21.82 +      rm -f conf.esdtest
   21.83 +      AC_TRY_RUN([
   21.84 +#include <stdio.h>
   21.85 +#include <stdlib.h>
   21.86 +#include <string.h>
   21.87 +#include <esd.h>
   21.88 +
   21.89 +char*
   21.90 +my_strdup (char *str)
   21.91 +{
   21.92 +  char *new_str;
   21.93 +  
   21.94 +  if (str)
   21.95 +    {
   21.96 +      new_str = malloc ((strlen (str) + 1) * sizeof(char));
   21.97 +      strcpy (new_str, str);
   21.98 +    }
   21.99 +  else
  21.100 +    new_str = NULL;
  21.101 +  
  21.102 +  return new_str;
  21.103 +}
  21.104 +
  21.105 +int main ()
  21.106 +{
  21.107 +  int major, minor, micro;
  21.108 +  char *tmp_version;
  21.109 +
  21.110 +  system ("touch conf.esdtest");
  21.111 +
  21.112 +  /* HP/UX 9 (%@#!) writes to sscanf strings */
  21.113 +  tmp_version = my_strdup("$min_esd_version");
  21.114 +  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
  21.115 +     printf("%s, bad version string\n", "$min_esd_version");
  21.116 +     exit(1);
  21.117 +   }
  21.118 +
  21.119 +   if (($esd_major_version > major) ||
  21.120 +      (($esd_major_version == major) && ($esd_minor_version > minor)) ||
  21.121 +      (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro)))
  21.122 +    {
  21.123 +      return 0;
  21.124 +    }
  21.125 +  else
  21.126 +    {
  21.127 +      printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version);
  21.128 +      printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro);
  21.129 +      printf("*** best to upgrade to the required version.\n");
  21.130 +      printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n");
  21.131 +      printf("*** to point to the correct copy of esd-config, and remove the file\n");
  21.132 +      printf("*** config.cache before re-running configure\n");
  21.133 +      return 1;
  21.134 +    }
  21.135 +}
  21.136 +
  21.137 +],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
  21.138 +       CFLAGS="$ac_save_CFLAGS"
  21.139 +       LIBS="$ac_save_LIBS"
  21.140 +     fi
  21.141 +  fi
  21.142 +  if test "x$no_esd" = x ; then
  21.143 +     AC_MSG_RESULT(yes)
  21.144 +     ifelse([$2], , :, [$2])     
  21.145 +  else
  21.146 +     AC_MSG_RESULT(no)
  21.147 +     if test "$ESD_CONFIG" = "no" ; then
  21.148 +       echo "*** The esd-config script installed by ESD could not be found"
  21.149 +       echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in"
  21.150 +       echo "*** your path, or set the ESD_CONFIG environment variable to the"
  21.151 +       echo "*** full path to esd-config."
  21.152 +     else
  21.153 +       if test -f conf.esdtest ; then
  21.154 +        :
  21.155 +       else
  21.156 +          echo "*** Could not run ESD test program, checking why..."
  21.157 +          CFLAGS="$CFLAGS $ESD_CFLAGS"
  21.158 +          LIBS="$LIBS $ESD_LIBS"
  21.159 +          AC_TRY_LINK([
  21.160 +#include <stdio.h>
  21.161 +#include <esd.h>
  21.162 +],      [ return 0; ],
  21.163 +        [ echo "*** The test program compiled, but did not run. This usually means"
  21.164 +          echo "*** that the run-time linker is not finding ESD or finding the wrong"
  21.165 +          echo "*** version of ESD. If it is not finding ESD, you'll need to set your"
  21.166 +          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
  21.167 +          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
  21.168 +          echo "*** is required on your system"
  21.169 +	  echo "***"
  21.170 +          echo "*** If you have an old version installed, it is best to remove it, although"
  21.171 +          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
  21.172 +        [ echo "*** The test program failed to compile or link. See the file config.log for the"
  21.173 +          echo "*** exact error that occured. This usually means ESD was incorrectly installed"
  21.174 +          echo "*** or that you have moved ESD since it was installed. In the latter case, you"
  21.175 +          echo "*** may want to edit the esd-config script: $ESD_CONFIG" ])
  21.176 +          CFLAGS="$ac_save_CFLAGS"
  21.177 +          LIBS="$ac_save_LIBS"
  21.178 +       fi
  21.179 +     fi
  21.180 +     ESD_CFLAGS=""
  21.181 +     ESD_LIBS=""
  21.182 +     ifelse([$3], , :, [$3])
  21.183 +  fi
  21.184 +  AC_SUBST(ESD_CFLAGS)
  21.185 +  AC_SUBST(ESD_LIBS)
  21.186 +  rm -f conf.esdtest
  21.187 +])
  21.188 +
  21.189 +## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
  21.190 +## Copyright (C) 1996-1999, 2000 Free Software Foundation, Inc.
  21.191 +## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  21.192 +##
  21.193 +## This program is free software; you can redistribute it and/or modify
  21.194 +## it under the terms of the GNU General Public License as published by
  21.195 +## the Free Software Foundation; either version 2 of the License, or
  21.196 +## (at your option) any later version.
  21.197 +##
  21.198 +## This program is distributed in the hope that it will be useful, but
  21.199 +## WITHOUT ANY WARRANTY; without even the implied warranty of
  21.200 +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  21.201 +## General Public License for more details.
  21.202 +##
  21.203 +## You should have received a copy of the GNU General Public License
  21.204 +## along with this program; if not, write to the Free Software
  21.205 +## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  21.206 +##
  21.207 +## As a special exception to the GNU General Public License, if you
  21.208 +## distribute this file as part of a program that contains a
  21.209 +## configuration script generated by Autoconf, you may include it under
  21.210 +## the same distribution terms that you use for the rest of that program.
  21.211 +
  21.212 +# serial 40 AC_PROG_LIBTOOL
  21.213 +AC_DEFUN(AC_PROG_LIBTOOL,
  21.214 +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
  21.215 +
  21.216 +# Save cache, so that ltconfig can load it
  21.217 +AC_CACHE_SAVE
  21.218 +
  21.219 +# Actually configure libtool.  ac_aux_dir is where install-sh is found.
  21.220 +CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
  21.221 +LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
  21.222 +LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
  21.223 +DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
  21.224 +${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
  21.225 +$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
  21.226 +|| AC_MSG_ERROR([libtool configure failed])
  21.227 +
  21.228 +# Reload cache, that may have been modified by ltconfig
  21.229 +AC_CACHE_LOAD
  21.230 +
  21.231 +# This can be used to rebuild libtool when needed
  21.232 +LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
  21.233 +
  21.234 +# Always use our own libtool.
  21.235 +LIBTOOL='$(SHELL) $(top_builddir)/libtool'
  21.236 +AC_SUBST(LIBTOOL)dnl
  21.237 +
  21.238 +# Redirect the config.log output again, so that the ltconfig log is not
  21.239 +# clobbered by the next message.
  21.240 +exec 5>>./config.log
  21.241 +])
  21.242 +
  21.243 +AC_DEFUN(AC_LIBTOOL_SETUP,
  21.244 +[AC_PREREQ(2.13)dnl
  21.245 +AC_REQUIRE([AC_ENABLE_SHARED])dnl
  21.246 +AC_REQUIRE([AC_ENABLE_STATIC])dnl
  21.247 +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
  21.248 +AC_REQUIRE([AC_CANONICAL_HOST])dnl
  21.249 +AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  21.250 +AC_REQUIRE([AC_PROG_RANLIB])dnl
  21.251 +AC_REQUIRE([AC_PROG_CC])dnl
  21.252 +AC_REQUIRE([AC_PROG_LD])dnl
  21.253 +AC_REQUIRE([AC_PROG_NM])dnl
  21.254 +AC_REQUIRE([AC_PROG_LN_S])dnl
  21.255 +dnl
  21.256 +
  21.257 +case "$target" in
  21.258 +NONE) lt_target="$host" ;;
  21.259 +*) lt_target="$target" ;;
  21.260 +esac
  21.261 +
  21.262 +# Check for any special flags to pass to ltconfig.
  21.263 +libtool_flags="--cache-file=$cache_file"
  21.264 +test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
  21.265 +test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
  21.266 +test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
  21.267 +test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
  21.268 +test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
  21.269 +ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
  21.270 +[libtool_flags="$libtool_flags --enable-dlopen"])
  21.271 +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
  21.272 +[libtool_flags="$libtool_flags --enable-win32-dll"])
  21.273 +AC_ARG_ENABLE(libtool-lock,
  21.274 +  [  --disable-libtool-lock  avoid locking (might break parallel builds)])
  21.275 +test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
  21.276 +test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
  21.277 +
  21.278 +# Some flags need to be propagated to the compiler or linker for good
  21.279 +# libtool support.
  21.280 +case "$lt_target" in
  21.281 +*-*-irix6*)
  21.282 +  # Find out which ABI we are using.
  21.283 +  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
  21.284 +  if AC_TRY_EVAL(ac_compile); then
  21.285 +    case "`/usr/bin/file conftest.o`" in
  21.286 +    *32-bit*)
  21.287 +      LD="${LD-ld} -32"
  21.288 +      ;;
  21.289 +    *N32*)
  21.290 +      LD="${LD-ld} -n32"
  21.291 +      ;;
  21.292 +    *64-bit*)
  21.293 +      LD="${LD-ld} -64"
  21.294 +      ;;
  21.295 +    esac
  21.296 +  fi
  21.297 +  rm -rf conftest*
  21.298 +  ;;
  21.299 +
  21.300 +*-*-sco3.2v5*)
  21.301 +  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
  21.302 +  SAVE_CFLAGS="$CFLAGS"
  21.303 +  CFLAGS="$CFLAGS -belf"
  21.304 +  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
  21.305 +    [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
  21.306 +  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
  21.307 +    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
  21.308 +    CFLAGS="$SAVE_CFLAGS"
  21.309 +  fi
  21.310 +  ;;
  21.311 +
  21.312 +ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
  21.313 +[*-*-cygwin* | *-*-mingw*)
  21.314 +  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
  21.315 +  AC_CHECK_TOOL(AS, as, false)
  21.316 +  AC_CHECK_TOOL(OBJDUMP, objdump, false)
  21.317 +  ;;
  21.318 +])
  21.319 +esac
  21.320 +])
  21.321 +
  21.322 +# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
  21.323 +AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
  21.324 +
  21.325 +# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
  21.326 +AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
  21.327 +
  21.328 +# AC_ENABLE_SHARED - implement the --enable-shared flag
  21.329 +# Usage: AC_ENABLE_SHARED[(DEFAULT)]
  21.330 +#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  21.331 +#   `yes'.
  21.332 +AC_DEFUN(AC_ENABLE_SHARED, [dnl
  21.333 +define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
  21.334 +AC_ARG_ENABLE(shared,
  21.335 +changequote(<<, >>)dnl
  21.336 +<<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
  21.337 +changequote([, ])dnl
  21.338 +[p=${PACKAGE-default}
  21.339 +case "$enableval" in
  21.340 +yes) enable_shared=yes ;;
  21.341 +no) enable_shared=no ;;
  21.342 +*)
  21.343 +  enable_shared=no
  21.344 +  # Look at the argument we got.  We use all the common list separators.
  21.345 +  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  21.346 +  for pkg in $enableval; do
  21.347 +    if test "X$pkg" = "X$p"; then
  21.348 +      enable_shared=yes
  21.349 +    fi
  21.350 +  done
  21.351 +  IFS="$ac_save_ifs"
  21.352 +  ;;
  21.353 +esac],
  21.354 +enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
  21.355 +])
  21.356 +
  21.357 +# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
  21.358 +AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  21.359 +AC_ENABLE_SHARED(no)])
  21.360 +
  21.361 +# AC_ENABLE_STATIC - implement the --enable-static flag
  21.362 +# Usage: AC_ENABLE_STATIC[(DEFAULT)]
  21.363 +#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  21.364 +#   `yes'.
  21.365 +AC_DEFUN(AC_ENABLE_STATIC, [dnl
  21.366 +define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
  21.367 +AC_ARG_ENABLE(static,
  21.368 +changequote(<<, >>)dnl
  21.369 +<<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
  21.370 +changequote([, ])dnl
  21.371 +[p=${PACKAGE-default}
  21.372 +case "$enableval" in
  21.373 +yes) enable_static=yes ;;
  21.374 +no) enable_static=no ;;
  21.375 +*)
  21.376 +  enable_static=no
  21.377 +  # Look at the argument we got.  We use all the common list separators.
  21.378 +  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  21.379 +  for pkg in $enableval; do
  21.380 +    if test "X$pkg" = "X$p"; then
  21.381 +      enable_static=yes
  21.382 +    fi
  21.383 +  done
  21.384 +  IFS="$ac_save_ifs"
  21.385 +  ;;
  21.386 +esac],
  21.387 +enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
  21.388 +])
  21.389 +
  21.390 +# AC_DISABLE_STATIC - set the default static flag to --disable-static
  21.391 +AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  21.392 +AC_ENABLE_STATIC(no)])
  21.393 +
  21.394 +
  21.395 +# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
  21.396 +# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
  21.397 +#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
  21.398 +#   `yes'.
  21.399 +AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
  21.400 +define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
  21.401 +AC_ARG_ENABLE(fast-install,
  21.402 +changequote(<<, >>)dnl
  21.403 +<<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
  21.404 +changequote([, ])dnl
  21.405 +[p=${PACKAGE-default}
  21.406 +case "$enableval" in
  21.407 +yes) enable_fast_install=yes ;;
  21.408 +no) enable_fast_install=no ;;
  21.409 +*)
  21.410 +  enable_fast_install=no
  21.411 +  # Look at the argument we got.  We use all the common list separators.
  21.412 +  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
  21.413 +  for pkg in $enableval; do
  21.414 +    if test "X$pkg" = "X$p"; then
  21.415 +      enable_fast_install=yes
  21.416 +    fi
  21.417 +  done
  21.418 +  IFS="$ac_save_ifs"
  21.419 +  ;;
  21.420 +esac],
  21.421 +enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
  21.422 +])
  21.423 +
  21.424 +# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
  21.425 +AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  21.426 +AC_ENABLE_FAST_INSTALL(no)])
  21.427 +
  21.428 +# AC_PROG_LD - find the path to the GNU or non-GNU linker
  21.429 +AC_DEFUN(AC_PROG_LD,
  21.430 +[AC_ARG_WITH(gnu-ld,
  21.431 +[  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
  21.432 +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
  21.433 +AC_REQUIRE([AC_PROG_CC])dnl
  21.434 +AC_REQUIRE([AC_CANONICAL_HOST])dnl
  21.435 +AC_REQUIRE([AC_CANONICAL_BUILD])dnl
  21.436 +ac_prog=ld
  21.437 +if test "$ac_cv_prog_gcc" = yes; then
  21.438 +  # Check if gcc -print-prog-name=ld gives a path.
  21.439 +  AC_MSG_CHECKING([for ld used by GCC])
  21.440 +  ac_prog=`($CC -print-prog-name=ld | tr -d '\r') 2>&5`
  21.441 +  case "$ac_prog" in
  21.442 +    # Accept absolute paths.
  21.443 +changequote(,)dnl
  21.444 +    [\\/]* | [A-Za-z]:[\\/]*)
  21.445 +      re_direlt='/[^/][^/]*/\.\./'
  21.446 +changequote([,])dnl
  21.447 +      # Canonicalize the path of ld
  21.448 +      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
  21.449 +      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
  21.450 +	ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
  21.451 +      done
  21.452 +      test -z "$LD" && LD="$ac_prog"
  21.453 +      ;;
  21.454 +  "")
  21.455 +    # If it fails, then pretend we aren't using GCC.
  21.456 +    ac_prog=ld
  21.457 +    ;;
  21.458 +  *)
  21.459 +    # If it is relative, then search for the first ld in PATH.
  21.460 +    with_gnu_ld=unknown
  21.461 +    ;;
  21.462 +  esac
  21.463 +elif test "$with_gnu_ld" = yes; then
  21.464 +  AC_MSG_CHECKING([for GNU ld])
  21.465 +else
  21.466 +  AC_MSG_CHECKING([for non-GNU ld])
  21.467 +fi
  21.468 +AC_CACHE_VAL(ac_cv_path_LD,
  21.469 +[if test -z "$LD"; then
  21.470 +  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
  21.471 +  for ac_dir in $PATH; do
  21.472 +    test -z "$ac_dir" && ac_dir=.
  21.473 +    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
  21.474 +      ac_cv_path_LD="$ac_dir/$ac_prog"
  21.475 +      # Check to see if the program is GNU ld.  I'd rather use --version,
  21.476 +      # but apparently some GNU ld's only accept -v.
  21.477 +      # Break only if it was the GNU/non-GNU ld that we prefer.
  21.478 +      if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
  21.479 +	test "$with_gnu_ld" != no && break
  21.480 +      else
  21.481 +	test "$with_gnu_ld" != yes && break
  21.482 +      fi
  21.483 +    fi
  21.484 +  done
  21.485 +  IFS="$ac_save_ifs"
  21.486 +else
  21.487 +  ac_cv_path_LD="$LD" # Let the user override the test with a path.
  21.488 +fi])
  21.489 +LD="$ac_cv_path_LD"
  21.490 +if test -n "$LD"; then
  21.491 +  AC_MSG_RESULT($LD)
  21.492 +else
  21.493 +  AC_MSG_RESULT(no)
  21.494 +fi
  21.495 +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
  21.496 +AC_PROG_LD_GNU
  21.497 +])
  21.498 +
  21.499 +AC_DEFUN(AC_PROG_LD_GNU,
  21.500 +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
  21.501 +[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
  21.502 +if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
  21.503 +  ac_cv_prog_gnu_ld=yes
  21.504 +else
  21.505 +  ac_cv_prog_gnu_ld=no
  21.506 +fi])
  21.507 +])
  21.508 +
  21.509 +# AC_PROG_NM - find the path to a BSD-compatible name lister
  21.510 +AC_DEFUN(AC_PROG_NM,
  21.511 +[AC_MSG_CHECKING([for BSD-compatible nm])
  21.512 +AC_CACHE_VAL(ac_cv_path_NM,
  21.513 +[if test -n "$NM"; then
  21.514 +  # Let the user override the test.
  21.515 +  ac_cv_path_NM="$NM"
  21.516 +else
  21.517 +  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
  21.518 +  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
  21.519 +    test -z "$ac_dir" && ac_dir=.
  21.520 +    if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
  21.521 +      # Check to see if the nm accepts a BSD-compat flag.
  21.522 +      # Adding the `sed 1q' prevents false positives on HP-UX, which says:
  21.523 +      #   nm: unknown option "B" ignored
  21.524 +      if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  21.525 +	ac_cv_path_NM="$ac_dir/nm -B"
  21.526 +	break
  21.527 +      elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  21.528 +	ac_cv_path_NM="$ac_dir/nm -p"
  21.529 +	break
  21.530 +      else
  21.531 +	ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
  21.532 +	continue # so that we can try to find one that supports BSD flags
  21.533 +      fi
  21.534 +    fi
  21.535 +  done
  21.536 +  IFS="$ac_save_ifs"
  21.537 +  test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
  21.538 +fi])
  21.539 +NM="$ac_cv_path_NM"
  21.540 +AC_MSG_RESULT([$NM])
  21.541 +])
  21.542 +
  21.543 +# AC_CHECK_LIBM - check for math library
  21.544 +AC_DEFUN(AC_CHECK_LIBM,
  21.545 +[AC_REQUIRE([AC_CANONICAL_HOST])dnl
  21.546 +LIBM=
  21.547 +case "$lt_target" in
  21.548 +*-*-beos* | *-*-cygwin*)
  21.549 +  # These system don't have libm
  21.550 +  ;;
  21.551 +*-ncr-sysv4.3*)
  21.552 +  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
  21.553 +  AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
  21.554 +  ;;
  21.555 +*)
  21.556 +  AC_CHECK_LIB(m, main, LIBM="-lm")
  21.557 +  ;;
  21.558 +esac
  21.559 +])
  21.560 +
  21.561 +# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
  21.562 +# the libltdl convenience library and INCLTDL to the include flags for
  21.563 +# the libltdl header and adds --enable-ltdl-convenience to the
  21.564 +# configure arguments.  Note that LIBLTDL and INCLTDL are not
  21.565 +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If DIR is not
  21.566 +# provided, it is assumed to be `libltdl'.  LIBLTDL will be prefixed
  21.567 +# with '${top_builddir}/' and INCLTDL will be prefixed with
  21.568 +# '${top_srcdir}/' (note the single quotes!).  If your package is not
  21.569 +# flat and you're not using automake, define top_builddir and
  21.570 +# top_srcdir appropriately in the Makefiles.
  21.571 +AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  21.572 +  case "$enable_ltdl_convenience" in
  21.573 +  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
  21.574 +  "") enable_ltdl_convenience=yes
  21.575 +      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
  21.576 +  esac
  21.577 +  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
  21.578 +  INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  21.579 +])
  21.580 +
  21.581 +# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
  21.582 +# the libltdl installable library and INCLTDL to the include flags for
  21.583 +# the libltdl header and adds --enable-ltdl-install to the configure
  21.584 +# arguments.  Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
  21.585 +# AC_CONFIG_SUBDIRS called.  If DIR is not provided and an installed
  21.586 +# libltdl is not found, it is assumed to be `libltdl'.  LIBLTDL will
  21.587 +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
  21.588 +# with '${top_srcdir}/' (note the single quotes!).  If your package is
  21.589 +# not flat and you're not using automake, define top_builddir and
  21.590 +# top_srcdir appropriately in the Makefiles.
  21.591 +# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
  21.592 +AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
  21.593 +  AC_CHECK_LIB(ltdl, main,
  21.594 +  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
  21.595 +  [if test x"$enable_ltdl_install" = xno; then
  21.596 +     AC_MSG_WARN([libltdl not installed, but installation disabled])
  21.597 +   else
  21.598 +     enable_ltdl_install=yes
  21.599 +   fi
  21.600 +  ])
  21.601 +  if test x"$enable_ltdl_install" = x"yes"; then
  21.602 +    ac_configure_args="$ac_configure_args --enable-ltdl-install"
  21.603 +    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
  21.604 +    INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
  21.605 +  else
  21.606 +    ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
  21.607 +    LIBLTDL="-lltdl"
  21.608 +    INCLTDL=
  21.609 +  fi
  21.610 +])
  21.611 +
  21.612 +dnl old names
  21.613 +AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
  21.614 +AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
  21.615 +AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
  21.616 +AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
  21.617 +AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
  21.618 +AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
  21.619 +AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
  21.620 +
  21.621 +dnl This is just to silence aclocal about the macro not being used
  21.622 +ifelse([AC_DISABLE_FAST_INSTALL])dnl
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/autogen.sh	Thu Apr 26 16:45:43 2001 +0000
    22.3 @@ -0,0 +1,18 @@
    22.4 +#!/bin/sh
    22.5 +#
    22.6 +echo "Generating build information using aclocal, automake and autoconf"
    22.7 +echo "This may take a while ..."
    22.8 +
    22.9 +# Touch the timestamps on all the files since CVS messes them up
   22.10 +directory=`dirname $0`
   22.11 +touch $directory/configure.in
   22.12 +
   22.13 +# Regenerate configuration files
   22.14 +aclocal
   22.15 +automake --foreign --include-deps
   22.16 +autoconf
   22.17 +(cd test; aclocal; automake --foreign --include-deps; autoconf)
   22.18 +
   22.19 +# Run configure for this platform
   22.20 +#./configure $*
   22.21 +echo "Now you are ready to run ./configure"
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/config.guess	Thu Apr 26 16:45:43 2001 +0000
    23.3 @@ -0,0 +1,1368 @@
    23.4 +#! /bin/sh
    23.5 +# Attempt to guess a canonical system name.
    23.6 +#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
    23.7 +#   Free Software Foundation, Inc.
    23.8 +
    23.9 +timestamp='2001-03-16'
   23.10 +
   23.11 +# This file is free software; you can redistribute it and/or modify it
   23.12 +# under the terms of the GNU General Public License as published by
   23.13 +# the Free Software Foundation; either version 2 of the License, or
   23.14 +# (at your option) any later version.
   23.15 +#
   23.16 +# This program is distributed in the hope that it will be useful, but
   23.17 +# WITHOUT ANY WARRANTY; without even the implied warranty of
   23.18 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   23.19 +# General Public License for more details.
   23.20 +#
   23.21 +# You should have received a copy of the GNU General Public License
   23.22 +# along with this program; if not, write to the Free Software
   23.23 +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
   23.24 +#
   23.25 +# As a special exception to the GNU General Public License, if you
   23.26 +# distribute this file as part of a program that contains a
   23.27 +# configuration script generated by Autoconf, you may include it under
   23.28 +# the same distribution terms that you use for the rest of that program.
   23.29 +
   23.30 +# Written by Per Bothner <bothner@cygnus.com>.
   23.31 +# Please send patches to <config-patches@gnu.org>.
   23.32 +#
   23.33 +# This script attempts to guess a canonical system name similar to
   23.34 +# config.sub.  If it succeeds, it prints the system name on stdout, and
   23.35 +# exits with 0.  Otherwise, it exits with 1.
   23.36 +#
   23.37 +# The plan is that this can be called by configure scripts if you
   23.38 +# don't specify an explicit build system type.
   23.39 +
   23.40 +me=`echo "$0" | sed -e 's,.*/,,'`
   23.41 +
   23.42 +usage="\
   23.43 +Usage: $0 [OPTION]
   23.44 +
   23.45 +Output the configuration name of the system \`$me' is run on.
   23.46 +
   23.47 +Operation modes:
   23.48 +  -h, --help         print this help, then exit
   23.49 +  -t, --time-stamp   print date of last modification, then exit
   23.50 +  -v, --version      print version number, then exit
   23.51 +
   23.52 +Report bugs and patches to <config-patches@gnu.org>."
   23.53 +
   23.54 +version="\
   23.55 +GNU config.guess ($timestamp)
   23.56 +
   23.57 +Originally written by Per Bothner.
   23.58 +Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000
   23.59 +Free Software Foundation, Inc.
   23.60 +
   23.61 +This is free software; see the source for copying conditions.  There is NO
   23.62 +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
   23.63 +
   23.64 +help="
   23.65 +Try \`$me --help' for more information."
   23.66 +
   23.67 +# Parse command line
   23.68 +while test $# -gt 0 ; do
   23.69 +  case $1 in
   23.70 +    --time-stamp | --time* | -t )
   23.71 +       echo "$timestamp" ; exit 0 ;;
   23.72 +    --version | -v )
   23.73 +       echo "$version" ; exit 0 ;;
   23.74 +    --help | --h* | -h )
   23.75 +       echo "$usage"; exit 0 ;;
   23.76 +    -- )     # Stop option processing
   23.77 +       shift; break ;;
   23.78 +    - )	# Use stdin as input.
   23.79 +       break ;;
   23.80 +    -* )
   23.81 +       echo "$me: invalid option $1$help" >&2
   23.82 +       exit 1 ;;
   23.83 +    * )
   23.84 +       break ;;
   23.85 +  esac
   23.86 +done
   23.87 +
   23.88 +if test $# != 0; then
   23.89 +  echo "$me: too many arguments$help" >&2
   23.90 +  exit 1
   23.91 +fi
   23.92 +
   23.93 +
   23.94 +dummy=dummy-$$
   23.95 +trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
   23.96 +
   23.97 +# CC_FOR_BUILD -- compiler used by this script.
   23.98 +# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
   23.99 +# use `HOST_CC' if defined, but it is deprecated.
  23.100 +
  23.101 +case $CC_FOR_BUILD,$HOST_CC,$CC in
  23.102 + ,,)    echo "int dummy(){}" > $dummy.c
  23.103 +	for c in cc gcc c89 ; do
  23.104 +	  ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1
  23.105 +	  if test $? = 0 ; then
  23.106 +	     CC_FOR_BUILD="$c"; break
  23.107 +	  fi
  23.108 +	done
  23.109 +	rm -f $dummy.c $dummy.o $dummy.rel
  23.110 +	if test x"$CC_FOR_BUILD" = x ; then
  23.111 +	  CC_FOR_BUILD=no_compiler_found
  23.112 +	fi
  23.113 +	;;
  23.114 + ,,*)   CC_FOR_BUILD=$CC ;;
  23.115 + ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
  23.116 +esac
  23.117 +
  23.118 +# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
  23.119 +# (ghazi@noc.rutgers.edu 8/24/94.)
  23.120 +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
  23.121 +	PATH=$PATH:/.attbin ; export PATH
  23.122 +fi
  23.123 +
  23.124 +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
  23.125 +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
  23.126 +UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
  23.127 +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
  23.128 +
  23.129 +# Note: order is significant - the case branches are not exclusive.
  23.130 +
  23.131 +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
  23.132 +    *:NetBSD:*:*)
  23.133 +	# Netbsd (nbsd) targets should (where applicable) match one or
  23.134 +	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
  23.135 +	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
  23.136 +	# switched to ELF, *-*-netbsd* would select the old
  23.137 +	# object file format.  This provides both forward
  23.138 +	# compatibility and a consistent mechanism for selecting the
  23.139 +	# object file format.
  23.140 +	# Determine the machine/vendor (is the vendor relevant).
  23.141 +	case "${UNAME_MACHINE}" in
  23.142 +	    amiga) machine=m68k-unknown ;;
  23.143 +	    arm32) machine=arm-unknown ;;
  23.144 +	    atari*) machine=m68k-atari ;;
  23.145 +	    sun3*) machine=m68k-sun ;;
  23.146 +	    mac68k) machine=m68k-apple ;;
  23.147 +	    macppc) machine=powerpc-apple ;;
  23.148 +	    hp3[0-9][05]) machine=m68k-hp ;;
  23.149 +	    ibmrt|romp-ibm) machine=romp-ibm ;;
  23.150 +	    *) machine=${UNAME_MACHINE}-unknown ;;
  23.151 +	esac
  23.152 +	# The Operating System including object format, if it has switched
  23.153 +	# to ELF recently, or will in the future.
  23.154 +	case "${UNAME_MACHINE}" in
  23.155 +	    i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
  23.156 +		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
  23.157 +			| grep __ELF__ >/dev/null
  23.158 +		then
  23.159 +		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
  23.160 +		    # Return netbsd for either.  FIX?
  23.161 +		    os=netbsd
  23.162 +		else
  23.163 +		    os=netbsdelf
  23.164 +		fi
  23.165 +		;;
  23.166 +	    *)
  23.167 +	        os=netbsd
  23.168 +		;;
  23.169 +	esac
  23.170 +	# The OS release
  23.171 +	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  23.172 +	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
  23.173 +	# contains redundant information, the shorter form:
  23.174 +	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
  23.175 +	echo "${machine}-${os}${release}"
  23.176 +	exit 0 ;;
  23.177 +    alpha:OSF1:*:*)
  23.178 +	if test $UNAME_RELEASE = "V4.0"; then
  23.179 +		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
  23.180 +	fi
  23.181 +	# A Vn.n version is a released version.
  23.182 +	# A Tn.n version is a released field test version.
  23.183 +	# A Xn.n version is an unreleased experimental baselevel.
  23.184 +	# 1.2 uses "1.2" for uname -r.
  23.185 +	cat <<EOF >$dummy.s
  23.186 +	.data
  23.187 +\$Lformat:
  23.188 +	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
  23.189 +
  23.190 +	.text
  23.191 +	.globl main
  23.192 +	.align 4
  23.193 +	.ent main
  23.194 +main:
  23.195 +	.frame \$30,16,\$26,0
  23.196 +	ldgp \$29,0(\$27)
  23.197 +	.prologue 1
  23.198 +	.long 0x47e03d80 # implver \$0
  23.199 +	lda \$2,-1
  23.200 +	.long 0x47e20c21 # amask \$2,\$1
  23.201 +	lda \$16,\$Lformat
  23.202 +	mov \$0,\$17
  23.203 +	not \$1,\$18
  23.204 +	jsr \$26,printf
  23.205 +	ldgp \$29,0(\$26)
  23.206 +	mov 0,\$16
  23.207 +	jsr \$26,exit
  23.208 +	.end main
  23.209 +EOF
  23.210 +	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
  23.211 +	if test "$?" = 0 ; then
  23.212 +		case `./$dummy` in
  23.213 +			0-0)
  23.214 +				UNAME_MACHINE="alpha"
  23.215 +				;;
  23.216 +			1-0)
  23.217 +				UNAME_MACHINE="alphaev5"
  23.218 +				;;
  23.219 +			1-1)
  23.220 +				UNAME_MACHINE="alphaev56"
  23.221 +				;;
  23.222 +			1-101)
  23.223 +				UNAME_MACHINE="alphapca56"
  23.224 +				;;
  23.225 +			2-303)
  23.226 +				UNAME_MACHINE="alphaev6"
  23.227 +				;;
  23.228 +			2-307)
  23.229 +				UNAME_MACHINE="alphaev67"
  23.230 +				;;
  23.231 +		esac
  23.232 +	fi
  23.233 +	rm -f $dummy.s $dummy
  23.234 +	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  23.235 +	exit 0 ;;
  23.236 +    Alpha\ *:Windows_NT*:*)
  23.237 +	# How do we know it's Interix rather than the generic POSIX subsystem?
  23.238 +	# Should we change UNAME_MACHINE based on the output of uname instead
  23.239 +	# of the specific Alpha model?
  23.240 +	echo alpha-pc-interix
  23.241 +	exit 0 ;;
  23.242 +    21064:Windows_NT:50:3)
  23.243 +	echo alpha-dec-winnt3.5
  23.244 +	exit 0 ;;
  23.245 +    Amiga*:UNIX_System_V:4.0:*)
  23.246 +	echo m68k-unknown-sysv4
  23.247 +	exit 0;;
  23.248 +    amiga:OpenBSD:*:*)
  23.249 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.250 +	exit 0 ;;
  23.251 +    *:[Aa]miga[Oo][Ss]:*:*)
  23.252 +	echo ${UNAME_MACHINE}-unknown-amigaos
  23.253 +	exit 0 ;;
  23.254 +    arc64:OpenBSD:*:*)
  23.255 +	echo mips64el-unknown-openbsd${UNAME_RELEASE}
  23.256 +	exit 0 ;;
  23.257 +    arc:OpenBSD:*:*)
  23.258 +	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  23.259 +	exit 0 ;;
  23.260 +    hkmips:OpenBSD:*:*)
  23.261 +	echo mips-unknown-openbsd${UNAME_RELEASE}
  23.262 +	exit 0 ;;
  23.263 +    pmax:OpenBSD:*:*)
  23.264 +	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  23.265 +	exit 0 ;;
  23.266 +    sgi:OpenBSD:*:*)
  23.267 +	echo mips-unknown-openbsd${UNAME_RELEASE}
  23.268 +	exit 0 ;;
  23.269 +    wgrisc:OpenBSD:*:*)
  23.270 +	echo mipsel-unknown-openbsd${UNAME_RELEASE}
  23.271 +	exit 0 ;;
  23.272 +    *:OS/390:*:*)
  23.273 +	echo i370-ibm-openedition
  23.274 +	exit 0 ;;
  23.275 +    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
  23.276 +	echo arm-acorn-riscix${UNAME_RELEASE}
  23.277 +	exit 0;;
  23.278 +    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
  23.279 +	echo hppa1.1-hitachi-hiuxmpp
  23.280 +	exit 0;;
  23.281 +    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
  23.282 +	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
  23.283 +	if test "`(/bin/universe) 2>/dev/null`" = att ; then
  23.284 +		echo pyramid-pyramid-sysv3
  23.285 +	else
  23.286 +		echo pyramid-pyramid-bsd
  23.287 +	fi
  23.288 +	exit 0 ;;
  23.289 +    NILE*:*:*:dcosx)
  23.290 +	echo pyramid-pyramid-svr4
  23.291 +	exit 0 ;;
  23.292 +    sun4H:SunOS:5.*:*)
  23.293 +	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  23.294 +	exit 0 ;;
  23.295 +    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
  23.296 +	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  23.297 +	exit 0 ;;
  23.298 +    i86pc:SunOS:5.*:*)
  23.299 +	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  23.300 +	exit 0 ;;
  23.301 +    sun4*:SunOS:6*:*)
  23.302 +	# According to config.sub, this is the proper way to canonicalize
  23.303 +	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
  23.304 +	# it's likely to be more like Solaris than SunOS4.
  23.305 +	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  23.306 +	exit 0 ;;
  23.307 +    sun4*:SunOS:*:*)
  23.308 +	case "`/usr/bin/arch -k`" in
  23.309 +	    Series*|S4*)
  23.310 +		UNAME_RELEASE=`uname -v`
  23.311 +		;;
  23.312 +	esac
  23.313 +	# Japanese Language versions have a version number like `4.1.3-JL'.
  23.314 +	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
  23.315 +	exit 0 ;;
  23.316 +    sun3*:SunOS:*:*)
  23.317 +	echo m68k-sun-sunos${UNAME_RELEASE}
  23.318 +	exit 0 ;;
  23.319 +    sun*:*:4.2BSD:*)
  23.320 +	UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
  23.321 +	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
  23.322 +	case "`/bin/arch`" in
  23.323 +	    sun3)
  23.324 +		echo m68k-sun-sunos${UNAME_RELEASE}
  23.325 +		;;
  23.326 +	    sun4)
  23.327 +		echo sparc-sun-sunos${UNAME_RELEASE}
  23.328 +		;;
  23.329 +	esac
  23.330 +	exit 0 ;;
  23.331 +    aushp:SunOS:*:*)
  23.332 +	echo sparc-auspex-sunos${UNAME_RELEASE}
  23.333 +	exit 0 ;;
  23.334 +    atari*:OpenBSD:*:*)
  23.335 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.336 +	exit 0 ;;
  23.337 +    # The situation for MiNT is a little confusing.  The machine name
  23.338 +    # can be virtually everything (everything which is not
  23.339 +    # "atarist" or "atariste" at least should have a processor
  23.340 +    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
  23.341 +    # to the lowercase version "mint" (or "freemint").  Finally
  23.342 +    # the system name "TOS" denotes a system which is actually not
  23.343 +    # MiNT.  But MiNT is downward compatible to TOS, so this should
  23.344 +    # be no problem.
  23.345 +    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
  23.346 +        echo m68k-atari-mint${UNAME_RELEASE}
  23.347 +	exit 0 ;;
  23.348 +    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
  23.349 +	echo m68k-atari-mint${UNAME_RELEASE}
  23.350 +        exit 0 ;;
  23.351 +    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
  23.352 +        echo m68k-atari-mint${UNAME_RELEASE}
  23.353 +	exit 0 ;;
  23.354 +    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
  23.355 +        echo m68k-milan-mint${UNAME_RELEASE}
  23.356 +        exit 0 ;;
  23.357 +    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
  23.358 +        echo m68k-hades-mint${UNAME_RELEASE}
  23.359 +        exit 0 ;;
  23.360 +    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
  23.361 +        echo m68k-unknown-mint${UNAME_RELEASE}
  23.362 +        exit 0 ;;
  23.363 +    sun3*:OpenBSD:*:*)
  23.364 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.365 +	exit 0 ;;
  23.366 +    mac68k:OpenBSD:*:*)
  23.367 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.368 +	exit 0 ;;
  23.369 +    mvme68k:OpenBSD:*:*)
  23.370 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.371 +	exit 0 ;;
  23.372 +    mvme88k:OpenBSD:*:*)
  23.373 +	echo m88k-unknown-openbsd${UNAME_RELEASE}
  23.374 +	exit 0 ;;
  23.375 +    powerpc:machten:*:*)
  23.376 +	echo powerpc-apple-machten${UNAME_RELEASE}
  23.377 +	exit 0 ;;
  23.378 +    RISC*:Mach:*:*)
  23.379 +	echo mips-dec-mach_bsd4.3
  23.380 +	exit 0 ;;
  23.381 +    RISC*:ULTRIX:*:*)
  23.382 +	echo mips-dec-ultrix${UNAME_RELEASE}
  23.383 +	exit 0 ;;
  23.384 +    VAX*:ULTRIX*:*:*)
  23.385 +	echo vax-dec-ultrix${UNAME_RELEASE}
  23.386 +	exit 0 ;;
  23.387 +    2020:CLIX:*:* | 2430:CLIX:*:*)
  23.388 +	echo clipper-intergraph-clix${UNAME_RELEASE}
  23.389 +	exit 0 ;;
  23.390 +    mips:*:*:UMIPS | mips:*:*:RISCos)
  23.391 +	sed 's/^	//' << EOF >$dummy.c
  23.392 +#ifdef __cplusplus
  23.393 +#include <stdio.h>  /* for printf() prototype */
  23.394 +	int main (int argc, char *argv[]) {
  23.395 +#else
  23.396 +	int main (argc, argv) int argc; char *argv[]; {
  23.397 +#endif
  23.398 +	#if defined (host_mips) && defined (MIPSEB)
  23.399 +	#if defined (SYSTYPE_SYSV)
  23.400 +	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
  23.401 +	#endif
  23.402 +	#if defined (SYSTYPE_SVR4)
  23.403 +	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
  23.404 +	#endif
  23.405 +	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
  23.406 +	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
  23.407 +	#endif
  23.408 +	#endif
  23.409 +	  exit (-1);
  23.410 +	}
  23.411 +EOF
  23.412 +	$CC_FOR_BUILD $dummy.c -o $dummy \
  23.413 +	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
  23.414 +	  && rm -f $dummy.c $dummy && exit 0
  23.415 +	rm -f $dummy.c $dummy
  23.416 +	echo mips-mips-riscos${UNAME_RELEASE}
  23.417 +	exit 0 ;;
  23.418 +    Night_Hawk:Power_UNIX:*:*)
  23.419 +	echo powerpc-harris-powerunix
  23.420 +	exit 0 ;;
  23.421 +    m88k:CX/UX:7*:*)
  23.422 +	echo m88k-harris-cxux7
  23.423 +	exit 0 ;;
  23.424 +    m88k:*:4*:R4*)
  23.425 +	echo m88k-motorola-sysv4
  23.426 +	exit 0 ;;
  23.427 +    m88k:*:3*:R3*)
  23.428 +	echo m88k-motorola-sysv3
  23.429 +	exit 0 ;;
  23.430 +    AViiON:dgux:*:*)
  23.431 +        # DG/UX returns AViiON for all architectures
  23.432 +        UNAME_PROCESSOR=`/usr/bin/uname -p`
  23.433 +	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
  23.434 +	then
  23.435 +	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
  23.436 +	       [ ${TARGET_BINARY_INTERFACE}x = x ]
  23.437 +	    then
  23.438 +		echo m88k-dg-dgux${UNAME_RELEASE}
  23.439 +	    else
  23.440 +		echo m88k-dg-dguxbcs${UNAME_RELEASE}
  23.441 +	    fi
  23.442 +	else
  23.443 +	    echo i586-dg-dgux${UNAME_RELEASE}
  23.444 +	fi
  23.445 + 	exit 0 ;;
  23.446 +    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
  23.447 +	echo m88k-dolphin-sysv3
  23.448 +	exit 0 ;;
  23.449 +    M88*:*:R3*:*)
  23.450 +	# Delta 88k system running SVR3
  23.451 +	echo m88k-motorola-sysv3
  23.452 +	exit 0 ;;
  23.453 +    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
  23.454 +	echo m88k-tektronix-sysv3
  23.455 +	exit 0 ;;
  23.456 +    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
  23.457 +	echo m68k-tektronix-bsd
  23.458 +	exit 0 ;;
  23.459 +    *:IRIX*:*:*)
  23.460 +	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
  23.461 +	exit 0 ;;
  23.462 +    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
  23.463 +	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
  23.464 +	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
  23.465 +    i?86:AIX:*:*)
  23.466 +	echo i386-ibm-aix
  23.467 +	exit 0 ;;
  23.468 +    ia64:AIX:*:*)
  23.469 +	if [ -x /usr/bin/oslevel ] ; then
  23.470 +		IBM_REV=`/usr/bin/oslevel`
  23.471 +	else
  23.472 +		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  23.473 +	fi
  23.474 +	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
  23.475 +	exit 0 ;;
  23.476 +    *:AIX:2:3)
  23.477 +	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
  23.478 +		sed 's/^		//' << EOF >$dummy.c
  23.479 +		#include <sys/systemcfg.h>
  23.480 +
  23.481 +		main()
  23.482 +			{
  23.483 +			if (!__power_pc())
  23.484 +				exit(1);
  23.485 +			puts("powerpc-ibm-aix3.2.5");
  23.486 +			exit(0);
  23.487 +			}
  23.488 +EOF
  23.489 +		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
  23.490 +		rm -f $dummy.c $dummy
  23.491 +		echo rs6000-ibm-aix3.2.5
  23.492 +	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
  23.493 +		echo rs6000-ibm-aix3.2.4
  23.494 +	else
  23.495 +		echo rs6000-ibm-aix3.2
  23.496 +	fi
  23.497 +	exit 0 ;;
  23.498 +    *:AIX:*:[45])
  23.499 +	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
  23.500 +	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
  23.501 +		IBM_ARCH=rs6000
  23.502 +	else
  23.503 +		IBM_ARCH=powerpc
  23.504 +	fi
  23.505 +	if [ -x /usr/bin/oslevel ] ; then
  23.506 +		IBM_REV=`/usr/bin/oslevel`
  23.507 +	else
  23.508 +		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
  23.509 +	fi
  23.510 +	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
  23.511 +	exit 0 ;;
  23.512 +    *:AIX:*:*)
  23.513 +	echo rs6000-ibm-aix
  23.514 +	exit 0 ;;
  23.515 +    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
  23.516 +	echo romp-ibm-bsd4.4
  23.517 +	exit 0 ;;
  23.518 +    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
  23.519 +	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
  23.520 +	exit 0 ;;                           # report: romp-ibm BSD 4.3
  23.521 +    *:BOSX:*:*)
  23.522 +	echo rs6000-bull-bosx
  23.523 +	exit 0 ;;
  23.524 +    DPX/2?00:B.O.S.:*:*)
  23.525 +	echo m68k-bull-sysv3
  23.526 +	exit 0 ;;
  23.527 +    9000/[34]??:4.3bsd:1.*:*)
  23.528 +	echo m68k-hp-bsd
  23.529 +	exit 0 ;;
  23.530 +    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
  23.531 +	echo m68k-hp-bsd4.4
  23.532 +	exit 0 ;;
  23.533 +    9000/[34678]??:HP-UX:*:*)
  23.534 +	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  23.535 +	case "${UNAME_MACHINE}" in
  23.536 +	    9000/31? )            HP_ARCH=m68000 ;;
  23.537 +	    9000/[34]?? )         HP_ARCH=m68k ;;
  23.538 +	    9000/[678][0-9][0-9])
  23.539 +              case "${HPUX_REV}" in
  23.540 +                11.[0-9][0-9])
  23.541 +                  if [ -x /usr/bin/getconf ]; then
  23.542 +                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
  23.543 +                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
  23.544 +                    case "${sc_cpu_version}" in
  23.545 +                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
  23.546 +                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
  23.547 +                      532)                      # CPU_PA_RISC2_0
  23.548 +                        case "${sc_kernel_bits}" in
  23.549 +                          32) HP_ARCH="hppa2.0n" ;;
  23.550 +                          64) HP_ARCH="hppa2.0w" ;;
  23.551 +                        esac ;;
  23.552 +                    esac
  23.553 +                  fi ;;
  23.554 +              esac
  23.555 +              if [ "${HP_ARCH}" = "" ]; then
  23.556 +              sed 's/^              //' << EOF >$dummy.c
  23.557 +
  23.558 +              #define _HPUX_SOURCE
  23.559 +              #include <stdlib.h>
  23.560 +              #include <unistd.h>
  23.561 +
  23.562 +              int main ()
  23.563 +              {
  23.564 +              #if defined(_SC_KERNEL_BITS)
  23.565 +                  long bits = sysconf(_SC_KERNEL_BITS);
  23.566 +              #endif
  23.567 +                  long cpu  = sysconf (_SC_CPU_VERSION);
  23.568 +
  23.569 +                  switch (cpu)
  23.570 +              	{
  23.571 +              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
  23.572 +              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
  23.573 +              	case CPU_PA_RISC2_0:
  23.574 +              #if defined(_SC_KERNEL_BITS)
  23.575 +              	    switch (bits)
  23.576 +              		{
  23.577 +              		case 64: puts ("hppa2.0w"); break;
  23.578 +              		case 32: puts ("hppa2.0n"); break;
  23.579 +              		default: puts ("hppa2.0"); break;
  23.580 +              		} break;
  23.581 +              #else  /* !defined(_SC_KERNEL_BITS) */
  23.582 +              	    puts ("hppa2.0"); break;
  23.583 +              #endif
  23.584 +              	default: puts ("hppa1.0"); break;
  23.585 +              	}
  23.586 +                  exit (0);
  23.587 +              }
  23.588 +EOF
  23.589 +	(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
  23.590 +	if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
  23.591 +	rm -f $dummy.c $dummy
  23.592 +	fi ;;
  23.593 +	esac
  23.594 +	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
  23.595 +	exit 0 ;;
  23.596 +    ia64:HP-UX:*:*)
  23.597 +	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
  23.598 +	echo ia64-hp-hpux${HPUX_REV}
  23.599 +	exit 0 ;;
  23.600 +    3050*:HI-UX:*:*)
  23.601 +	sed 's/^	//' << EOF >$dummy.c
  23.602 +	#include <unistd.h>
  23.603 +	int
  23.604 +	main ()
  23.605 +	{
  23.606 +	  long cpu = sysconf (_SC_CPU_VERSION);
  23.607 +	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
  23.608 +	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
  23.609 +	     results, however.  */
  23.610 +	  if (CPU_IS_PA_RISC (cpu))
  23.611 +	    {
  23.612 +	      switch (cpu)
  23.613 +		{
  23.614 +		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
  23.615 +		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
  23.616 +		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
  23.617 +		  default: puts ("hppa-hitachi-hiuxwe2"); break;
  23.618 +		}
  23.619 +	    }
  23.620 +	  else if (CPU_IS_HP_MC68K (cpu))
  23.621 +	    puts ("m68k-hitachi-hiuxwe2");
  23.622 +	  else puts ("unknown-hitachi-hiuxwe2");
  23.623 +	  exit (0);
  23.624 +	}
  23.625 +EOF
  23.626 +	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
  23.627 +	rm -f $dummy.c $dummy
  23.628 +	echo unknown-hitachi-hiuxwe2
  23.629 +	exit 0 ;;
  23.630 +    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
  23.631 +	echo hppa1.1-hp-bsd
  23.632 +	exit 0 ;;
  23.633 +    9000/8??:4.3bsd:*:*)
  23.634 +	echo hppa1.0-hp-bsd
  23.635 +	exit 0 ;;
  23.636 +    *9??*:MPE/iX:*:*)
  23.637 +	echo hppa1.0-hp-mpeix
  23.638 +	exit 0 ;;
  23.639 +    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
  23.640 +	echo hppa1.1-hp-osf
  23.641 +	exit 0 ;;
  23.642 +    hp8??:OSF1:*:*)
  23.643 +	echo hppa1.0-hp-osf
  23.644 +	exit 0 ;;
  23.645 +    i?86:OSF1:*:*)
  23.646 +	if [ -x /usr/sbin/sysversion ] ; then
  23.647 +	    echo ${UNAME_MACHINE}-unknown-osf1mk
  23.648 +	else
  23.649 +	    echo ${UNAME_MACHINE}-unknown-osf1
  23.650 +	fi
  23.651 +	exit 0 ;;
  23.652 +    parisc*:Lites*:*:*)
  23.653 +	echo hppa1.1-hp-lites
  23.654 +	exit 0 ;;
  23.655 +    hppa*:OpenBSD:*:*)
  23.656 +	echo hppa-unknown-openbsd
  23.657 +	exit 0 ;;
  23.658 +    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
  23.659 +	echo c1-convex-bsd
  23.660 +        exit 0 ;;
  23.661 +    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
  23.662 +	if getsysinfo -f scalar_acc
  23.663 +	then echo c32-convex-bsd
  23.664 +	else echo c2-convex-bsd
  23.665 +	fi
  23.666 +        exit 0 ;;
  23.667 +    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
  23.668 +	echo c34-convex-bsd
  23.669 +        exit 0 ;;
  23.670 +    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
  23.671 +	echo c38-convex-bsd
  23.672 +        exit 0 ;;
  23.673 +    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
  23.674 +	echo c4-convex-bsd
  23.675 +        exit 0 ;;
  23.676 +    CRAY*X-MP:*:*:*)
  23.677 +	echo xmp-cray-unicos
  23.678 +        exit 0 ;;
  23.679 +    CRAY*Y-MP:*:*:*)
  23.680 +	echo ymp-cray-unicos${UNAME_RELEASE}
  23.681 +	exit 0 ;;
  23.682 +    CRAY*[A-Z]90:*:*:*)
  23.683 +	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
  23.684 +	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
  23.685 +	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
  23.686 +	exit 0 ;;
  23.687 +    CRAY*TS:*:*:*)
  23.688 +	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  23.689 +	exit 0 ;;
  23.690 +    CRAY*T3D:*:*:*)
  23.691 +	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  23.692 +	exit 0 ;;
  23.693 +    CRAY*T3E:*:*:*)
  23.694 +	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  23.695 +	exit 0 ;;
  23.696 +    CRAY*SV1:*:*:*)
  23.697 +	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  23.698 +	exit 0 ;;
  23.699 +    CRAY-2:*:*:*)
  23.700 +	echo cray2-cray-unicos
  23.701 +        exit 0 ;;
  23.702 +    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
  23.703 +	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
  23.704 +        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
  23.705 +        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
  23.706 +        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
  23.707 +        exit 0 ;;
  23.708 +    hp300:OpenBSD:*:*)
  23.709 +	echo m68k-unknown-openbsd${UNAME_RELEASE}
  23.710 +	exit 0 ;;
  23.711 +    i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
  23.712 +	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
  23.713 +	exit 0 ;;
  23.714 +    sparc*:BSD/OS:*:*)
  23.715 +	echo sparc-unknown-bsdi${UNAME_RELEASE}
  23.716 +	exit 0 ;;
  23.717 +    *:BSD/OS:*:*)
  23.718 +	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
  23.719 +	exit 0 ;;
  23.720 +    *:FreeBSD:*:*)
  23.721 +	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
  23.722 +	exit 0 ;;
  23.723 +    *:OpenBSD:*:*)
  23.724 +	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
  23.725 +	exit 0 ;;
  23.726 +    i*:CYGWIN*:*)
  23.727 +	echo ${UNAME_MACHINE}-pc-cygwin
  23.728 +	exit 0 ;;
  23.729 +    i*:MINGW*:*)
  23.730 +	echo ${UNAME_MACHINE}-pc-mingw32
  23.731 +	exit 0 ;;
  23.732 +    i*:PW*:*)
  23.733 +	echo ${UNAME_MACHINE}-pc-pw32
  23.734 +	exit 0 ;;
  23.735 +    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
  23.736 +	# How do we know it's Interix rather than the generic POSIX subsystem?
  23.737 +	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
  23.738 +	# UNAME_MACHINE based on the output of uname instead of i386?
  23.739 +	echo i386-pc-interix
  23.740 +	exit 0 ;;
  23.741 +    i*:UWIN*:*)
  23.742 +	echo ${UNAME_MACHINE}-pc-uwin
  23.743 +	exit 0 ;;
  23.744 +    p*:CYGWIN*:*)
  23.745 +	echo powerpcle-unknown-cygwin
  23.746 +	exit 0 ;;
  23.747 +    prep*:SunOS:5.*:*)
  23.748 +	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
  23.749 +	exit 0 ;;
  23.750 +    *:GNU:*:*)
  23.751 +	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
  23.752 +	exit 0 ;;
  23.753 +    i*86:Minix:*:*)
  23.754 +	echo ${UNAME_MACHINE}-pc-minix
  23.755 +	exit 0 ;;
  23.756 +    arm*:Linux:*:*)
  23.757 +	echo ${UNAME_MACHINE}-unknown-linux-gnu
  23.758 +	exit 0 ;;
  23.759 +    ia64:Linux:*:*)
  23.760 +	echo ${UNAME_MACHINE}-unknown-linux
  23.761 +	exit 0 ;;
  23.762 +    m68*:Linux:*:*)
  23.763 +	echo ${UNAME_MACHINE}-unknown-linux-gnu
  23.764 +	exit 0 ;;
  23.765 +    mips:Linux:*:*)
  23.766 +	cat >$dummy.c <<EOF
  23.767 +#ifdef __cplusplus
  23.768 +#include <stdio.h>  /* for printf() prototype */
  23.769 +int main (int argc, char *argv[]) {
  23.770 +#else
  23.771 +int main (argc, argv) int argc; char *argv[]; {
  23.772 +#endif
  23.773 +#ifdef __MIPSEB__
  23.774 +  printf ("%s-unknown-linux-gnu\n", argv[1]);
  23.775 +#endif
  23.776 +#ifdef __MIPSEL__
  23.777 +  printf ("%sel-unknown-linux-gnu\n", argv[1]);
  23.778 +#endif
  23.779 +  return 0;
  23.780 +}
  23.781 +EOF
  23.782 +	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
  23.783 +	rm -f $dummy.c $dummy
  23.784 +	;;
  23.785 +    ppc:Linux:*:*)
  23.786 +	# Determine Lib Version
  23.787 +	cat >$dummy.c <<EOF
  23.788 +#include <features.h>
  23.789 +#if defined(__GLIBC__)
  23.790 +extern char __libc_version[];
  23.791 +extern char __libc_release[];
  23.792 +#endif
  23.793 +main(argc, argv)
  23.794 +     int argc;
  23.795 +     char *argv[];
  23.796 +{
  23.797 +#if defined(__GLIBC__)
  23.798 +  printf("%s %s\n", __libc_version, __libc_release);
  23.799 +#else
  23.800 +  printf("unknown\n");
  23.801 +#endif
  23.802 +  return 0;
  23.803 +}
  23.804 +EOF
  23.805 +	LIBC=""
  23.806 +	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
  23.807 +	if test "$?" = 0 ; then
  23.808 +		./$dummy | grep 1\.99 > /dev/null
  23.809 +		if test "$?" = 0 ; then LIBC="libc1" ; fi
  23.810 +	fi
  23.811 +	rm -f $dummy.c $dummy
  23.812 +	echo powerpc-unknown-linux-gnu${LIBC}
  23.813 +	exit 0 ;;
  23.814 +    alpha:Linux:*:*)
  23.815 +	cat <<EOF >$dummy.s
  23.816 +	  .data
  23.817 +	  \$Lformat:
  23.818 +		.byte 37,100,45,37,120,10,0	# "%d-%x\n"
  23.819 +	   .text
  23.820 +		.globl main
  23.821 +		.align 4
  23.822 +		.ent main
  23.823 +	    main:
  23.824 +		.frame \$30,16,\$26,0
  23.825 +		ldgp \$29,0(\$27)
  23.826 +		.prologue 1
  23.827 +		.long 0x47e03d80 # implver \$0
  23.828 +		lda \$2,-1
  23.829 +		.long 0x47e20c21 # amask \$2,\$1
  23.830 +		lda \$16,\$Lformat
  23.831 +		mov \$0,\$17
  23.832 +		not \$1,\$18
  23.833 +		jsr \$26,printf
  23.834 +		ldgp \$29,0(\$26)
  23.835 +		mov 0,\$16
  23.836 +		jsr \$26,exit
  23.837 +		.end main
  23.838 +EOF
  23.839 +	LIBC=""
  23.840 +	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
  23.841 +	if test "$?" = 0 ; then
  23.842 +		case `./$dummy` in
  23.843 +		0-0)	UNAME_MACHINE="alpha" ;;
  23.844 +		1-0)	UNAME_MACHINE="alphaev5" ;;
  23.845 +		1-1)    UNAME_MACHINE="alphaev56" ;;
  23.846 +		1-101)	UNAME_MACHINE="alphapca56" ;;
  23.847 +		2-303)	UNAME_MACHINE="alphaev6" ;;
  23.848 +		2-307)	UNAME_MACHINE="alphaev67" ;;
  23.849 +		esac
  23.850 +		objdump --private-headers $dummy | \
  23.851 +		  grep ld.so.1 > /dev/null
  23.852 +		if test "$?" = 0 ; then
  23.853 +			LIBC="libc1"
  23.854 +		fi
  23.855 +	fi
  23.856 +	rm -f $dummy.s $dummy
  23.857 +	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
  23.858 +	exit 0 ;;
  23.859 +    parisc:Linux:*:* | hppa:Linux:*:*)
  23.860 +	# Look for CPU level
  23.861 +	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
  23.862 +	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
  23.863 +	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
  23.864 +	  *)    echo hppa-unknown-linux-gnu ;;
  23.865 +	esac
  23.866 +	exit 0 ;;
  23.867 +    parisc64:Linux:*:* | hppa64:Linux:*:*)
  23.868 +	echo hppa64-unknown-linux-gnu
  23.869 +	exit 0 ;;
  23.870 +    s390:Linux:*:* | s390x:Linux:*:*)
  23.871 +	echo ${UNAME_MACHINE}-ibm-linux
  23.872 +	exit 0 ;;
  23.873 +    sh*:Linux:*:*)
  23.874 +	echo ${UNAME_MACHINE}-unknown-linux-gnu
  23.875 +	exit 0 ;;
  23.876 +    sparc:Linux:*:* | sparc64:Linux:*:*)
  23.877 +	echo ${UNAME_MACHINE}-unknown-linux-gnu
  23.878 +	exit 0 ;;
  23.879 +    x86_64:Linux:*:*)
  23.880 +	echo x86_64-unknown-linux-gnu
  23.881 +	exit 0 ;;
  23.882 +    i?86:Linux:*:*)
  23.883 +	# The BFD linker knows what the default object file format is, so
  23.884 +	# first see if it will tell us. cd to the root directory to prevent
  23.885 +	# problems with other programs or directories called `ld' in the path.
  23.886 +	ld_supported_emulations=`cd /; ld --help 2>&1 \
  23.887 +			 | sed -ne '/supported emulations:/!d
  23.888 +				    s/[ 	][ 	]*/ /g
  23.889 +				    s/.*supported emulations: *//
  23.890 +				    s/ .*//
  23.891 +				    p'`
  23.892 +        case "$ld_supported_emulations" in
  23.893 +	  i?86linux)
  23.894 +		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
  23.895 +		exit 0
  23.896 +		;;
  23.897 +	  elf_i?86)
  23.898 +		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
  23.899 +		;;
  23.900 +	  i?86coff)
  23.901 +		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
  23.902 +		exit 0
  23.903 +		;;
  23.904 +	esac
  23.905 +	# Either a pre-BFD a.out linker (linux-gnuoldld)
  23.906 +	# or one that does not give us useful --help.
  23.907 +	# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
  23.908 +	# If ld does not provide *any* "supported emulations:"
  23.909 +	# that means it is gnuoldld.
  23.910 +	test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
  23.911 +	case "${UNAME_MACHINE}" in
  23.912 +	i?86)
  23.913 +	  VENDOR=pc;
  23.914 +	  ;;
  23.915 +	*)
  23.916 +	  VENDOR=unknown;
  23.917 +	  ;;
  23.918 +	esac
  23.919 +	# Determine whether the default compiler is a.out or elf
  23.920 +	cat >$dummy.c <<EOF
  23.921 +#include <features.h>
  23.922 +#ifdef __cplusplus
  23.923 +#include <stdio.h>  /* for printf() prototype */
  23.924 +	int main (int argc, char *argv[]) {
  23.925 +#else
  23.926 +	int main (argc, argv) int argc; char *argv[]; {
  23.927 +#endif
  23.928 +#ifdef __ELF__
  23.929 +# ifdef __GLIBC__
  23.930 +#  if __GLIBC__ >= 2
  23.931 +    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
  23.932 +#  else
  23.933 +    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
  23.934 +#  endif
  23.935 +# else
  23.936 +   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
  23.937 +# endif
  23.938 +#else
  23.939 +  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
  23.940 +#endif
  23.941 +  return 0;
  23.942 +}
  23.943 +EOF
  23.944 +	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
  23.945 +	rm -f $dummy.c $dummy
  23.946 +	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
  23.947 +	;;
  23.948 +# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
  23.949 +# are messed up and put the nodename in both sysname and nodename.
  23.950 +    i?86:DYNIX/ptx:4*:*)
  23.951 +	echo i386-sequent-sysv4
  23.952 +	exit 0 ;;
  23.953 +    i?86:UNIX_SV:4.2MP:2.*)
  23.954 +        # Unixware is an offshoot of SVR4, but it has its own version
  23.955 +        # number series starting with 2...
  23.956 +        # I am not positive that other SVR4 systems won't match this,
  23.957 +	# I just have to hope.  -- rms.
  23.958 +        # Use sysv4.2uw... so that sysv4* matches it.
  23.959 +	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
  23.960 +	exit 0 ;;
  23.961 +    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
  23.962 +	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
  23.963 +	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
  23.964 +		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
  23.965 +	else
  23.966 +		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
  23.967 +	fi
  23.968 +	exit 0 ;;
  23.969 +    i?86:*:5:7*)
  23.970 +        # Fixed at (any) Pentium or better
  23.971 +        UNAME_MACHINE=i586
  23.972 +        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
  23.973 +	    echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
  23.974 +	else
  23.975 +	    echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
  23.976 +	fi
  23.977 +	exit 0 ;;
  23.978 +    i?86:*:3.2:*)
  23.979 +	if test -f /usr/options/cb.name; then
  23.980 +		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
  23.981 +		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
  23.982 +	elif /bin/uname -X 2>/dev/null >/dev/null ; then
  23.983 +		UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
  23.984 +		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
  23.985 +		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
  23.986 +			&& UNAME_MACHINE=i586
  23.987 +		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
  23.988 +			&& UNAME_MACHINE=i686
  23.989 +		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
  23.990 +			&& UNAME_MACHINE=i686
  23.991 +		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
  23.992 +	else
  23.993 +		echo ${UNAME_MACHINE}-pc-sysv32
  23.994 +	fi
  23.995 +	exit 0 ;;
  23.996 +    i?86:*DOS:*:*)
  23.997 +	echo ${UNAME_MACHINE}-pc-msdosdjgpp
  23.998 +	exit 0 ;;
  23.999 +    pc:*:*:*)
 23.1000 +	# Left here for compatibility:
 23.1001 +        # uname -m prints for DJGPP always 'pc', but it prints nothing about
 23.1002 +        # the processor, so we play safe by assuming i386.
 23.1003 +	echo i386-pc-msdosdjgpp
 23.1004 +        exit 0 ;;
 23.1005 +    Intel:Mach:3*:*)
 23.1006 +	echo i386-pc-mach3
 23.1007 +	exit 0 ;;
 23.1008 +    paragon:*:*:*)
 23.1009 +	echo i860-intel-osf1
 23.1010 +	exit 0 ;;
 23.1011 +    i860:*:4.*:*) # i860-SVR4
 23.1012 +	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
 23.1013 +	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
 23.1014 +	else # Add other i860-SVR4 vendors below as they are discovered.
 23.1015 +	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
 23.1016 +	fi
 23.1017 +	exit 0 ;;
 23.1018 +    mini*:CTIX:SYS*5:*)
 23.1019 +	# "miniframe"
 23.1020 +	echo m68010-convergent-sysv
 23.1021 +	exit 0 ;;
 23.1022 +    M68*:*:R3V[567]*:*)
 23.1023 +	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
 23.1024 +    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
 23.1025 +	OS_REL=''
 23.1026 +	test -r /etc/.relid \
 23.1027 +	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 23.1028 +	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
 23.1029 +	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
 23.1030 +	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
 23.1031 +	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
 23.1032 +    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
 23.1033 +        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
 23.1034 +          && echo i486-ncr-sysv4 && exit 0 ;;
 23.1035 +    m68*:LynxOS:2.*:*)
 23.1036 +	echo m68k-unknown-lynxos${UNAME_RELEASE}
 23.1037 +	exit 0 ;;
 23.1038 +    mc68030:UNIX_System_V:4.*:*)
 23.1039 +	echo m68k-atari-sysv4
 23.1040 +	exit 0 ;;
 23.1041 +    i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
 23.1042 +	echo i386-unknown-lynxos${UNAME_RELEASE}
 23.1043 +	exit 0 ;;
 23.1044 +    TSUNAMI:LynxOS:2.*:*)
 23.1045 +	echo sparc-unknown-lynxos${UNAME_RELEASE}
 23.1046 +	exit 0 ;;
 23.1047 +    rs6000:LynxOS:2.*:*)
 23.1048 +	echo rs6000-unknown-lynxos${UNAME_RELEASE}
 23.1049 +	exit 0 ;;
 23.1050 +    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:*)
 23.1051 +	echo powerpc-unknown-lynxos${UNAME_RELEASE}
 23.1052 +	exit 0 ;;
 23.1053 +    SM[BE]S:UNIX_SV:*:*)
 23.1054 +	echo mips-dde-sysv${UNAME_RELEASE}
 23.1055 +	exit 0 ;;
 23.1056 +    RM*:ReliantUNIX-*:*:*)
 23.1057 +	echo mips-sni-sysv4
 23.1058 +	exit 0 ;;
 23.1059 +    RM*:SINIX-*:*:*)
 23.1060 +	echo mips-sni-sysv4
 23.1061 +	exit 0 ;;
 23.1062 +    *:SINIX-*:*:*)
 23.1063 +	if uname -p 2>/dev/null >/dev/null ; then
 23.1064 +		UNAME_MACHINE=`(uname -p) 2>/dev/null`
 23.1065 +		echo ${UNAME_MACHINE}-sni-sysv4
 23.1066 +	else
 23.1067 +		echo ns32k-sni-sysv
 23.1068 +	fi
 23.1069 +	exit 0 ;;
 23.1070 +    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
 23.1071 +                           # says <Richard.M.Bartel@ccMail.Census.GOV>
 23.1072 +        echo i586-unisys-sysv4
 23.1073 +        exit 0 ;;
 23.1074 +    *:UNIX_System_V:4*:FTX*)
 23.1075 +	# From Gerald Hewes <hewes@openmarket.com>.
 23.1076 +	# How about differentiating between stratus architectures? -djm
 23.1077 +	echo hppa1.1-stratus-sysv4
 23.1078 +	exit 0 ;;
 23.1079 +    *:*:*:FTX*)
 23.1080 +	# From seanf@swdc.stratus.com.
 23.1081 +	echo i860-stratus-sysv4
 23.1082 +	exit 0 ;;
 23.1083 +    mc68*:A/UX:*:*)
 23.1084 +	echo m68k-apple-aux${UNAME_RELEASE}
 23.1085 +	exit 0 ;;
 23.1086 +    news*:NEWS-OS:6*:*)
 23.1087 +	echo mips-sony-newsos6
 23.1088 +	exit 0 ;;
 23.1089 +    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
 23.1090 +	if [ -d /usr/nec ]; then
 23.1091 +	        echo mips-nec-sysv${UNAME_RELEASE}
 23.1092 +	else
 23.1093 +	        echo mips-unknown-sysv${UNAME_RELEASE}
 23.1094 +	fi
 23.1095 +        exit 0 ;;
 23.1096 +    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
 23.1097 +	echo powerpc-be-beos
 23.1098 +	exit 0 ;;
 23.1099 +    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
 23.1100 +	echo powerpc-apple-beos
 23.1101 +	exit 0 ;;
 23.1102 +    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
 23.1103 +	echo i586-pc-beos
 23.1104 +	exit 0 ;;
 23.1105 +    SX-4:SUPER-UX:*:*)
 23.1106 +	echo sx4-nec-superux${UNAME_RELEASE}
 23.1107 +	exit 0 ;;
 23.1108 +    SX-5:SUPER-UX:*:*)
 23.1109 +	echo sx5-nec-superux${UNAME_RELEASE}
 23.1110 +	exit 0 ;;
 23.1111 +    Power*:Rhapsody:*:*)
 23.1112 +	echo powerpc-apple-rhapsody${UNAME_RELEASE}
 23.1113 +	exit 0 ;;
 23.1114 +    *:Rhapsody:*:*)
 23.1115 +	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
 23.1116 +	exit 0 ;;
 23.1117 +    *:Darwin:*:*)
 23.1118 +	echo `uname -p`-apple-darwin${UNAME_RELEASE}
 23.1119 +	exit 0 ;;
 23.1120 +    *:procnto*:*:* | *:QNX:[0123456789]*:*)
 23.1121 +	if test "${UNAME_MACHINE}" = "x86pc"; then
 23.1122 +		UNAME_MACHINE=pc
 23.1123 +	fi
 23.1124 +	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
 23.1125 +	exit 0 ;;
 23.1126 +    *:QNX:*:4*)
 23.1127 +	echo i386-pc-qnx
 23.1128 +	exit 0 ;;
 23.1129 +    NSR-[KW]:NONSTOP_KERNEL:*:*)
 23.1130 +	echo nsr-tandem-nsk${UNAME_RELEASE}
 23.1131 +	exit 0 ;;
 23.1132 +    *:NonStop-UX:*:*)
 23.1133 +	echo mips-compaq-nonstopux
 23.1134 +	exit 0 ;;
 23.1135 +    BS2000:POSIX*:*:*)
 23.1136 +	echo bs2000-siemens-sysv
 23.1137 +	exit 0 ;;
 23.1138 +    DS/*:UNIX_System_V:*:*)
 23.1139 +	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
 23.1140 +	exit 0 ;;
 23.1141 +    *:Plan9:*:*)
 23.1142 +	# "uname -m" is not consistent, so use $cputype instead. 386
 23.1143 +	# is converted to i386 for consistency with other x86
 23.1144 +	# operating systems.
 23.1145 +	if test "$cputype" = "386"; then
 23.1146 +	    UNAME_MACHINE=i386
 23.1147 +	else
 23.1148 +	    UNAME_MACHINE="$cputype"
 23.1149 +	fi
 23.1150 +	echo ${UNAME_MACHINE}-unknown-plan9
 23.1151 +	exit 0 ;;
 23.1152 +    i?86:OS/2:*:*)
 23.1153 +	# If we were able to find `uname', then EMX Unix compatibility
 23.1154 +	# is probably installed.
 23.1155 +	echo ${UNAME_MACHINE}-pc-os2-emx
 23.1156 +	exit 0 ;;
 23.1157 +    *:TOPS-10:*:*)
 23.1158 +	echo pdp10-unknown-tops10
 23.1159 +	exit 0 ;;
 23.1160 +    *:TENEX:*:*)
 23.1161 +	echo pdp10-unknown-tenex
 23.1162 +	exit 0 ;;
 23.1163 +    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
 23.1164 +	echo pdp10-dec-tops20
 23.1165 +	exit 0 ;;
 23.1166 +    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
 23.1167 +	echo pdp10-xkl-tops20
 23.1168 +	exit 0 ;;
 23.1169 +    *:TOPS-20:*:*)
 23.1170 +	echo pdp10-unknown-tops20
 23.1171 +	exit 0 ;;
 23.1172 +    *:ITS:*:*)
 23.1173 +	echo pdp10-unknown-its
 23.1174 +	exit 0 ;;
 23.1175 +esac
 23.1176 +
 23.1177 +#echo '(No uname command or uname output not recognized.)' 1>&2
 23.1178 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
 23.1179 +
 23.1180 +cat >$dummy.c <<EOF
 23.1181 +#ifdef _SEQUENT_
 23.1182 +# include <sys/types.h>
 23.1183 +# include <sys/utsname.h>
 23.1184 +#endif
 23.1185 +main ()
 23.1186 +{
 23.1187 +#if defined (sony)
 23.1188 +#if defined (MIPSEB)
 23.1189 +  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
 23.1190 +     I don't know....  */
 23.1191 +  printf ("mips-sony-bsd\n"); exit (0);
 23.1192 +#else
 23.1193 +#include <sys/param.h>
 23.1194 +  printf ("m68k-sony-newsos%s\n",
 23.1195 +#ifdef NEWSOS4
 23.1196 +          "4"
 23.1197 +#else
 23.1198 +	  ""
 23.1199 +#endif
 23.1200 +         ); exit (0);
 23.1201 +#endif
 23.1202 +#endif
 23.1203 +
 23.1204 +#if defined (__arm) && defined (__acorn) && defined (__unix)
 23.1205 +  printf ("arm-acorn-riscix"); exit (0);
 23.1206 +#endif
 23.1207 +
 23.1208 +#if defined (hp300) && !defined (hpux)
 23.1209 +  printf ("m68k-hp-bsd\n"); exit (0);
 23.1210 +#endif
 23.1211 +
 23.1212 +#if defined (NeXT)
 23.1213 +#if !defined (__ARCHITECTURE__)
 23.1214 +#define __ARCHITECTURE__ "m68k"
 23.1215 +#endif
 23.1216 +  int version;
 23.1217 +  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
 23.1218 +  if (version < 4)
 23.1219 +    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
 23.1220 +  else
 23.1221 +    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
 23.1222 +  exit (0);
 23.1223 +#endif
 23.1224 +
 23.1225 +#if defined (MULTIMAX) || defined (n16)
 23.1226 +#if defined (UMAXV)
 23.1227 +  printf ("ns32k-encore-sysv\n"); exit (0);
 23.1228 +#else
 23.1229 +#if defined (CMU)
 23.1230 +  printf ("ns32k-encore-mach\n"); exit (0);
 23.1231 +#else
 23.1232 +  printf ("ns32k-encore-bsd\n"); exit (0);
 23.1233 +#endif
 23.1234 +#endif
 23.1235 +#endif
 23.1236 +
 23.1237 +#if defined (__386BSD__)
 23.1238 +  printf ("i386-pc-bsd\n"); exit (0);
 23.1239 +#endif
 23.1240 +
 23.1241 +#if defined (sequent)
 23.1242 +#if defined (i386)
 23.1243 +  printf ("i386-sequent-dynix\n"); exit (0);
 23.1244 +#endif
 23.1245 +#if defined (ns32000)
 23.1246 +  printf ("ns32k-sequent-dynix\n"); exit (0);
 23.1247 +#endif
 23.1248 +#endif
 23.1249 +
 23.1250 +#if defined (_SEQUENT_)
 23.1251 +    struct utsname un;
 23.1252 +
 23.1253 +    uname(&un);
 23.1254 +
 23.1255 +    if (strncmp(un.version, "V2", 2) == 0) {
 23.1256 +	printf ("i386-sequent-ptx2\n"); exit (0);
 23.1257 +    }
 23.1258 +    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
 23.1259 +	printf ("i386-sequent-ptx1\n"); exit (0);
 23.1260 +    }
 23.1261 +    printf ("i386-sequent-ptx\n"); exit (0);
 23.1262 +
 23.1263 +#endif
 23.1264 +
 23.1265 +#if defined (vax)
 23.1266 +# if !defined (ultrix)
 23.1267 +#  include <sys/param.h>
 23.1268 +#  if defined (BSD)
 23.1269 +#   if BSD == 43
 23.1270 +      printf ("vax-dec-bsd4.3\n"); exit (0);
 23.1271 +#   else
 23.1272 +#    if BSD == 199006
 23.1273 +      printf ("vax-dec-bsd4.3reno\n"); exit (0);
 23.1274 +#    else
 23.1275 +      printf ("vax-dec-bsd\n"); exit (0);
 23.1276 +#    endif
 23.1277 +#   endif
 23.1278 +#  else
 23.1279 +    printf ("vax-dec-bsd\n"); exit (0);
 23.1280 +#  endif
 23.1281 +# else
 23.1282 +    printf ("vax-dec-ultrix\n"); exit (0);
 23.1283 +# endif
 23.1284 +#endif
 23.1285 +
 23.1286 +#if defined (alliant) && defined (i860)
 23.1287 +  printf ("i860-alliant-bsd\n"); exit (0);
 23.1288 +#endif
 23.1289 +
 23.1290 +  exit (1);
 23.1291 +}
 23.1292 +EOF
 23.1293 +
 23.1294 +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
 23.1295 +rm -f $dummy.c $dummy
 23.1296 +
 23.1297 +# Apollos put the system type in the environment.
 23.1298 +
 23.1299 +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
 23.1300 +
 23.1301 +# Convex versions that predate uname can use getsysinfo(1)
 23.1302 +
 23.1303 +if [ -x /usr/convex/getsysinfo ]
 23.1304 +then
 23.1305 +    case `getsysinfo -f cpu_type` in
 23.1306 +    c1*)
 23.1307 +	echo c1-convex-bsd
 23.1308 +	exit 0 ;;
 23.1309 +    c2*)
 23.1310 +	if getsysinfo -f scalar_acc
 23.1311 +	then echo c32-convex-bsd
 23.1312 +	else echo c2-convex-bsd
 23.1313 +	fi
 23.1314 +	exit 0 ;;
 23.1315 +    c34*)
 23.1316 +	echo c34-convex-bsd
 23.1317 +	exit 0 ;;
 23.1318 +    c38*)
 23.1319 +	echo c38-convex-bsd
 23.1320 +	exit 0 ;;
 23.1321 +    c4*)
 23.1322 +	echo c4-convex-bsd
 23.1323 +	exit 0 ;;
 23.1324 +    esac
 23.1325 +fi
 23.1326 +
 23.1327 +cat >&2 <<EOF
 23.1328 +$0: unable to guess system type
 23.1329 +
 23.1330 +This script, last modified $timestamp, has failed to recognize
 23.1331 +the operating system you are using. It is advised that you
 23.1332 +download the most up to date version of the config scripts from
 23.1333 +
 23.1334 +    ftp://ftp.gnu.org/pub/gnu/config/
 23.1335 +
 23.1336 +If the version you run ($0) is already up to date, please
 23.1337 +send the following data and any information you think might be
 23.1338 +pertinent to <config-patches@gnu.org> in order to provide the needed
 23.1339 +information to handle your system.
 23.1340 +
 23.1341 +config.guess timestamp = $timestamp
 23.1342 +
 23.1343 +uname -m = `(uname -m) 2>/dev/null || echo unknown`
 23.1344 +uname -r = `(uname -r) 2>/dev/null || echo unknown`
 23.1345 +uname -s = `(uname -s) 2>/dev/null || echo unknown`
 23.1346 +uname -v = `(uname -v) 2>/dev/null || echo unknown`
 23.1347 +
 23.1348 +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
 23.1349 +/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
 23.1350 +
 23.1351 +hostinfo               = `(hostinfo) 2>/dev/null`
 23.1352 +/bin/universe          = `(/bin/universe) 2>/dev/null`
 23.1353 +/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
 23.1354 +/bin/arch              = `(/bin/arch) 2>/dev/null`
 23.1355 +/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
 23.1356 +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
 23.1357 +
 23.1358 +UNAME_MACHINE = ${UNAME_MACHINE}
 23.1359 +UNAME_RELEASE = ${UNAME_RELEASE}
 23.1360 +UNAME_SYSTEM  = ${UNAME_SYSTEM}
 23.1361 +UNAME_VERSION = ${UNAME_VERSION}
 23.1362 +EOF
 23.1363 +
 23.1364 +exit 1
 23.1365 +
 23.1366 +# Local variables:
 23.1367 +# eval: (add-hook 'write-file-hooks 'time-stamp)
 23.1368 +# time-stamp-start: "timestamp='"
 23.1369 +# time-stamp-format: "%:y-%02m-%02d"
 23.1370 +# time-stamp-end: "'"
 23.1371 +# End:
    24.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.2 +++ b/config.sub	Thu Apr 26 16:45:43 2001 +0000
    24.3 @@ -0,0 +1,1357 @@
    24.4 +#! /bin/sh
    24.5 +# Configuration validation subroutine script.
    24.6 +#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
    24.7 +#   Free Software Foundation, Inc.
    24.8 +
    24.9 +timestamp='2001-03-19'
   24.10 +
   24.11 +# This file is (in principle) common to ALL GNU software.
   24.12 +# The presence of a machine in this file suggests that SOME GNU software
   24.13 +# can handle that machine.  It does not imply ALL GNU software can.
   24.14 +#
   24.15 +# This file is free software; you can redistribute it and/or modify
   24.16 +# it under the terms of the GNU General Public License as published by
   24.17 +# the Free Software Foundation; either version 2 of the License, or
   24.18 +# (at your option) any later version.
   24.19 +#
   24.20 +# This program is distributed in the hope that it will be useful,
   24.21 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
   24.22 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   24.23 +# GNU General Public License for more details.
   24.24 +#
   24.25 +# You should have received a copy of the GNU General Public License
   24.26 +# along with this program; if not, write to the Free Software
   24.27 +# Foundation, Inc., 59 Temple Place - Suite 330,
   24.28 +# Boston, MA 02111-1307, USA.
   24.29 +
   24.30 +# As a special exception to the GNU General Public License, if you
   24.31 +# distribute this file as part of a program that contains a
   24.32 +# configuration script generated by Autoconf, you may include it under
   24.33 +# the same distribution terms that you use for the rest of that program.
   24.34 +
   24.35 +# Please send patches to <config-patches@gnu.org>.
   24.36 +#
   24.37 +# Configuration subroutine to validate and canonicalize a configuration type.
   24.38 +# Supply the specified configuration type as an argument.
   24.39 +# If it is invalid, we print an error message on stderr and exit with code 1.
   24.40 +# Otherwise, we print the canonical config type on stdout and succeed.
   24.41 +
   24.42 +# This file is supposed to be the same for all GNU packages
   24.43 +# and recognize all the CPU types, system types and aliases
   24.44 +# that are meaningful with *any* GNU software.
   24.45 +# Each package is responsible for reporting which valid configurations
   24.46 +# it does not support.  The user should be able to distinguish
   24.47 +# a failure to support a valid configuration from a meaningless
   24.48 +# configuration.
   24.49 +
   24.50 +# The goal of this file is to map all the various variations of a given
   24.51 +# machine specification into a single specification in the form:
   24.52 +#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
   24.53 +# or in some cases, the newer four-part