Commit graph

20 commits

Author SHA1 Message Date
drfrag
6ba3eba4d3 - Include cleanup in the libraries folder. 2020-10-16 14:28:48 +02:00
alexey.lysiuk
f30265849f - timidity++: better handling of soundfont terminal preset record 2020-06-08 14:42:24 +02:00
Christoph Oelckers
f2a3a70aec - replaced the C++ based file access wrapper in ZMusic with a C compatible version. 2020-01-07 18:07:23 +01:00
Christoph Oelckers
353ffa2e95 - the timidity safe_malloc functions may not throw exceptions.
There is a high chance of them getting called within the stream servicing function which cannot deal with abnormal conditions, so the only choice here is performing a hard abort.
2020-01-07 18:07:15 +01:00
Christoph Oelckers
849bfb69b1 - blocked the destructor in the sound font reader base class.
If ZMusic is to act like an external library it may not call delete on external objects because there is no guarantee that they use the same allocator. Deletion must be done as a virtual function to ensure that the correct operator delete gets called, which, unlike the actual destructor is not virtual itself.
2020-01-07 18:07:13 +01:00
alexey.lysiuk
9d49e33a80 - cleaned POSIX compiler arguments for libraries
Removed omission of frame pointers as it makes crash reports much less useful
Modified warning flags to hide annoying reports for external code
2020-01-05 21:08:01 +01:00
alexey.lysiuk
aa8438cb45 - applied fast math flags to C and C++ files
Avoid copy-paste using CMake macro

# Conflicts:
#	CMakeLists.txt
#	libraries/glslang/OGLCompilersDLL/CMakeLists.txt
#	libraries/glslang/glslang/CMakeLists.txt
#	libraries/glslang/spirv/CMakeLists.txt
2020-01-05 21:07:36 +01:00
Christoph Oelckers
89d7330ba9 - cleanup of the sound init/exit code.
Now there is only one single entry point for both, instead of previously 2 entry and 4 exit points.
This also eliminates the explicit shutdown of ZMusic. Timidity++'s two buffers have been put in containers that self-destruct on shutdown and calling dumb_exit is not necessary because the only feature requiring it is not used by any code in the music library.
2020-01-05 21:04:09 +01:00
Christoph Oelckers
5d73f09ebf - first state of music configuration refactor.
# Conflicts:
#	src/sound/music/midi_cvars.cpp
2020-01-05 12:56:28 +01:00
Christoph Oelckers
b5ebe264ab - consolidated the different file access interfaces in the backends into one shared version.
This was getting a bit unwieldy. The include path setup is not perfect yet, that's work for later.
(It's about time we're getting C++20 with modules so that this include path madness can be put to an end.)
2020-01-05 11:46:28 +01:00
Christoph Oelckers
30f23738b3 - Timidity++ done. 2020-01-05 02:31:53 +01:00
Christoph Oelckers
19742b5bc7 - took make_release_only off those subprojects which contain code that still need debugging on occasion.
For these performance on debug builds doesn't really matter anyway.
2020-01-05 02:31:44 +01:00
Christoph Oelckers
cf105c8720 - gave the Timidity error functions better names and hooked up the WildMidi version. 2020-01-05 01:53:54 +01:00
Christoph Oelckers
33176d3314 - fixed a few Timidity warnings 2020-01-05 01:38:23 +01:00
Christoph Oelckers
2ddc9ee1f3 - made the Timidity(GUS) device a separate library.
# Conflicts:
#	src/CMakeLists.txt
2020-01-05 01:22:14 +01:00
Christoph Oelckers
1b1fabd5c2 - cleanup of the TimidityMIDIDevice(GUS) backend code to eliminate the storage in global variables and to remove the dependencies on core ZDoom code.
The organization here is now the same as for the Timidity++ device, i.e. it is the device owning the instruments to give better control over their lifecycle.

# Conflicts:
#	src/sound/timidity/instrum_font.cpp
#	src/sound/timidity/instrum_sf2.cpp
#	src/sound/timidity/mix.cpp
#	src/sound/timidity/playmidi.cpp
#	src/sound/timidity/resample.cpp
2020-01-05 01:22:10 +01:00
alexey.lysiuk
bb1884bdba - explicit use of C++11 standard for TiMidity++
This fixes compilation with older GCC and Clang
2020-01-05 01:22:08 +01:00
Marisa Kirisame
fd556269d1 Add string.h includes where needed. Fixes Linux builds. 2020-01-05 01:22:04 +01:00
Christoph Oelckers
1208b6306d - ported the CMake fix to TimidityPlus as well. 2020-01-05 01:22:02 +01:00
Christoph Oelckers
4fccadff7e - made the Timidity++ backend a library, now that it has no dependencies on GZDoom anymore.
# Conflicts:
#	src/CMakeLists.txt

# Conflicts:
#	src/CMakeLists.txt
2020-01-05 01:21:32 +01:00