Hi there
I took matters into my own hands regarding log4cxx bugs when using it in
static variables and I have the following patches (the one bellow is the
first one). This patches are made/tested on the log4cxx version
distributed from http://littletux.homelinux.org/log4cxx/ (the CVS one
does not compile for me with GNU autotools).
The following patch removes a warning when compiling on AMD64 because
log4cxx uses "int" to store pointers when sizeof(int) == 4 and
sizeof(void*) == 8 on AMD64. It is generally more portable to use long
(still this is not a perfect solution, a perfect solution involves
proper autoconf checks and/or usage of <stdint.h> intptr_t type).
--- include/log4cxx/private/log4cxx_private.h.in (revision 692)
+++ include/log4cxx/private/log4cxx_private.h.in (revision 694)
@@ -46,7 +46,7 @@
//
// unsigned int same size as void*
//
-typedef unsigned int log4cxx_intptr_t;
+typedef unsigned long log4cxx_intptr_t;
#define LOG4CXX_LOCALE_ENCODING_UTF8 0
#define LOG4CXX_LOCALE_ENCODING_ISO_8859_1 0
--
Mihai RUSU Email: dizzy@xxxxxxxxx
GPG : http://dizzy.roedu.net/dizzy-gpg.txt WWW: http://dizzy.roedu.net
"Linux is obsolete" -- AST
|