* It is confusing to name the target g3logger. KISS --> g3log. This MIGHT break installations for some but it's a needed correction.
* Updated version number to 2.1.x
Having GoogleTest source in the project means we are likely using a stale version of test. This change is to use CMake to download GoogleTest as part of the build's configuration step.
* Improve CMake module file
* Fix packaging on Win32
* appveyor: Test install and package target
* Travis-CI: Test install and package target
* Update documentation for working with CMake
* Simplify g3loggerConfig.cmake
* Add Doc Prerequisites section
* Restructure Build.cmake to use "modern" Cmake
Since it is deprecated to modify the global compiler flags and similar options, the Build.cmake is converted to use only per target operations.
Additionally, the checks for backtrace and Pthread lib is converted to use the in cmake included functions. Also the check for the cxa_demangle function should be more robust now.
* fixed option for performance test
* use CMAKE_CURRENT_SOURCE_DIR in git cmd-lines to get current version, for better integration as cmake subdirectory
* bump required cmake version to 3.2 and use target_compile_feature to fix OSX compiler recognition and c++14 compiler flags
* Cross-comoiling: Version readout fixed
Test.cmake: Path handling consistent
* ".x" syntax in variable checking removed
* Use G3LOG_DEBUG also in linux-specific code
* Fixed error when linux and shared library is on
* Fixed linux/windows shared lib handling: FATAL_ERROR for wrong cmake
version and no message in linux
* unit tests running with windows shared dll
* CMake automatically uses DLL runtime - remove cmake entries modifying
compiler flags
* missing DBUG vs DEBUG issue in Linux
* generated header added
* correction in CMake: Set HEADER_FILES correctly
* added static library option
* switched to powershell and included WORKING_DIRECTORY
* powershell use in windows and WORKING_DIRECTORY instead of cd
* Fixed appveyor.yml to use Release configuration and run unit tests
* trying to make appveyor work again ...
* make sure ERRORLEVEL is 0 when unit tests run successfully
* Still trying to fix appveyor ...
* Defaulting to shared library in linux, too
* Removed runtime loading test when g3log is not a shared library in linux
* Run unit tests verbosly using ctest.exe
* Disabled AggressiveThreadCallsDuringShutdown test
* Revert "Run unit tests verbosly using ctest.exe" (accidental commit)
This reverts commit b30513450d.
* re-committing valid parts of reverted commit
* DBUG vs DEBUG fix moved to generated_definitions.hpp
* cleanup shared/static option
* clarify cmake build types regardless of type
* Added compile test for DEBUG and DBUG
* put back formatting
* Removed commented out /MD switches for MSVC
* static build with MS libs; remove vc11 support from cmake
* support AMD processor on winXp
* mingw build
* support older versions
* removed cmake warnings
* fix cmake >= 3.1 warnings (CMP0054)
* add target_include_directories - in projects that depend on g3log, do not need to specify include_directories
* Improved CPackage installation
* cleanup of build and test scripts
* c++14 gives for cleaner syntax
* build cleanup libg3logger.so will be a link to the actual libg3logger.so.<major><minor><build>. Only shared libraries from now on
* disableAll for log levels
* new setLogLevel impl
* cleaned up levels, now it should be easy for the user to understand how to add custom levels
* Added "removeSink" method and related functionality to LogWorker API
* Added a new API for plugging in custom Timestamp generator.
* Revert "Added "removeSink" method and related functionality to LogWorker API"
This reverts commit c9cee5d9a0.
* Dropping shared_ptr<Timestamp> in log messages and using regular vars
* Moving to standard timespec struct from custom Timestamp
* Wiring timespec timestamps with formating routine
* Falling back to clock_gettime
* Reverting g3 API changes
* Optimizing format string generation
* Removed _microseconds from LogMessage
* Implemented sec fractional format key
* Optimization of format string generation
* Adjusting comments
* Refining localtime_formatted by introducing two helper functions
* refactored and simplified code
* fixed up some commented away unit tests
* refactoring message specifics tests to it's own test
* Use gcc 4.9
* C++14 for Linux
* Update .travis.yml
* Update buildAndRunTests.sh
* lower case in `-std=c++14`
* -lrt flag for gcc
* Added support for high precision clock on Linux/gcc (already there now for OSX). Windows is still missing
* intermediate comments
* Clarified for some code readers the mysterious use of assert in an expression that is always true
* refactored + renamed functions and constants. Added unit test for retrieving fractional type
* committing changes previously fixed - finished unit testing for g3::internal::time::GetFractional(..)
* added unit test for fractional to string
* added missing unit tests for localtime_formatted
* fixed? nano / microsec functionality to timer
* test
Should work fine on Unix systems, and support install prefixes.
Installs both a static and a shared library to the same location, so we
get an .a and a .so/.dylib file, which can be linked to in the ordinary
way, ie. `-lg3logger`.
1) Breaking change: g3 namespace replaces g2
2) g2log.hpp remains in src/g2log.hpp... but now all it does is to include the g3log.hpp, etc
3) ALL HEADER FILES ARE IN src/g3log/ while all .cpp and .ipp files are in /src (exception for g2log.hpp)
This should make it EASIER for clients to copy/install the header files to the new location. It greatly simplifies
rpm and cpackage installationsw
All other are under g3log. Example: #include <g3log/time.hpp> #include <g3log/g3log.hpp> etc
This makes sure that the package manager (to be used soon) does NOT clutter any /usr/local/include space
instead all the includes will be in /usr/local/include/g3log (or similar)