HOW TO BUILD SDL_SOUND 3.x ...

The 1.x branch of SDL_sound was pretty complicated to build, needing you to
hunt down external libraries and poke through various incompatible project
files. We've simplified this as much as possible for SDL3_sound. Now there are
no external libraries (everything is built internally, either with source
code we wrote or public domain code included with this project, and CMake
manages building.

The only external library SDL3_sound needs is SDL3. We assume you are using
SDL3 already if you've come looking for this library. It can be found at
https://www.libsdl.org/

(In the current version, Timidity source code is included to play MIDI
files, but is disabled by default, as that code is dual-licensed under
the 'Perl Artistic License' or 'GNU Lesser General Public License': See
details in src/timidity/COPYING* . You can still enable Timidity in the
CMake project by setting the SDLSOUND_DECODER_MIDI option to TRUE.)


THE USUAL WAY (using CMake)...

To build SDL_sound, you'll need to install CMake ( https://cmake.org/ ) and
point it at the CMakeLists.txt file in SDL_sound's root directory. How you
do this varies by platform, but generally you either get it right from
cmake.org or from your platform's usual means of software installation.

Generally the defaults are fine, which are to build everything it can. If
you _really_ want to disable some piece of SDL_sound, like the .voc decoder,
you can use CMake to toggle that option.

CMake will generate project files for whatever compiler you happen to have.


WAIT THAT'S STILL TOO COMPLEX...

Don't want to use CMake? Everything in SDL_sound (except the Timidity code) is
either zlib-licensed or public domain, which means you can just copy it into
your own project and compile it directly, instead of messing with it as an
external library. There are no restrictions on doing this, even if you're
writing commercial, closed-source software.

This assumes you are already using SDL3, which SDL_sound relies on. If
not, you'll need to make sure SDL's header's are available and we can link
against the SDL library.

To do this:
- Add everything in the src directory to your project.
- Make sure your app can see SDL_sound.h to #include it.
- That's all. You don't have to #define anything, etc.


PLAYSOUND...

Is an optional test application. If you can compile and link
examples/playsound_simple.c, then you know everything is set up correctly.
This is a separate program that uses SDL_sound, and shouldn't be compiled
into the library itself.


OTHER NOTES...

Questions? Problems? Patches?
Talk to us at https://github.com/icculus/SDL_sound/

--ryan. (icculus@icculus.org)

