aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
Commit message (Collapse)AuthorAgeFilesLines
* Don't try to use internal visibilityChris Robinson2014-07-261-8/+3
| | | | | A number of functions are passed as callbacks to external libraries, which internal visiiblity doesn't allow.
* Support C11 atomicsChris Robinson2014-07-231-0/+10
|
* Require SSE for SSE2, and SSE2 for SSE4.1Chris Robinson2014-06-071-2/+2
|
* Add SSE2 and SSE4.1 linear resamplersTimothy Arceri2014-06-061-10/+56
| | | | | Currently the only way SSE 4.1 is detected is by using __get_cpuid, i.e. with GCC. Windows' IsProcessorFeaturePresent does not report SSE4.1 capabilities.
* Add an ffmpeg-based example playerChris Robinson2014-06-021-1/+43
| | | | | | This example shows proper timing and A/V synchronization with an OpenAL stream. Requires the in-progress AL_SOFTX_source_length extension to avoid manually keeping track of the buffer queue length.
* Update the examples to use SDL2Chris Robinson2014-05-231-13/+17
| | | | | | This should make it easier to build the examples on 64-bit, where there are no premade dev libs for SDL1 on 64-bit mingw. FindSDL_sound.cmake has been updated to accept SDL or SDL2.
* Don't try to use the non-standard alloca.hChris Robinson2014-05-221-8/+1
| | | | | Variable-length arrays are C99 standard and are preferred over alloca. The only compiler that needs alloca (MSVC) has it in malloc.h.
* Build a common static lib for reusable codeChris Robinson2014-05-071-3/+15
|
* Move RWLock and UIntMap implementations to commonChris Robinson2014-05-071-0/+2
| | | | This should make the code in common completely self-reliant.
* Check for C99 _Bool supportChris Robinson2014-05-061-0/+11
|
* Move atomic method definitions to a separate common sourceChris Robinson2014-05-061-1/+2
|
* Move threads.c to a separate source dirChris Robinson2014-05-061-2/+3
| | | | | This will eventually serve to build a static lib of common wrapper methods, such as threads, mutexes, atomics, etc.
* Test _Alignas with 16 instead of 4Chris Robinson2014-05-051-1/+1
|
* C11's alignas is also sufficient for SSE aligningChris Robinson2014-05-051-7/+9
|
* Use a backup in case pthread_mutex_timedlock isn't availableChris Robinson2014-05-011-0/+2
|
* Simplify the cmake backend handling a bitChris Robinson2014-04-221-31/+24
|
* Fix adding backend include directoriesChris Robinson2014-04-221-16/+48
|
* Only declare backend options when the backend is availableChris Robinson2014-04-201-22/+20
|
* Don't link with libwinmm unless WinMM is enabledChris Robinson2014-04-191-11/+8
| | | | | We don't use timeGetTime for timing anymore, so winmm only needs to be linked when the winmm backend is enabled.
* Use a find module to look for DirectSoundChris Robinson2014-04-191-28/+27
|
* Use find cmake modules for more backendsChris Robinson2014-04-191-79/+76
|
* Use C11 alignas when availableChris Robinson2014-04-191-0/+10
|
* Dont bother trying _allocaChris Robinson2014-04-191-6/+1
| | | | | We prefer C99 variable-length arrays, and other systems (including MSVC9) don't have an issue with alloca.
* Set -D_GNU_SOURCE=1 -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE=700 earlierChris Robinson2014-04-191-4/+5
|
* Use FindALSA.cmake to look for ALSAChris Robinson2014-04-191-15/+14
| | | | Also, only provide the ALSA_BACKEND_ALSA option if it's available
* Only define SSE, Neon, and FluidSynth options if they're availableChris Robinson2014-04-181-17/+15
|
* Check explicitly for pthread_mutexattr_setkind_np before useChris Robinson2014-04-171-0/+3
|
* Bump _WIN32_WINNT to 0x0502 (XP SP2) for GetThreadIdChris Robinson2014-04-161-4/+4
|
* Use C11's static_assert when availableChris Robinson2014-04-071-0/+8
|
* Use FIND_LIBRARY to look for the CoreAudio frameworkChris Robinson2014-04-051-3/+6
|
* Check for ftw and _wfindfirstChris Robinson2014-03-271-0/+8
|
* Use C99 VLA instead of alloca when availableChris Robinson2014-03-251-11/+26
|
* Don't try to use __restrict as a replacement for restrictChris Robinson2014-03-231-13/+2
| | | | | The compiler it's intended for, MSVC, can't use it anyway because of problems it causes with __declspec(restrict).
* Add a stub 'soft' MIDI synth handlerChris Robinson2014-03-221-0/+1
| | | | | Eventually this one will be used to handle MIDI internally, using our own mixers and resamplers.
* Move the sample conversion routines to a separate fileChris Robinson2014-03-051-0/+1
|
* Use alloca for temp space decoding/encoding IMA4 blocksChris Robinson2014-03-031-0/+14
|
* Move the default hrtf table to an external fileChris Robinson2014-02-231-0/+10
|
* Include sys/sysconf.h if available for sysconf()Chris Robinson2014-01-181-0/+1
|
* Add alLoadSoundfontSOFT to load a soundfont via callbackChris Robinson2013-12-281-0/+1
| | | | | | | | | | | | | | | | | | | | | Some hefty caveats: This function is not thread-safe. In particular, the current context affecting the thread must not be changed, and the provided soundfont must not be altered while the function is executing. Ideally, this will be fixed. Error handling is poor. Some RIFF structure errors may not be caught (e.g. sub- chunks with sizes greater than the parent chunk allows for), and generated AL errors are ignored, possibly leading to resource leaks in certain situations. These should be fixed in time. There is minimal error checking on the provided soundfont ID. It does not ensure a valid ID has been provided, nor does it ensure the provided soundfont can be modified. These short-comings should be fixed eventually. Proper cleanup is the responsibility of the caller. The caller must get the preset objects from the soundfont before deleting it, and the fontsound objects from each preset before deleting them, to make sure all resources are properly deleted.
* Remove the zone, sample, and instrument object typesChris Robinson2013-12-251-1/+0
|
* Add a new fontsound object typeChris Robinson2013-12-251-0/+1
| | | | This is basically a combined preset and intrument zone with sample header.
* Allow creating instrument objectsChris Robinson2013-12-191-0/+1
|
* Move the soundfont and preset extension functions to separate sourcesChris Robinson2013-12-191-0/+2
|
* Move the base MidiSynth to a separate fileChris Robinson2013-12-171-0/+1
|
* Move the dummy MIDI handler to a separate fileChris Robinson2013-12-171-0/+1
|
* Move FluidSynth to its own fileChris Robinson2013-12-171-1/+6
|
* Add an option for FLuidSynth to handle MIDIChris Robinson2013-11-281-0/+28
|
* Add a MIDI event queueChris Robinson2013-11-271-0/+1
| | | | In preparation for a MIDI extension.
* Try to make sure GCC is providing C99 inline semanticsChris Robinson2013-11-241-24/+45
|
* Explicitly define _POSIX_C_SOURCE and _XOPEN_SOURCEChris Robinson2013-11-061-3/+3
| | | | | Set them to 200809L and 700 respectively, instead of assuming _GNU_SOURCE will do it.