Compare commits

..

19 Commits

Author SHA1 Message Date
Dennis Klein
9a8acdf6eb Enable PIC by default 2018-09-19 18:31:45 +02:00
Dennis Klein
0c2532e6b9 Reflect git version in build artifacts 2018-09-19 18:20:29 +02:00
Dennis Klein
49a6e9389d Support BUILD_SHARED_LIBS cmake variable 2018-09-19 18:19:55 +02:00
Alexey Rybalchenko
0901655a65 Update build machines 2018-07-30 19:46:30 +02:00
Alexey Rybalchenko
1f600fa981 guard localtime with a mutex to avoid race 2018-07-30 19:46:30 +02:00
Alexey Rybalchenko
63820e5f2c Add cycle methods and verylow verbosity (msg only) 2018-05-09 15:30:01 +02:00
Alexey Rybalchenko
de02bd068f add string version of Logging() 2018-05-02 15:32:06 +02:00
Dennis Klein
24001470e5 Add nightly/profile build pipeline 2018-05-02 14:56:55 +02:00
Dennis Klein
5696fef902 Generate relative RPATH 2018-04-20 20:03:12 +02:00
Dennis Klein
80b5eb6fb1 Do not install lib in its own directory 2018-04-19 19:49:05 +02:00
Dennis Klein
c26d4ba013 Remove cmake version constraint from CMake package 2018-04-18 15:47:19 +02:00
Dennis Klein
661bd88d81 Export CXX standard config 2018-04-18 15:34:57 +02:00
Dennis Klein
65068fd959 Enable install RPATH 2018-04-18 15:34:40 +02:00
Dennis Klein
00e7468b25 Add library versioning 2018-04-18 15:34:22 +02:00
Dennis Klein
af288551aa Export the correct include path 2018-04-18 00:01:26 +02:00
Dennis Klein
8f68cef9e3 Enable C language to get rid of a warning in alfa-ci
This should rather be solved in the build environment, which is work on
the todo list.
2018-04-12 21:36:05 +02:00
Dennis Klein
6d71d22986 Use status messages 2018-04-12 21:10:56 +02:00
Dennis Klein
e72a0409a6 Remove check for share directory which does not exist 2018-04-12 19:53:17 +02:00
Dennis Klein
88c13b67cc Update 2018-04-11 16:11:36 +02:00
12 changed files with 257 additions and 37 deletions

View File

