- Sets dependencies for targets
- Fixes not being able to build single targets, like `make vgmstream_cli`
- Fixes not being able to build with multiple jobs, like `make -j 5`
- Compiles dependencies out of the source directory
- Fixes double lib suffix, renaming liblibvgmstream.a to libvgmstream.a
- Removes zlib dependency from static builds, previously required by ffmpeg
- If ARCHIVE_EXTRACT is not available in cmake, mpg123 will be downloaded through svn, then fall back to git if that is not available either
- version.h is now static (should increase on new releases)
- if compiler flag is passed, will try to use version_auto.h (autogen)
(auto only on compiler flag to avoid include'ing a non-existant file)
- avoid clobbered version.h as may force recompiles
* Remove a couple TODO messages as they have already been done.
* Add check for parent directory to stop warning about there being no parent scope if building vgmstream directly.
* Remove the options for FDK-AAC and QAAC.
* Fix a few uses of CMAKE_CURRENT_SOURCE_DIR to use VGM_SOURCE_DIR (for consistency sake).
* Fix a few uses of CMAKE_BINARY_DIR to use VGM_BINARY_DIR.
* Add some conditionals for the install paths so they don't show if you aren't building something.
Also had to fix a few of the audacious files to get them to compile, mainly not using NULL in the input plugin constructor and casting the STREAMFILE functions (maybe some *nix compilers would've accepted those, but FreeBSD 12's Clang did not)
Needed to change how version.h was included to let it pick up the one from CMake's build location.
NOTE: Does not build with MinGW-w64 currently, does not have a way to build the audacious or XMPlay plugins.