mirror of
https://github.com/FairRootGroup/FairLogger.git
synced 2025-10-17 10:31:45 +00:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
de02bd068f | ||
|
24001470e5 | ||
|
5696fef902 | ||
|
80b5eb6fb1 | ||
|
c26d4ba013 | ||
|
661bd88d81 | ||
|
65068fd959 | ||
|
00e7468b25 | ||
|
af288551aa | ||
|
8f68cef9e3 | ||
|
6d71d22986 |
@@ -16,8 +16,8 @@ include(FairLoggerLib)
|
|||||||
set_fairlogger_cmake_policies()
|
set_fairlogger_cmake_policies()
|
||||||
get_git_version(OUTVAR_PREFIX FairLogger)
|
get_git_version(OUTVAR_PREFIX FairLogger)
|
||||||
|
|
||||||
project(FairLogger VERSION ${FairLogger_VERSION} LANGUAGES CXX)
|
project(FairLogger VERSION ${FairLogger_VERSION} LANGUAGES C CXX)
|
||||||
message("${BWhite}${PROJECT_NAME}${CR} ${FairLogger_GIT_VERSION} from ${FairLogger_DATE}")
|
message(STATUS "${BWhite}${PROJECT_NAME}${CR} ${FairLogger_GIT_VERSION} from ${FairLogger_DATE}")
|
||||||
|
|
||||||
set_fairlogger_defaults()
|
set_fairlogger_defaults()
|
||||||
|
|
||||||
@@ -40,7 +40,11 @@ add_library(FairLogger SHARED
|
|||||||
target_include_directories(FairLogger
|
target_include_directories(FairLogger
|
||||||
PUBLIC
|
PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/logger>
|
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/logger>
|
||||||
$<INSTALL_INTERFACE:include>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
|
)
|
||||||
|
set_target_properties(FairLogger PROPERTIES
|
||||||
|
VERSION ${PROJECT_VERSION}
|
||||||
|
SOVERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}"
|
||||||
)
|
)
|
||||||
|
|
||||||
if(BUILD_TESTING)
|
if(BUILD_TESTING)
|
||||||
@@ -84,14 +88,14 @@ endif()
|
|||||||
|
|
||||||
|
|
||||||
# Summary ######################################################################
|
# Summary ######################################################################
|
||||||
message(" ")
|
message(STATUS " ")
|
||||||
message(" ${Cyan}COMPONENT BUILT? INFO${CR}")
|
message(STATUS " ${Cyan}COMPONENT BUILT? INFO${CR}")
|
||||||
message(" ${BWhite}library${CR} ${BGreen}YES${CR} (default, always built)")
|
message(STATUS " ${BWhite}library${CR} ${BGreen}YES${CR} (default, always built)")
|
||||||
if(BUILD_TESTING)
|
if(BUILD_TESTING)
|
||||||
set(testing_summary "${BGreen}YES${CR} (default, disable with ${BMagenta}-DBUILD_TESTING=OFF${CR})")
|
set(testing_summary "${BGreen}YES${CR} (default, disable with ${BMagenta}-DBUILD_TESTING=OFF${CR})")
|
||||||
else()
|
else()
|
||||||
set(testing_summary "${BRed} NO${CR} (enable with ${BMagenta}-DBUILD_TESTING=ON${CR})")
|
set(testing_summary "${BRed} NO${CR} (enable with ${BMagenta}-DBUILD_TESTING=ON${CR})")
|
||||||
endif()
|
endif()
|
||||||
message(" ${BWhite}tests${CR} ${testing_summary}")
|
message(STATUS " ${BWhite}tests${CR} ${testing_summary}")
|
||||||
message(" ")
|
message(STATUS " ")
|
||||||
################################################################################
|
################################################################################
|
||||||
|
@@ -47,10 +47,6 @@ EndIf()
|
|||||||
|
|
||||||
Ctest_Start($ENV{ctest_model})
|
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}"
|
Ctest_Configure(BUILD "${CTEST_BINARY_DIRECTORY}"
|
||||||
OPTIONS "${configure_options}"
|
OPTIONS "${configure_options}"
|
||||||
)
|
)
|
||||||
|
55
Jenkinsfile.nightly
Normal file
55
Jenkinsfile.nightly
Normal 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: 'apr18'],
|
||||||
|
[os: 'MacOS10.11', arch: 'x86_64', compiler: 'AppleLLVM8.0.0', fairsoft: 'apr18'],
|
||||||
|
[os: 'MacOS10.13', arch: 'x86_64', compiler: 'AppleLLVM9.0.0', fairsoft: 'apr18'],
|
||||||
|
]) { 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'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -6,8 +6,6 @@
|
|||||||
# copied verbatim in the file "LICENSE" #
|
# copied verbatim in the file "LICENSE" #
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.9.4 FATAL_ERROR)
|
|
||||||
|
|
||||||
@PACKAGE_INIT@
|
@PACKAGE_INIT@
|
||||||
|
|
||||||
### General variables for project discovery/inspection
|
### General variables for project discovery/inspection
|
||||||
@@ -16,9 +14,13 @@ set(FairLogger_GIT_VERSION @FairLogger_GIT_VERSION@)
|
|||||||
|
|
||||||
set_and_check(FairLogger_ROOT @PACKAGE_CMAKE_INSTALL_PREFIX@)
|
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_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_LIBDIR @PACKAGE_CMAKE_INSTALL_PREFIX@/@FairLogger_INSTALL_LIBDIR@)
|
||||||
|
|
||||||
|
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
|
### Import targets
|
||||||
include(@PACKAGE_CMAKE_INSTALL_PREFIX@/@PACKAGE_INSTALL_DESTINATION@/FairLoggerTargets.cmake)
|
include(@PACKAGE_CMAKE_INSTALL_PREFIX@/@PACKAGE_INSTALL_DESTINATION@/FairLoggerTargets.cmake)
|
||||||
|
|
||||||
|
@@ -35,7 +35,9 @@ endif()
|
|||||||
macro(set_fairlogger_cmake_policies)
|
macro(set_fairlogger_cmake_policies)
|
||||||
# Find more details to each policy with cmake --help-policy CMPXXXX
|
# Find more details to each policy with cmake --help-policy CMPXXXX
|
||||||
foreach(policy
|
foreach(policy
|
||||||
|
CMP0025 # Compiler id for Apple Clang is now AppleClang.
|
||||||
CMP0028 # Double colon in target name means ALIAS or IMPORTED target.
|
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.
|
CMP0048 # The ``project()`` command manages VERSION variables.
|
||||||
CMP0054 # Only interpret ``if()`` arguments as variables or keywords when unquoted.
|
CMP0054 # Only interpret ``if()`` arguments as variables or keywords when unquoted.
|
||||||
)
|
)
|
||||||
@@ -128,12 +130,30 @@ macro(set_fairlogger_defaults)
|
|||||||
|
|
||||||
# Define install dirs
|
# Define install dirs
|
||||||
set(FairLogger_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR})
|
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_INCDIR ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME_LOWER})
|
||||||
set(FairLogger_INSTALL_DATADIR ${CMAKE_INSTALL_DATADIR}/${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
|
# Define export set, only one for now
|
||||||
set(FairLogger_EXPORT_SET ${PROJECT_NAME}Targets)
|
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()
|
endmacro()
|
||||||
|
|
||||||
|
|
||||||
|
@@ -320,6 +320,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)
|
void Logger::SetVerbosity(const Verbosity verbosity)
|
||||||
{
|
{
|
||||||
fVerbosity = verbosity;
|
fVerbosity = verbosity;
|
||||||
|
@@ -124,6 +124,7 @@ class Logger
|
|||||||
static void SetCustomSeverity(const std::string& key, const std::string& severityStr);
|
static void SetCustomSeverity(const std::string& key, const std::string& severityStr);
|
||||||
|
|
||||||
static bool Logging(const Severity severity);
|
static bool Logging(const Severity severity);
|
||||||
|
static bool Logging(const std::string& severityStr);
|
||||||
|
|
||||||
static void SetVerbosity(const Verbosity verbosity);
|
static void SetVerbosity(const Verbosity verbosity);
|
||||||
static void SetVerbosity(const std::string& verbosityStr);
|
static void SetVerbosity(const std::string& verbosityStr);
|
||||||
|
Reference in New Issue
Block a user