According to https://logging.apache.org/log4cxx/1.3.1/changelog.html: Release 1.3.1 - 2024-11-30 ========================== This is a minor bugfix release to fix issues found with 1.3.0. Bug - Properly prevent undefined behaviour when an appender is deleted without being closed [#431] - Prevent abnormal termination on exit when using a static NDC/MDC variable [#426] - Support for std::experimental::optional (in the standard library used by gcc 5.4) [#419] Release 1.3.0 - 2024-10-21 ========================== Release 1.3.0 includes the following new features: - Overhead reduction of upto 60% sending logging events to an appender - Statistics on the AsyncAppender's queue length (in Log4cxx debug output) - Fuzz tests along with Google OSS-Fuzz integration The following issues have been addressed: - MSYS2/MINGW build errors [#389] - thread_local problems in MSYS2/MINGW [#394] - A potential 'use after free' fault when using AsyncAppender [#397] Release 1.2.0 - 2024-01-01 ========================== The following issues have been addressed: - The locale external character encoding option reverting to US-ASCII [LOGCXX-483] - A segfault during process exit when log4cxx::LogManager::shutdown is not called [#268] [#219] - The cmake option to include a MultiprocessRollingFileAppender did not work - Build failure in a MSYS2 environment - Format settings (e.g. std::hex) were retained across LOG4CXX_XXXXX macro logging requests - When the APR library was built without support for threads (APR_HAS_THREADS=0): the AsyncAppender and dynamically loaded configuration changes were not available a single nested/mapped diagnostic context (NDC/MDC) would be used and updated (without synchronization) - On Windows, GetThreadDescription() called for each logging event when the thread name was empty [#321] Release 1.2.0 includes the following new features: - LOG4CXX_XXXX macros now support logging of QStrings directly - log4cxx::hexdump function that returns a string of hexadecimal byte values - Ability to remove a HierarchyEventListener [#233] - Less string copying when sending a logging event to an appender - Less frequent mutex contention when logging from multiple threads concurrently [#320] - Allow thread information to be included in JSON formatted output - Optional support for logging during process termination [#271] - A cmake option to place Log4cxx functions in a different namespace [#277] - Optionally use std::format in LOG4CXX_XXXX_FMT macros instead of fmt::format [#291] - Support for per object enabling/disabling of logging requests (see log4cxx::LoggerInstancePtr) Note: the LOG4CXX_CHARSET cmake option (external character encoding) default value has changed to utf-8 Within Buildroot, log4cxx has no reverse dependencies, and we tested building it with gcc 7.x to verify compatibility with reasonably old compilers. This new version of log4cxx now needs wchar support, as several multi-byte functions are now used since upstream commit 2569c6beac983e933574d001ec1601e569355c50 ("Implement a functional 'locale' character encoding (#252)"). A full test-pkg build was performed with this package update: https://gitlab.com/tpetazzoni/buildroot/-/pipelines/1603576624. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Signed-off-by: Julien Olivain <ju.o@free.fr>
37 lines
1.5 KiB
Plaintext
37 lines
1.5 KiB
Plaintext
config BR2_PACKAGE_LOG4CXX
|
|
bool "log4cxx"
|
|
# apr really needs shared library support
|
|
depends on !BR2_STATIC_LIBS
|
|
depends on BR2_INSTALL_LIBSTDCPP
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
depends on BR2_USE_WCHAR # mbsinit
|
|
depends on BR2_USE_MMU # apr
|
|
depends on BR2_USE_WCHAR || BR2_TOOLCHAIN_GCC_AT_LEAST_7 # boost
|
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS || BR2_TOOLCHAIN_GCC_AT_LEAST_7 # boost-thread
|
|
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || BR2_TOOLCHAIN_GCC_AT_LEAST_7 # boost-thread
|
|
select BR2_PACKAGE_APR
|
|
select BR2_PACKAGE_APR_UTIL
|
|
select BR2_PACKAGE_BOOST if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
select BR2_PACKAGE_BOOST_ATOMIC if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
select BR2_PACKAGE_BOOST_CHRONO if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
select BR2_PACKAGE_BOOST_DATE_TIME if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
select BR2_PACKAGE_BOOST_THREAD if !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
help
|
|
Apache log4cxx is a logging framework for C++ patterned
|
|
after Apache log4j.
|
|
|
|
https://logging.apache.org/log4cxx/
|
|
|
|
comment "log4cxx needs a toolchain w/ C++, threads, dynamic library, wchar"
|
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
|
BR2_STATIC_LIBS || !BR2_USE_WCHAR
|
|
depends on BR2_USE_MMU
|
|
|
|
comment "log4cxx needs a toolchain w/ wchar or gcc >= 7"
|
|
depends on !(BR2_USE_WCHAR || BR2_TOOLCHAIN_GCC_AT_LEAST_7)
|
|
depends on BR2_USE_MMU
|
|
|
|
comment "log4cxx needs a toolchain not affected by GCC bug 64735"
|
|
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_7
|
|
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|