
The latest development version of SDL is available via Mercurial.
Mercurial allows you to get up-to-the-minute fixes and enhancements;
as a developer works on a source tree, you can use "hg" to mirror that
source tree instead of waiting for an official release. Please look
at the Mercurial website ( http://mercurial.selenic.com/ ) for more
information on using hg, where you can also download software for
Mac OS X, Windows, and Unix systems.

  hg clone http://hg.libsdl.org/SDL

If you are building SDL with an IDE, you will need to copy the file
include/SDL_config.h.default to include/SDL_config.h before building.

If you are building SDL via configure, you will need to run autogen.sh
before running configure.

There is a web interface to the subversion repository at:
	http://hg.libsdl.org/SDL/

There is an RSS feed available at that URL, for those that want to
track commits in real time.

