ChangeLog, index.html
NTEventLogAppender:
NTEventLogAppender:
NTEventLogAppender:
ChangeLog
NTEventLogAppender calls virtual open() from constructor
Call to virtual function from a constructor is fixed with https://sourceforge.net/p/log4cpp/codegit/ci/d024ee2c60198bc233de40417bad0ab416b079d9/ Few more topics are covered, and comments are left in merge request.
Several improvements to NTEventLogAppender
Summing comments on commits in merge request and my replies: close() now resets _hEventSource to NULL to prevent dangling handle close() is either the last action performed by the class in destructor, or the action which is immediately followed by the open() and rewites handle right away. Hence, though nulling it might look like a proper precaution, it is redundant. Functions that use _hEventSource now check for the handle to be non-NULL before using it (prevents invalid parameter exceptions in recent...
Avoid calling virtual functions from constructor: make open() non-virtual to remove ambiguity.
NTEventLogAppender:
Changelog
auto-format
log4cpp Timestamp class does not seem year 2038 ready
@pulkomandy, Thank you, Adrien, for bringing this issue. There is commit https://sourceforge.net/p/log4cpp/codegit/ci/338670431fc9cc41b95f792ddeef20a203d112a2/ to address this.
Fix Y2038 issue in Timestamp class (32-bit seconds field overflow).
Use cross-platform wrapper returning error code and named localtime_tsafe as a replacement for platform-specific thread safe localtime_r and localtime_s functions.
testDailyRollingFileAppender: c++98 compat
log4cpp Timestamp class does not seem year 2038 ready
fix clang16 configure error
fix clang16 configure error
fix clang16 configure error
Fixes to the Visual Studio 2010 build
Jac, thanks for the extensive efforts and sorry the changes were not upstreamed. The project moved to CMake build files on Windows. MSVS2010 project files can be autogenerated by CMake: cmake -G "Visual Studio 10 2010" -A Win32 .. cmake -G "Visual Studio 10 2010" -A x64 .. https://cmake.org/cmake/help/v3.10/generator/Visual%20Studio%2010%202010.html Previous project files are archived to avoid mixup between them and cmake files when opening a project in MSVS.
Build in cygwin error: '::asprintf' has not been declared
fix for bug 149 - Build in cygwin error: '::asprintf' has not been declared
Problems when compiling application against log4cpp (1.1.3).
Library version log4cpp (1.1.6) includes examples folder, which builds smaller programs using the library. I've run a test to ensure cross compilation with g++-aarch64-linux-gnu works and binary is able to log lines using the library when clean build is used: x86_64 host running Ubuntu 24.04 and cross compiling log4cpp for aarch64 builds example binary and executes it well: cd log4cpp-codegit mkdir build-arm64 cd build-arm64 cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-x86_64-aarch64.cmake...
Resolving build troubles within BCB5
Several troubles when build in BCB5
MSVC Custom Build Problem
configure is incorrect for Solaris CC
can't build log4cpp-0.3.5rc2 in cygwin and redhat linux
Does not build under .Net Studio 2003
PropertyConfiguratorImpl and SyslogAppender
"SyslogAppender" in a property file corresponds to c++ class RemoteSyslogAppender "LocalSyslogAppender" in a property file corresponds to c++ class SyslogAppender
DailyRollingFileAppender: more detailed documentation, added safety checks to implementation, refine tests
date appender and auto_link
date appender and auto_link
1) Similar functionality is implemented by DailyRollingFileAppender. 2) Native build systems are obsoleted in favor of CMake (autotools is present too)
logs using the %d format specifier were truncated too early Thanks, will keep in mind that there is an issue with implementation of internally shipped snprintf(). As for cross-compilation for a specific target architecture and relying on the standard snprintf() implementation, I assume that running ./configure with preset variable as shown above is an appropriate solution. In common cross-compilation scenario, there is no reliable way to verify whether standard snprintf() runs correctly on the target...
Hello, Unfortunately we didn't keep many more details about the problem, and I don't remember. If I read our internal ticket from back then correctly, logs using the %d format specifier were truncated too early, despite having sufficient space in the output buffer for snprintf (maybe only with "large" numbers). Since then, the project has switched to another logging library. So I'm not even able to easily do a build with unpatched log4cpp to check for the exact problem again.
I'm not sure why the check was set up in the way it is. Does it really need to detect broken implementations of snprintf that return an incorrect value, or could a compile only check be enough? Here is an answer to why: https://www.gnu.org/software/autoconf/manual/autoconf-2.71/autoconf.html snprintf In C99 and later, if the output array isn’t big enough and if no other errors occur, snprintf and vsnprintf truncate the output and return the number of bytes that ought to have been produced. Some older...
Hello, This was cross-compiling from (if I remember correctly) Debian 11 x86_64, using Yocto to build an arm64 Linux system. It is not possible in this configuration for AC_TRY_RUN to actually run the code, as documented in autoconf manual: https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.72/html_node/Runtime.html Avoid running test programs if possible, because this prevents people from configuring your package for cross-compiling. (AC_TRY_RUN is renamed to AC_RUN_IFELSE in...
Compiling failed on VC5
Use of format attribute with GNU compiler
Addressed with commit https://sourceforge.net/p/log4cpp/codegit/ci/007e1a39add173f6fc97e61a4cc91cfd4081d542
Visual Studio's generated output file do not follow a common naming scheme
MS VS project files are archived in favor of CMake-generated build.
Visual Studio 2010 and 2013 Solution files
MS VS project files are archived in favor of CMake-generated build.
builtin implementation of snprintf doesn't work
@pulkomandy, Could you tell what environment causes mentioned failure? What are host and target archs, and what problem is observed there? Simply assuming that snprintf is always available might be leading to even more troubles.
@pulkomandy, thanks for highlighting that. The issue is addressed with 007e1a39add173f6fc97e61a4cc91cfd4081d542 and will be included into next release. __attribute__((format(printf, fmt, arg))) is utilized for GCC/Clang
Logging functions are not declared with printf-like "format" function attribute
@pulkomandy, thanks for highlighting that. The issue is addressed with https://sourceforge.net/p/log4cpp/codegit/ci/007e1a39add173f6fc97e61a4cc91cfd4081d542/ and will be included into next release. __attribute__((format(printf, fmt, arg))) is utilized for GCC/Clang
fix msg
Add compile-time printf format checking to Category logging methods
* Bump version to 1.1.7
* Fix doxygen annotations for examples of macro usage
* New logging level **TRACE** with priority value **800** for fine-grained diagnostic logging.
index.html, log4cpp-1.1.6
Logging functions are not declared with printf-like "format" function attribute
log4cpp 1.1.6 released
Remove references to directories msvc6 bcb5 openvms from autotools configs
index.html
README.md for githib
fix cmake examples build
index.html wording
index.html
Prevent MS VS from mixing old project files with CMake builds
Move all MSVC, BCB, OpenVMS project catalogs into separate directory 'projects'. No changes are applied to the project files themselves.
Add path to the shared library into PATH for the test on windows so CTest can run it
Keep project version-related macros for hardcoded config header files in single file <log4cpp/config-project-version.h>
Add formatted and streaming log4cpp macros with compile-time stripping
index.html
.gitignore
clang-format setting 'SpacesInAngles: Never' breaks compilation on older c++ compilers.
Use va_copy for C+11 and later; use __va_copy for GCC pre-C++11; fallback to simple copy
index.html, ChangeLog
Added support for windows shared builds. Improved CMake syntax. Added export targets
Sync lib versions in CMakeLists.txt and configure.in, set 1.1.6
Update and fix THANKS, leave ascii content
Utilize macros LOG4CPP_PACKAGE_NAME, LOG4CPP_PACKAGE_VERSION for tests and examples
Bunch of renaming for the tests:
CMake: add test build support using CTest
Exporting class Properties for the testProperties.cpp to run on Windows
Small fixes for the tests
Emulate autotools behaviour and generate include/log4cpp/config.h from Autotools-style config.h.in
Building examples is enabled via the LOG4CPP_BUILD_EXAMPLES option.
Export targets for cmake install; keep capsed targets as aliases; add versioning for exports. config.h is for export
Replace global commands with targeted ones; replace duplicates with calls to macro