Commit Graph

7 Commits

Author SHA1 Message Date
Eugene Shalygin 89a6e3cf7a cmake: allow selecting C++ standard version during build
Also moves helper functions into a module file and replaces JOIN
generator expressions with list(TRANSFORM) commands in order to get
the correct sources list at the configure stage.
2018-10-31 00:24:41 +01:00
Eugene Shalygin 911e4a892b cmake: remove $<LINK_ONLY:...> expressions from INTERFACE_LINK_LIBRARIES
When torrent-rasterbar is built a static library, CMake supplies link
dependencies inside the LINK_ONLY generator expressions. But pkg-config
does not support such operational mode, and thus we can safely replace
those expressions with the library names. Closes #3354.
2018-10-18 08:26:01 +02:00
Eugene Shalygin 287f299314 cmake: pass target C++ standard to pkgconfig generator 2018-05-27 09:55:13 +02:00
Eugene Shalygin 5667b8f72c Borrow FindLibGcrypt.cmake from KTorrent project. 2018-05-14 09:08:19 +02:00
Eugene Shalygin a626f75c5e Refactor CMakeLists.txt
1. Replace custom 'shared' option with the standard BUILD_SHARED_LIBS
flag
2. Replace foreach() calls for source items with target_sources() and
generator expression $<JOIN:>.
3. Remove build types definition: makes no sense for
single-configuration generators, and is populated automatically for
multi-configuration ones.
4. Add feature summary
5. Enahnce compiler flags management for static runtime by utilizing functions
from the ucm project
6. Copy almost all options from the Jamfile.
7. If compiler supports C++14, use it.
8. Raise minimum required CMake version to 3.11 and drop bundled FindIconv.cmake
2018-05-14 09:08:19 +02:00
Eugene Shalygin 3c6e0b2578 Generate proper pkg-config file in cmake build 2018-04-29 19:48:26 +02:00
Eugene Shalygin 9489eb23f4 Fix compilation with cmake (#767)
fix tests building with cmake. cmake: restore options parity with autotools
2016-05-29 12:58:16 -04:00