@@ -16,8 +16,8 @@ include(FairLoggerLib)
set_fairlogger_cmake_policies()
get_git_version(OUTVAR_PREFIX FairLogger)
project(FairLogger VERSION ${FairLogger_VERSION} LANGUAGES CXX)
message("${BWhite}${PROJECT_NAME}${CR} ${FairLogger_GIT_VERSION} from ${FairLogger_DATE}")
project(FairLogger VERSION ${FairLogger_VERSION} LANGUAGES C CXX)
message(STATUS "${BWhite}${PROJECT_NAME}${CR} ${FairLogger_GIT_VERSION} from ${FairLogger_DATE}")
set_fairlogger_defaults()
@@ -32,7 +32,7 @@ configure_file(logger/Version.h.in
@ONLY
)
add_library(FairLogger SHARED
add_library(FairLogger
logger/Logger.cxx
logger/Logger.h
)
@@ -40,7 +40,11 @@ add_library(FairLogger SHARED
target_include_directories(FairLogger
PUBLIC
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/logger>
$<INSTALL_INTERFACE:include>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
)
set_target_properties(FairLogger PROPERTIES
VERSION ${FairLogger_GIT_VERSION}
SOVERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}"
)
if(BUILD_TESTING)
@@ -60,6 +64,7 @@ install(TARGETS
EXPORT ${FairLogger_EXPORT_SET}
LIBRARY DESTINATION ${FairLogger_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${FairLogger_INSTALL_LIBDIR}
RUNTIME DESTINATION ${FairLogger_INSTALL_BINDIR}
)
@@ -84,14 +89,14 @@ endif()
# Summary ######################################################################
message(" ")
message(" ${Cyan}COMPONENT BUILT? INFO${CR}")
message(" ${BWhite}library${CR} ${BGreen}YES${CR} (default, always built)")
message(STATUS " ")
message(STATUS " ${Cyan}COMPONENT BUILT? INFO${CR}")
message(STATUS " ${BWhite}library${CR} ${BGreen}YES${CR} (default, always built)")
if(BUILD_TESTING)
set(testing_summary "${BGreen}YES${CR} (default, disable with ${BMagenta}-DBUILD_TESTING=OFF${CR})")
else()
set(testing_summary "${BRed} NO${CR} (enable with ${BMagenta}-DBUILD_TESTING=ON${CR})")
endif()
message(" ${BWhite}tests${CR} ${testing_summary}")
message(" ")
message(STATUS " ${BWhite}tests${CR} ${testing_summary}")
message(STATUS " ")
################################################################################

View File

@@ -47,10 +47,6 @@ EndIf()
Ctest_Start($ENV{ctest_model})
If(NOT $ENV{ctest_model} MATCHES Experimental)
Ctest_Update(SOURCE "${CTEST_SOURCE_DIRECTORY}")
EndIf()
Ctest_Configure(BUILD "${CTEST_BINARY_DIRECTORY}"
OPTIONS "${configure_options}"
)

5
Jenkinsfile vendored
View File

@@ -37,9 +37,8 @@ pipeline{
steps{
script {
parallel(buildMatrix([
[os: 'Debian8', arch: 'x86_64', compiler: 'gcc4.9', fairsoft: 'oct17'],
[os: 'MacOS10.11', arch: 'x86_64', compiler: 'AppleLLVM8.0.0', fairsoft: 'oct17'],
[os: 'MacOS10.13', arch: 'x86_64', compiler: 'AppleLLVM9.0.0', fairsoft: 'oct17'],
[os: 'Debian8', arch: 'x86_64', compiler: 'gcc4.9', fairsoft: 'may18'],
[os: 'MacOS10.13', arch: 'x86_64', compiler: 'AppleLLVM9.0.0', fairsoft: 'may18'],
]) { spec, label ->
sh '''\
echo "export BUILDDIR=$PWD/build" >> Dart.cfg

55
Jenkinsfile.nightly Normal file
View File

@@ -0,0 +1,55 @@
#!groovy
def specToLabel(Map spec) {
return "${spec.os}-${spec.arch}-${spec.compiler}-FairSoft_${spec.fairsoft}"
}
def buildMatrix(List specs, Closure callback) {
def nodes = [:]
for (spec in specs) {
def label = specToLabel(spec)
nodes[label] = {
node(label) {
try {
deleteDir()
checkout scm
callback.call(spec, label)
deleteDir()
} catch (e) {
deleteDir()
throw e
}
}
}
}
return nodes
}
pipeline{
agent none
triggers { cron('H 2 * * *') }
stages {
stage("Run Nightly Build/Test Matrix") {
steps{
script {
parallel(buildMatrix([
[os: 'Debian8', arch: 'x86_64', compiler: 'gcc4.9', fairsoft: 'may18'],
[os: 'MacOS10.11', arch: 'x86_64', compiler: 'AppleLLVM8.0.0', fairsoft: 'may18'],
[os: 'MacOS10.13', arch: 'x86_64', compiler: 'AppleLLVM9.0.0', fairsoft: 'may18'],
]) { spec, label ->
sh '''\
echo "export BUILDDIR=$PWD/build" >> Dart.cfg
echo "export SOURCEDIR=$PWD" >> Dart.cfg
echo "export PATH=$SIMPATH/bin:$PATH" >> Dart.cfg
echo "export GIT_BRANCH=dev" >> Dart.cfg
'''
sh './Dart.sh Nightly Dart.cfg'
sh './Dart.sh Profile Dart.cfg'
})
}
}
}
}
}

View File

@@ -2,6 +2,8 @@
Lightweight and fast C++ Logging Library
![example output](example.png)
| Branch | Build Status |
| :---: | :--- |
| `master` | ![build status master branch](https://alfa-ci.gsi.de/buildStatus/icon?job=FairRootGroup/FairLogger/master) |
@@ -38,6 +40,7 @@ find_package(FairLogger)
On command line:
* `-DDISABLE_COLOR=ON` disables coloured console output.
* `-DBUILD_TESTING=OFF` disables building of unit tests.
## License

View File

@@ -6,8 +6,6 @@
# copied verbatim in the file "LICENSE" #
################################################################################
cmake_minimum_required(VERSION 3.9.4 FATAL_ERROR)
@PACKAGE_INIT@
### General variables for project discovery/inspection
@@ -16,9 +14,12 @@ set(FairLogger_GIT_VERSION @FairLogger_GIT_VERSION@)
set_and_check(FairLogger_ROOT @PACKAGE_CMAKE_INSTALL_PREFIX@)
set_and_check(FairLogger_BINDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@FairLogger_INSTALL_BINDIR@)
set_and_check(FairLogger_INCDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@FairLogger_INSTALL_INCDIR@)
set_and_check(FairLogger_INCDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@)
set_and_check(FairLogger_LIBDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@FairLogger_INSTALL_LIBDIR@)
set_and_check(FairLogger_DATADIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@FairLogger_INSTALL_DATADIR@)
set(@PROJECT_NAME@_CXX_STANDARD_REQUIRED @CMAKE_CXX_STANDARD_REQUIRED@)
set(@PROJECT_NAME@_CXX_STANDARD @CMAKE_CXX_STANDARD@)
set(@PROJECT_NAME@_CXX_EXTENSIONS @CMAKE_CXX_EXTENSIONS@)
### Import targets
include(@PACKAGE_CMAKE_INSTALL_PREFIX@/@PACKAGE_INSTALL_DESTINATION@/FairLoggerTargets.cmake)

View File

@@ -35,7 +35,9 @@ endif()
macro(set_fairlogger_cmake_policies)
# Find more details to each policy with cmake --help-policy CMPXXXX
foreach(policy
CMP0025 # Compiler id for Apple Clang is now AppleClang.
CMP0028 # Double colon in target name means ALIAS or IMPORTED target.
CMP0042 # MACOSX_RPATH is enabled by default.
CMP0048 # The ``project()`` command manages VERSION variables.
CMP0054 # Only interpret ``if()`` arguments as variables or keywords when unquoted.
)
@@ -123,17 +125,44 @@ macro(set_fairlogger_defaults)
# Generate compile_commands.json file (https://clang.llvm.org/docs/JSONCompilationDatabase.html)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
if(NOT BUILD_SHARED_LIBS)
set(BUILD_SHARED_LIBS ON CACHE BOOL "Whether to build shared libraries or static archives")
endif()
# Set -fPIC as default for all library types
if(NOT CMAKE_POSITION_INDEPENDENT_CODE)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()
# Define CMAKE_INSTALL_*DIR family of variables
include(GNUInstallDirs)
# Define install dirs
set(FairLogger_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR})
set(FairLogger_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME_LOWER})
set(FairLogger_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
set(FairLogger_INSTALL_INCDIR ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME_LOWER})
set(FairLogger_INSTALL_DATADIR ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME_LOWER})
# https://cmake.org/Wiki/CMake_RPATH_handling
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/${FairLogger_INSTALL_LIBDIR}" isSystemDir)
if("${isSystemDir}" STREQUAL "-1")
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(CMAKE_EXE_LINKER_FLAGS ${CMAKE_EXE_LINKER_FLAGS} "-Wl,--enable-new-dtags")
set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-Wl,--enable-new-dtags")
set(CMAKE_INSTALL_RPATH "$ORIGIN/../${FairLogger_INSTALL_LIBDIR}")
elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
set(CMAKE_INSTALL_RPATH "@loader_path/../${FairLogger_INSTALL_LIBDIR}")
else()
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${FairLogger_INSTALL_LIBDIR}")
endif()
endif()
# Define export set, only one for now
set(FairLogger_EXPORT_SET ${PROJECT_NAME}Targets)
set(CMAKE_CXX_FLAGS_NIGHTLY "-O2 -g -Wshadow -Wall -Wextra")
set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs -Wshadow -Wall -Wextra -Wunused-variable")
endmacro()
@@ -141,7 +170,7 @@ endmacro()
macro(install_fairlogger_cmake_package)
include(CMakePackageConfigHelpers)
set(PACKAGE_INSTALL_DESTINATION
${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${PROJECT_VERSION}
${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${FairLogger_GIT_VERSION}
)
install(EXPORT ${FairLogger_EXPORT_SET}
NAMESPACE ${PROJECT_NAME}::

BIN
example.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 KiB

View File

@@ -147,10 +147,12 @@ const unordered_map<string, Verbosity> Logger::fVerbosityMap =
{ "high", Verbosity::high },
{ "medium", Verbosity::medium },
{ "low", Verbosity::low },
{ "verylow", Verbosity::verylow },
{ "VERYHIGH", Verbosity::veryhigh },
{ "HIGH", Verbosity::high },
{ "MEDIUM", Verbosity::medium },
{ "LOW", Verbosity::low }
{ "LOW", Verbosity::low },
{ "VERYLOW", Verbosity::verylow }
};
const unordered_map<string, Severity> Logger::fSeverityMap =
@@ -161,16 +163,14 @@ const unordered_map<string, Severity> Logger::fSeverityMap =
{ "ERROR", Severity::error },
{ "warn", Severity::warn },
{ "WARN", Severity::warn },
{ "warning", Severity::warning },
{ "WARNING", Severity::warning },
{ "warning", Severity::warn },
{ "WARNING", Severity::warn },
{ "state", Severity::state },
{ "STATE", Severity::state },
{ "info", Severity::info },
{ "INFO", Severity::info },
{ "debug", Severity::debug },
{ "DEBUG", Severity::debug },
{ "trace", Severity::trace },
{ "TRACE", Severity::trace },
{ "debug1", Severity::debug1 },
{ "DEBUG1", Severity::debug1 },
{ "debug2", Severity::debug2 },
@@ -178,7 +178,9 @@ const unordered_map<string, Severity> Logger::fSeverityMap =
{ "debug3", Severity::debug3 },
{ "DEBUG3", Severity::debug3 },
{ "debug4", Severity::debug4 },
{ "DEBUG4", Severity::debug4 }
{ "DEBUG4", Severity::debug4 },
{ "trace", Severity::trace },
{ "TRACE", Severity::trace }
};
const array<string, 12> Logger::fSeverityNames =
@@ -199,9 +201,10 @@ const array<string, 12> Logger::fSeverityNames =
}
};
const array<string, 4> Logger::fVerbosityNames =
const array<string, 5> Logger::fVerbosityNames =
{
{
"verylow",
"low",
"medium",
"high",
@@ -253,6 +256,11 @@ void Logger::SetConsoleSeverity(const string& severityStr)
}
}
Severity Logger::GetConsoleSeverity()
{
return fConsoleSeverity;
}
void Logger::SetFileSeverity(const Severity severity)
{
fFileSeverity = severity;
@@ -291,6 +299,82 @@ void Logger::SetCustomSeverity(const string& key, const string& severityStr)
}
}
auto Logger::CycleConsoleSeverityUp() -> void
{
size_t current = static_cast<size_t>(fConsoleSeverity);
if (current == fSeverityNames.size() - 1) {
SetConsoleSeverity(static_cast<Severity>(0));
} else {
SetConsoleSeverity(static_cast<Severity>(current + 1));
}
size_t newCurrent = static_cast<size_t>(fConsoleSeverity);
stringstream ss;
for (int i = 0; i < fSeverityNames.size(); ++i) {
ss << (i == newCurrent ? ">" : " ") << fSeverityNames.at(i) << (i == newCurrent ? "<" : " ");
}
ss << "\n\n";
cout << ss.str() << flush;
}
auto Logger::CycleConsoleSeverityDown() -> void
{
size_t current = static_cast<size_t>(fConsoleSeverity);
if (current == 0) {
SetConsoleSeverity(static_cast<Severity>(fSeverityNames.size() - 1));
} else {
SetConsoleSeverity(static_cast<Severity>(current - 1));
}
size_t newCurrent = static_cast<size_t>(fConsoleSeverity);
stringstream ss;
for (int i = 0; i < fSeverityNames.size(); ++i) {
ss << (i == newCurrent ? ">" : " ") << fSeverityNames.at(i) << (i == newCurrent ? "<" : " ");
}
ss << "\n\n";
cout << ss.str() << flush;
}
auto Logger::CycleVerbosityUp() -> void
{
size_t current = static_cast<size_t>(fVerbosity);
if (current == fVerbosityNames.size() - 1) {
SetVerbosity(static_cast<Verbosity>(0));
} else {
SetVerbosity(static_cast<Verbosity>(current + 1));
}
size_t newCurrent = static_cast<size_t>(fVerbosity);
stringstream ss;
for (int i = 0; i < fVerbosityNames.size(); ++i) {
ss << (i == newCurrent ? ">" : " ") << fVerbosityNames.at(i) << (i == newCurrent ? "<" : " ");
}
ss << "\n\n";
cout << ss.str() << flush;
}
auto Logger::CycleVerbosityDown() -> void
{
size_t current = static_cast<size_t>(fVerbosity);
if (current == 0) {
SetVerbosity(static_cast<Verbosity>(fVerbosityNames.size() - 1));
} else {
SetVerbosity(static_cast<Verbosity>(current - 1));
}
size_t newCurrent = static_cast<size_t>(fVerbosity);
stringstream ss;
for (int i = 0; i < fVerbosityNames.size(); ++i) {
ss << (i == newCurrent ? ">" : " ") << fVerbosityNames.at(i) << (i == newCurrent ? "<" : " ");
}
ss << "\n\n";
cout << ss.str() << flush;
}
void Logger::UpdateMinSeverity()
{
fMinSeverity = (fConsoleSeverity <= fFileSeverity) ? fFileSeverity : fConsoleSeverity;
@@ -320,6 +404,19 @@ bool Logger::Logging(Severity severity)
}
}
bool Logger::Logging(const std::string& severityStr)
{
if (fSeverityMap.count(severityStr))
{
return Logging(fSeverityMap.at(severityStr));
}
else
{
LOG(error) << "Unknown severity setting: '" << severityStr;
return false;
}
}
void Logger::SetVerbosity(const Verbosity verbosity)
{
fVerbosity = verbosity;
@@ -338,6 +435,11 @@ void Logger::SetVerbosity(const string& verbosityStr)
}
}
Verbosity Logger::GetVerbosity()
{
return fVerbosity;
}
void Logger::SetConsoleColor(const bool colored)
{
fColored = colored;
@@ -473,9 +575,12 @@ void Logger::RemoveCustomSink(const string& key)
Logger& Logger::Log()
{
char tsstr[32];
if (!strftime(tsstr, sizeof(tsstr), "%H:%M:%S", localtime(&(fMetaData.timestamp))))
{
tsstr[0] = 'u';
lock_guard<mutex> lock(fMtx); // localtime is not threadsafe, guard it
if (!strftime(tsstr, sizeof(tsstr), "%H:%M:%S", localtime(&(fMetaData.timestamp))))
{
tsstr[0] = 'u';
}
}
if ((!fColored && LoggingToConsole()) || LoggingToFile())
@@ -490,14 +595,20 @@ Logger& Logger::Log()
fBWOut << "[" << tsstr << "]";
}
fBWOut << "[" << fMetaData.severity_name << "]";
if (fVerbosity > Verbosity::verylow)
{
fBWOut << "[" << fMetaData.severity_name << "]";
}
if (fVerbosity == Verbosity::veryhigh)
{
fBWOut << "[" << fMetaData.file << ":" << fMetaData.line << ":" << fMetaData.func << "]";
}
fBWOut << " ";
if (fVerbosity != Verbosity::verylow)
{
fBWOut << " ";
}
}
if (fColored && (LoggingToConsole()))
@@ -512,14 +623,20 @@ Logger& Logger::Log()
fColorOut << "[" << startColor(Color::fgCyan) << tsstr << endColor() << "]";
}
fColorOut << "[" << ColoredSeverityWriter(fMetaData.severity) << "]";
if (fVerbosity > Verbosity::verylow)
{
fColorOut << "[" << ColoredSeverityWriter(fMetaData.severity) << "]";
}
if (fVerbosity == Verbosity::veryhigh)
{
fColorOut << "[" << ColorOut(Color::fgBlue, fMetaData.file) << ":" << ColorOut(Color::fgYellow, fMetaData.line) << ":" << ColorOut(Color::fgBlue, fMetaData.func) << "]";
}
fColorOut << " ";
if (fVerbosity != Verbosity::verylow)
{
fColorOut << " ";
}
}
return *this;

View File

@@ -59,17 +59,20 @@ enum class Severity : int
};
// verbosity levels:
// verylow: message
// low: [severity] message
// medium: [HH:MM:SS][severity] message
// high: [process name][HH:MM:SS:µS][severity] message
// veryhigh: [process name][HH:MM:SS:µS][severity][file:line:function] message
enum class Verbosity : int
{
verylow,
low,
medium,
high,
veryhigh,
// backwards-compatibility:
VERYLOW = verylow,
LOW = low,
MEDIUM = medium,
HIGH = high,
@@ -116,6 +119,7 @@ class Logger
static void SetConsoleSeverity(const Severity severity);
static void SetConsoleSeverity(const std::string& severityStr);
static Severity GetConsoleSeverity();
static void SetFileSeverity(const Severity severity);
static void SetFileSeverity(const std::string& severityStr);
@@ -123,10 +127,17 @@ class Logger
static void SetCustomSeverity(const std::string& key, const Severity severity);
static void SetCustomSeverity(const std::string& key, const std::string& severityStr);
static void CycleConsoleSeverityUp();
static void CycleConsoleSeverityDown();
static void CycleVerbosityUp();
static void CycleVerbosityDown();
static bool Logging(const Severity severity);
static bool Logging(const std::string& severityStr);
static void SetVerbosity(const Verbosity verbosity);
static void SetVerbosity(const std::string& verbosityStr);
static Verbosity GetVerbosity();
static void SetConsoleColor(const bool colored = true);
@@ -177,7 +188,7 @@ class Logger
static const std::unordered_map<std::string, Verbosity> fVerbosityMap;
static const std::unordered_map<std::string, Severity> fSeverityMap;
static const std::array<std::string, 12> fSeverityNames;
static const std::array<std::string, 4> fVerbosityNames;
static const std::array<std::string, 5> fVerbosityNames;
virtual ~Logger() noexcept(false);

View File

@@ -10,7 +10,6 @@
#define FAIRLOGGER_VERSION "@PROJECT_VERSION@"
#define FAIRLOGGER_VERSION_DEC (@PROJECT_VERSION_MAJOR@ * 10000) + (@PROJECT_VERSION_MINOR@ * 100) + @PROJECT_VERSION_PATCH@
#define FAIRLOGGER_VERSION_HEX (@PROJECT_VERSION_MAJOR@ << 16) + (@PROJECT_VERSION_MINOR@ << 8) + @PROJECT_VERSION_PATCH@
#define FAIRLOGGER_VERSION_MAJOR @PROJECT_VERSION_MAJOR@
#define FAIRLOGGER_VERSION_MINOR @PROJECT_VERSION_MINOR@
#define FAIRLOGGER_VERSION_PATCH @PROJECT_VERSION_PATCH@

View File

@@ -39,6 +39,9 @@ void printAllVerbositiesWithSeverity(Severity sev)
{
Logger::SetConsoleSeverity(sev);
cout << endl << "cout: >>> testing severity '" << Logger::SeverityName(sev) << "' with 'verylow' verbosity..." << endl;
Logger::SetVerbosity(Verbosity::verylow);
printEverySeverity();
cout << endl << "cout: >>> testing severity '" << Logger::SeverityName(sev) << "' with 'low' verbosity..." << endl;
Logger::SetVerbosity(Verbosity::low);
printEverySeverity();
@@ -57,6 +60,8 @@ void silentlyPrintAllVerbositiesWithSeverity(Severity sev)
{
Logger::SetConsoleSeverity(sev);
Logger::SetVerbosity(Verbosity::verylow);
printEverySeverity();
Logger::SetVerbosity(Verbosity::low);
printEverySeverity();
Logger::SetVerbosity(Verbosity::medium);