diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e53335a..53d75605 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,7 +38,7 @@ xo_add_headeronly_library(indentlog) # ---------------------------------------------------------------- # standard install + provide find_package() support -xo_install_library2(indentlog) +xo_install_library3(indentlog ${PROJECT_NAME}Targets) xo_install_include_tree() xo_export_cmake_config(${PROJECT_NAME} ${PROJECT_VERSION} ${PROJECT_NAME}Targets) diff --git a/include/xo/indentlog/log_level.hpp b/include/xo/indentlog/log_level.hpp index a4392286..dbe49b29 100644 --- a/include/xo/indentlog/log_level.hpp +++ b/include/xo/indentlog/log_level.hpp @@ -2,6 +2,7 @@ #pragma once +#include #include namespace xo { @@ -54,6 +55,23 @@ namespace xo { return (static_cast(x) <= static_cast(y)); } + inline std::ostream & + operator<<(std::ostream & os, + log_level x) { + switch(x) { + case log_level::never: os << "never"; break; + case log_level::verbose: os << "verbose"; break; + case log_level::chatty: os << "chatty"; break; + case log_level::info: os << "info"; break; + case log_level::warning: os << "warning"; break; + case log_level::error: os << "error"; break; + case log_level::severe: os << "severe"; break; + case log_level::always: os << "always"; break; + case log_level::silent: os << "silent"; break; + //default: os << "???"; break; + } + return os; + } /* operator<<*/ } /*namespace xo*/ /* end log_level.hpp */ diff --git a/include/xo/indentlog/scope.hpp b/include/xo/indentlog/scope.hpp index 551589e9..107dfc3e 100644 --- a/include/xo/indentlog/scope.hpp +++ b/include/xo/indentlog/scope.hpp @@ -23,7 +23,7 @@ namespace xo { # define XO_DEBUG(debug_flag) XO_ENTER1(always, debug_flag) # define XO_DEBUG2(debug_flag, name1) XO_ENTER2(always, debug_flag, name1) -# define XO_LITERAL(lvl, name1, name2) xo::scope_setup(xo::log_level::lvl, function_style::literal, name1, name2, __FILE__, __LINE__) +# define XO_LITERAL(lvl, name1, name2) xo::scope_setup(lvl, function_style::literal, name1, name2, __FILE__, __LINE__) //# define XO_SSETUP0() xo::scope_setup(__FUNCTION__) //# define XO_SSETUP0(lvl) xo::scope_setup(xo::log_level::lvl, xo::log_config::style, __PRETTY_FUNCTION__, __FILE__, __LINE__)