Commit graph

53 commits

Author SHA1 Message Date
Corey Powell 3e1033cd30 Added flag to building the dynamic libraries
BUILD_DYNAMIC_LIBS

Some libs (glfw comes to mind), offer the option to build both or either the static and dynamic libs
2016-06-30 10:45:55 -05:00
Corey Powell 425dc4bf69 Allow overriding static lib name
This helps alleviate cases where compilers will choose to link against the dynamic library instead of the static based on name alone (in which you don't have much control, or don't wish to tinker too much with the compiler args)
2016-06-30 10:45:08 -05:00
Corey Powell 09e16aa348 Replace occurences of CMAKE_SOURCE_DIR with libsoundio_SOURCE_DIR
This allows it to play nicely with add_subdirectory from another project
2016-06-29 16:43:19 -05:00
Andrew Kelley cdc4e2fd2a handle libm with MSVC 2016-05-25 15:15:06 -07:00
Michael Maltese 2a348cbf90 Use command line switches that MSVC understands 2016-05-24 19:21:49 -07:00
Andrew Kelley 1782d0e993 add -Wno-missing-braces
See #60
2016-04-23 08:42:27 -07:00
Andrew Kelley 85d6d9d254 Release 1.1.0 2016-01-31 12:02:41 -07:00
Andrew Kelley ce42b89da3 no longer ship config.h header
Instead provide these functions:

 * soundio_version_string
 * soundio_version_major
 * soundio_version_minor
 * soundio_version_patch
2015-11-23 13:51:25 -07:00
Andrew Kelley ee7c0d3e11 convert source code to pure C
List<T> is now a really ugly macro.

Added a workaround for jack.h not putting `void` in function
prototypes for functions that take no arguments. I made upstream
pull requests to jack1 and jack2 but I don't have high hopes
about them getting merged.

I removed the lock-free atomic asserts. clang reports
non-lock-free atomics when in fact it does have lock-free
atomics. I inspected the generated code for gcc and clang
for fetch_add, load, and store, on x86_64 and armhf, and
it's all lock free.

Closes #45.
2015-11-10 02:24:18 -07:00
Andrew Kelley 581c5a487a Release 1.0.3 2015-10-20 19:57:51 -07:00
Andrew Kelley 0a0715eb72 architecture independent header files
Do endian detection in the header file instead of cmake.
2015-09-24 09:26:17 -07:00
Andrew Kelley 6a75dda407 Release 1.0.2 2015-09-24 08:11:49 -07:00
Andrew Kelley 673e28aa77 build: fix GNUInstallDirs not working
The project() line needed to go above include(GNUInstallDirs).
2015-09-12 01:34:14 -07:00
Andrew Kelley f161449415 Release 1.0.1 2015-09-11 20:50:29 -07:00
Andrew Kelley e2e483a4d5 no longer depend on or link against libm 2015-09-05 14:56:36 -07:00
Andrew Kelley 0598f91c5a build: remove superfluous include_directories statement 2015-09-05 11:28:16 -07:00
hasufell a3dd080fda
Make building examples and tests optional 2015-09-05 14:07:22 +02:00
Diogo Pereira 0a20aec2a1 Make building static libs optional 2015-09-04 17:21:54 +01:00
Andrew Kelley 1848add506 Release 1.0.0 2015-09-03 11:35:32 -07:00
Andrew Kelley 59fca8cb75 latency test emits periodic pulses
See #2
2015-09-02 12:22:06 -07:00
Andrew Kelley 0b7c9965f9 build: add cmake options for optional dependencies
closes #1
2015-08-31 15:51:49 -07:00
Andrew Kelley ff73c08667 add sio_record example 2015-08-27 23:32:22 -07:00
Andrew Kelley 16437bd357 various code adjustments
* doc clarifications
 * examples compile with c99 not c11
 * fix pulseaudio on_backend_disconnected not firing only during
   flush events
 * make wait events more efficient
 * fix alsa devices race condition
 * fix backend disconnected code handling
 * add overflow test
 * fix on_events_signal not called at correct times
 * refactor pulseaudio device scanning
 * fix SoundIoErrorNoSuchDevice string value
2015-08-27 20:57:53 -07:00
Andrew Kelley d6e41672f7 add test for recovering from backend disconnecting 2015-08-26 17:45:59 -07:00
Andrew Kelley 64b5564ae1 use doxygen to generate documentation 2015-08-26 02:40:04 -07:00
Andrew Kelley dd7a6a8bbc fix build with clang 2015-08-21 13:27:49 -07:00
Andrew Kelley aef877fe48 build: use GNUInstallDirs 2015-08-20 17:46:16 -07:00
Andrew Kelley bc7b22f61c build: no need to generate .def file
mingw generates .dll.a files which MSVC accepts in addition to .lib
files.
2015-08-20 17:37:29 -07:00
Andrew Kelley 3b49292897 use hidden visibility by default and explicitly export
Also don't expose os functions.
And do the dllexport/dllimport thing.
2015-08-20 14:48:19 -07:00
Andrew Kelley 92f7e85d72 build: generate def file when building with mingw 2015-08-20 00:44:41 -07:00
Andrew Kelley ba0d45b8fa build: -Werror and -pedantic in debug mode only 2015-08-19 17:27:05 -07:00
Andrew Kelley 31e17477bc WASAPI: get friendly name of devices 2015-08-10 23:18:08 -07:00
Andrew Kelley 21bf405859 WASAPI skeleton 2015-08-08 15:22:50 -07:00
Andrew Kelley df0ca8a772 CoreAudio: sine wave example works 2015-08-03 22:27:09 -07:00
Andrew Kelley 7371ce5146 Fix kqueue-based cond and signal implementation 2015-08-01 13:01:49 -07:00
Andrew Kelley d5423ba8fd fix: add ALSA back to the linker line 2015-07-31 18:56:51 -07:00
Andrew Kelley 4c5742eb29 CoreAudio skeleton 2015-07-31 18:52:51 -07:00
Andrew Kelley e4b6670950 build: fix installing config out file twice 2015-07-30 14:18:36 -07:00
Andrew Kelley 860370d859 rename examples, install them, and correct #include path 2015-07-30 14:16:22 -07:00
Andrew Kelley 2a70bdb745 add a test for underflow handling and expose os API 2015-07-30 12:07:58 -07:00
Andrew Kelley 3dd9e513bc add JACK backend skeleton 2015-07-24 18:43:14 -07:00
Andrew Kelley cee134eee8 remove -fdiagnostics-color=auto
this is best set with GCC_COLOR environment variable.
2015-07-16 00:37:32 -07:00
Andrew Kelley f0c8c68592 detect endianness with cmake 2015-07-10 03:31:51 -07:00
Andrew Kelley fe61322b23 beginning of ALSA support - list_devices works 2015-07-07 02:55:32 -07:00
Andrew Kelley 5048d7aa57 ring buffer works on windows 2015-07-06 16:02:20 -07:00
Andrew Kelley a69ff6025c add and export a ring buffer implementation 2015-07-06 01:05:22 -07:00
Andrew Kelley a35a2b7e0a add a couple unit tests, fix a couple bugs 2015-07-04 02:57:06 -07:00
Andrew Kelley b45bb06fac build: try to find optional libs 2015-07-02 15:55:11 -07:00
Andrew Kelley efe95ded36 closer to building on windows 2015-07-02 03:48:27 -07:00
Andrew Kelley 6a5db549f5 list_devices example works with dummy backend 2015-07-01 02:37:51 -07:00