lokinet/cmake
Jason Rhinelander b81f7025c9
Replace logging with oxen-logger
Replaces custom logging system with spdlog-based oxen logging.  This
commit mainly replaces the backend logging with the spdlog-based system,
but doesn't (yet) convert all the existing LogWarn, etc. to use the new
format-based logging.

New logging statements will look like:

    llarp::log::warning(cat, "blah: {}", val);

where `cat` should be set up in each .cpp or cluster of .cpp files, as
described in the oxen-logging README.

As part of spdlog we get fmt, which gives us nice format strings, where
are applied generously in this commit.

Making types printable now requires two steps:
- add a ToString() method
- add this specialization:

      template <>
      constexpr inline bool llarp::IsToStringFormattable<llarp::Whatever> = true;

This will then allow the type to be printed as a "{}" value in a
fmt::format string.  This is applied to all our printable types here,
and all of the `operator<<` are removed.

This commit also:
- replaces various uses of `operator<<` to ToString()
- replaces various uses of std::stringstream with either fmt::format or
  plain std::string
- Rename some to_string and toString() methods to ToString() for
  consistency (and to work with fmt)
- Replace `stringify(...)` and `make_exception` usage with fmt::format
  (and remove stringify/make_exception from util/str.hpp).
2022-07-15 22:17:59 -03:00
..
DownloadLibCurl.cmake Get processor count properly 2020-06-10 14:53:57 -03:00
DownloadLibSodium.cmake revert download libsodium target name change 2020-07-02 11:13:31 -04:00
FindJemalloc.cmake add forgotten file 2020-05-23 16:07:20 -04:00
FindLibUV.cmake Add FindLibUV and migrate 2019-07-13 14:06:34 +01:00
GenVersion.cmake bump verions of all deps 2022-05-30 17:08:08 -03:00
MacroEnsureOutOfSourceBuild.cmake Prevent in-source-builds with cmake macro 2019-10-24 13:21:45 -06:00
StaticBuild.cmake bump verions of all deps 2022-05-30 17:08:08 -03:00
TargetArch.cmake add forgotten file 2019-11-05 06:52:40 -05:00
Version.cmake Add -DLOKINET_VERSIONTAG to override version tag 2022-06-13 20:00:35 -03:00
add_import_library.cmake Refactor top level cmake file into multiple components 2019-04-30 00:48:48 +01:00
check_for_std_filesystem.cmake Bring back ghc::filesystem for broke AF macos 2020-05-20 19:18:27 -03:00
check_for_std_optional.cmake Don't use std::optional::value() because f u macos 2020-05-20 19:18:28 -03:00
cmake_uninstall.cmake.in add uninstall target (#1340) 2020-09-09 12:06:57 -04:00
coverage.cmake More work on router docker image 2019-04-28 17:04:52 +01:00
cross_compile.cmake make windows fixes 2019-08-13 10:02:48 +01:00
enable_lto.cmake add WITH_LTO option to disble lto on compile time 2020-05-20 19:29:49 -04:00
installer.cmake make it so github sees the repo is gpl3 2022-01-28 11:20:22 -05:00
libatomic.cmake Remove windows linefeeds 2021-10-16 15:16:55 -03:00
ngtcp2_lib.cmake bump ngtcp2 to v0.1.0 tag 2022-01-31 13:05:03 -05:00
solaris.cmake remove all disused platform-specific event loops 2019-06-13 21:02:57 -05:00
static_link.cmake cmake refactor 2020-05-17 23:31:23 -03:00
target_link_libraries_system.cmake Revert "Merge pull request #679 from tewinget/revert-config-refactor" 2019-07-06 14:46:25 +01:00
unix.cmake Remove duplicate handling of jemalloc 2021-09-13 13:26:12 -03:00
win32.cmake match io loop event order on windows/apple to match linux. 2021-12-15 15:25:53 -05:00
win32_installer_deps.cmake move windows nsis parts for cpack into external files 2022-05-30 09:27:05 -04:00