Commit graph

8 commits

Author SHA1 Message Date
Braden Obrzut
b3c4b55dab Overhaul CMakeLists to conform with modern CMake
- Prefer target properties instead of setting variables whenever possible.
  A zmusic-obj target now exists to represent the commonality between zmusic
  and zmusiclite.
- Factored out as much as possible from global settings to per target settings
  which will make it easier to support using ZMusic as a submodule. Moved
  helper functions into a ZUtility.cmake module.
- We now generate and install ZMusicConfig.cmake so find_package(ZMusic)
  will work either automatically or given ZMusic_DIR is set.
- CPack is enabled although some refinement is still needed.
- Requires CMake >= 3.13 which is newer than I would normally like, but given
  how no one like to refactor these things it may be better to deal with the
  short term pain of going a little aggressive on the requirement in order to
  avoid having to make things ugly. Especially given that these scripts have
  a tendency to be copy/pasted into sister projects. CMake itself has very few
  dependencies so users of old Linux distros should be able to easily compile
  a supported version of CMake.
- On Windows CMake >= 3.15 is required for redistributable results.
- Cleaned out bits that were copied from GZDoom but not relevant to ZMusic.
2021-02-16 01:38:10 -05:00
Rachael Alexanderson
d9702317ba - demote IMPORT_EXECUTABLES to a warning, address issue #19 2021-01-02 05:45:05 -05:00
alexey.lysiuk
0e789a9f1b - set macOS deployment target to match GZDoom and Raze 2020-08-09 14:57:26 +03:00
alexey.lysiuk
4719ad44d8 - added ABI version to soname
This fixes #4
2020-03-02 17:27:33 +01:00
alexey.lysiuk
bd138d248e - removed unused CMake option 2020-02-09 15:35:16 +02:00
alexey.lysiuk
b7feec600e - cleaned up main CMake file 2020-01-04 14:42:22 +01:00
alexey.lysiuk
26c3c3a1bd - enabled position independent code 2020-01-04 14:42:22 +01:00
Christoph Oelckers
a4eae42ec5 - initial commit 2020-01-02 17:52:30 +01:00