Commit Graph

147 Commits

Author SHA1 Message Date
Martin Green
9fca0b20f0 Add CMake option for conditional installation 2019-02-06 07:38:26 +02:00
Francois Chabot
734af31c13
Allow the inclusion of an external fmtlib as as sub_directory 2019-02-01 12:12:58 -05:00
Sergey Kovalevich
90a299f424 CMAKE_BINARY_DIR -> CMAKE_CURRENT_BINARY_DIR 2019-01-28 11:48:45 +03:00
Pius Raeder
a29e518cfe Disable building benchmarks by default
Building the benchmarks requires google-benchmark to be installed which is
not the case for most of the build systems. The option now has a tiny
hint what the requirement is and where to get it.

closes #975
2019-01-23 10:03:03 +01:00
gabime
a7148b718e Version 1.3.1 2019-01-18 12:13:07 +02:00
Carsten Neumann
084bc72d90 Fix handling of external fmt lib
Using an external fmt lib should cause the spdlog::spdlog target to have
a dependency on fmt lib - so that a consuming project does not need
to call find_package(fmt) and target_link_libraries(... fmt::fmt).

To this end a new cmake option SPDLOG_FMT_EXTERNAL is introduced which
makes spdlog depend on fmt lib and defines the SPDLOG_FMT_EXTERNAL macro
to avoid using the bundled fmt lib. The value of SPDLOG_FMT_EXTERNAL is
also stored in the installed spdlogConfig.cmake and if it is ON
find_dependency() is used to ensure the fmt::fmt target is imported.
2018-12-17 10:18:16 -06:00
gabime
7275fb6f52 simplify SPDLOG_BUILD_TESTS Cmake option 2018-12-02 12:25:46 +02:00
David P. Sicilia
85b4d7c8d6 CMake: include(CTest) only when building tests.
This is needed in order to support usage of this library as a
subdirectory in a parent project.  In that situation, prior
to this change, the inclusion of CTest would unconditionally
enable BUILD_TESTING which would then bleed into other parts
of the project.

Also added some comments explaining how this logic works.
2018-12-01 20:37:06 -05:00
gabime
b368d18b0f Added default logger API 2018-10-12 03:04:55 +03:00
gabime
c83c9a3193 Version 1.2.0 2018-10-07 22:31:36 +03:00
Sergey Alexandrov
75925762e8
Change the default value for SPDLOG_BUILD_xxx
The value based on whether spdlog is used as a third-party dependency or
as a standalone project. If spdlog is included through add_subdirectory,
the tests/examples/benchmarsk are disabled by default, and if spdlog is
configured standalone, then they are enabled by default.
2018-09-12 16:11:45 -04:00
gabime
0758b39061 Stop compilation on first error 2018-08-18 02:19:52 +03:00
gabime
a58d7594cb Fixed issue #798 and added -Wconversion compiler flag to build 2018-08-17 00:32:13 +03:00
gabime
b6b9d835c5 Version 1.1.0 2018-08-15 19:34:10 +03:00
gabime
ebea09c8b4 Added pedantic flag to compiler in cmake 2018-08-15 19:09:37 +03:00
Daniel Chabrowski
fb37585bc1 Little cmake and tests refactor
Change from spdlog_ex to const spdlog_ex& got rid of the GCC8 warning.
2018-08-14 21:33:47 +02:00
gabime
8008d7fe53 Replace emplace_back with push_back in pattern_formatter 2018-08-13 09:09:49 +03:00
gabime
da30e2ef18 Improved CMakeLists and added bench 2018-08-13 01:22:35 +03:00
Daniel Chabrowski
49d663f6c8 Move tsan/asan flag management to cmake
Add sudo: required to fix asan builds
2018-08-12 17:11:56 +02:00
Daniel Chabrowski
7e32ccbd8f Modify travis-ci, fix issues
Added:
* Release/Debug job for gcc 7 and clang 3.5
* Debug asan gcc 7 job
* Debug tsan gcc 7 job
* Disabled extensions
* Added a spdlog::spdlog alias for tests

Removed:
* Valgrind workaround, the current version is 3.10.1
* install_libcxx
* Makefiles

Fixed:
* examples build
* multisink build

Workarounds:
* gcc7 with tsan and asan needs gold linker, otherwise build
  fails becase of unrecognized option '--push-state'
