Commit Graph

206 Commits

Author SHA1 Message Date
Bailey Chittle
040874224b
setting the cmake standard to 20 when using std format (#2680) 2023-03-21 20:23:14 +02:00
Zeus James
da14258533
Fix MinGW build issue on example (#2642)
* Fix MinGW build issue on example #2638

* Move the cmake change to example\CMakeLists.txt

* Update CMakeLists.txt on the example
2023-02-12 10:34:22 +02:00
Darby Payne
edc51df1bd
Feature/add system includes option (#2575)
* Adding system includes option

* Adding system includes option
2022-12-11 10:58:02 +02:00
Charles Milette
4f80077339
Support compile-time format string checking with std::format (#2544)
* Support compile-time format string checking with std::format

* Fix pre-VS 17.5 compilation

* Fix compilation without wchar_t support

* What am I doing

* Bring back fmt optimization

* Move to_string_view to common.h

* Fix SPDLOG_CONSTEXPR_FUNC emitting duplicate symbol errors when building in C++11

* Also add inline on VS 2013

* Appender doesn't work on wide strings
2022-11-12 23:07:11 +02:00
gabime
3499dfeeb4 Bump bundled fmtlib to version 1.9.1 2022-10-31 13:47:47 +02:00
Puneet Matharu
7768c6271c Export targets to build directory so that it can be found at configure time. 2022-10-17 10:02:14 +01:00
Nigel Stewart
34f88d4382 cmake: SPDLOG_BUILD_PIC opt-in for CMAKE_POSITION_INDEPENDENT_CODE 2022-09-03 12:49:10 +10:00
Nigel Stewart
de67ebdda1 cmake: set(CMAKE_POSITION_INDEPENDENT_CODE ON) for Linux static library purposes 2022-09-02 12:08:42 +10:00
Hector PHARAM
fb3ddf749d Removed doc "(shared not supported in windows yet)" 2022-07-25 15:23:07 +02:00
cookcocck
ca747c7572 Set c++20 when SPDLOG_USE_STD_FORMAT option is turned on 2022-06-14 11:12:49 +08:00
Alexander Shpilkin
876880fb3f
Reflect CMAKE_INSTALL_INCLUDEDIR in pkg-config 2022-05-19 17:49:16 +03:00
Alexander Shpilkin
afb69071d5
Allow absolute CMAKE_INSTALL_LIBDIR 2022-05-19 17:48:57 +03:00
Jan Engelhardt
41efc971ad build: expand SOVERSION to not give false illusion of compatibility
Fixes #2369
2022-05-13 09:44:09 +02:00
Charless Milette
d75de3d3b2 Add SPDLOG_USE_STD_FORMAT to target_compile_definitions 2021-11-14 02:33:15 -05:00
Charless Milette
44a4517e2b Support C++20 std::format as an alternative to fmtlib 2021-11-13 11:29:05 -05:00
Cristian Morales Vega
ef540c1243 CMake: Stop explicitly setting CMP0077
The policy_max in cmake_minimum_required() already does that.
2021-09-08 16:45:04 +01:00
Cristian Morales Vega
8ffbc0f114 CMake: Specify "policy_max" 2021-09-08 16:44:13 +01:00
Dave Rigby
87095a9f1f Ensure exported package is relocatable
As per CMake's Importing and Exporting Guide[1],
configure_package_config_file() should be used for configuring the
package configuration file, not the regular configure_file() function.

This ensures that a spdlog package built on one system (with a given
directory tree) can be imported from a different system -
e.g. creating a pre-compiled spdlog package for use on different
systems.

[1]: https://cmake.org/cmake/help/git-stage/guide/importing-exporting/index.html#id8
2021-08-04 15:34:27 +01:00
gabime
b85a666f72 Enabled parallel build under msvc 2021-07-19 16:33:31 +03:00
gabime
e7e8b75a4c clang-format 2021-07-19 00:50:51 +03:00
gabime
7636f1f659 revert some changes made by mistake 2021-07-14 14:33:45 +03:00
gabime
1523c83650 Added fmt/compile.h bundled file 2021-07-14 14:28:34 +03:00
gabime
3eeced78b5 Removed some cmake wdev warnings 2021-07-10 15:15:39 +03:00
gabime
68aed6a5eb Fixed building under c++17 2021-06-26 17:36:57 +03:00
steven lunt
1bee3218b4 cleanup thanks to gabime 2021-05-19 17:51:03 -04:00
steven lunt
802eaadd2d add macros for overriding the individual level names 2021-05-19 10:45:33 -04:00
JB_12
181c22f798 Add support for CMake policy CMP0077 2021-05-16 22:49:02 +01:00
Chris Mc
65317eb019
Remove version requirement from fmt find_package
By introducing 'no module' support this inadvertently triggered the find_package to use the "full version" version selection.

From https://cmake.org/cmake/help/latest/command/find_package.html#version-selection:

> When the [version] argument is given, Config mode will only find a version of the package that claims compatibility with the requested version (see format specification).

FMT does not set this configuration https://github.com/fmtlib/fmt/blob/7.1.3/support/cmake/fmt-config.cmake.in... but regardless it would not be "any compatibility" based on version semantics.

Which causes this error. v1.8.2 builds perfectly fine.

```
CMake Error at CMakeLists.txt:181 (find_package):
  Could not find a configuration file for package "fmt" that is compatible
  with requested version "5.3.0".

  The following configuration files were considered but not accepted:

    /home/proj/build/e98598522b7c484d9220bffc7ec84474515facbc/fmt-config.cmake, version: 7.1.3
```
2021-03-24 21:54:36 -04:00
Ahmed Yarub Hani Al Nuaimi
a2e28443f0
Add required libraries for Android CMake build 2021-03-22 00:08:17 -03:00
gabime
1305663d99 make sure __cplusplus is defined under msvc 2021-03-12 15:10:15 +02:00
gabime
8f4efe57a2 make sure __cplusplus is defined under msvc 2021-03-12 15:09:35 +02:00
gabime
0613dbc4a2 Revert pr #1860 2021-03-04 23:52:50 +02:00
Gabi Melman
0ed0d69368
Update CMakeLists.txt 2021-03-04 23:24:02 +02:00
Romain Roffé
b9d2f2537b CMake: Add SPDLOG_STATIC_VCRT to choose static MSVC runtime 2021-03-04 20:14:18 +01:00
Issam E. Maghni
3eed64e5c4 CMake: Replace custom SPDLOG_BUILD_SHARED by standard BUILD_SHARED_LIBS 2021-02-26 16:26:50 -05:00
Prateek Chokse
2e008b319c Fix: prevents MSVC warning flags to propagate in CUDA 2021-02-12 14:13:51 +05:30
ryan-rsm-mckenzie
3d8f71c4d2 skip module mode when finding fmt 2020-12-27 01:37:12 -08:00
shimaowo
e99759fe45 Fix #1765 - Add SPDLOG_DISABLE_DEFAULT_LOGGER as a cmake option 2020-12-18 14:31:34 -08:00
gabime
231ca50700 clang-format 2020-09-26 15:34:05 +03:00
gabime
ccffb6ecd6 Fix #1581 2020-08-30 20:44:42 +03:00
gabime
63b5a1a4d8 Fix #1581 2020-08-30 20:44:04 +03:00
gabime
cd701761f9 clang-format 2020-08-26 00:10:05 +03:00
Raul Tambre
76cdeb62e3 Don't enable C language in CMake
spdlog doesn't seem to actually require the C language.
Not enabling it results in a significant initial configure time speedup.
2020-07-21 11:39:40 +03:00
Raul Tambre
ae9627c64c Raise CMake requirement to 3.13
* Reduces the range of possible version we'd need to test with.
* Enables newer policies reducing possible deprecation warnings from new policies.
* Allows removing some code for compatibility with older versions.
* Coincides with LLVM's bump to requiring CMake 3.13.
2020-07-20 22:03:50 +03:00
Leonid Pospelov
cf55e5d4f8 Cleanup options-related lines in CMakeLists.txt 2020-06-12 14:30:49 +03:00
Konstantin Podsvirov
fe97a03033 Fix shared library building failure on Windows with non MSVC
For example, now we can built shared library on Window with MinGW.

This changes improve features added in #1467.
2020-06-10 22:56:53 +03:00
gabime
75c15e8028 Formatted cmake 2020-05-02 11:42:08 +03:00
gabime
ff0e430e46 Formatted cmake using cmake-format 2020-05-02 11:38:14 +03:00
Bruce Mitchener
937fe7e909 cmake: Fix tabs, whitespace at EOL. 2020-05-02 07:17:15 +07:00
Montellese
3e8be645d2 Set minimum version of fmt to 5.3.0
The used fmt::fmt target has been introduced with fmt 5.0.0.
2020-04-20 19:59:50 +02:00