2018-08-11 02:24:45 +02:00
Gabi Melman
bbff8abf58
Update CMakeLists.txt 2018-07-08 19:25:15 +03:00
gabime
8ee7b772a9 Added -O3 flag to CMakeLists.txt 2018-03-16 14:15:35 +02:00
Daniel Chabrowski
646a140ed4 Specify CXX language explicitly in CMake
Marking project as CXX will disable detecting C compiler and other checks.
Removed 'INCLUDES DESTINATION' as it made the include path appear doubled.
2018-02-11 21:13:33 +01:00
Gabi Melman
f258af4364
Update CMakeLists.txt 2018-01-12 16:06:30 +02:00
gabime
813dcbcf63 version 0.16.2 2017-12-22 18:50:08 +02:00
Gabi Melman
c060a10c10
update to version 0.16.1 2017-12-20 10:08:49 +02:00
Ľubomír Carik
dda8af0092 Update version strings to 0.16.0
Signed-off-by: Ľubomír Carik <Lubomir.Carik@anritsu.com>
2017-12-20 03:43:47 +01:00
Adrian Antonana
e6b9fa577d cmake: set project version to 0.14.0 2017-08-25 09:12:15 +02:00
Adrian Antonana
fe2fa4087d cmake: add some small comments to point out whats being done 2017-08-24 16:57:07 +02:00
Adrian Antonana
ab25004242 cmake: add some commend blocks to clearly differentiate CMakeLists file sections 2017-08-24 16:55:55 +02:00
Adrian Antonana
5504630e46 cmake: improve CMakeLists.txt
* support CMake user registry package registration
* use GNUInstallDirs to set installation firectories
* use spdlog namespace in both build and install interfaces
2017-08-24 16:55:06 +02:00
Lectem
47cf62f878 SPDLOG_BUILD_TESTING now depends on BUILD_TESTING
I encountered an issue when using spdlog through add_subdirectory.
Since SPDLOG_BUILD_TESTING is ON by default, it now adds tests to my project, even if BUILD_TESTING (the official CTest variable) is set to OFF.
cmake_dependent_option makes it so that if someone enables BUILD_TESTING then SPDLOG_BUILD_TESTING will be set to ON by default.
This way one can disable all external tests by setting BUILD_TESTING before using add_subdirectory and then setting it back to its original value.
The only change for those using the library directly is that they now use BUILD_TESTING instead of SPDLOG_BUILD_TESTING when configuring.
2017-08-23 15:12:40 +02:00
Bartosz Taczała
50c181ea4b Add prefix for BUILD_TESTING cmake option
This is helpful when using spdlog as a dependency (git submodule) when a
master project is not interested in spdlog tests. Using
"BUILD_TESTING" name may create a confusion.
Extra: BUILD_EXAMPLE variable already have a prefix.
2017-01-11 09:32:55 +01:00
Jan Kundrát
f058d3aa74 cmake: use -Wall on GCC and Clang
These checks come from [1]. The `MATCHES` operator is used for clang
because of Apple's special string.

[1] http://stackoverflow.com/questions/10046114/in-cmake-how-can-i-test-if-the-compiler-is-clang/10055571#10055571
2016-11-22 10:31:01 +01:00
Jan Kundrát
1c31800210 cmake: Use a standard option for controlling the tests
As per the docs [1], there's a standard variable for this purpose. This
introduces a behavior change, the tests are now being built by default.

[1] https://cmake.org/cmake/help/v3.0/module/CTest.html
2016-11-22 10:20:13 +01:00
Jan Kundrát
61cdd170fd cmake: List spdlog's content in IDEs
This is a usual CMake way of ensuring that IDEs have a way of showing
all source files which comprise this header-only library. It works in
the Qt Creator, for example.
2016-11-22 10:10:52 +01:00
Gabi Melman
3aef25c948 Update CMakeLists.txt 2016-07-10 00:08:43 +03:00
Kevin M. Godby
24e7b64b89 Added header-dependency tests. 2016-06-17 00:55:05 -05:00
Gabi Melman
6d5bce46f8 Revert "CMake script improvements" 2016-05-05 10:19:32 +03:00
Kevin M. Godby
2132fe0ec5 Initial work on benchmarks of other logging systems. 2016-05-04 22:46:30 -05:00
Kevin M. Godby
846fdf9f5c Added ctest so we now have a 'make test' target for running tests. 2016-05-04 19:55:00 -05:00
Kevin M. Godby
2666b6cbf1 Added header dependency tests. 2016-05-04 19:24:17 -05:00
Nick White
b7e3a103c3 Generate & Install pkg-config File 2016-04-14 20:47:57 +01:00
gabime
495ecaeaee astyle 2016-04-03 02:14:54 +03:00
Kevin M. Godby
9afc960d88 Enforce C++11 standard. 2016-03-18 13:07:44 -05:00
Gabi Melman
1725b7a6e2 update to MIT license 2015-11-28 19:19:55 +02:00
Ruslan Baratov
c19d9759d5 Add CMake build 2015-09-10 23:22:18 +03:00