Browse Source

Updated log4CPlus to latest version containing bugfixes.

Former-commit-id: 4b588bd66a
tempestpy_adaptions
PBerger 11 years ago
parent
commit
59b7ca39d9
  1. 6
      CMakeLists.txt
  2. 345
      resources/3rdparty/log4cplus-1.1.2-rc2/README
  3. 5
      resources/3rdparty/log4cplus-1.1.2-rc2/REVISION
  4. 480
      resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config.h
  5. 1
      resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/stamp-h2
  6. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplusSD.c.idb
  7. 1
      resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplusSD.lib.REMOVED.git-id
  8. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplussd.c.pdb
  9. 1
      resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Release/log4cplusS.lib.REMOVED.git-id
  10. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Release/log4cpluss.c.pdb
  11. 41
      resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.la
  12. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so
  13. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so.1.1.2
  14. BIN
      resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so.7
  15. 15
      resources/3rdparty/log4cplus-1.1.3-rc1/.dir-locals.el
  16. 2
      resources/3rdparty/log4cplus-1.1.3-rc1/AUTHORS
  17. 67
      resources/3rdparty/log4cplus-1.1.3-rc1/CMakeLists.txt
  18. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/COPYING
  19. 64
      resources/3rdparty/log4cplus-1.1.3-rc1/ChangeLog
  20. 3
      resources/3rdparty/log4cplus-1.1.3-rc1/ConfigureChecks.cmake
  21. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/INSTALL
  22. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/LICENSE
  23. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/Log4CPlusCPack.cmake
  24. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/Log4CPlusUtils.cmake
  25. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/Makefile.am
  26. 1
      resources/3rdparty/log4cplus-1.1.3-rc1/Makefile.in
  27. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/NEWS
  28. 424
      resources/3rdparty/log4cplus-1.1.3-rc1/README
  29. 5
      resources/3rdparty/log4cplus-1.1.3-rc1/REVISION
  30. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/TODO
  31. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/acinclude.m4
  32. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/aclocal.m4
  33. 392
      resources/3rdparty/log4cplus-1.1.3-rc1/android/android.toolchain.cmake
  34. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android.sh
  35. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_armeabi.sh
  36. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_mips.sh
  37. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_neon.sh
  38. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_x86.sh
  39. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/ar-lib
  40. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/config.guess
  41. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/config.sub
  42. 108
      resources/3rdparty/log4cplus-1.1.3-rc1/configure
  43. 58
      resources/3rdparty/log4cplus-1.1.3-rc1/configure.ac
  44. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/cygport/configure.ac-disable-__thread-keyword.patch
  45. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/cygport/configure.ac-relax-libtool-version.patch
  46. 12
      resources/3rdparty/log4cplus-1.1.3-rc1/cygport/log4cplus.cygport
  47. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/depcomp
  48. 4
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/doxygen.config
  49. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/doxygen.css
  50. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/release.txt
  51. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/unicode.txt
  52. 4
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_doxygen.config
  53. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_footer.html
  54. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_header.html
  55. 160
      resources/3rdparty/log4cplus-1.1.3-rc1/iOS/ConfigureChecks.cmake
  56. 13
      resources/3rdparty/log4cplus-1.1.3-rc1/iOS/README.txt
  57. 193
      resources/3rdparty/log4cplus-1.1.3-rc1/iOS/iOS.cmake
  58. 18
      resources/3rdparty/log4cplus-1.1.3-rc1/iOS/scripts/cmake_ios_armv7.sh
  59. 19
      resources/3rdparty/log4cplus-1.1.3-rc1/iOS/scripts/cmake_ios_i386.sh
  60. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/Makefile.am
  61. 1
      resources/3rdparty/log4cplus-1.1.3-rc1/include/Makefile.in
  62. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/appender.h
  63. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/asyncappender.h
  64. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/boost/deviceappender.hxx
  65. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/clfsappender.h
  66. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/clogger.h
  67. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.h.cmake.in
  68. 6
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.h.in
  69. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.hxx
  70. 3
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/defines.hxx.in
  71. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/macosx.h
  72. 14
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/win32.h
  73. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/windowsh-inc.h
  74. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/configurator.h
  75. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/consoleappender.h
  76. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/fileappender.h
  77. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/fstreams.h
  78. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/appenderattachableimpl.h
  79. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/fileinfo.h
  80. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/lockfile.h
  81. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/loglog.h
  82. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/logloguser.h
  83. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/pointer.h
  84. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/property.h
  85. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/queue.h
  86. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/sleep.h
  87. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/snprintf.h
  88. 3
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/socket.h
  89. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/socketbuffer.h
  90. 8
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/stringhelper.h
  91. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/thread-config.h
  92. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/timehelper.h
  93. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/hierarchy.h
  94. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/hierarchylocker.h
  95. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/cygwin-win32.h
  96. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/env.h
  97. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/internal.h
  98. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/socket.h
  99. 23
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/layout.h
  100. 0
      resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/log4judpappender.h

6
CMakeLists.txt

@ -400,9 +400,9 @@ add_test(NAME storm-performance-tests COMMAND storm-performance-tests)
set(BUILD_SHARED_LIBS OFF CACHE BOOL "If TRUE, log4cplus is built as a shared library, otherwise as a static library")
set(LOG4CPLUS_BUILD_TESTING NO)
set(LOG4CPLUS_USE_UNICODE OFF)
add_subdirectory("${PROJECT_SOURCE_DIR}/resources/3rdparty/log4cplus-1.1.2-rc2")
include_directories("${PROJECT_SOURCE_DIR}/resources/3rdparty/log4cplus-1.1.2-rc2/include")
include_directories("${PROJECT_BINARY_DIR}/resources/3rdparty/log4cplus-1.1.2-rc2/include") # This adds the defines.hxx file
add_subdirectory("${PROJECT_SOURCE_DIR}/resources/3rdparty/log4cplus-1.1.3-rc1")
include_directories("${PROJECT_SOURCE_DIR}/resources/3rdparty/log4cplus-1.1.3-rc1/include")
include_directories("${PROJECT_BINARY_DIR}/resources/3rdparty/log4cplus-1.1.3-rc1/include") # This adds the defines.hxx file
target_link_libraries(storm log4cplusS)
target_link_libraries(storm-functional-tests log4cplusS)
target_link_libraries(storm-performance-tests log4cplusS)

345
resources/3rdparty/log4cplus-1.1.2-rc2/README

@ -1,345 +0,0 @@
Short Description
=================
log4cplus is a simple to use C++ logging API providing thread-safe,
flexible, and arbitrarily granular control over log management and
configuration. It is modeled after the Java log4j API.
Latest Project Information
==========================
The latest up-to-date information for this project can be found at
http://log4cplus.sourceforge.net. Please submit bugs, patches,
feature requests, etc. there.
Tested on the following platforms
=================================
- Linux/AMD64 with GCC 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
- Linux/AMD64 with Sun C++ 5.12 Linux_i386 2011/11/16
- Linux/AMD64 with Clang version 3.0-6ubuntu3 (tags/RELEASE_30/final)
(based on LLVM 3.0)
- Linux/AMD64 with Intel(R) C++ Intel(R) 64 Compiler XE for
applications running on Intel(R) 64, Version 12.1 Build 20120410
- FreeBSD/AMD64 with GCC 3.4.6, 4.2.1 and 4.3.3
- Windows 7 with MS Visual C++ 10.0
- OpenSolaris 5.11 with Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21,
with -library=stlport4
- Solaris 5.10 with Sun C++ 5.8 2005/10/13, with -library=stlport4
- NetBSD 5.0.2/AMD64 with GCC 4.1.3 20080704 prerelease (NetBSD nb2
20081120)
- OpenBSD 5.0/AMD64 with GCC 4.2.1 20070719
Configure script options
========================
--enable-debugging
------------------
This option is disabled by default. This option mainly affects GCC
builds but it also has some limitted effect on non-GCC builds. It
turns on debugging information generation, undefines NDEBUG symbol,
adds '-fkeep-inline-functions' and '-fstack-check' (GCC).
--enable-warnings
-----------------
This option is enabled by default. It adds platform / compiler
dependent warning options to compiler command line.
`--enable-so-version`
---------------------
This option is enabled by default. It enables SO version decoration
on resulting library file, e.g., the `.2.0.0` in
`liblog4cplus-1.2.so.2.0.0`.
`--enable-release-version`
--------------------------
This option is enabled by default. It enables release version
decoration on the resulting library file, e.g., the `-1.2` in
`liblog4cplus-1.2.so.2.0.0`.
--enable-profiling
------------------
This option is disabled by default. This option adds profiling
information generation compiler option -pg to GCC and Sun CC / Solaris
Studio builds.
--enable-threads
----------------
This option is enabled by default. It turns on detection of necessary
compiler and linker flags that enable POSIX threading support.
While this detection usually works well, some platforms still need
help with configuration by supplying additional flags to the configure
script. One of the know deficiencies is Solaris Studio on Linux. See
one of the later note for details.
--with-working-locale
---------------------
This is one of three locale and wchar_t <-> char conversion related
options. It is disabled by default.
It is know to work well with GCC on Linux. Other platforms generally
have lesser locale support in their implementations of the C++
standard library. It is known not to work well on any *BSD.
See also docs/unicode.txt.
--with-working-c-locale
-----------------------
This is second of wchar_t <-> char conversion related options. It is
disabled by default.
It is known to work well on most *NIX platforms, including recent Cygwin.
--with-iconv
------------
This is third of wchar_t <-> char conversion related options. It is
disabled by default.
The conversion using iconv() function always uses "UTF-8" and
"WCHAR_T" as source/target encodings. It is known to work well on
platforms with GNU iconv. Different implementations of iconv() might
not support "WCHAR_T" encoding selector.
Either system provided iconv() or library provided libiconv() are
detected and accepted. Also both SUSv3 and GNU iconv() function
signatures are accepted.
--with-qt
---------
This option is disabled by default. It enables compilation of a
separate shared library (liblog4cplusqt4debugappender) that implements
Qt4DebugAppender. It requires Qt4 and pkg-config to be installed.
Notes
=====
Cygwin/MinGW
------------
Some version of GCC (3.4.x and probably some of 4.x series too) on
Windows (both Mingw and Cygwin) produces lots of warnings of the form
"warning: inline function 'void foo()' is declared as dllimport:
attribute ignored." This can be worked around by adding
-Wno-attributes option to GCC command. Unfortunatelly, not all
affected version of GCC have this option.
Windows and TLS
---------------
log4cplus uses thread-local storage (TLS) for NDC, MDC and to optimize
use of some temporary objects. On Windows there are two ways to get
TLS: (1) using TlsAlloc() etc. functions, and (2) using
__declspec(thread). While method (2) generates faster code, it has
some limitations prior to Windows Vista. If log4cplus.dll is loaded
at run time using LoadLibrary() (or as a dependency of such loaded
library), then accessing __declspec(thread) variables can cause
general protection fault (GPF) errors. This is because Windows prior
to Windows Vista do not extend the TLS for libraries loaded at run
time using LoadLibrary(). To allow using the best available method,
log4cplus enables the method (2) by checking _WIN32_WINNT >= 0x0600
condition, when compiling log4cplus targetted to Windows Vista or
later.
Threads and signals
-------------------
log4cplus is not safe to be used from async signals' handlers. This
is a property of most threaded programmes in general. If you are
going to use log4cplus in threaded application and if you want to use
log4cplus from signal handlers then your only option is to block
signals in all threads but one that will handle all signals. On POSIX
platforms, this is possible using the sigwait() call. log4cplus
enables this approach by blocking all signals in any threads created
through its threads helpers.
IBM's XL C/C++ compiler
-----------------------
IBM's XL C/C++ compiler executable has many variants ([1]). To
compile log4cplus with threading support specify one of the compiler
variants that support threading using the CXX variable on configure
script command line. E.g.:
$ ../configure --enable-threads CXX=xlC_r
[1] <http://pic.dhe.ibm.com/infocenter/comphelp/v121v141/index.jsp?topic=%2Fcom.ibm.xlcpp121.aix.doc%2Fcompiler_ref%2Ftucmpinv.html>
AIX reentrancy problem
----------------------
There appears to be a reentracy problem with AIX 5.3 and xlC 8 which
can result into a deadlock condition in some curcumstances. It is
unknown whether the problem manifests with other versions of either
the OS or the compiler, too. The problem was initially reported in a
bug report #3056687 ([1]).
The core of the problem is that IBM's/xlC's standard C++ IOStreams
implementation uses global non recursive lock to protect some of its
state. The application in the bug report was trying to do logging
using log4cplus from inside overflow() member function of a class
derived from std::streambuf class. log4cplus itself uses
std::ostringstream. This resulted into an attempt to recursivly lock
the global non recursive lock and a deadlock.
[1] <https://sourceforge.net/tracker/?func=detail&aid=3056687&group_id=40830&atid=429073>
Solaris / SunOS
---------------
Some older version of this operating system might have problems
linking log4cplus due to missing __tls_get_addr ([1]) in their
unpatched state.
[1] <https://groups.google.com/d/msg/comp.unix.solaris/AAMqkK0QZ6U/zlkVKA1L_QcJ>
Solaris Studio
--------------
Solaris Studio compilers' default standard C++ library is very
non-standard. It seems that it is not conforming enough in, e.g., Sun
C++ 5.12 Linux_i386 2011/11/16 (missing std::time_t, etc.), but it
works well enough on Solaris with Sun C++ 5.8 2005/10/13. Thus
log4cplus adds -library=stlport4 to the CXXFLAGS environment variable,
unless a switch matching -library=(stlport4|stdcxx4|Cstd) is already
present there. If you want to override the default supplied by
log4cplus, just set it into CXXFLAGS on configure script command line.
Solaris Studio supports the __func__ symbol which can be used by
log4cplus to record function name in logged events. To enable this
feature, add '-features=extensions' switch to CXXFLAGS for configure
script. Subsequently, you will have to add this switch to your
application's build flags as well.
Solaris Studio on GNU/Linux
---------------------------
The autotools and our configure.in combo does not handle Solaris
Studio compiler on Linux well enough and needs a little help with
configuration of POSIX threads:
$ COMMON_FLAGS="-L/lib/x86_64-linux-gnu/ -L/usr/lib/x86_64-linux-gnu/ \
-mt=yes -O"
$ ../configure --enable-threads=yes CC=/opt/solarisstudio12.3/bin/cc \
CXX=/opt/solarisstudio12.3/bin/CC CFLAGS="$COMMON_FLAGS" \
CXXFLAGS="$COMMON_FLAGS" LDFLAGS="-lpthread"
Qt / Win32 / MSVC
-----------------
In order to use log4cplus in Qt programs it is necessary to set
following option:
Treat WChar_t As Built in Type: No (/Zc:wchar_t-)
Set this option for log4cplus project and Qt4DebugAppender project in
MS Visual Studio. Remember to use Unicode versions of log4cplus
libraries with Qt. It is also necessary to make clear distinction
between debug and release builds of Qt project and log4cplus. Do not
use log4cplus release library with debug version of Qt program or vice
versa.
For registering Qt4DebugAppender library at run-time call this method:
log4cplus::Qt4DebugAppender::registerAppender() ;
Add these lines to qmake project file for using log4cplus and
Qt4DebugAppender:
INCLUDEPATH += C:\log4cplus\include
win32 {
CONFIG(debug, debug|release) {
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Debug_Unicode -llog4cplusUD
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Debug_Unicode -llog4cplus-Qt4DebugAppender
} else {
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Release_Unicode -llog4cplusU
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Release_Unicode -llog4cplus-Qt4DebugAppender
}
}
LOG4CPLUS_*_FMT() and UNICODE
-----------------------------
Beware, the %s specifier does not work the same way on *NIX as it does
on Windows with Visual Studio. With Visual Studio the %s specifier
changes its meaning conveniently by printing wchar_t string when used
with wprintf() and char strings when used with wprintf(). On the
other hand, *NIX keeps the meaning of printing char strings when used
with both wprintf() and printf(). It is necessary to use %ls (C99)
specifier or %S (SUSv2) specifier to print wchar_t strings on *NIX.
The common ground for both platforms appears to be use of %ls and
wchar_t string to print strings with unmodified formatting string
argument on both *NIX and Windows. The conversion of wchar_t back to
char then depends on C locale.
C++11 support
-------------
log4cplus contains small amount of code that uses C++11 (ISO/IEC
14882:2011 standard) language features. C++11 features are used only
if C++11 support is detected during compile time. Compiling log4cplus
with C++11 compiler and standard library and using it with C++03
(ISO/IEC 14882:2003 standard) application is not supported.
Unsupported compilers
---------------------
log4cplus does not support too old or broken C++ compilers:
- Visual C++ prior to 7.1
- GCC prior to 3.2
- All Borland/CodeGear/Embarcadero C++ compilers
Unsupported platforms
---------------------
log4cplus requires some minimal set of C and/or C++ library
functions. Some systems/platforms fail to provide these functions and
thus log4cplus cannot be supported there:
- Windows CE - missing implementations of <time.h> functions
License
=======
This library is licensed under the Apache Public License 2.0 and two
clause BSD license. Please read the included LICENSE file for
details.

5
resources/3rdparty/log4cplus-1.1.2-rc2/REVISION

@ -1,5 +0,0 @@
revision-id: wilx@users.sourceforge.net-20130703203528-azbt415tvzqnd83l
date: 2013-07-03 22:35:28 +0200
build-date: 2013-07-03 22:40:14 +0200
revno: 982
branch-nick: 1.1.x

480
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config.h

@ -1,480 +0,0 @@
/* include/log4cplus/config.h. Generated from config.h.in by configure. */
/* include/log4cplus/config.h.in. Generated from configure.ac by autoheader. */
#ifndef LOG4CPLUS_CONFIG_H
#define LOG4CPLUS_CONFIG_H
/* Defined if the compiler supports C99 style variadic macros with
__VA_ARGS__. */
/* #undef HAS_C99_VARIADIC_MACROS */
/* Defined if the compiler supports GNU style variadic macros. */
/* #undef HAS_GNU_VARIADIC_MACROS */
/* Define to 1 if you have the `clock_gettime' function. */
#define HAVE_CLOCK_GETTIME 1
/* Define to 1 if you have the `clock_nanosleep' function. */
#define HAVE_CLOCK_NANOSLEEP 1
/* Defined if the compiler provides C++11 <atomic> header and increment,
decrement operations. */
/* #undef HAVE_CXX11_ATOMICS */
/* Define to 1 if you have the <dlfcn.h> header file. */
#define HAVE_DLFCN_H 1
/* Define to 1 if you have the `fcntl' function. */
#define HAVE_FCNTL 1
/* Define to 1 if you have the `flock' function. */
#define HAVE_FLOCK 1
/* Define to 1 if you have the `ftime' function. */
#define HAVE_FTIME 1
/* */
#define HAVE_GETADDRINFO 1
/* */
#define HAVE_GETHOSTBYNAME_R 1
/* Define to 1 if you have the `getpid' function. */
#define HAVE_GETPID 1
/* Define to 1 if you have the `gettimeofday' function. */
#define HAVE_GETTIMEOFDAY 1
/* Define to 1 if you have the `gmtime_r' function. */
#define HAVE_GMTIME_R 1
/* Define to 1 if you have the `htonl' function. */
#define HAVE_HTONL 1
/* Define to 1 if you have the `htons' function. */
#define HAVE_HTONS 1
/* Define to 1 if you have the `iconv' function. */
/* #undef HAVE_ICONV */
/* Define to 1 if you have the `iconv_close' function. */
/* #undef HAVE_ICONV_CLOSE */
/* Define to 1 if you have the `iconv_open' function. */
/* #undef HAVE_ICONV_OPEN */
/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1
/* Define to 1 if you have the `advapi32' library (-ladvapi32). */
/* #undef HAVE_LIBADVAPI32 */
/* Define to 1 if you have the `libiconv' function. */
/* #undef HAVE_LIBICONV */
/* Define to 1 if you have the `libiconv_close' function. */
/* #undef HAVE_LIBICONV_CLOSE */
/* Define to 1 if you have the `libiconv_open' function. */
/* #undef HAVE_LIBICONV_OPEN */
/* Define to 1 if you have the `kernel32' library (-lkernel32). */
/* #undef HAVE_LIBKERNEL32 */
/* Define to 1 if you have the `ws2_32' library (-lws2_32). */
/* #undef HAVE_LIBWS2_32 */
/* Define to 1 if you have the `localtime_r' function. */
#define HAVE_LOCALTIME_R 1
/* Define to 1 if you have the `lockf' function. */
#define HAVE_LOCKF 1
/* Define to 1 if you have the `lstat' function. */
#define HAVE_LSTAT 1
/* Define to 1 if you have the `mbstowcs' function. */
#define HAVE_MBSTOWCS 1
/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1
/* Define to 1 if you have the `nanosleep' function. */
#define HAVE_NANOSLEEP 1
/* Define to 1 if you have the `ntohl' function. */
#define HAVE_NTOHL 1
/* Define to 1 if you have the `ntohs' function. */
#define HAVE_NTOHS 1
/* Define to 1 if you have the `pipe' function. */
#define HAVE_PIPE 1
/* Define to 1 if you have the `pipe2' function. */
#define HAVE_PIPE2 1
/* Define to 1 if you have the `poll' function. */
#define HAVE_POLL 1
/* Define if you have POSIX threads libraries and header files. */
#define HAVE_PTHREAD 1
/* Have PTHREAD_PRIO_INHERIT. */
#define HAVE_PTHREAD_PRIO_INHERIT 1
/* Define to 1 if you have the `stat' function. */
#define HAVE_STAT 1
/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1
/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1
/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1
/* Defined if the compiler understands __thread or __declspec(thread)
construct. */
#define HAVE_TLS_SUPPORT 1
/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1
/* Define to 1 if you have the `vfprintf_s' function. */
/* #undef HAVE_VFPRINTF_S */
/* Define to 1 if you have the `vfwprintf_s' function. */
/* #undef HAVE_VFWPRINTF_S */
/* Define to 1 if you have the `vsnprintf' function. */
#define HAVE_VSNPRINTF 1
/* Define to 1 if you have the `vsnwprintf' function. */
/* #undef HAVE_VSNWPRINTF */
/* Define to 1 if you have the `vsprintf_s' function. */
/* #undef HAVE_VSPRINTF_S */
/* Define to 1 if you have the `vswprintf_s' function. */
/* #undef HAVE_VSWPRINTF_S */
/* Define to 1 if you have the `wcstombs' function. */
#define HAVE_WCSTOMBS 1
/* Define to 1 if you have the `_vsnprintf_s' function. */
/* #undef HAVE__VSNPRINTF_S */
/* Define to 1 if you have the `_vsnwprintf' function. */
/* #undef HAVE__VSNWPRINTF */
/* Define to 1 if you have the `_vsnwprintf_s' function. */
/* #undef HAVE__VSNWPRINTF_S */
/* Defined if the compiler supports __FUNCTION__ macro. */
/* #undef HAVE___FUNCTION___MACRO */
/* Defined if the compiler supports __func__ symbol. */
/* #undef HAVE___FUNC___SYMBOL */
/* Defined if the compiler supports __PRETTY_FUNCTION__ macro. */
/* #undef HAVE___PRETTY_FUNCTION___MACRO */
/* Defined if the compiler provides __sync_add_and_fetch(). */
#define HAVE___SYNC_ADD_AND_FETCH 1
/* Defined if the compiler provides __sync_sub_and_fetch(). */
#define HAVE___SYNC_SUB_AND_FETCH 1
/* Defined for --enable-debugging builds. */
/* #undef LOG4CPLUS_DEBUGGING */
/* Defined if the compiler understands __declspec(dllimport) or
__attribute__((visibility("default"))) or __global construct. */
#define LOG4CPLUS_DECLSPEC_EXPORT __attribute__ ((visibility("default")))
/* Defined if the compiler understands __declspec(dllimport) or
__attribute__((visibility("default"))) or __global construct. */
#define LOG4CPLUS_DECLSPEC_IMPORT __attribute__ ((visibility("default")))
/* Defined if the compiler understands __attribute__((visibility("hidden")))
or __hidden construct. */
#define LOG4CPLUS_DECLSPEC_PRIVATE __attribute__ ((visibility("hidden")))
/* */
#define LOG4CPLUS_HAVE_ARPA_INET_H 1
/* */
#define LOG4CPLUS_HAVE_C99_VARIADIC_MACROS 1
/* */
#define LOG4CPLUS_HAVE_CLOCK_GETTIME 1
/* */
#define LOG4CPLUS_HAVE_CLOCK_NANOSLEEP 1
/* */
/* #undef LOG4CPLUS_HAVE_CXX11_ATOMICS */
/* */
#define LOG4CPLUS_HAVE_ENAMETOOLONG 1
/* */
#define LOG4CPLUS_HAVE_ERRNO_H 1
/* */
#define LOG4CPLUS_HAVE_FCNTL 1
/* */
#define LOG4CPLUS_HAVE_FCNTL_H 1
/* */
#define LOG4CPLUS_HAVE_FLOCK 1
/* */
#define LOG4CPLUS_HAVE_FTIME 1
/* */
#define LOG4CPLUS_HAVE_FUNCTION_MACRO 1
/* */
#define LOG4CPLUS_HAVE_FUNC_SYMBOL 1
/* */
#define LOG4CPLUS_HAVE_GETADDRINFO 1
/* */
#define LOG4CPLUS_HAVE_GETHOSTBYNAME_R 1
/* */
#define LOG4CPLUS_HAVE_GETPID 1
/* */
#define LOG4CPLUS_HAVE_GETTID 1
/* */
#define LOG4CPLUS_HAVE_GETTIMEOFDAY 1
/* */
#define LOG4CPLUS_HAVE_GMTIME_R 1
/* */
#define LOG4CPLUS_HAVE_GNU_VARIADIC_MACROS 1
/* */
#define LOG4CPLUS_HAVE_HTONL 1
/* */
#define LOG4CPLUS_HAVE_HTONS 1
/* */
/* #undef LOG4CPLUS_HAVE_ICONV */
/* */
/* #undef LOG4CPLUS_HAVE_ICONV_CLOSE */
/* */
/* #undef LOG4CPLUS_HAVE_ICONV_H */
/* */
/* #undef LOG4CPLUS_HAVE_ICONV_OPEN */
/* */
#define LOG4CPLUS_HAVE_LIMITS_H 1
/* */
#define LOG4CPLUS_HAVE_LOCALTIME_R 1
/* */
#define LOG4CPLUS_HAVE_LOCKF 1
/* */
#define LOG4CPLUS_HAVE_LSTAT 1
/* */
#define LOG4CPLUS_HAVE_MBSTOWCS 1
/* */
#define LOG4CPLUS_HAVE_NANOSLEEP 1
/* */
#define LOG4CPLUS_HAVE_NETDB_H 1
/* */
#define LOG4CPLUS_HAVE_NETINET_IN_H 1
/* */
#define LOG4CPLUS_HAVE_NETINET_TCP_H 1
/* */
#define LOG4CPLUS_HAVE_NTOHL 1
/* */
#define LOG4CPLUS_HAVE_NTOHS 1
/* */
#define LOG4CPLUS_HAVE_PIPE 1
/* */
#define LOG4CPLUS_HAVE_PIPE2 1
/* */
#define LOG4CPLUS_HAVE_POLL 1
/* */
#define LOG4CPLUS_HAVE_POLL_H 1
/* */
#define LOG4CPLUS_HAVE_PRETTY_FUNCTION_MACRO 1
/* */
#define LOG4CPLUS_HAVE_STAT 1
/* */
#define LOG4CPLUS_HAVE_STDARG_H 1
/* */
#define LOG4CPLUS_HAVE_STDIO_H 1
/* */
#define LOG4CPLUS_HAVE_STDLIB_H 1
/* */
#define LOG4CPLUS_HAVE_SYSLOG_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_FILE_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_SOCKET_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_STAT_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_SYSCALL_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_TIMEB_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_TIME_H 1
/* */
#define LOG4CPLUS_HAVE_SYS_TYPES_H 1
/* */
#define LOG4CPLUS_HAVE_TIME_H 1
/* */
#define LOG4CPLUS_HAVE_TLS_SUPPORT 1
/* */
#define LOG4CPLUS_HAVE_UNISTD_H 1
/* */
/* #undef LOG4CPLUS_HAVE_VFPRINTF_S */
/* */
/* #undef LOG4CPLUS_HAVE_VFWPRINTF_S */
/* */
#define LOG4CPLUS_HAVE_VSNPRINTF 1
/* */
/* #undef LOG4CPLUS_HAVE_VSNWPRINTF */
/* */
/* #undef LOG4CPLUS_HAVE_VSPRINTF_S */
/* */
/* #undef LOG4CPLUS_HAVE_VSWPRINTF_S */
/* */
#define LOG4CPLUS_HAVE_WCHAR_H 1
/* */
#define LOG4CPLUS_HAVE_WCSTOMBS 1
/* */
/* #undef LOG4CPLUS_HAVE__VSNPRINTF_S */
/* */
/* #undef LOG4CPLUS_HAVE__VSNWPRINTF */
/* */
/* #undef LOG4CPLUS_HAVE__VSNWPRINTF_S */
/* */
#define LOG4CPLUS_HAVE___SYNC_ADD_AND_FETCH 1
/* */
#define LOG4CPLUS_HAVE___SYNC_SUB_AND_FETCH 1
/* Define if this is a single-threaded library. */
/* #undef LOG4CPLUS_SINGLE_THREADED */
/* */
#define LOG4CPLUS_THREAD_LOCAL_VAR __thread
/* */
/* #undef LOG4CPLUS_USE_PTHREADS */
/* Define when iconv() is available. */
/* #undef LOG4CPLUS_WITH_ICONV */
/* Define for C99 compilers/standard libraries that support more than just the
"C" locale. */
/* #undef LOG4CPLUS_WORKING_C_LOCALE */
/* Define for compilers/standard libraries that support more than just the "C"
locale. */
/* #undef LOG4CPLUS_WORKING_LOCALE */
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/
#define LT_OBJDIR ".libs/"
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT ""
/* Define to the full name of this package. */
#define PACKAGE_NAME "log4cplus"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "log4cplus 1.1.2"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "log4cplus"
/* Define to the home page for this package. */
#define PACKAGE_URL ""
/* Define to the version of this package. */
#define PACKAGE_VERSION "1.1.2"
/* Define to necessary symbol if this constant uses a non-standard name on
your system. */
/* #undef PTHREAD_CREATE_JOINABLE */
/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Defined to the actual TLS support construct. */
#define TLS_SUPPORT_CONSTRUCT __thread
/* Substitute for socklen_t */
/* #undef socklen_t */
#endif // LOG4CPLUS_CONFIG_H

1
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/stamp-h2

@ -1 +0,0 @@
timestamp for include/log4cplus/config/defines.hxx

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplusSD.c.idb

1
resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplusSD.lib.REMOVED.git-id

@ -1 +0,0 @@
3858234c9554d6aed44d7ccac31463873c7660c7

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Debug/log4cplussd.c.pdb

1
resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Release/log4cplusS.lib.REMOVED.git-id

@ -1 +0,0 @@
a1a66acb913f8d53f093fa4dcd9be97a3a7dce9a

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/msvc10/x64/bin.Release/log4cpluss.c.pdb

41
resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.la

@ -1,41 +0,0 @@
# liblog4cplus.la - a libtool library file
# Generated by libtool (GNU libtool) 2.4.2
#
# Please DO NOT delete this file!
# It is necessary for linking the library.
# The name that we can dlopen(3).
dlname='liblog4cplus-1.1.so.7'
# Names of this library.
library_names='liblog4cplus-1.1.so.7.1.1 liblog4cplus-1.1.so.7 liblog4cplus.so'
# The name of the static archive.
old_library='liblog4cplus.a'
# Linker flags that can not go in dependency_libs.
inherited_linker_flags=''
# Libraries that this one depends upon.
dependency_libs=' -lrt'
# Names of additional weak libraries provided by this library
weak_library_names=''
# Version information for liblog4cplus.
current=8
age=1
revision=1
# Is this an already installed library?
installed=no
# Should we warn about portability when linking against -modules?
shouldnotlink=no
# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''
# Directory that this library needs to be installed in:
libdir='/usr/local/lib'

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so.1.1.2

BIN
resources/3rdparty/log4cplus-1.1.2-rc2/src/liblog4cplus.so.7

15
resources/3rdparty/log4cplus-1.1.3-rc1/.dir-locals.el

@ -0,0 +1,15 @@
;;; Directory Local Variables
;;; See Info node `(emacs) Directory Variables' for more information.
((nil
(fill-column . 79)
(indent-tabs-mode)
(show-trailing-whitespace . t)
(whitespace-style face trailing lines-tail space-before-tab indentation empty)
(whitespace-newline . t))
(c++-mode
(tab-width . 4)
(whitespace-action warn-read-only auto-cleanup))
(cmake-mode
(whitespace-action warn-read-only auto-cleanup)))

2
resources/3rdparty/log4cplus-1.1.2-rc2/AUTHORS → resources/3rdparty/log4cplus-1.1.3-rc1/AUTHORS

@ -22,3 +22,5 @@ Jukka Lantto <jukka.lantto@outokumpu.com>
Konstantin Baumann <konstantin@ks-baumann.de>
Yaqian Shen <yshen@kinaxis.com>
Sergey Nikulov <snikulov@users.sourceforge.net>
Ray Logel <rlogel@users.sourceforge.net>
Maxym <maxbil@users.sourceforge.net>

67
resources/3rdparty/log4cplus-1.1.2-rc2/CMakeLists.txt → resources/3rdparty/log4cplus-1.1.3-rc1/CMakeLists.txt

@ -1,29 +1,39 @@
# This block needs to stay before the project (log4cplus) line so that
# the output files placed into Android's libs directory.
if (CMAKE_TOOLCHAIN_FILE)
# Android: set output folder to ${CMAKE_BINARY_DIR}
set (LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_BINARY_DIR} CACHE PATH
"root for library output, set this to change where android libs are compiled to")
get_filename_component(TOOL_CHAIN_FILE_NAME "${CMAKE_TOOLCHAIN_FILE}" NAME_WE)
if("${TOOL_CHAIN_FILE_NAME}" MATCHES "android.toolchain")
# Android: set output folder to ${CMAKE_BINARY_DIR}
set (LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_BINARY_DIR} CACHE PATH
"root for library output, set this to change where Android libs are compiled to")
endif()
endif ()
# Remove when CMake >= 2.8.4 is required
set (CMAKE_LEGACY_CYGWIN_WIN32 0)
project (log4cplus)
cmake_minimum_required (VERSION 2.8.0)
cmake_minimum_required (VERSION 2.8.4)
enable_language (CXX)
include(GNUInstallDirs)
include (Log4CPlusUtils.cmake)
log4cplus_get_version ("${PROJECT_SOURCE_DIR}/include"
log4cplus_version_major log4cplus_version_minor log4cplus_version_patch)
message("-- Generating build for Log4cplus version ${log4cplus_version_major}.${log4cplus_version_minor}.${log4cplus_version_patch}")
set (log4cplus_soversion 7)
set (log4cplus_soversion 9)
set (log4cplus_postfix "")
option(LOG4CPLUS_BUILD_TESTING "Build the test suite." ON)
find_package (Threads)
message (STATUS "Threads: ${CMAKE_THREAD_LIBS_INIT}")
option(LOG4CPLUS_BUILD_LOGGINGSERVER "Build the logging server." ON)
set(BUILD_SHARED_LIBS TRUE CACHE BOOL "If TRUE, log4cplus is built as a shared library, otherwise as a static library")
if(NOT LOG4CPLUS_SINGLE_THREADED)
find_package (Threads)
message (STATUS "Threads: ${CMAKE_THREAD_LIBS_INIT}")
endif(NOT LOG4CPLUS_SINGLE_THREADED)
message(STATUS "Log4CPlus - Building shared libs: ${BUILD_SHARED_LIBS}")
set(BUILD_SHARED_LIBS TRUE CACHE BOOL "If TRUE, log4cplus is built as a shared library, otherwise as a static library")
if (WIN32)
set (UNICODE_DEFAULT ON)
@ -34,7 +44,6 @@ endif (WIN32)
if (MSVC)
set (LOG4CPLUS_WORKING_LOCALE_DEFAULT ON)
else (MSVC)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set (LOG4CPLUS_WORKING_LOCALE_DEFAULT OFF)
endif (MSVC)
@ -51,21 +60,21 @@ option(UNICODE "Build with tchar = wchar_t" ${UNICODE_DEFAULT})
option(WITH_ICONV "Use iconv() for char->wchar_t conversion."
OFF)
option(ENABLE_SYMBOLS_VISIBILITY
"Enable compiler and platform specific options for symbols visibility"
ON)
set(_WIN32_WINNT 0x0500 CACHE STRING "Define Windows API version to use.")
if (NOT ${BUILD_SHARED_LIBS})
# set S-prefix for static build
# set S-prefix for static build
set (log4cplus_postfix "${log4cplus_postfix}S")
endif()
endif()
if (UNICODE AND (DEFINED LOG4CPLUS_USE_UNICODE AND LOG4CPLUS_USE_UNICODE))
if (UNICODE)
set (log4cplus_postfix "${log4cplus_postfix}U")
message(STATUS "Log4CPlus - Using Unicode: YES")
else()
message(STATUS "Log4CPlus - Using Unicode: NO")
set(UNICODE OFF)
endif()
endif (UNICODE)
if (WITH_ICONV)
set(LOG4CPLUS_WITH_ICONV 1)
@ -73,7 +82,17 @@ endif ()
set (log4cplus "log4cplus${log4cplus_postfix}")
include(ConfigureChecks.cmake)
if(LOG4CPLUS_CONFIGURE_CHECKS_PATH)
get_filename_component(LOG4CPLUS_CONFIGURE_CHECKS_PATH "${LOG4CPLUS_CONFIGURE_CHECKS_PATH}" ABSOLUTE)
endif()
if(LOG4CPLUS_CONFIGURE_CHECKS_PATH AND EXISTS ${LOG4CPLUS_CONFIGURE_CHECKS_PATH})
message(STATUS "Custom ConfigureChecks script found: ${LOG4CPLUS_CONFIGURE_CHECKS_PATH}")
else()
set(LOG4CPLUS_CONFIGURE_CHECKS_PATH "ConfigureChecks.cmake")
endif()
include(${LOG4CPLUS_CONFIGURE_CHECKS_PATH})
# Prepare defines.hxx.cmake from defines.hxx.in by doing a bit of
# string manipulation.
@ -81,7 +100,7 @@ file(READ include/log4cplus/config/defines.hxx.in FILE_BUFFER)
string(REGEX REPLACE "#undef[^a-zA-Z0-9_]+([a-zA-Z0-9_]+)"
"#cmakedefine \\1 @\\1@" FILE_BUFFER "${FILE_BUFFER}")
set(DEFINES_HXX_CMAKE
${log4cplus_BINARY_DIR}/include/log4cplus/config/defines.hxx.cmake)
${log4cplus_BINARY_DIR}/include/log4cplus/config/defines.hxx.cmake)
set(DEFINES_HXX ${log4cplus_BINARY_DIR}/include/log4cplus/config/defines.hxx)
file(WRITE ${DEFINES_HXX_CMAKE} ${FILE_BUFFER})
@ -98,7 +117,11 @@ if (LOG4CPLUS_BUILD_TESTING)
endif (LOG4CPLUS_BUILD_TESTING)
add_subdirectory (src)
#add_subdirectory (loggingserver)
if (LOG4CPLUS_BUILD_LOGGINGSERVER)
add_subdirectory (loggingserver)
endif (LOG4CPLUS_BUILD_LOGGINGSERVER)
if (LOG4CPLUS_BUILD_TESTING)
add_subdirectory (tests)
endif (LOG4CPLUS_BUILD_TESTING)

0
resources/3rdparty/log4cplus-1.1.2-rc2/COPYING → resources/3rdparty/log4cplus-1.1.3-rc1/COPYING

64
resources/3rdparty/log4cplus-1.1.2-rc2/ChangeLog → resources/3rdparty/log4cplus-1.1.3-rc1/ChangeLog

@ -1,3 +1,67 @@
log4cplus 1.1.3-RC1
- Added --enable-symbols-visibility-options to configure script to allow
turning off use of compiler and platform specific symbols visibility
options.
- Added ENABLE_SYMBOLS_VISIBILITY setting for CMake build system to the same
effect as above.
- Disabled LOG4CPLUS_INLINES_ARE_EXPORTED to fix linking issues on MinGW GCC
4.8.x.
- Added LOG4CPLUS_BUILD_LOGGINGSERVER setting for CMake build system to allow
disabling loggingserver. (Maxym)
- Allow users overriding LOG4CPLUS_MACRO_FUNCTION.
- Improved Android platform detection in CMake build system. (Maxym)
- Allow overriding ConfigureChecks.cmake with user supplied file to help with
issues on iOS platform.
- Updated android.toolchain.cmake from OpenCV project.
- Added iOS support to CMake build system. (Maxym)
- Fixed compilation issue of single-threaded builds on Windows.
- Improved CMake build system's default installation directories for GNU
platforms by using GNUInstallDirs module.
log4cplus 1.1.2
- Added AbstractSocket::shutdown().
- Added missing documentation of MDC pattern layout converter.
- Fixed bug #278 - TLS key leak.
- Implemented %E{ENVVAR} pattern layout formatter for expansion of environment
variables. (Ray Logel)
log4cplus 1.1.2-RC3
- Fixed build issues on HP-UX with aCC.
- Fixed build issues on Haiku.
- Added mingw-log4cplus.spec to allow cross-compilation from
Fedora. (John Smits)
- Fixed build issues on AIX with XLC.
- Fixed build issues related to Microsoft's foo_s() functions with
some version of MinGW tool-chain.
- Tiny speedup of getFormattedTime().
- Imported newer android/android.toolchain.cmake from OpenCV
repository.
log4cplus 1.1.2-RC2
- Fixed crash of DLL builds on Windows when _WIN32_WINNT>=0x0600.

3
resources/3rdparty/log4cplus-1.1.2-rc2/ConfigureChecks.cmake → resources/3rdparty/log4cplus-1.1.3-rc1/ConfigureChecks.cmake

@ -69,6 +69,7 @@ check_function_exists(htons LOG4CPLUS_HAVE_HTONS )
check_function_exists(ntohs LOG4CPLUS_HAVE_NTOHS )
check_function_exists(htonl LOG4CPLUS_HAVE_HTONL )
check_function_exists(ntohl LOG4CPLUS_HAVE_NTOHL )
check_function_exists(shutdown LOG4CPLUS_HAVE_SHUTDOWN )
check_function_exists(vsnprintf LOG4CPLUS_HAVE_VSNPRINTF )
check_function_exists(_vsnprintf LOG4CPLUS_HAVE__VSNPRINTF )
check_function_exists(vsprintf_s LOG4CPLUS_HAVE_VSPRINTF_S )
@ -196,7 +197,7 @@ if(NOT DEFINED LOG4CPLUS_DECLSPEC_EXPORT)
endif()
endif()
if(NOT DEFINED LOG4CPLUS_DECLSPEC_EXPORT)
if(NOT DEFINED LOG4CPLUS_DECLSPEC_EXPORT OR NOT ENABLE_SYMBOLS_VISIBILITY)
set(LOG4CPLUS_DECLSPEC_EXPORT "")
set(LOG4CPLUS_DECLSPEC_IMPORT "")
set(LOG4CPLUS_DECLSPEC_PRIVATE "")

0
resources/3rdparty/log4cplus-1.1.2-rc2/INSTALL → resources/3rdparty/log4cplus-1.1.3-rc1/INSTALL

0
resources/3rdparty/log4cplus-1.1.2-rc2/LICENSE → resources/3rdparty/log4cplus-1.1.3-rc1/LICENSE

0
resources/3rdparty/log4cplus-1.1.2-rc2/Log4CPlusCPack.cmake → resources/3rdparty/log4cplus-1.1.3-rc1/Log4CPlusCPack.cmake

0
resources/3rdparty/log4cplus-1.1.2-rc2/Log4CPlusUtils.cmake → resources/3rdparty/log4cplus-1.1.3-rc1/Log4CPlusUtils.cmake

0
resources/3rdparty/log4cplus-1.1.2-rc2/Makefile.am → resources/3rdparty/log4cplus-1.1.3-rc1/Makefile.am

1
resources/3rdparty/log4cplus-1.1.2-rc2/Makefile.in → resources/3rdparty/log4cplus-1.1.3-rc1/Makefile.in

@ -225,6 +225,7 @@ LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LOG4CPLUS_AIX_XLC_LDFLAGS = @LOG4CPLUS_AIX_XLC_LDFLAGS@
LOG4CPLUS_NDEBUG = @LOG4CPLUS_NDEBUG@
LOG4CPLUS_PROFILING_CXXFLAGS = @LOG4CPLUS_PROFILING_CXXFLAGS@
LOG4CPLUS_PROFILING_LDFLAGS = @LOG4CPLUS_PROFILING_LDFLAGS@

0
resources/3rdparty/log4cplus-1.1.2-rc2/NEWS → resources/3rdparty/log4cplus-1.1.3-rc1/NEWS

424
resources/3rdparty/log4cplus-1.1.3-rc1/README

@ -0,0 +1,424 @@
% log4cplus README
Short Description
=================
log4cplus is a simple to use C++ logging API providing thread-safe,
flexible, and arbitrarily granular control over log management and
configuration. It is modeled after the Java log4j API.
Latest Project Information
==========================
The latest up-to-date information for this project can be found at
[log4cplus.sourceforge.net](http://log4cplus.sourceforge.net). Please
submit bugs, patches, feature requests, etc., there.
Tested on the following platforms
=================================
- Linux/AMD64 with GCC 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1)
- Linux/AMD64 with Sun C++ 5.12 Linux_i386 2011/11/16
- Linux/AMD64 with Clang version 3.2-1~exp9ubuntu1
(tags/RELEASE_32/final) (based on LLVM 3.2)
- Linux/AMD64 with Intel(R) C++ Intel(R) 64 Compiler XE for
applications running on Intel(R) 64, Version 12.1 Build 20120410
- FreeBSD/AMD64 with GCC 3.4.6, 4.2.1 and 4.3.3
- Windows 7 with MS Visual C++ 10.0
- OpenSolaris 5.11 with Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21,
with -library=stlport4
- Solaris 5.10 with Sun C++ 5.8 2005/10/13, with -library=stlport4
- NetBSD 5.0.2/AMD64 with GCC 4.1.3 20080704 prerelease (NetBSD nb2
20081120)
- OpenBSD 5.0/AMD64 with GCC 4.2.1 20070719
- Haiku R1 Alpha 4.1 with GCC 4.6.3
Configure script options
========================
`--enable-debugging`
--------------------
This option is disabled by default. This option mainly affects GCC
builds but it also has some limited effect on non-GCC builds. It
turns on debugging information generation, undefines `NDEBUG` symbol
and adds `-fstack-check` (GCC).
`--enable-warnings`
-------------------
This option is enabled by default. It adds platform / compiler
dependent warning options to compiler command line.
`--enable-so-version`
---------------------
This option is enabled by default. It enables SO version decoration
on resulting library file, e.g., the `.2.0.0` in
`liblog4cplus-1.2.so.2.0.0`.
`--enable-release-version`
--------------------------
This option is enabled by default. It enables release version
decoration on the resulting library file, e.g., the `-1.2` in
`liblog4cplus-1.2.so.2.0.0`.
`--enable-symbols-visibility-options`
-------------------------------------
This option is enabled by default. It enables use of compiler and
platform specific option for symbols visibility. See also the
[Visibility](http://gcc.gnu.org/wiki/Visibility) page on GCC Wiki.
`--enable-profiling`
--------------------
This option is disabled by default. This option adds profiling
information generation compiler option `-pg` to GCC and Sun CC /
Solaris Studio builds.
`--enable-threads`
------------------
This option is enabled by default. It turns on detection of necessary
compiler and linker flags that enable POSIX threading support.
While this detection usually works well, some platforms still need
help with configuration by supplying additional flags to the configure
script. One of the know deficiencies is Solaris Studio on Linux. See
one of the later note for details.
`--with-working-locale`
-----------------------
This is one of three locale and `wchar_t` <-> `char` conversion
related options. It is disabled by default.
It is know to work well with GCC on Linux. Other platforms generally
have lesser locale support in their implementations of the C++
standard library. It is known not to work well on any BSDs.
See also docs/unicode.txt.
`--with-working-c-locale`
-------------------------
This is second of `wchar_t` <-> `char` conversion related options. It
is disabled by default.
It is known to work well on most Unix--like platforms, including
recent Cygwin.
`--with-iconv`
--------------
This is third of `wchar_t` <-> `char` conversion related options. It is
disabled by default.
The conversion using iconv() function always uses `"UTF-8"` and
`"WCHAR_T"` as source/target encoding. It is known to work well on
platforms with GNU iconv. Different implementations of `iconv()`
might not support `"WCHAR_T"` encoding selector.
Either system provided `iconv()` or library provided `libiconv()` are
detected and accepted. Also both SUSv3 and GNU `iconv()` function
signatures are accepted.
`--with-qt`
-----------
This option is disabled by default. It enables compilation of a
separate shared library (liblog4cplusqt4debugappender) that implements
`Qt4DebugAppender`. It requires Qt4 and pkg-config to be installed.
Notes
=====
Cygwin/MinGW
------------
Some version of GCC (3.4.x and probably some of 4.x series too) on
Windows (both Mingw and Cygwin) produces lots of warnings of the form:
> warning: inline function 'void foo()' is declared as dllimport:
attribute ignored
This can be worked around by adding `-Wno-attributes` option to GCC
command. Unfortunately, not all affected version of GCC have this
option.
MinGW and MSVCRT version
------------------------
log4cplus can use functions like `_vsnprintf_s()` (Microsoft's secure
version of `vsnprintf()`). MinGW tool--chains (by default) link to the
system MSVCRT.DLL. Unfortunately, older systems, like Windows XP, ship
with MSVCRT.DLL that lacks these functions. It is possible to compile
log4cplus with MinGW tool--chains but _without_ using the Microsoft's
secure functions by defining `__MSVCRT_VERSION__` to value less than
`0x900` and vice versa.
$ ../configure CPPFLAGS="-D__MSVCRT_VERSION__=0x700"
Windows and TLS
---------------
log4cplus uses thread-local storage (TLS) for NDC, MDC and to optimize
use of some temporary objects. On Windows there are two ways to get
TLS:
(1) using `TlsAlloc()`, etc., functions
(2) using `__declspec(thread)`
While method (2) generates faster code, it has some limitations prior
to Windows Vista. If log4cplus.dll is loaded at run time using
`LoadLibrary()` (or as a dependency of such loaded library), then
accessing `__declspec(thread)` variables can cause general protection
fault (GPF) errors. This is because Windows prior to Windows Vista do
not extend the TLS for libraries loaded at run time using
LoadLibrary(). To allow using the best available method, log4cplus
enables the method (2) by checking `_WIN32_WINNT >= 0x0600` condition,
when compiling log4cplus targeted to Windows Vista or later.
Threads and signals
-------------------
log4cplus is not safe to be used from asynchronous signals' handlers.
This is a property of most threaded programmes in general. If you are
going to use log4cplus in threaded application and if you want to use
log4cplus from signal handlers then your only option is to block
signals in all threads but one that will handle all signals. On POSIX
platforms, this is possible using the `sigwait()` call. log4cplus
enables this approach by blocking all signals in any threads created
through its threads helpers.
IBM's XL C/C++ compiler
-----------------------
IBM's XL C/C++ compiler executable has [many variants][1]. To compile
log4cplus with threading support specify one of the compiler variants
that support threading using the `CXX` variable on configure script
command line. E.g.:
$ ../configure --enable-threads CXX=xlC_r
[1]: http://pic.dhe.ibm.com/infocenter/comphelp/v121v141/index.jsp?topic=%2Fcom.ibm.xlcpp121.aix.doc%2Fcompiler_ref%2Ftucmpinv.html
AIX reentrancy problem
----------------------
There appears to be a reentracy problem with AIX 5.3 and xlC 8 which
can result into a deadlock condition in some circumstances. It is
unknown whether the problem manifests with other versions of either
the OS or the compiler, too. The problem was initially reported in a
bug report [#103][2].
The core of the problem is that IBM's/xlC's standard C++ IOStreams
implementation uses global non recursive lock to protect some of its
state. The application in the bug report was trying to do logging
using log4cplus from inside `overflow()` member function of a class
derived from `std::streambuf` class. log4cplus itself uses
`std::ostringstream`. This resulted into an attempt to recursively
lock the global non recursive lock and a deadlock.
[2]: http://sourceforge.net/p/log4cplus/bugs/103/
Solaris / SunOS
---------------
Some older version of this operating system might have problems
linking log4cplus due to [missing `__tls_get_addr`][3] in their
unpatched state.
[3]: https://groups.google.com/d/msg/comp.unix.solaris/AAMqkK0QZ6U/zlkVKA1L_QcJ
Solaris Studio
--------------
Solaris Studio compilers' default standard C++ library is very
non-standard. It seems that it is not conforming enough in, e.g., Sun
C++ 5.12 Linux_i386 2011/11/16 (missing `std::time_t`, etc.), but it
works well enough on Solaris with Sun C++ 5.8 2005/10/13. Thus
log4cplus adds `-library=stlport4` to the `CXXFLAGS` environment
variable, unless a switch matching `-library=(stlport4|stdcxx4|Cstd)`
is already present there. If you want to override the default
supplied by log4cplus, just set it into `CXXFLAGS` on configure script
command line.
Solaris Studio supports the `__func__` symbol which can be used by
log4cplus to record function name in logged events. To enable this
feature, add `-features=extensions` switch to `CXXFLAGS` for configure
script. Subsequently, you will have to add this switch to your
application's build flags as well.
Solaris Studio on GNU/Linux
---------------------------
The autotools and our configure.ac combo does not handle Solaris
Studio compiler on Linux well enough and needs a little help with
configuration of POSIX threads:
$ COMMON_FLAGS="-L/lib/x86_64-linux-gnu/ \
-L/usr/lib/x86_64-linux-gnu/ -mt=yes -O"
$ ../configure --enable-threads=yes \
CC=/opt/solarisstudio12.3/bin/cc \
CXX=/opt/solarisstudio12.3/bin/CC \
CFLAGS="$COMMON_FLAGS" \
CXXFLAGS="$COMMON_FLAGS" \
LDFLAGS="-lpthread"
HP-UX with aCC
--------------
It is necessary to turn on C++98 mode of aCC by providing the `-AA` flag:
$ ../configure --enable-threads=yes CXXFLAGS="-AA"
HP-UX with `aCC` on IA64
------------------------
There is a problem on I64 HP-UX with `aCC` (HP C/aC++ B3910B
A.06.20). The problem manifests as
[unsatisfied symbols during linking of `loggingserver`][9]:
ld: Unsatisfied symbol "virtual table of loggingserver::ClientThread" in file loggingserver.o
The problem appears to be a deficiency in `aCC` and its support of
`__declspec(dllexport)`. To work around this issue, add
`--disable-symbols-visibility-options` to `configure` script command
line:
$ ../configure --disable-symbols-visibility-options \
--enable-threads=yes CXXFLAGS="-AA"
[9]: http://h30499.www3.hp.com/t5/Languages-and-Scripting/Building-Log4cplus-fails-with-quot-ld-Unsatisfied-symbol-virtual/td-p/6261411#.UoHtgPmet8G
Haiku
-----
Haiku is supported with GCC 4+. The default GCC version in Haiku is
set to version 2 (based on GCC 2.95.x). To change the default GCC
version to version 4, please run `setgcc gcc4` command. This is to
avoid linking errors like this:
~~~~
main.cpp:(.text.startup+0x54a): undefined reference to `_Unwind_Resume'
~~~~
Running the command switches the _current_ GCC version to version 4.
This change is permanent and global. See also Haiku ticket
[#8368](http://dev.haiku-os.org/ticket/8368).
Qt4 / Win32 / MSVC
------------------
In order to use log4cplus in Qt4 programs it is necessary to set
following option: `Treat WChar_t As Built in Type: No (/Zc:wchar_t-)`
Set this option for log4cplus project and `Qt4DebugAppender` project
in MS Visual Studio. Remember to use Unicode versions of log4cplus
libraries with Qt. It is also necessary to make clear distinction
between debug and release builds of Qt project and log4cplus. Do not
use log4cplus release library with debug version of Qt program or vice
versa.
For registering Qt4DebugAppender library at runtime, call this
function: `log4cplus::Qt4DebugAppender::registerAppender()`
Add these lines to qmake project file for using log4cplus and
`Qt4DebugAppender`:
INCLUDEPATH += C:\log4cplus\include
win32 {
CONFIG(debug, debug|release) {
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Debug_Unicode -llog4cplusUD
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Debug_Unicode -llog4cplus-Qt4DebugAppender
} else {
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Release_Unicode -llog4cplusU
LIBS += -LC:\log4cplus\msvc10\Win32\bin.Release_Unicode -llog4cplus-Qt4DebugAppender
}
}
`LOG4CPLUS_*_FMT()` and UNICODE
-------------------------------
Beware, the `%s` specifier does not work the same way on Unix--like
platforms as it does on Windows with Visual Studio. With Visual Studio
the `%s` specifier changes its meaning conveniently by printing
`wchar_t` string when used with `wprintf()` and `char` strings when
used with `printf()`. On the other hand, Unix--like platforms keeps
the meaning of printing `char` strings when used with both `wprintf()`
and `printf()`. It is necessary to use `%ls` (C99) specifier or `%S`
(SUSv2) specifier to print `wchar_t` strings on Unix--like platforms.
The common ground for both platforms appears to be use of `%ls` and
`wchar_t` string to print strings with unmodified formatting string
argument on both Unix--like platforms and Windows. The conversion of
`wchar_t` back to `char` then depends on C locale.
C++11 support
-------------
log4cplus contains small amount of code that uses C++11 (ISO/IEC
14882:2011 standard) language features. C++11 features are used only
if C++11 support is detected during compile time. Compiling log4cplus
with C++11 compiler and standard library and using it with C++03
(ISO/IEC 14882:2003 standard) application is not supported.
Unsupported compilers
---------------------
log4cplus does not support too old or broken C++ compilers:
- Visual C++ prior to 7.1
- GCC prior to 3.2
- Older versions of Borland/CodeGear/Embarcadero C++ compilers
Unsupported platforms
---------------------
log4cplus requires some minimal set of C and/or C++ library
functions. Some systems/platforms fail to provide these functions and
thus log4cplus cannot be supported there:
- Windows CE - missing implementations of `<time.h>` functions
License
=======
This library is licensed under the Apache Public License 2.0 and two
clause BSD license. Please read the included LICENSE file for
details.

5
resources/3rdparty/log4cplus-1.1.3-rc1/REVISION

@ -0,0 +1,5 @@
revision-id: wilx@users.sourceforge.net-20131231075716-cw2mo29s22qy8xm3
date: 2013-12-31 08:57:16 +0100
build-date: 2013-12-31 19:01:57 +0100
revno: 1022
branch-nick: 1.1.x

0
resources/3rdparty/log4cplus-1.1.2-rc2/TODO → resources/3rdparty/log4cplus-1.1.3-rc1/TODO

0
resources/3rdparty/log4cplus-1.1.2-rc2/acinclude.m4 → resources/3rdparty/log4cplus-1.1.3-rc1/acinclude.m4

0
resources/3rdparty/log4cplus-1.1.2-rc2/aclocal.m4 → resources/3rdparty/log4cplus-1.1.3-rc1/aclocal.m4

392
resources/3rdparty/log4cplus-1.1.2-rc2/android/android.toolchain.cmake → resources/3rdparty/log4cplus-1.1.3-rc1/android/android.toolchain.cmake

@ -1,5 +1,5 @@
# Copyright (c) 2010-2011, Ethan Rublee
# Copyright (c) 2011-2012, Andrey Kamaev
# Copyright (c) 2011-2013, Andrey Kamaev
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@ -281,8 +281,17 @@
# [+] updated for NDK r8c
# [+] added support for clang compiler
# - December 2012
# [+] suppress warning about unused CMAKE_TOOLCHAIN_FILE variable
# [+] adjust API level to closest compatible as NDK does
# [~] fixed ccache full path search
# [+] updated for NDK r8d
# [~] compiler options are aligned with NDK r8d
# - March 2013
# [+] updated for NDK r8e (x86 version)
# [+] support x86_64 version of NDK
# - April 2013
# [+] support non-release NDK layouts (from Linaro git and Android git)
# [~] automatically detect if explicit link to crtbegin_*.o is needed
# ------------------------------------------------------------------------------
cmake_minimum_required( VERSION 2.6.3 )
@ -292,6 +301,10 @@ if( DEFINED CMAKE_CROSSCOMPILING )
return()
endif()
if( CMAKE_TOOLCHAIN_FILE )
# touch toolchain variable only to suppress "unused variable" warning
endif()
get_property( _CMAKE_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE )
if( _CMAKE_IN_TRY_COMPILE )
include( "${CMAKE_CURRENT_SOURCE_DIR}/../android.toolchain.config.cmake" OPTIONAL )
@ -305,7 +318,7 @@ set( CMAKE_SYSTEM_VERSION 1 )
# rpath makes low sence for Android
set( CMAKE_SKIP_RPATH TRUE CACHE BOOL "If set, runtime paths are not added when using shared libraries." )
set( ANDROID_SUPPORTED_NDK_VERSIONS ${ANDROID_EXTRA_NDK_VERSIONS} -r8d -r8c -r8b -r8 -r7c -r7b -r7 -r6b -r6 -r5c -r5b -r5 "" )
set( ANDROID_SUPPORTED_NDK_VERSIONS ${ANDROID_EXTRA_NDK_VERSIONS} -r9b -r9 -r8e -r8d -r8c -r8b -r8 -r7c -r7b -r7 -r6b -r6 -r5c -r5b -r5 "" )
if(NOT DEFINED ANDROID_NDK_SEARCH_PATHS)
if( CMAKE_HOST_WIN32 )
file( TO_CMAKE_PATH "$ENV{PROGRAMFILES}" ANDROID_NDK_SEARCH_PATHS )
@ -449,19 +462,34 @@ if( ANDROID_FORBID_SYGWIN )
endif()
endif()
# detect current host platform
if( NOT DEFINED ANDROID_NDK_HOST_X64 AND CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "amd64|x86_64|AMD64")
set( ANDROID_NDK_HOST_X64 1 CACHE BOOL "Try to use 64-bit compiler toolchain" )
mark_as_advanced( ANDROID_NDK_HOST_X64 )
endif()
set( TOOL_OS_SUFFIX "" )
if( CMAKE_HOST_APPLE )
set( ANDROID_NDK_HOST_SYSTEM_NAME "darwin-x86" )
set( ANDROID_NDK_HOST_SYSTEM_NAME "darwin-x86_64" )
set( ANDROID_NDK_HOST_SYSTEM_NAME2 "darwin-x86" )
elseif( CMAKE_HOST_WIN32 )
set( ANDROID_NDK_HOST_SYSTEM_NAME "windows" )
set( ANDROID_NDK_HOST_SYSTEM_NAME "windows-x86_64" )
set( ANDROID_NDK_HOST_SYSTEM_NAME2 "windows" )
set( TOOL_OS_SUFFIX ".exe" )
elseif( CMAKE_HOST_UNIX )
set( ANDROID_NDK_HOST_SYSTEM_NAME "linux-x86" )
set( ANDROID_NDK_HOST_SYSTEM_NAME "linux-x86_64" )
set( ANDROID_NDK_HOST_SYSTEM_NAME2 "linux-x86" )
else()
message( FATAL_ERROR "Cross-compilation on your platform is not supported by this cmake toolchain" )
endif()
# CMAKE_HOST_SYSTEM_PROCESSOR on MacOS X always says i386 on Intel platform
# So we do not trust ANDROID_NDK_HOST_X64 on Apple hosts
if( NOT ANDROID_NDK_HOST_X64 AND NOT CMAKE_HOST_APPLE)
set( ANDROID_NDK_HOST_SYSTEM_NAME ${ANDROID_NDK_HOST_SYSTEM_NAME2} )
endif()
# see if we have path to Android NDK
__INIT_VARIABLE( ANDROID_NDK PATH ENV_ANDROID_NDK )
if( NOT ANDROID_NDK )
@ -493,23 +521,19 @@ if( NOT ANDROID_NDK )
endif( ANDROID_NDK )
endif( NOT ANDROID_STANDALONE_TOOLCHAIN )
endif( NOT ANDROID_NDK )
# remember found paths
if( ANDROID_NDK )
get_filename_component( ANDROID_NDK "${ANDROID_NDK}" ABSOLUTE )
# try to detect change
if( CMAKE_AR )
string( LENGTH "${ANDROID_NDK}" __length )
string( SUBSTRING "${CMAKE_AR}" 0 ${__length} __androidNdkPreviousPath )
if( NOT __androidNdkPreviousPath STREQUAL ANDROID_NDK )
message( FATAL_ERROR "It is not possible to change the path to the NDK on subsequent CMake run. You must remove all generated files from your build folder first.
" )
endif()
unset( __androidNdkPreviousPath )
unset( __length )
endif()
set( ANDROID_NDK "${ANDROID_NDK}" CACHE INTERNAL "Path of the Android NDK" FORCE )
set( BUILD_WITH_ANDROID_NDK True )
file( STRINGS "${ANDROID_NDK}/RELEASE.TXT" ANDROID_NDK_RELEASE LIMIT_COUNT 1 REGEX r[0-9]+[a-z]? )
if( EXISTS "${ANDROID_NDK}/RELEASE.TXT" )
file( STRINGS "${ANDROID_NDK}/RELEASE.TXT" ANDROID_NDK_RELEASE_FULL LIMIT_COUNT 1 REGEX r[0-9]+[a-z]? )
string( REGEX MATCH r[0-9]+[a-z]? ANDROID_NDK_RELEASE "${ANDROID_NDK_RELEASE_FULL}" )
else()
set( ANDROID_NDK_RELEASE "r1x" )
set( ANDROID_NDK_RELEASE_FULL "unreleased" )
endif()
elseif( ANDROID_STANDALONE_TOOLCHAIN )
get_filename_component( ANDROID_STANDALONE_TOOLCHAIN "${ANDROID_STANDALONE_TOOLCHAIN}" ABSOLUTE )
# try to detect change
@ -536,6 +560,51 @@ else()
sudo ln -s ~/my-android-toolchain ${ANDROID_STANDALONE_TOOLCHAIN_SEARCH_PATH}" )
endif()
# android NDK layout
if( BUILD_WITH_ANDROID_NDK )
if( NOT DEFINED ANDROID_NDK_LAYOUT )
# try to automatically detect the layout
if( EXISTS "${ANDROID_NDK}/RELEASE.TXT")
set( ANDROID_NDK_LAYOUT "RELEASE" )
elseif( EXISTS "${ANDROID_NDK}/../../linux-x86/toolchain/" )
set( ANDROID_NDK_LAYOUT "LINARO" )
elseif( EXISTS "${ANDROID_NDK}/../../gcc/" )
set( ANDROID_NDK_LAYOUT "ANDROID" )
endif()
endif()
set( ANDROID_NDK_LAYOUT "${ANDROID_NDK_LAYOUT}" CACHE STRING "The inner layout of NDK" )
mark_as_advanced( ANDROID_NDK_LAYOUT )
if( ANDROID_NDK_LAYOUT STREQUAL "LINARO" )
set( ANDROID_NDK_HOST_SYSTEM_NAME ${ANDROID_NDK_HOST_SYSTEM_NAME2} ) # only 32-bit at the moment
set( ANDROID_NDK_TOOLCHAINS_PATH "${ANDROID_NDK}/../../${ANDROID_NDK_HOST_SYSTEM_NAME}/toolchain" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH "" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH2 "" )
elseif( ANDROID_NDK_LAYOUT STREQUAL "ANDROID" )
set( ANDROID_NDK_HOST_SYSTEM_NAME ${ANDROID_NDK_HOST_SYSTEM_NAME2} ) # only 32-bit at the moment
set( ANDROID_NDK_TOOLCHAINS_PATH "${ANDROID_NDK}/../../gcc/${ANDROID_NDK_HOST_SYSTEM_NAME}/arm" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH "" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH2 "" )
else() # ANDROID_NDK_LAYOUT STREQUAL "RELEASE"
set( ANDROID_NDK_TOOLCHAINS_PATH "${ANDROID_NDK}/toolchains" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH "/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}" )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH2 "/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME2}" )
endif()
get_filename_component( ANDROID_NDK_TOOLCHAINS_PATH "${ANDROID_NDK_TOOLCHAINS_PATH}" ABSOLUTE )
# try to detect change of NDK
if( CMAKE_AR )
string( LENGTH "${ANDROID_NDK_TOOLCHAINS_PATH}" __length )
string( SUBSTRING "${CMAKE_AR}" 0 ${__length} __androidNdkPreviousPath )
if( NOT __androidNdkPreviousPath STREQUAL ANDROID_NDK_TOOLCHAINS_PATH )
message( FATAL_ERROR "It is not possible to change the path to the NDK on subsequent CMake run. You must remove all generated files from your build folder first.
" )
endif()
unset( __androidNdkPreviousPath )
unset( __length )
endif()
endif()
# get all the details about standalone toolchain
if( BUILD_WITH_STANDALONE_TOOLCHAIN )
__DETECT_NATIVE_API_LEVEL( ANDROID_SUPPORTED_NATIVE_API_LEVELS "${ANDROID_STANDALONE_TOOLCHAIN}/sysroot/usr/include/android/api-level.h" )
@ -563,24 +632,32 @@ if( BUILD_WITH_STANDALONE_TOOLCHAIN )
endif()
endif()
macro( __GLOB_NDK_TOOLCHAINS __availableToolchainsVar )
foreach( __toolchain ${${__availableToolchainsVar}} )
if( "${__toolchain}" MATCHES "-clang3[.][0-9]$" AND NOT EXISTS "${ANDROID_NDK}/toolchains/${__toolchain}/prebuilt/" )
string( REGEX REPLACE "-clang3[.][0-9]$" "-4.6" __gcc_toolchain "${__toolchain}" )
else()
set( __gcc_toolchain "${__toolchain}" )
endif()
__DETECT_TOOLCHAIN_MACHINE_NAME( __machine "${ANDROID_NDK}/toolchains/${__gcc_toolchain}/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}" )
if( __machine )
string( REGEX MATCH "[0-9]+[.][0-9]+([.][0-9]+)?$" __version "${__gcc_toolchain}" )
string( REGEX MATCH "^[^-]+" __arch "${__gcc_toolchain}" )
list( APPEND __availableToolchainMachines "${__machine}" )
list( APPEND __availableToolchainArchs "${__arch}" )
list( APPEND __availableToolchainCompilerVersions "${__version}" )
else()
list( REMOVE_ITEM ${__availableToolchainsVar} "${__toolchain}" )
macro( __GLOB_NDK_TOOLCHAINS __availableToolchainsVar __availableToolchainsLst __toolchain_subpath )
foreach( __toolchain ${${__availableToolchainsLst}} )
# Skip renderscript folder. It's not C++ toolchain
if (NOT ${__toolchain} STREQUAL "renderscript")
if( "${__toolchain}" MATCHES "-clang3[.][0-9]$" AND NOT EXISTS "${ANDROID_NDK_TOOLCHAINS_PATH}/${__toolchain}${__toolchain_subpath}" )
string( REGEX REPLACE "-clang3[.][0-9]$" "-4.6" __gcc_toolchain "${__toolchain}" )
else()
set( __gcc_toolchain "${__toolchain}" )
endif()
__DETECT_TOOLCHAIN_MACHINE_NAME( __machine "${ANDROID_NDK_TOOLCHAINS_PATH}/${__gcc_toolchain}${__toolchain_subpath}" )
if( __machine )
string( REGEX MATCH "[0-9]+[.][0-9]+([.][0-9x]+)?$" __version "${__gcc_toolchain}" )
if( __machine MATCHES i686 )
set( __arch "x86" )
elseif( __machine MATCHES arm )
set( __arch "arm" )
elseif( __machine MATCHES mipsel )
set( __arch "mipsel" )
endif()
list( APPEND __availableToolchainMachines "${__machine}" )
list( APPEND __availableToolchainArchs "${__arch}" )
list( APPEND __availableToolchainCompilerVersions "${__version}" )
list( APPEND ${__availableToolchainsVar} "${__toolchain}" )
endif()
unset( __gcc_toolchain )
endif()
unset( __gcc_toolchain )
endforeach()
endmacro()
@ -592,19 +669,31 @@ if( BUILD_WITH_ANDROID_NDK )
set( __availableToolchainMachines "" )
set( __availableToolchainArchs "" )
set( __availableToolchainCompilerVersions "" )
if( ANDROID_TOOLCHAIN_NAME AND EXISTS "${ANDROID_NDK}/toolchains/${ANDROID_TOOLCHAIN_NAME}/" )
if( ANDROID_TOOLCHAIN_NAME AND EXISTS "${ANDROID_NDK_TOOLCHAINS_PATH}/${ANDROID_TOOLCHAIN_NAME}/" )
# do not go through all toolchains if we know the name
set( __availableToolchains "${ANDROID_TOOLCHAIN_NAME}" )
__GLOB_NDK_TOOLCHAINS( __availableToolchains )
set( __availableToolchainsLst "${ANDROID_TOOLCHAIN_NAME}" )
__GLOB_NDK_TOOLCHAINS( __availableToolchains __availableToolchainsLst "${ANDROID_NDK_TOOLCHAINS_SUBPATH}" )
if( NOT __availableToolchains AND NOT ANDROID_NDK_TOOLCHAINS_SUBPATH STREQUAL ANDROID_NDK_TOOLCHAINS_SUBPATH2 )
__GLOB_NDK_TOOLCHAINS( __availableToolchains __availableToolchainsLst "${ANDROID_NDK_TOOLCHAINS_SUBPATH2}" )
if( __availableToolchains )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH ${ANDROID_NDK_TOOLCHAINS_SUBPATH2} )
endif()
endif()
endif()
if( NOT __availableToolchains )
file( GLOB __availableToolchains RELATIVE "${ANDROID_NDK}/toolchains" "${ANDROID_NDK}/toolchains/*" )
file( GLOB __availableToolchainsLst RELATIVE "${ANDROID_NDK_TOOLCHAINS_PATH}" "${ANDROID_NDK_TOOLCHAINS_PATH}/*" )
if( __availableToolchains )
list(SORT __availableToolchains) # we need clang to go after gcc
list(SORT __availableToolchainsLst) # we need clang to go after gcc
endif()
__LIST_FILTER( __availableToolchainsLst "^[.]" )
__LIST_FILTER( __availableToolchainsLst "llvm" )
__GLOB_NDK_TOOLCHAINS( __availableToolchains __availableToolchainsLst "${ANDROID_NDK_TOOLCHAINS_SUBPATH}" )
if( NOT __availableToolchains AND NOT ANDROID_NDK_TOOLCHAINS_SUBPATH STREQUAL ANDROID_NDK_TOOLCHAINS_SUBPATH2 )
__GLOB_NDK_TOOLCHAINS( __availableToolchains __availableToolchainsLst "${ANDROID_NDK_TOOLCHAINS_SUBPATH2}" )
if( __availableToolchains )
set( ANDROID_NDK_TOOLCHAINS_SUBPATH ${ANDROID_NDK_TOOLCHAINS_SUBPATH2} )
endif()
endif()
__LIST_FILTER( __availableToolchains "^[.]" )
__LIST_FILTER( __availableToolchains "llvm" )
__GLOB_NDK_TOOLCHAINS( __availableToolchains )
endif()
if( NOT __availableToolchains )
message( FATAL_ERROR "Could not find any working toolchain in the NDK. Probably your Android NDK is broken." )
@ -617,11 +706,11 @@ set( __uniqToolchainArchNames ${__availableToolchainArchs} )
list( REMOVE_DUPLICATES __uniqToolchainArchNames )
list( SORT __uniqToolchainArchNames )
foreach( __arch ${__uniqToolchainArchNames} )
list( APPEND ANDROID_SUPPORTED_ABIS ${ANDROID_SUPPORTED_ABIS_${__arch}} )
list( APPEND ANDROID_SUPPORTED_ABIS ${ANDROID_SUPPORTED_ABIS_${__arch}} )
endforeach()
unset( __uniqToolchainArchNames )
if( NOT ANDROID_SUPPORTED_ABIS )
message( FATAL_ERROR "No one of known Android ABIs is supported by this cmake toolchain." )
message( FATAL_ERROR "No one of known Android ABIs is supported by this cmake toolchain." )
endif()
# choose target ABI
@ -629,7 +718,7 @@ __INIT_VARIABLE( ANDROID_ABI OBSOLETE_ARM_TARGET OBSOLETE_ARM_TARGETS VALUES ${A
# verify that target ABI is supported
list( FIND ANDROID_SUPPORTED_ABIS "${ANDROID_ABI}" __androidAbiIdx )
if( __androidAbiIdx EQUAL -1 )
string( REPLACE ";" "\", \"", PRINTABLE_ANDROID_SUPPORTED_ABIS "${ANDROID_SUPPORTED_ABIS}" )
string( REPLACE ";" "\", \"" PRINTABLE_ANDROID_SUPPORTED_ABIS "${ANDROID_SUPPORTED_ABIS}" )
message( FATAL_ERROR "Specified ANDROID_ABI = \"${ANDROID_ABI}\" is not supported by this cmake toolchain or your NDK/toolchain.
Supported values are: \"${PRINTABLE_ANDROID_SUPPORTED_ABIS}\"
" )
@ -733,6 +822,7 @@ else()
list( GET __availableToolchainArchs ${__idx} __toolchainArch )
if( __toolchainArch STREQUAL ANDROID_ARCH_FULLNAME )
list( GET __availableToolchainCompilerVersions ${__idx} __toolchainVersion )
string( REPLACE "x" "99" __toolchainVersion "${__toolchainVersion}")
if( __toolchainVersion VERSION_GREATER __toolchainMaxVersion )
set( __toolchainMaxVersion "${__toolchainVersion}" )
set( __toolchainIdx ${__idx} )
@ -760,11 +850,22 @@ unset( __availableToolchainCompilerVersions )
# choose native API level
__INIT_VARIABLE( ANDROID_NATIVE_API_LEVEL ENV_ANDROID_NATIVE_API_LEVEL ANDROID_API_LEVEL ENV_ANDROID_API_LEVEL ANDROID_STANDALONE_TOOLCHAIN_API_LEVEL ANDROID_DEFAULT_NDK_API_LEVEL_${ANDROID_ARCH_NAME} ANDROID_DEFAULT_NDK_API_LEVEL )
string( REGEX MATCH "[0-9]+" ANDROID_NATIVE_API_LEVEL "${ANDROID_NATIVE_API_LEVEL}" )
# TODO: filter out unsupported levels
# adjust API level
set( __real_api_level ${ANDROID_DEFAULT_NDK_API_LEVEL_${ANDROID_ARCH_NAME}} )
foreach( __level ${ANDROID_SUPPORTED_NATIVE_API_LEVELS} )
if( NOT __level GREATER ANDROID_NATIVE_API_LEVEL AND NOT __level LESS __real_api_level )
set( __real_api_level ${__level} )
endif()
endforeach()
if( __real_api_level AND NOT ANDROID_NATIVE_API_LEVEL EQUAL __real_api_level )
message( STATUS "Adjusting Android API level 'android-${ANDROID_NATIVE_API_LEVEL}' to 'android-${__real_api_level}'")
set( ANDROID_NATIVE_API_LEVEL ${__real_api_level} )
endif()
unset(__real_api_level)
# validate
list( FIND ANDROID_SUPPORTED_NATIVE_API_LEVELS "${ANDROID_NATIVE_API_LEVEL}" __levelIdx )
if( __levelIdx EQUAL -1 )
message( SEND_ERROR "Specified Android native API level (${ANDROID_NATIVE_API_LEVEL}) is not supported by your NDK/toolchain." )
message( SEND_ERROR "Specified Android native API level 'android-${ANDROID_NATIVE_API_LEVEL}' is not supported by your NDK/toolchain." )
else()
if( BUILD_WITH_ANDROID_NDK )
__DETECT_NATIVE_API_LEVEL( __realApiLevel "${ANDROID_NDK}/platforms/android-${ANDROID_NATIVE_API_LEVEL}/arch-${ANDROID_ARCH_NAME}/usr/include/android/api-level.h" )
@ -925,11 +1026,11 @@ if( "${ANDROID_TOOLCHAIN_NAME}" STREQUAL "standalone-clang" )
elseif( "${ANDROID_TOOLCHAIN_NAME}" MATCHES "-clang3[.][0-9]?$" )
string( REGEX MATCH "3[.][0-9]$" ANDROID_CLANG_VERSION "${ANDROID_TOOLCHAIN_NAME}")
string( REGEX REPLACE "-clang${ANDROID_CLANG_VERSION}$" "-4.6" ANDROID_GCC_TOOLCHAIN_NAME "${ANDROID_TOOLCHAIN_NAME}" )
if( NOT EXISTS "${ANDROID_NDK}/toolchains/llvm-${ANDROID_CLANG_VERSION}/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}/bin/clang${TOOL_OS_SUFFIX}" )
message( FATAL_ERROR "Could not find the " )
if( NOT EXISTS "${ANDROID_NDK_TOOLCHAINS_PATH}/llvm-${ANDROID_CLANG_VERSION}${ANDROID_NDK_TOOLCHAINS_SUBPATH}/bin/clang${TOOL_OS_SUFFIX}" )
message( FATAL_ERROR "Could not find the Clang compiler driver" )
endif()
set( ANDROID_COMPILER_IS_CLANG 1 )
set( ANDROID_CLANG_TOOLCHAIN_ROOT "${ANDROID_NDK}/toolchains/llvm-${ANDROID_CLANG_VERSION}/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}" )
set( ANDROID_CLANG_TOOLCHAIN_ROOT "${ANDROID_NDK_TOOLCHAINS_PATH}/llvm-${ANDROID_CLANG_VERSION}${ANDROID_NDK_TOOLCHAINS_SUBPATH}" )
else()
set( ANDROID_GCC_TOOLCHAIN_NAME "${ANDROID_TOOLCHAIN_NAME}" )
unset( ANDROID_COMPILER_IS_CLANG CACHE )
@ -943,7 +1044,7 @@ endif()
# setup paths and STL for NDK
if( BUILD_WITH_ANDROID_NDK )
set( ANDROID_TOOLCHAIN_ROOT "${ANDROID_NDK}/toolchains/${ANDROID_GCC_TOOLCHAIN_NAME}/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}" )
set( ANDROID_TOOLCHAIN_ROOT "${ANDROID_NDK_TOOLCHAINS_PATH}/${ANDROID_GCC_TOOLCHAIN_NAME}${ANDROID_NDK_TOOLCHAINS_SUBPATH}" )
set( ANDROID_SYSROOT "${ANDROID_NDK}/platforms/android-${ANDROID_NATIVE_API_LEVEL}/arch-${ANDROID_ARCH_NAME}" )
if( ANDROID_STL STREQUAL "none" )
@ -1002,11 +1103,11 @@ if( BUILD_WITH_ANDROID_NDK )
endif()
# find libsupc++.a - rtti & exceptions
if( ANDROID_STL STREQUAL "system_re" OR ANDROID_STL MATCHES "gnustl" )
if( ANDROID_NDK_RELEASE STRGREATER "r8" ) # r8b
set( __libsupcxx "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_COMPILER_VERSION}/libs/${ANDROID_NDK_ABI_NAME}/libsupc++.a" )
elseif( NOT ANDROID_NDK_RELEASE STRLESS "r7" AND ANDROID_NDK_RELEASE STRLESS "r8b")
set( __libsupcxx "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/libs/${ANDROID_NDK_ABI_NAME}/libsupc++.a" )
else( ANDROID_NDK_RELEASE STRLESS "r7" )
set( __libsupcxx "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_COMPILER_VERSION}/libs/${ANDROID_NDK_ABI_NAME}/libsupc++.a" ) # r8b or newer
if( NOT EXISTS "${__libsupcxx}" )
set( __libsupcxx "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/libs/${ANDROID_NDK_ABI_NAME}/libsupc++.a" ) # r7-r8
endif()
if( NOT EXISTS "${__libsupcxx}" ) # before r7
if( ARMEABI_V7A )
if( ANDROID_FORCE_ARM_BUILD )
set( __libsupcxx "${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_TOOLCHAIN_MACHINE_NAME}/lib/${CMAKE_SYSTEM_PROCESSOR}/libsupc++.a" )
@ -1056,7 +1157,7 @@ unset( _ndk_ccache )
# setup the cross-compiler
if( NOT CMAKE_C_COMPILER )
if( NDK_CCACHE )
if( NDK_CCACHE AND NOT ANDROID_SYSROOT MATCHES "[ ;\"]" )
set( CMAKE_C_COMPILER "${NDK_CCACHE}" CACHE PATH "ccache as C compiler" )
set( CMAKE_CXX_COMPILER "${NDK_CCACHE}" CACHE PATH "ccache as C++ compiler" )
if( ANDROID_COMPILER_IS_CLANG )
@ -1128,11 +1229,25 @@ set( CMAKE_ASM_SOURCE_FILE_EXTENSIONS s S asm )
remove_definitions( -DANDROID )
add_definitions( -DANDROID )
if(ANDROID_SYSROOT MATCHES "[ ;\"]")
set( ANDROID_CXX_FLAGS "--sysroot=\"${ANDROID_SYSROOT}\"" )
if( ANDROID_SYSROOT MATCHES "[ ;\"]" )
if( CMAKE_HOST_WIN32 )
# try to convert path to 8.3 form
file( WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/cvt83.cmd" "@echo %~s1" )
execute_process( COMMAND "$ENV{ComSpec}" /c "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/cvt83.cmd" "${ANDROID_SYSROOT}"
OUTPUT_VARIABLE __path OUTPUT_STRIP_TRAILING_WHITESPACE
RESULT_VARIABLE __result ERROR_QUIET )
if( __result EQUAL 0 )
file( TO_CMAKE_PATH "${__path}" ANDROID_SYSROOT )
set( ANDROID_CXX_FLAGS "--sysroot=${ANDROID_SYSROOT}" )
else()
set( ANDROID_CXX_FLAGS "--sysroot=\"${ANDROID_SYSROOT}\"" )
endif()
else()
set( ANDROID_CXX_FLAGS "'--sysroot=${ANDROID_SYSROOT}'" )
endif()
if( NOT _CMAKE_IN_TRY_COMPILE )
# quotes will break try_compile and compiler identification
message(WARNING "Your Android system root has non-alphanumeric symbols. It can break compiler features detection and the whole build.")
# quotes can break try_compile and compiler identification
message(WARNING "Path to your Android NDK (or toolchain) has non-alphanumeric symbols.\nThe build might be broken.\n")
endif()
else()
set( ANDROID_CXX_FLAGS "--sysroot=${ANDROID_SYSROOT}" )
@ -1140,38 +1255,52 @@ endif()
# NDK flags
if( ARMEABI OR ARMEABI_V7A )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fpic -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__" )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fpic -funwind-tables" )
if( NOT ANDROID_FORCE_ARM_BUILD AND NOT ARMEABI_V6 )
# It is recommended to use the -mthumb compiler flag to force the generation
# of 16-bit Thumb-1 instructions (the default being 32-bit ARM ones).
set( ANDROID_CXX_FLAGS_RELEASE "-mthumb" )
set( ANDROID_CXX_FLAGS_DEBUG "-marm -finline-limit=64" )
set( ANDROID_CXX_FLAGS_RELEASE "-mthumb -fomit-frame-pointer -fno-strict-aliasing" )
set( ANDROID_CXX_FLAGS_DEBUG "-marm -fno-omit-frame-pointer -fno-strict-aliasing" )
if( NOT ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -finline-limit=64" )
endif()
else()
# always compile ARMEABI_V6 in arm mode; otherwise there is no difference from ARMEABI
# O3 instead of O2/Os in release mode - like cmake sets for desktop gcc
set( ANDROID_CXX_FLAGS_RELEASE "-marm" )
set( ANDROID_CXX_FLAGS_DEBUG "-marm -finline-limit=300" )
set( ANDROID_CXX_FLAGS_RELEASE "-marm -fomit-frame-pointer -fstrict-aliasing" )
set( ANDROID_CXX_FLAGS_DEBUG "-marm -fno-omit-frame-pointer -fno-strict-aliasing" )
if( NOT ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -funswitch-loops -finline-limit=300" )
endif()
endif()
elseif( X86 )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -funwind-tables" )
set( ANDROID_CXX_FLAGS_RELEASE "" )
set( ANDROID_CXX_FLAGS_DEBUG "-finline-limit=300" )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -funwind-tables" )
if( NOT ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -funswitch-loops -finline-limit=300" )
else()
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fPIC" )
endif()
set( ANDROID_CXX_FLAGS_RELEASE "-fomit-frame-pointer -fstrict-aliasing" )
set( ANDROID_CXX_FLAGS_DEBUG "-fno-omit-frame-pointer -fno-strict-aliasing" )
elseif( MIPS )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fpic -funwind-tables -fmessage-length=0 -fno-inline-functions-called-once -frename-registers" )
set( ANDROID_CXX_FLAGS_RELEASE "-finline-limit=300 -fno-strict-aliasing" )
set( ANDROID_CXX_FLAGS_DEBUG "-finline-functions -fgcse-after-reload -frerun-cse-after-loop" )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fpic -fno-strict-aliasing -finline-functions -ffunction-sections -funwind-tables -fmessage-length=0" )
set( ANDROID_CXX_FLAGS_RELEASE "-fomit-frame-pointer" )
set( ANDROID_CXX_FLAGS_DEBUG "-fno-omit-frame-pointer" )
if( NOT ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fno-inline-functions-called-once -fgcse-after-reload -frerun-cse-after-loop -frename-registers" )
set( ANDROID_CXX_FLAGS_RELEASE "${ANDROID_CXX_FLAGS_RELEASE} -funswitch-loops -finline-limit=300" )
endif()
elseif()
set( ANDROID_CXX_FLAGS_RELEASE "" )
set( ANDROID_CXX_FLAGS_DEBUG "" )
endif()
if( NOT X86 )
set( ANDROID_CXX_FLAGS "-Wno-psabi ${ANDROID_CXX_FLAGS}" )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fsigned-char" ) # good/necessary when porting desktop libraries
if( NOT X86 AND NOT ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "-Wno-psabi ${ANDROID_CXX_FLAGS}" )
endif()
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -fsigned-char" ) # good/necessary when porting desktop libraries
set( ANDROID_CXX_FLAGS_RELEASE "${ANDROID_CXX_FLAGS_RELEASE} -fomit-frame-pointer" )
set( ANDROID_CXX_FLAGS_DEBUG "${ANDROID_CXX_FLAGS_DEBUG} -fno-strict-aliasing -fno-omit-frame-pointer" )
if( NOT ANDROID_COMPILER_VERSION VERSION_LESS "4.6" )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -no-canonical-prefixes" ) # see https://android-review.googlesource.com/#/c/47564/
endif()
# ABI-specific flags
if( ARMEABI_V7A )
@ -1189,22 +1318,18 @@ elseif( ARMEABI )
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS} -march=armv5te -mtune=xscale -msoft-float" )
endif()
if( ANDROID_STL MATCHES "gnustl" AND (EXISTS "${__libstl}" OR EXISTS "${__libsupcxx}") )
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_C_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>" )
else()
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>" )
endif()
# STL
if( EXISTS "${__libstl}" OR EXISTS "${__libsupcxx}" )
if( ANDROID_STL MATCHES "gnustl" )
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "<CMAKE_C_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_C_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>" )
else()
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "<CMAKE_CXX_COMPILER> <CMAKE_SHARED_LIBRARY_CXX_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>" )
set( CMAKE_CXX_LINK_EXECUTABLE "<CMAKE_CXX_COMPILER> <FLAGS> <CMAKE_CXX_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>" )
endif()
if ( X86 AND ANDROID_STL MATCHES "gnustl" AND ANDROID_NDK_RELEASE STREQUAL "r6" )
# workaround "undefined reference to `__dso_handle'" problem
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "${CMAKE_CXX_CREATE_SHARED_LIBRARY} \"${ANDROID_SYSROOT}/usr/lib/crtbegin_so.o\"" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "${CMAKE_CXX_CREATE_SHARED_MODULE} \"${ANDROID_SYSROOT}/usr/lib/crtbegin_so.o\"" )
endif()
if( EXISTS "${__libstl}" )
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "${CMAKE_CXX_CREATE_SHARED_LIBRARY} \"${__libstl}\"" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "${CMAKE_CXX_CREATE_SHARED_MODULE} \"${__libstl}\"" )
@ -1223,9 +1348,12 @@ if( EXISTS "${__libstl}" OR EXISTS "${__libsupcxx}" )
set( CMAKE_C_LINK_EXECUTABLE "${CMAKE_C_LINK_EXECUTABLE} \"${__libsupcxx}\"" )
endif()
if( ANDROID_STL MATCHES "gnustl" )
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "${CMAKE_CXX_CREATE_SHARED_LIBRARY} -lm" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "${CMAKE_CXX_CREATE_SHARED_MODULE} -lm" )
set( CMAKE_CXX_LINK_EXECUTABLE "${CMAKE_CXX_LINK_EXECUTABLE} -lm" )
if( NOT EXISTS "${ANDROID_LIBM_PATH}" )
set( ANDROID_LIBM_PATH -lm )
endif()
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "${CMAKE_CXX_CREATE_SHARED_LIBRARY} ${ANDROID_LIBM_PATH}" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "${CMAKE_CXX_CREATE_SHARED_MODULE} ${ANDROID_LIBM_PATH}" )
set( CMAKE_CXX_LINK_EXECUTABLE "${CMAKE_CXX_LINK_EXECUTABLE} ${ANDROID_LIBM_PATH}" )
endif()
endif()
@ -1261,7 +1389,14 @@ if( ARMEABI_V7A )
endif()
if( ANDROID_NO_UNDEFINED )
set( ANDROID_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} -Wl,--no-undefined" )
if( MIPS )
# there is some sysroot-related problem in mips linker...
if( NOT ANDROID_SYSROOT MATCHES "[ ;\"]" )
set( ANDROID_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} -Wl,--no-undefined -Wl,-rpath-link,${ANDROID_SYSROOT}/usr/lib" )
endif()
else()
set( ANDROID_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} -Wl,--no-undefined" )
endif()
endif()
if( ANDROID_SO_UNDEFINED )
@ -1308,9 +1443,6 @@ if( ANDROID_COMPILER_IS_CLANG )
set( ANDROID_CXX_FLAGS "-target ${ANDROID_LLVM_TRIPLE} ${ANDROID_CXX_FLAGS}" )
endif()
if( BUILD_WITH_ANDROID_NDK )
if(ANDROID_ARCH_NAME STREQUAL "arm" )
set( ANDROID_CXX_FLAGS "-isystem ${ANDROID_CLANG_TOOLCHAIN_ROOT}/lib/clang/${ANDROID_CLANG_VERSION}/include ${ANDROID_CXX_FLAGS}" )
endif()
set( ANDROID_CXX_FLAGS "-gcc-toolchain ${ANDROID_TOOLCHAIN_ROOT} ${ANDROID_CXX_FLAGS}" )
endif()
endif()
@ -1326,6 +1458,12 @@ set( CMAKE_SHARED_LINKER_FLAGS "" CACHE STRING "shared li
set( CMAKE_MODULE_LINKER_FLAGS "" CACHE STRING "module linker flags" )
set( CMAKE_EXE_LINKER_FLAGS "-Wl,-z,nocopyreloc" CACHE STRING "executable linker flags" )
# put flags to cache (for debug purpose only)
set( ANDROID_CXX_FLAGS "${ANDROID_CXX_FLAGS}" CACHE INTERNAL "Android specific c/c++ flags" )
set( ANDROID_CXX_FLAGS_RELEASE "${ANDROID_CXX_FLAGS_RELEASE}" CACHE INTERNAL "Android specific c/c++ Release flags" )
set( ANDROID_CXX_FLAGS_DEBUG "${ANDROID_CXX_FLAGS_DEBUG}" CACHE INTERNAL "Android specific c/c++ Debug flags" )
set( ANDROID_LINKER_FLAGS "${ANDROID_LINKER_FLAGS}" CACHE INTERNAL "Android specific c/c++ linker flags" )
# finish flags
set( CMAKE_CXX_FLAGS "${ANDROID_CXX_FLAGS} ${CMAKE_CXX_FLAGS}" )
set( CMAKE_C_FLAGS "${ANDROID_CXX_FLAGS} ${CMAKE_C_FLAGS}" )
@ -1338,9 +1476,9 @@ set( CMAKE_MODULE_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} ${CMAKE_MODULE_LINKER_FL
set( CMAKE_EXE_LINKER_FLAGS "${ANDROID_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}" )
if( MIPS AND BUILD_WITH_ANDROID_NDK AND ANDROID_NDK_RELEASE STREQUAL "r8" )
set( CMAKE_SHARED_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK}/toolchains/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.xsc ${CMAKE_SHARED_LINKER_FLAGS}" )
set( CMAKE_MODULE_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK}/toolchains/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.xsc ${CMAKE_MODULE_LINKER_FLAGS}" )
set( CMAKE_EXE_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK}/toolchains/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.x ${CMAKE_EXE_LINKER_FLAGS}" )
set( CMAKE_SHARED_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK_TOOLCHAINS_PATH}/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.xsc ${CMAKE_SHARED_LINKER_FLAGS}" )
set( CMAKE_MODULE_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK_TOOLCHAINS_PATH}/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.xsc ${CMAKE_MODULE_LINKER_FLAGS}" )
set( CMAKE_EXE_LINKER_FLAGS "-Wl,-T,${ANDROID_NDK_TOOLCHAINS_PATH}/${ANDROID_GCC_TOOLCHAIN_NAME}/mipself.x ${CMAKE_EXE_LINKER_FLAGS}" )
endif()
# configure rtti
@ -1367,6 +1505,43 @@ endif()
include_directories( SYSTEM "${ANDROID_SYSROOT}/usr/include" ${ANDROID_STL_INCLUDE_DIRS} )
link_directories( "${CMAKE_INSTALL_PREFIX}/libs/${ANDROID_NDK_ABI_NAME}" )
# detect if need link crtbegin_so.o explicitly
if( NOT DEFINED ANDROID_EXPLICIT_CRT_LINK )
set( __cmd "${CMAKE_CXX_CREATE_SHARED_LIBRARY}" )
string( REPLACE "<CMAKE_CXX_COMPILER>" "${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1}" __cmd "${__cmd}" )
string( REPLACE "<CMAKE_C_COMPILER>" "${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1}" __cmd "${__cmd}" )
string( REPLACE "<CMAKE_SHARED_LIBRARY_CXX_FLAGS>" "${CMAKE_CXX_FLAGS}" __cmd "${__cmd}" )
string( REPLACE "<LANGUAGE_COMPILE_FLAGS>" "" __cmd "${__cmd}" )
string( REPLACE "<LINK_FLAGS>" "${CMAKE_SHARED_LINKER_FLAGS}" __cmd "${__cmd}" )
string( REPLACE "<CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS>" "-shared" __cmd "${__cmd}" )
string( REPLACE "<CMAKE_SHARED_LIBRARY_SONAME_CXX_FLAG>" "" __cmd "${__cmd}" )
string( REPLACE "<TARGET_SONAME>" "" __cmd "${__cmd}" )
string( REPLACE "<TARGET>" "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/toolchain_crtlink_test.so" __cmd "${__cmd}" )
string( REPLACE "<OBJECTS>" "\"${ANDROID_SYSROOT}/usr/lib/crtbegin_so.o\"" __cmd "${__cmd}" )
string( REPLACE "<LINK_LIBRARIES>" "" __cmd "${__cmd}" )
separate_arguments( __cmd )
foreach( __var ANDROID_NDK ANDROID_NDK_TOOLCHAINS_PATH ANDROID_STANDALONE_TOOLCHAIN )
if( ${__var} )
set( __tmp "${${__var}}" )
separate_arguments( __tmp )
string( REPLACE "${__tmp}" "${${__var}}" __cmd "${__cmd}")
endif()
endforeach()
string( REPLACE "'" "" __cmd "${__cmd}" )
string( REPLACE "\"" "" __cmd "${__cmd}" )
execute_process( COMMAND ${__cmd} RESULT_VARIABLE __cmd_result OUTPUT_QUIET ERROR_QUIET )
if( __cmd_result EQUAL 0 )
set( ANDROID_EXPLICIT_CRT_LINK ON )
else()
set( ANDROID_EXPLICIT_CRT_LINK OFF )
endif()
endif()
if( ANDROID_EXPLICIT_CRT_LINK )
set( CMAKE_CXX_CREATE_SHARED_LIBRARY "${CMAKE_CXX_CREATE_SHARED_LIBRARY} \"${ANDROID_SYSROOT}/usr/lib/crtbegin_so.o\"" )
set( CMAKE_CXX_CREATE_SHARED_MODULE "${CMAKE_CXX_CREATE_SHARED_MODULE} \"${ANDROID_SYSROOT}/usr/lib/crtbegin_so.o\"" )
endif()
# setup output directories
set( LIBRARY_OUTPUT_PATH_ROOT ${CMAKE_SOURCE_DIR} CACHE PATH "root for library output, set this to change where android libs are installed to" )
set( CMAKE_INSTALL_PREFIX "${ANDROID_TOOLCHAIN_ROOT}/user" CACHE STRING "path for installing" )
@ -1456,7 +1631,9 @@ endmacro()
if( NOT PROJECT_NAME STREQUAL "CMAKE_TRY_COMPILE" )
set( __toolchain_config "")
foreach( __var NDK_CCACHE LIBRARY_OUTPUT_PATH_ROOT ANDROID_FORBID_SYGWIN ANDROID_SET_OBSOLETE_VARIABLES
ANDROID_NDK_HOST_X64
ANDROID_NDK
ANDROID_NDK_LAYOUT
ANDROID_STANDALONE_TOOLCHAIN
ANDROID_TOOLCHAIN_NAME
ANDROID_ABI
@ -1470,6 +1647,8 @@ if( NOT PROJECT_NAME STREQUAL "CMAKE_TRY_COMPILE" )
ANDROID_GOLD_LINKER
ANDROID_NOEXECSTACK
ANDROID_RELRO
ANDROID_LIBM_PATH
ANDROID_EXPLICIT_CRT_LINK
)
if( DEFINED ${__var} )
if( "${__var}" MATCHES " ")
@ -1512,6 +1691,8 @@ endif()
# ANDROID_NDK
# ANDROID_STANDALONE_TOOLCHAIN
# ANDROID_TOOLCHAIN_NAME : the NDK name of compiler toolchain
# ANDROID_NDK_HOST_X64 : try to use x86_64 toolchain (default for x64 host systems)
# ANDROID_NDK_LAYOUT : the inner NDK structure (RELEASE, LINARO, ANDROID)
# LIBRARY_OUTPUT_PATH_ROOT : <any valid path>
# NDK_CCACHE : <path to your ccache executable>
# Obsolete:
@ -1536,7 +1717,7 @@ endif()
# BUILD_WITH_STANDALONE_TOOLCHAIN : TRUE if standalone toolchain is used
# ANDROID_NDK_HOST_SYSTEM_NAME : "windows", "linux-x86" or "darwin-x86" depending on host platform
# ANDROID_NDK_ABI_NAME : "armeabi", "armeabi-v7a", "x86" or "mips" depending on ANDROID_ABI
# ANDROID_NDK_RELEASE : one of r5, r5b, r5c, r6, r6b, r7, r7b, r7c, r8, r8b, r8c, r8d; set only for NDK
# ANDROID_NDK_RELEASE : one of r5, r5b, r5c, r6, r6b, r7, r7b, r7c, r8, r8b, r8c, r8d, r8e; set only for NDK
# ANDROID_ARCH_NAME : "arm" or "x86" or "mips" depending on ANDROID_ABI
# ANDROID_SYSROOT : path to the compiler sysroot
# TOOL_OS_SUFFIX : "" or ".exe" depending on host platform
@ -1557,6 +1738,7 @@ endif()
# ANDROID_EXCEPTIONS : if exceptions are enabled by the runtime
# ANDROID_GCC_TOOLCHAIN_NAME : read-only, differs from ANDROID_TOOLCHAIN_NAME only if clang is used
# ANDROID_CLANG_VERSION : version of clang compiler if clang is used
# ANDROID_LIBM_PATH : path to libm.so (set to something like $(TOP)/out/target/product/<product_name>/obj/lib/libm.so) to workaround unresolved `sincos`
#
# Defaults:
# ANDROID_DEFAULT_NDK_API_LEVEL

0
resources/3rdparty/log4cplus-1.1.2-rc2/android/scripts/cmake_android.sh → resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android.sh

0
resources/3rdparty/log4cplus-1.1.2-rc2/android/scripts/cmake_android_armeabi.sh → resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_armeabi.sh

0
resources/3rdparty/log4cplus-1.1.2-rc2/android/scripts/cmake_android_mips.sh → resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_mips.sh

0
resources/3rdparty/log4cplus-1.1.2-rc2/android/scripts/cmake_android_neon.sh → resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_neon.sh

0
resources/3rdparty/log4cplus-1.1.2-rc2/android/scripts/cmake_android_x86.sh → resources/3rdparty/log4cplus-1.1.3-rc1/android/scripts/cmake_android_x86.sh

0
resources/3rdparty/log4cplus-1.1.2-rc2/ar-lib → resources/3rdparty/log4cplus-1.1.3-rc1/ar-lib

0
resources/3rdparty/log4cplus-1.1.2-rc2/config.guess → resources/3rdparty/log4cplus-1.1.3-rc1/config.guess

0
resources/3rdparty/log4cplus-1.1.2-rc2/config.sub → resources/3rdparty/log4cplus-1.1.3-rc1/config.sub

108
resources/3rdparty/log4cplus-1.1.2-rc2/configure → resources/3rdparty/log4cplus-1.1.3-rc1/configure

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for log4cplus 1.1.2.
# Generated by GNU Autoconf 2.69 for log4cplus 1.1.3.
#
#
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@ -587,8 +587,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='log4cplus'
PACKAGE_TARNAME='log4cplus'
PACKAGE_VERSION='1.1.2'
PACKAGE_STRING='log4cplus 1.1.2'
PACKAGE_VERSION='1.1.3'
PACKAGE_STRING='log4cplus 1.1.3'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@ -665,6 +665,7 @@ PTHREAD_CXXFLAGS
PTHREAD_LIBS
ax_pthread_config
EGREP
LOG4CPLUS_AIX_XLC_LDFLAGS
GREP
SED
CXXCPP
@ -784,6 +785,7 @@ enable_debugging
enable_warnings
enable_so_version
enable_release_version
enable_symbols_visibility_options
enable_profiling
enable_threads
with_qt
@ -1352,7 +1354,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures log4cplus 1.1.2 to adapt to many kinds of systems.
\`configure' configures log4cplus 1.1.3 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1423,7 +1425,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of log4cplus 1.1.2:";;
short | recursive ) echo "Configuration of log4cplus 1.1.3:";;
esac
cat <<\_ACEOF
@ -1436,12 +1438,16 @@ Optional Features:
--disable-dependency-tracking
speeds up one-time build
--enable-debugging Turns off optimization and adds switches that
generate debugging information.
--enable-warnings Use compiler warnings option, e.g. -Wall. Enabled by
default.
--enable-so-version Use libtool -version-info option.
generate debugging information. [default=no]
--enable-warnings Use compiler warnings option, e.g. -Wall.
[default=yes]
--enable-so-version Use libtool -version-info option. [default=yes]
--enable-release-version
Use libtool -release option.
Use libtool -release option. [default=yes]
--enable-symbols-visibility-options
Use platform and compiler specific symbols
visibility options, where they are available.
[default=yes]
--enable-profiling Compile with profiling compiler options.
--enable-threads=yes/no Use this option to create a singled-threaded version
of this library
@ -1550,7 +1556,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
log4cplus configure 1.1.2
log4cplus configure 1.1.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@ -2097,7 +2103,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by log4cplus $as_me 1.1.2, which was
It was created by log4cplus $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@ -3033,7 +3039,7 @@ fi
# Define the identity of the package.
PACKAGE='log4cplus'
VERSION='1.1.2'
VERSION='1.1.3'
# Some tools Automake needs.
@ -4219,7 +4225,7 @@ esac
# ? :+1 : ? == just some internal changes, nothing breaks but might work
# better
# CURRENT : REVISION : AGE
LT_VERSION=8:1:1
LT_VERSION=9:1:0
LT_RELEASE=1.1
@ -4395,6 +4401,22 @@ fi
# Check whether --enable-symbols-visibility-options was given.
if test "${enable_symbols_visibility_options+set}" = set; then :
enableval=$enable_symbols_visibility_options; case "${enableval}" in #(
yes) :
;; #(
no) :
;; #(
*) :
as_fn_error $? "bad value ${enableval} for --enable-symbols-visibility-options" "$LINENO" 5 ;;
esac
else
enable_symbols_visibility_options=yes
fi
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@ -5164,6 +5186,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
esac
fi
LOG4CPLUS_AIX_XLC_LDFLAGS=
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
if ${ac_cv_path_GREP+:} false; then :
@ -5228,6 +5251,9 @@ $as_echo "$ac_cv_path_GREP" >&6; }
case $ax_cv_cxx_compiler_vendor in #(
ibm) :
as_fn_append CXXFLAGS " -qroconst"
as_fn_append LOG4CPLUS_AIX_XLC_LDFLAGS " -qmkshrobj=-300" ;; #(
gnu|clang) :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking CXXFLAGS for gcc -fdiagnostics-show-caret" >&5
$as_echo_n "checking CXXFLAGS for gcc -fdiagnostics-show-caret... " >&6; }
@ -7185,6 +7211,8 @@ esac
esac
if test "x$enable_symbols_visibility_options" = "xyes"; then :
@ -7248,9 +7276,10 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#if defined (__clang__)
#if defined (__clang__) || defined (__HAIKU__)
// Here the problem is that Clang only warns that it does not support
// __declspec(dllexport) but still compiles the executable.
// __declspec(dllexport) but still compiles the executable. GCC on Haiku OS
// suffers from the same problem.
# error Please fail.
And extra please fail.
#else
@ -7358,7 +7387,7 @@ fi
{ continue_checks=; unset continue_checks;}
if test "x$ac_cv_declspec" = "xyes" || test "x$ac_cv__attribute__visibility" = "xyes" || test "x$ac_cv__global" = "xyes"; then :
if test "x$ac_cv_declspec" = "xyes" || test "x$ac_cv__attribute__visibility" = "xyes" || test "x$ac_cv__global" = "xyes"; then :
case $ax_cv_cxx_compiler_vendor in #(
gnu|clang) :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking CXXFLAGS for gcc -fvisibility=hidden" >&5
@ -7425,7 +7454,8 @@ case ".$var" in
;;
esac
;; #(
sun) :
sun) :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking CXXFLAGS for sun/cc -xldscope=hidden" >&5
$as_echo_n "checking CXXFLAGS for sun/cc -xldscope=hidden... " >&6; }
if ${ax_cv_cxxflags_sun_option__xldscope_hidden+:} false; then :
@ -7494,6 +7524,7 @@ esac
;;
esac
fi
fi
@ -7511,6 +7542,7 @@ else
#include <cstdio>
#include <cstdlib>
#include <cstddef>
int
main ()
@ -7563,6 +7595,7 @@ else
#include <cstdio>
#include <cstdlib>
#include <cstddef>
int
main ()
@ -7970,7 +8003,7 @@ return gethostbyname ();
return 0;
}
_ACEOF
for ac_lib in '' nsl; do
for ac_lib in '' nsl network net; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@ -8026,7 +8059,7 @@ return setsockopt ();
return 0;
}
_ACEOF
for ac_lib in '' socket; do
for ac_lib in '' socket network net; do
if test -z "$ac_lib"; then
ac_res="none required"
else
@ -9486,6 +9519,11 @@ else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
// check that pointers to classes work as well
struct S { S () { } void foo () { } int member; };
extern thread_local S * p_s;
thread_local S * p_s = 0;
extern thread_local int x;
thread_local int * ptr = 0;
int foo () { ptr = &x; return x; }
@ -9496,6 +9534,7 @@ main ()
{
x = 2;
foo ();
p_s = new S;
;
return 0;
}
@ -9537,6 +9576,11 @@ else
#endif
#endif
// check that pointers to classes work as well
struct S { S () { } void foo () { } int member; };
extern __thread S * p_s;
__thread S * p_s = 0;
extern __thread int x;
__thread int * ptr = 0;
int foo () { ptr = &x; return x; }
@ -9547,6 +9591,7 @@ main ()
{
x = 2;
foo ();
p_s = new S;
;
return 0;
@ -9589,6 +9634,11 @@ else
# error Please fail.
And extra please fail.
#else
// check that pointers to classes work as well
struct S { S () { } void foo () { } int member; };
extern __declspec(thread) S * p_s;
__declspec(thread) S * p_s = 0;
extern __declspec(thread) int x;
__declspec(thread) int * ptr = 0;
int foo () { ptr = &x; return x; }
@ -9600,6 +9650,7 @@ main ()
{
x = 2;
foo ();
p_s = new S;
;
return 0;
}
@ -9927,6 +9978,19 @@ fi
done
for ac_func in shutdown
do :
ac_fn_cxx_check_func "$LINENO" "shutdown" "ac_cv_func_shutdown"
if test "x$ac_cv_func_shutdown" = xyes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_SHUTDOWN 1
_ACEOF
$as_echo "#define LOG4CPLUS_HAVE_SHUTDOWN 1" >>confdefs.h
fi
done
for ac_func in mbstowcs
do :
ac_fn_cxx_check_func "$LINENO" "mbstowcs" "ac_cv_func_mbstowcs"
@ -21739,7 +21803,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by log4cplus $as_me 1.1.2, which was
This file was extended by log4cplus $as_me 1.1.3, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -21805,7 +21869,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
log4cplus config.status 1.1.2
log4cplus config.status 1.1.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"

58
resources/3rdparty/log4cplus-1.1.2-rc2/configure.ac → resources/3rdparty/log4cplus-1.1.3-rc1/configure.ac

@ -4,7 +4,7 @@ dnl autoconf-2.69
dnl automake-1.12.6
dnl libtool-2.4.2
AC_INIT([log4cplus],[1.1.2])
AC_INIT([log4cplus],[1.1.3])
AC_CANONICAL_TARGET
AC_CONFIG_SRCDIR([src/logger.cxx])
AC_CONFIG_MACRO_DIR([m4])
@ -18,7 +18,7 @@ AM_PROG_AR
# ? :+1 : ? == just some internal changes, nothing breaks but might work
# better
# CURRENT : REVISION : AGE
LT_VERSION=8:1:1
LT_VERSION=9:1:0
LT_RELEASE=1.1
AC_SUBST([LT_VERSION])
AC_SUBST([LT_RELEASE])
@ -75,7 +75,7 @@ dnl Debugging or release build?
AC_ARG_ENABLE([debugging],
[AS_HELP_STRING([--enable-debugging],
[Turns off optimization and adds switches that generate debugging
information.])],
information. [default=no]])],
[LOG4CPLUS_CHECK_YESNO([${enableval}], [--enable-debugging])],
[enable_debugging=no])
@ -99,14 +99,15 @@ dnl Turn warnings on/off?
AC_ARG_ENABLE([warnings],
[AC_HELP_STRING([--enable-warnings],
[Use compiler warnings option, e.g. -Wall. Enabled by default.])],
[Use compiler warnings option, e.g. -Wall. [default=yes]])],
[LOG4CPLUS_CHECK_YESNO([${enableval}], [--enable-warnings])],
[enable_warnings=yes])
dnl Enable SO version.
AC_ARG_ENABLE([so-version],
[AC_HELP_STRING([--enable-so-version], [Use libtool -version-info option.])],
[AC_HELP_STRING([--enable-so-version],
[Use libtool -version-info option. [default=yes]])],
[LOG4CPLUS_CHECK_YESNO([${enableval}], [--enable-so-version])],
[enable_so_version=yes])
AM_CONDITIONAL([ENABLE_VERSION_INFO_OPTION],
@ -115,12 +116,23 @@ AM_CONDITIONAL([ENABLE_VERSION_INFO_OPTION],
dnl Enable release version.
AC_ARG_ENABLE([release-version],
[AC_HELP_STRING([--enable-release-version], [Use libtool -release option.])],
[AC_HELP_STRING([--enable-release-version],
[Use libtool -release option. [default=yes]])],
[LOG4CPLUS_CHECK_YESNO([${enableval}], [--enable-release-version])],
[enable_release_version=yes])
AM_CONDITIONAL([ENABLE_RELEASE_OPTION],
[test "x$enable_release_version" = "xyes"])
dnl Enable use of symbol visibility options.
AC_ARG_ENABLE([symbols-visibility-options],
[AC_HELP_STRING([--enable-symbols-visibility-options],
[Use platform and compiler specific symbols visibility options,
where they are available. [default=yes]])],
[LOG4CPLUS_CHECK_YESNO([${enableval}],
[--enable-symbols-visibility-options])],
[enable_symbols_visibility_options=yes])
dnl Check for c/c++ compilers.
AC_PROG_CXX
@ -164,7 +176,11 @@ AS_IF([test "x$enable_warnings" = "xyes"],
[sun], [],
[AX_CXXFLAGS_WARN_ALL])])
LOG4CPLUS_AIX_XLC_LDFLAGS=
AS_CASE([$ax_cv_cxx_compiler_vendor],
[ibm],
[AS_VAR_APPEND([CXXFLAGS], [" -qroconst"])
AS_VAR_APPEND([LOG4CPLUS_AIX_XLC_LDFLAGS], [" -qmkshrobj=-300"])],
[gnu|clang],
[AX_CXXFLAGS_GCC_OPTION([-fdiagnostics-show-caret])
AS_IF([test "x$enable_warnings" = "xyes"],
@ -271,17 +287,24 @@ AS_CASE([$ax_cv_cxx_compiler_vendor],
dnl Adding -library=Crun is always necessary.
AX_CXXFLAGS_SUN_OPTION([-library=Crun])])
AC_SUBST([LOG4CPLUS_AIX_XLC_LDFLAGS])
AX_DECLSPEC([LOG4CPLUS_DECLSPEC])
AS_IF([test "x$ac_cv_declspec" = "xyes" dnl
|| test "x$ac_cv__attribute__visibility" = "xyes" dnl
|| test "x$ac_cv__global" = "xyes"],
[AS_CASE([$ax_cv_cxx_compiler_vendor],
[gnu|clang],
[AX_CXXFLAGS_GCC_OPTION([-fvisibility=hidden])],
AS_IF([test "x$enable_symbols_visibility_options" = "xyes"],
[AX_DECLSPEC([LOG4CPLUS_DECLSPEC])
AS_IF([test "x$ac_cv_declspec" = "xyes" dnl
|| test "x$ac_cv__attribute__visibility" = "xyes" dnl
|| test "x$ac_cv__global" = "xyes"],
[AS_CASE([$ax_cv_cxx_compiler_vendor],
[gnu|clang],
[AX_CXXFLAGS_GCC_OPTION([-fvisibility=hidden])],
dnl Adding -Bhidden or -Bhidden_def to CXXFLAGS causes configure
dnl tests to fail because main() becomes hidden.
dnl[hp],
dnl[AS_VAR_APPEND([CXXFLAGS], [" -Bhidden -Wl,-a"])],
[sun],
[AX_CXXFLAGS_SUN_OPTION([-xldscope=hidden])])])
[sun],
[AX_CXXFLAGS_SUN_OPTION([-xldscope=hidden])])])])
AX_C99_VARIADIC_MACROS
AH_TEMPLATE([LOG4CPLUS_HAVE_C99_VARIADIC_MACROS])
@ -318,8 +341,8 @@ AC_SEARCH_LIBS([clock_gettime], [rt posix4])
dnl On some systems libcompat exists only as a static library which
dnl breaks compilation of shared library log4cplus.
dnl AC_SEARCH_LIBS([ftime], [compat])
AC_SEARCH_LIBS([gethostbyname], [nsl])
AC_SEARCH_LIBS([setsockopt], [socket])
AC_SEARCH_LIBS([gethostbyname], [nsl network net])
AC_SEARCH_LIBS([setsockopt], [socket network net])
AS_IF([test "x$with_iconv" = "xyes"],
[AC_SEARCH_LIBS([iconv_open], [iconv], [],
[AC_SEARCH_LIBS([libiconv_open], [iconv])])])
@ -459,6 +482,7 @@ LOG4CPLUS_CHECK_FUNCS([htons], [LOG4CPLUS_HAVE_HTONS])
LOG4CPLUS_CHECK_FUNCS([ntohs], [LOG4CPLUS_HAVE_NTOHS])
LOG4CPLUS_CHECK_FUNCS([htonl], [LOG4CPLUS_HAVE_HTONL])
LOG4CPLUS_CHECK_FUNCS([ntohl], [LOG4CPLUS_HAVE_NTOHL])
LOG4CPLUS_CHECK_FUNCS([shutdown], [LOG4CPLUS_HAVE_SHUTDOWN])
LOG4CPLUS_CHECK_FUNCS([mbstowcs], [LOG4CPLUS_HAVE_MBSTOWCS])
LOG4CPLUS_CHECK_FUNCS([wcstombs], [LOG4CPLUS_HAVE_WCSTOMBS])
AS_IF([test "x$with_iconv" = "xyes"],

0
resources/3rdparty/log4cplus-1.1.2-rc2/cygport/configure.ac-disable-__thread-keyword.patch → resources/3rdparty/log4cplus-1.1.3-rc1/cygport/configure.ac-disable-__thread-keyword.patch

0
resources/3rdparty/log4cplus-1.1.2-rc2/cygport/configure.ac-relax-libtool-version.patch → resources/3rdparty/log4cplus-1.1.3-rc1/cygport/configure.ac-relax-libtool-version.patch

12
resources/3rdparty/log4cplus-1.1.2-rc2/cygport/log4cplus.cygport → resources/3rdparty/log4cplus-1.1.3-rc1/cygport/log4cplus.cygport

@ -1,5 +1,5 @@
NAME=log4cplus
VERSION=1.1.2-rc1
VERSION=1.1.3-rc1
RELEASE=1
CATEGORY="Libs"
SUMMARY="C++ logging library"
@ -12,12 +12,12 @@ SRC_URI="mirror://sourceforge/log4cplus/log4cplus-stable/${PV%-rc*}/${P}.tar.xz"
PATCH_URI="configure.ac-relax-libtool-version.patch
configure.ac-disable-__thread-keyword.patch"
PKG_NAMES="lib${PN}1.1_7 lib${PN}qt4debugappender1.1_7
PKG_NAMES="lib${PN}1.1_9 lib${PN}qt4debugappender1.1_9
lib${PN}-devel lib${PN}qt4debugappender-devel"
liblog4cplus1_1_7_SUMMARY="${SUMMARY} (runtime)"
liblog4cplus1_1_7_CONTENTS="usr/bin/cyglog4cplus-1-1-7.dll"
liblog4cplusqt4debugappender1_1_7_SUMMARY="${SUMMARY} (Qt4 runtime)"
liblog4cplusqt4debugappender1_1_7_CONTENTS="usr/bin/cyglog4cplusqt4*-1-1-7.dll"
liblog4cplus1_1_9_SUMMARY="${SUMMARY} (runtime)"
liblog4cplus1_1_9_CONTENTS="usr/bin/cyglog4cplus-1-1-9.dll"
liblog4cplusqt4debugappender1_1_9_SUMMARY="${SUMMARY} (Qt4 runtime)"
liblog4cplusqt4debugappender1_1_9_CONTENTS="usr/bin/cyglog4cplusqt4*-1-1-9.dll"
liblog4cplus_devel_SUMMARY="${SUMMARY} (development)"
liblog4cplus_devel_CONTENTS="--exclude=*qt4* usr/include/ usr/lib/ usr/share/doc/"
liblog4cplusqt4debugappender_devel_SUMMARY="${SUMMARY} (Qt4 development)"

0
resources/3rdparty/log4cplus-1.1.2-rc2/depcomp → resources/3rdparty/log4cplus-1.1.3-rc1/depcomp

4
resources/3rdparty/log4cplus-1.1.2-rc2/docs/doxygen.config → resources/3rdparty/log4cplus-1.1.3-rc1/docs/doxygen.config

@ -32,7 +32,7 @@ PROJECT_NAME = log4cplus
# This could be handy for archiving the generated documentation or
# if some version control system is used.
PROJECT_NUMBER = 1.1.2
PROJECT_NUMBER = 1.1.3
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
@ -52,7 +52,7 @@ PROJECT_LOGO =
# If a relative path is entered, it will be relative to the location
# where doxygen was started. If left blank the current directory will be used.
OUTPUT_DIRECTORY = log4cplus-1.1.2/docs
OUTPUT_DIRECTORY = log4cplus-1.1.3/docs
# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
# 4096 sub-directories (in 2 levels) under the output directory of each output

0
resources/3rdparty/log4cplus-1.1.2-rc2/docs/doxygen.css → resources/3rdparty/log4cplus-1.1.3-rc1/docs/doxygen.css

0
resources/3rdparty/log4cplus-1.1.2-rc2/docs/release.txt → resources/3rdparty/log4cplus-1.1.3-rc1/docs/release.txt

0
resources/3rdparty/log4cplus-1.1.2-rc2/docs/unicode.txt → resources/3rdparty/log4cplus-1.1.3-rc1/docs/unicode.txt

4
resources/3rdparty/log4cplus-1.1.2-rc2/docs/webpage_doxygen.config → resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_doxygen.config

@ -32,7 +32,7 @@ PROJECT_NAME = log4cplus
# This could be handy for archiving the generated documentation or
# if some version control system is used.
PROJECT_NUMBER = 1.1.2
PROJECT_NUMBER = 1.1.3
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer
@ -52,7 +52,7 @@ PROJECT_LOGO =
# If a relative path is entered, it will be relative to the location
# where doxygen was started. If left blank the current directory will be used.
OUTPUT_DIRECTORY = webpage_docs-1.1.2
OUTPUT_DIRECTORY = webpage_docs-1.1.3
# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
# 4096 sub-directories (in 2 levels) under the output directory of each output

0
resources/3rdparty/log4cplus-1.1.2-rc2/docs/webpage_footer.html → resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_footer.html

0
resources/3rdparty/log4cplus-1.1.2-rc2/docs/webpage_header.html → resources/3rdparty/log4cplus-1.1.3-rc1/docs/webpage_header.html

160
resources/3rdparty/log4cplus-1.1.3-rc1/iOS/ConfigureChecks.cmake

@ -0,0 +1,160 @@
include(CheckIncludeFiles)
include(CheckFunctionExists)
include(CheckLibraryExists)
include(CheckSymbolExists)
include(CheckTypeSize)
include(CheckCSourceCompiles)
include(CheckCXXSourceCompiles)
#check_include_files(dlfcn.h HAVE_DLFCN_H )
set(LOG4CPLUS_HAVE_ERRNO_H 1)
set(LOG4CPLUS_HAVE_ICONV_H 1)
set(LOG4CPLUS_HAVE_LIMITS_H 1)
set(LOG4CPLUS_HAVE_SYS_TYPES_H 1)
set(LOG4CPLUS_HAVE_SYS_SOCKET_H 1)
set(LOG4CPLUS_HAVE_SYS_SYSCALL_H 1)
set(LOG4CPLUS_HAVE_SYS_TIME_H 1)
set(LOG4CPLUS_HAVE_SYS_TIMEB_H 1)
set(LOG4CPLUS_HAVE_SYS_STAT_H 1)
set(LOG4CPLUS_HAVE_SYS_FILE_H 1)
set(LOG4CPLUS_HAVE_SYSLOG_H 1)
set(LOG4CPLUS_HAVE_ARPA_INET_H 1)
set(LOG4CPLUS_HAVE_NETINET_IN_H 1)
set(LOG4CPLUS_HAVE_NETINET_TCP_H 1)
set(LOG4CPLUS_HAVE_NETDB_H 1)
set(LOG4CPLUS_HAVE_UNISTD_H 1)
set(LOG4CPLUS_HAVE_FCNTL_H 1)
set(LOG4CPLUS_HAVE_STDIO_H 1)
set(LOG4CPLUS_HAVE_STDARG_H 1)
set(LOG4CPLUS_HAVE_STDLIB_H 1)
set(LOG4CPLUS_HAVE_TIME_H 1)
set(LOG4CPLUS_HAVE_WCHAR_H 1)
set(LOG4CPLUS_HAVE_POLL_H 1)
# set(HAVE_INTTYPES_H 1)
# set(HAVE_MEMORY_H 1)
# set(HAVE_STDINT_H 1)
# set(HAVE_STRINGS_H 1)
# set(HAVE_STRING_H 1)
#check_include_files("stdlib.h;stdio.h;stdarg.h;string.h;float.h" STDC_HEADERS )
find_library(LIBADVAPI32 advapi32)
find_library(LIBKERNEL32 kernel32)
find_library(LIBNSL nsl)
find_library(LIBRT rt)
find_library(LIBICONV iconv)
find_library(LIBPOSIX4 posix4)
find_library(LIBCPOSIX cposix)
find_library(LIBSOCKET socket)
find_library(LIBWS2_32 ws2_32)
set(LOG4CPLUS_HAVE_GMTIME_R 1)
set(LOG4CPLUS_HAVE_LOCALTIME_R 1)
set(LOG4CPLUS_HAVE_GETTIMEOFDAY 1)
set(LOG4CPLUS_HAVE_GETPID 1)
set(LOG4CPLUS_HAVE_POLL 1)
set(LOG4CPLUS_HAVE_PIPE 1)
#set(LOG4CPLUS_HAVE_PIPE2 )
set(LOG4CPLUS_HAVE_FTIME 1)
set(LOG4CPLUS_HAVE_STAT 1)
set(LOG4CPLUS_HAVE_LSTAT 1)
set(LOG4CPLUS_HAVE_FCNTL 1)
set(LOG4CPLUS_HAVE_FLOCK 1)
set(LOG4CPLUS_HAVE_LOCKF 1)
set(LOG4CPLUS_HAVE_HTONS 1)
set(LOG4CPLUS_HAVE_NTOHS 1)
set(LOG4CPLUS_HAVE_HTONL 1)
set(LOG4CPLUS_HAVE_NTOHL 1)
set(LOG4CPLUS_HAVE_SHUTDOWN 1)
set(LOG4CPLUS_HAVE_VSNPRINTF 1)
#set(LOG4CPLUS_HAVE__VSNPRINTF )
#set(LOG4CPLUS_HAVE_VSPRINTF_S )
#set(LOG4CPLUS_HAVE_VSWPRINTF_S )
#set(LOG4CPLUS_HAVE_VFPRINTF_S )
#set(LOG4CPLUS_HAVE_VFWPRINTF_S )
#set(LOG4CPLUS_HAVE__VSNPRINTF_S )
#set(LOG4CPLUS_HAVE__VSNWPRINTF_S )
set(LOG4CPLUS_HAVE_MBSTOWCS 1)
set(LOG4CPLUS_HAVE_WCSTOMBS 1)
set(LOG4CPLUS_HAVE_ENAMETOOLONG 1)
set(LOG4CPLUS_HAVE_GETTID 1)
set(LOG4CPLUS_HAVE_FUNCTION_MACRO 1)
set(LOG4CPLUS_HAVE_PRETTY_FUNCTION_MACRO 1)
set(LOG4CPLUS_HAVE_FUNC_SYMBOL 1)
set(LOG4CPLUS_HAVE___SYNC_ADD_AND_FETCH 1)
set(LOG4CPLUS_HAVE___SYNC_SUB_AND_FETCH 1)
set(LOG4CPLUS_HAVE_GNU_VARIADIC_MACROS 1)
set(LOG4CPLUS_HAVE_C99_VARIADIC_MACROS 1)
#set(LOG4CPLUS_HAVE_CLOCK_GETTIME )
#set(LOG4CPLUS_HAVE_CLOCK_NANOSLEEP )
set(LOG4CPLUS_HAVE_NANOSLEEP 1)
#set(LOG4CPLUS_HAVE_ICONV_OPEN )
#set(LOG4CPLUS_HAVE_ICONV_CLOSE )
#set(LOG4CPLUS_HAVE_ICONV )
#set(LOG4CPLUS_HAVE_GETHOSTBYNAME_R)
set(LOG4CPLUS_HAVE_GETADDRINFO 1)
set(LOG4CPLUS_DECLSPEC_EXPORT "__attribute__ ((visibility(\"default\")))" )
set(LOG4CPLUS_DECLSPEC_IMPORT "__attribute__ ((visibility(\"default\")))" )
set(LOG4CPLUS_DECLSPEC_PRIVATE "__attribute__ ((visibility(\"hidden\")))" )
set(LOG4CPLUS_HAVE_TLS_SUPPORT 1)
set(LOG4CPLUS_THREAD_LOCAL_VAR "__thread")
#set(LOG4CPLUS_HAVE_CXX11_ATOMICS )
#set(socklen_t)
set(HAVE_STDLIB_H ${LOG4CPLUS_HAVE_STDLIB_H} )
set(HAVE_SYS_STAT_H ${LOG4CPLUS_HAVE_SYS_STAT_H} )
set(HAVE_SYS_TYPES_H ${LOG4CPLUS_HAVE_SYS_TYPES_H} )
set(HAVE_SYS_FILE_H ${LOG4CPLUS_HAVE_SYS_FILE_H} )
set(HAVE_UNISTD_H ${LOG4CPLUS_HAVE_UNISTD_H} )
set(HAVE_FTIME ${LOG4CPLUS_HAVE_FTIME} )
set(HAVE_GETPID ${LOG4CPLUS_HAVE_GETPID} )
set(HAVE_GETTIMEOFDAY ${LOG4CPLUS_HAVE_GETTIMEOFDAY} )
set(HAVE_GETADDRINFO ${LOG4CPLUS_HAVE_GETADDRINFO} )
set(HAVE_GETHOSTBYNAME_R ${LOG4CPLUS_HAVE_GETHOSTBYNAME_R} )
set(HAVE_GMTIME_R ${LOG4CPLUS_HAVE_GMTIME_R} )
set(HAVE_HTONL ${LOG4CPLUS_HAVE_HTONL} )
set(HAVE_HTONS ${LOG4CPLUS_HAVE_HTONS} )
set(HAVE_ICONV_OPEN ${LOG4CPLUS_HAVE_ICONV_OPEN} )
set(HAVE_ICONV_CLOSE ${LOG4CPLUS_HAVE_ICONV_CLOSE} )
set(HAVE_ICONV ${LOG4CPLUS_HAVE_ICONV} )
set(HAVE_LSTAT ${LOG4CPLUS_HAVE_LSTAT} )
set(HAVE_FCNTL ${LOG4CPLUS_HAVE_FCNTL} )
set(HAVE_LOCKF ${LOG4CPLUS_HAVE_LOCKF} )
set(HAVE_FLOCK ${LOG4CPLUS_HAVE_FLOCK} )
set(HAVE_LOCALTIME_R ${LOG4CPLUS_HAVE_LOCALTIME_R} )
set(HAVE_NTOHL ${LOG4CPLUS_HAVE_NTOHL} )
set(HAVE_NTOHS ${LOG4CPLUS_HAVE_NTOHS} )
set(HAVE_STAT ${LOG4CPLUS_HAVE_STAT} )
set(HAVE_VFPRINTF_S ${LOG4CPLUS_HAVE_VFPRINTF_S} )
set(HAVE_VFWPRINTF_S ${LOG4CPLUS_HAVE_VFWPRINTF_S} )
set(HAVE_VSNPRINTF ${LOG4CPLUS_HAVE_VSNPRINTF} )
set(HAVE_VSPRINTF_S ${LOG4CPLUS_HAVE_VSPRINTF_S} )
set(HAVE_VSWPRINTF_S ${LOG4CPLUS_HAVE_VSWPRINTF_S} )
set(HAVE__VSNPRINTF ${LOG4CPLUS_HAVE__VSNPRINTF} )
set(HAVE__VSNPRINTF_S ${LOG4CPLUS_HAVE__VSNPRINTF_S} )
set(HAVE__VSNWPRINTF_S ${LOG4CPLUS_HAVE__VSNWPRINTF_S} )
set(HAVE_FUNCTION_MACRO ${LOG4CPLUS_HAVE_FUNCTION_MACRO} )
set(HAVE_PRETTY_FUNCTION_MACRO ${LOG4CPLUS_HAVE_PRETTY_FUNCTION_MACRO} )
set(HAVE___SYNC_ADD_AND_FETCH ${LOG4CPLUS_HAVE___SYNC_ADD_AND_FETCH} )
set(HAVE___SYNC_SUB_AND_FETCH ${LOG4CPLUS_HAVE___SYNC_SUB_AND_FETCH} )

13
resources/3rdparty/log4cplus-1.1.3-rc1/iOS/README.txt

@ -0,0 +1,13 @@
NOTE: log4cplus build for iOS is based on iOS.cmake toolchain file,
orininally taken from https://code.google.com/p/ios-cmake/
To build the library for iOS, being in current folder, perform the steps below:
For armv7 architecture:
$ ./scripts/cmake_ios_armv7.sh
$ cmake --build ./build_armv7 --config "Release"
$ cmake --build ./build_armv7 --config "Debug"
For i386 architecture:
$ ./scripts/cmake_ios_i386.sh
$ cmake --build ./build_i386 --config "Release"
$ cmake --build ./build_i386 --config "Debug"

193
resources/3rdparty/log4cplus-1.1.3-rc1/iOS/iOS.cmake

@ -0,0 +1,193 @@
# This file is based off of the Platform/Darwin.cmake and Platform/UnixPaths.cmake
# files which are included with CMake 2.8.4
# It has been altered for iOS development
# Options:
#
# IOS_PLATFORM = OS (default) or SIMULATOR
# This decides if SDKS will be selected from the iPhoneOS.platform or iPhoneSimulator.platform folders
# OS - the default, used to build for iPhone and iPad physical devices, which have an arm arch.
# SIMULATOR - used to build for the Simulator platforms, which have an x86 arch.
#
# CMAKE_IOS_DEVELOPER_ROOT = automatic(default) or /path/to/platform/Developer folder
# By default this location is automatcially chosen based on the IOS_PLATFORM value above.
# If set manually, it will override the default location and force the user of a particular Developer Platform
#
# CMAKE_IOS_SDK_ROOT = automatic(default) or /path/to/platform/Developer/SDKs/SDK folder
# By default this location is automatcially chosen based on the CMAKE_IOS_DEVELOPER_ROOT value.
# In this case it will always be the most up-to-date SDK found in the CMAKE_IOS_DEVELOPER_ROOT path.
# If set manually, this will force the use of a specific SDK version
# Macros:
#
# set_xcode_property (TARGET XCODE_PROPERTY XCODE_VALUE)
# A convenience macro for setting xcode specific properties on targets
# example: set_xcode_property (myioslib IPHONEOS_DEPLOYMENT_TARGET "3.1")
#
# find_host_package (PROGRAM ARGS)
# A macro used to find executable programs on the host system, not within the iOS environment.
# Thanks to the android-cmake project for providing the command
# Standard settings
set (CMAKE_SYSTEM_NAME Darwin)
set (CMAKE_SYSTEM_VERSION 1)
set (UNIX True)
set (APPLE True)
set (IOS True)
# Required as of cmake 2.8.10
set (CMAKE_OSX_DEPLOYMENT_TARGET "" CACHE STRING "Force unset of the deployment target for iOS" FORCE)
# Determine the cmake host system version so we know where to find the iOS SDKs
find_program (CMAKE_UNAME uname /bin /usr/bin /usr/local/bin)
if (CMAKE_UNAME)
exec_program(uname ARGS -r OUTPUT_VARIABLE CMAKE_HOST_SYSTEM_VERSION)
string (REGEX REPLACE "^([0-9]+)\\.([0-9]+).*$" "\\1" DARWIN_MAJOR_VERSION "${CMAKE_HOST_SYSTEM_VERSION}")
endif (CMAKE_UNAME)
# Force the compilers to gcc for iOS
include (CMakeForceCompiler)
CMAKE_FORCE_C_COMPILER (gcc gcc)
CMAKE_FORCE_CXX_COMPILER (g++ g++)
# Skip the platform compiler checks for cross compiling
set (CMAKE_CXX_COMPILER_WORKS TRUE)
set (CMAKE_C_COMPILER_WORKS TRUE)
# All iOS/Darwin specific settings - some may be redundant
set (CMAKE_SHARED_LIBRARY_PREFIX "lib")
set (CMAKE_SHARED_LIBRARY_SUFFIX ".dylib")
set (CMAKE_SHARED_MODULE_PREFIX "lib")
set (CMAKE_SHARED_MODULE_SUFFIX ".so")
set (CMAKE_MODULE_EXISTS 1)
set (CMAKE_DL_LIBS "")
set (CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG "-compatibility_version ")
set (CMAKE_C_OSX_CURRENT_VERSION_FLAG "-current_version ")
set (CMAKE_CXX_OSX_COMPATIBILITY_VERSION_FLAG "${CMAKE_C_OSX_COMPATIBILITY_VERSION_FLAG}")
set (CMAKE_CXX_OSX_CURRENT_VERSION_FLAG "${CMAKE_C_OSX_CURRENT_VERSION_FLAG}")
# Hidden visibilty is required for cxx on iOS
set (CMAKE_C_FLAGS_INIT "")
set (CMAKE_CXX_FLAGS_INIT "-headerpad_max_install_names -fvisibility=hidden -fvisibility-inlines-hidden")
set (CMAKE_C_LINK_FLAGS "-Wl,-search_paths_first ${CMAKE_C_LINK_FLAGS}")
set (CMAKE_CXX_LINK_FLAGS "-Wl,-search_paths_first ${CMAKE_CXX_LINK_FLAGS}")
set (CMAKE_PLATFORM_HAS_INSTALLNAME 1)
set (CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-dynamiclib -headerpad_max_install_names")
set (CMAKE_SHARED_MODULE_CREATE_C_FLAGS "-bundle -headerpad_max_install_names")
set (CMAKE_SHARED_MODULE_LOADER_C_FLAG "-Wl,-bundle_loader,")
set (CMAKE_SHARED_MODULE_LOADER_CXX_FLAG "-Wl,-bundle_loader,")
set (CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".so" ".a")
# hack: if a new cmake (which uses CMAKE_INSTALL_NAME_TOOL) runs on an old build tree
# (where install_name_tool was hardcoded) and where CMAKE_INSTALL_NAME_TOOL isn't in the cache
# and still cmake didn't fail in CMakeFindBinUtils.cmake (because it isn't rerun)
# hardcode CMAKE_INSTALL_NAME_TOOL here to install_name_tool, so it behaves as it did before, Alex
if (NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
find_program(CMAKE_INSTALL_NAME_TOOL install_name_tool)
endif (NOT DEFINED CMAKE_INSTALL_NAME_TOOL)
# Setup iOS platform unless specified manually with IOS_PLATFORM
if (NOT DEFINED IOS_PLATFORM)
set (IOS_PLATFORM "OS")
endif (NOT DEFINED IOS_PLATFORM)
set (IOS_PLATFORM ${IOS_PLATFORM} CACHE STRING "Type of iOS Platform")
# Check the platform selection and setup for developer root
if (${IOS_PLATFORM} STREQUAL "OS")
set (IOS_PLATFORM_LOCATION "iPhoneOS.platform")
# This causes the installers to properly locate the output libraries
set (CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphoneos")
elseif (${IOS_PLATFORM} STREQUAL "SIMULATOR")
set (IOS_PLATFORM_LOCATION "iPhoneSimulator.platform")
# This causes the installers to properly locate the output libraries
set (CMAKE_XCODE_EFFECTIVE_PLATFORMS "-iphonesimulator")
else (${IOS_PLATFORM} STREQUAL "OS")
message (FATAL_ERROR "Unsupported IOS_PLATFORM value selected. Please choose OS or SIMULATOR")
endif (${IOS_PLATFORM} STREQUAL "OS")
# Setup iOS developer location unless specified manually with CMAKE_IOS_DEVELOPER_ROOT
# Note Xcode 4.3 changed the installation location, choose the most recent one available
set (XCODE_POST_43_ROOT "/Applications/Xcode.app/Contents/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer")
set (XCODE_PRE_43_ROOT "/Developer/Platforms/${IOS_PLATFORM_LOCATION}/Developer")
if (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT)
if (EXISTS ${XCODE_POST_43_ROOT})
set (CMAKE_IOS_DEVELOPER_ROOT ${XCODE_POST_43_ROOT})
elseif(EXISTS ${XCODE_PRE_43_ROOT})
set (CMAKE_IOS_DEVELOPER_ROOT ${XCODE_PRE_43_ROOT})
endif (EXISTS ${XCODE_POST_43_ROOT})
endif (NOT DEFINED CMAKE_IOS_DEVELOPER_ROOT)
set (CMAKE_IOS_DEVELOPER_ROOT ${CMAKE_IOS_DEVELOPER_ROOT} CACHE PATH "Location of iOS Platform")
# Find and use the most recent iOS sdk unless specified manually with CMAKE_IOS_SDK_ROOT
if (NOT DEFINED CMAKE_IOS_SDK_ROOT)
file (GLOB _CMAKE_IOS_SDKS "${CMAKE_IOS_DEVELOPER_ROOT}/SDKs/*")
if (_CMAKE_IOS_SDKS)
list (SORT _CMAKE_IOS_SDKS)
list (REVERSE _CMAKE_IOS_SDKS)
list (GET _CMAKE_IOS_SDKS 0 CMAKE_IOS_SDK_ROOT)
else (_CMAKE_IOS_SDKS)
message (FATAL_ERROR "No iOS SDK's found in default search path ${CMAKE_IOS_DEVELOPER_ROOT}. Manually set CMAKE_IOS_SDK_ROOT or install the iOS SDK.")
endif (_CMAKE_IOS_SDKS)
message (STATUS "Toolchain using default iOS SDK: ${CMAKE_IOS_SDK_ROOT}")
endif (NOT DEFINED CMAKE_IOS_SDK_ROOT)
set (CMAKE_IOS_SDK_ROOT ${CMAKE_IOS_SDK_ROOT} CACHE PATH "Location of the selected iOS SDK")
# Set the sysroot default to the most recent SDK
set (CMAKE_OSX_SYSROOT ${CMAKE_IOS_SDK_ROOT} CACHE PATH "Sysroot used for iOS support")
# set the architecture for iOS
# NOTE: Currently both ARCHS_STANDARD_32_BIT and ARCHS_UNIVERSAL_IPHONE_OS set armv7 only, so set both manually
if (${IOS_PLATFORM} STREQUAL "OS")
set (IOS_ARCH armv6 armv7)
else (${IOS_PLATFORM} STREQUAL "OS")
set (IOS_ARCH i386)
endif (${IOS_PLATFORM} STREQUAL "OS")
set (CMAKE_OSX_ARCHITECTURES ${IOS_ARCH} CACHE string "Build architecture for iOS")
# Set the find root to the iOS developer roots and to user defined paths
set (CMAKE_FIND_ROOT_PATH ${CMAKE_IOS_DEVELOPER_ROOT} ${CMAKE_IOS_SDK_ROOT} ${CMAKE_PREFIX_PATH} CACHE string "iOS find search path root")
# default to searching for frameworks first
set (CMAKE_FIND_FRAMEWORK FIRST)
# set up the default search directories for frameworks
set (CMAKE_SYSTEM_FRAMEWORK_PATH
${CMAKE_IOS_SDK_ROOT}/System/Library/Frameworks
${CMAKE_IOS_SDK_ROOT}/System/Library/PrivateFrameworks
${CMAKE_IOS_SDK_ROOT}/Developer/Library/Frameworks
)
# only search the iOS sdks, not the remainder of the host filesystem
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
# This little macro lets you set any XCode specific property
macro (set_xcode_property TARGET XCODE_PROPERTY XCODE_VALUE)
set_property (TARGET ${TARGET} PROPERTY XCODE_ATTRIBUTE_${XCODE_PROPERTY} ${XCODE_VALUE})
endmacro (set_xcode_property)
# This macro lets you find executable programs on the host system
macro (find_host_package)
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY NEVER)
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE NEVER)
set (IOS FALSE)
find_package(${ARGN})
set (IOS TRUE)
set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
endmacro (find_host_package)

18
resources/3rdparty/log4cplus-1.1.3-rc1/iOS/scripts/cmake_ios_armv7.sh

@ -0,0 +1,18 @@
#!/bin/sh
scripts_dir=`cd $(dirname $0);pwd`
cd $scripts_dir/..
mkdir -p build_armv7
cd build_armv7
cmake -G "Xcode" -DBUILD_SHARED_LIBS="FALSE" \
-DCMAKE_TOOLCHAIN_FILE=$scripts_dir/../iOS.cmake \
-DLOG4CPLUS_SINGLE_THREADED="TRUE" \
-DLOG4CPLUS_BUILD_TESTING="OFF" \
-DLOG4CPLUS_QT4="OFF" \
-DLOG4CPLUS_BUILD_LOGGINGSERVER="OFF" \
-DLOG4CPLUS_CONFIGURE_CHECKS_PATH=$scripts_dir/../ConfigureChecks.cmake \
-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=$scripts_dir/../build_armv7/Binaries \
$@ \
$scripts_dir/../..

19
resources/3rdparty/log4cplus-1.1.3-rc1/iOS/scripts/cmake_ios_i386.sh

@ -0,0 +1,19 @@
#!/bin/sh
scripts_dir=`cd $(dirname $0);pwd`
cd $scripts_dir/..
mkdir -p build_i386
cd build_i386
cmake -G "Xcode" -DBUILD_SHARED_LIBS="FALSE" \
-DIOS_PLATFORM="SIMULATOR" \
-DCMAKE_TOOLCHAIN_FILE=$scripts_dir/../iOS.cmake \
-DLOG4CPLUS_SINGLE_THREADED="TRUE" \
-DLOG4CPLUS_BUILD_TESTING="OFF" \
-DLOG4CPLUS_QT4="OFF" \
-DLOG4CPLUS_BUILD_LOGGINGSERVER="OFF" \
-DLOG4CPLUS_CONFIGURE_CHECKS_PATH=$scripts_dir/../ConfigureChecks.cmake \
-DCMAKE_ARCHIVE_OUTPUT_DIRECTORY=$scripts_dir/../build_i386/Binaries \
$@ \
$scripts_dir/../..

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/Makefile.am → resources/3rdparty/log4cplus-1.1.3-rc1/include/Makefile.am

1
resources/3rdparty/log4cplus-1.1.2-rc2/include/Makefile.in → resources/3rdparty/log4cplus-1.1.3-rc1/include/Makefile.in

@ -162,6 +162,7 @@ LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LOG4CPLUS_AIX_XLC_LDFLAGS = @LOG4CPLUS_AIX_XLC_LDFLAGS@
LOG4CPLUS_NDEBUG = @LOG4CPLUS_NDEBUG@
LOG4CPLUS_PROFILING_CXXFLAGS = @LOG4CPLUS_PROFILING_CXXFLAGS@
LOG4CPLUS_PROFILING_LDFLAGS = @LOG4CPLUS_PROFILING_LDFLAGS@

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/appender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/appender.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/asyncappender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/asyncappender.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/boost/deviceappender.hxx → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/boost/deviceappender.hxx

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/clfsappender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/clfsappender.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/clogger.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/clogger.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config.h.cmake.in → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.h.cmake.in

6
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config.h.in → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.h.in

@ -123,6 +123,9 @@
/* Have PTHREAD_PRIO_INHERIT. */
#undef HAVE_PTHREAD_PRIO_INHERIT
/* Define to 1 if you have the `shutdown' function. */
#undef HAVE_SHUTDOWN
/* Define to 1 if you have the `stat' function. */
#undef HAVE_STAT
@ -337,6 +340,9 @@
/* */
#undef LOG4CPLUS_HAVE_PRETTY_FUNCTION_MACRO
/* */
#undef LOG4CPLUS_HAVE_SHUTDOWN
/* */
#undef LOG4CPLUS_HAVE_STAT

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config.hxx → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config.hxx

3
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/defines.hxx.in → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/defines.hxx.in

@ -121,6 +121,9 @@
/* */
#undef LOG4CPLUS_HAVE_NTOHS
/* Define to 1 if you have the `shutdown' function. */
#undef LOG4CPLUS_HAVE_SHUTDOWN
/* */
#undef LOG4CPLUS_HAVE_PIPE

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/macosx.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/macosx.h

14
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/win32.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/win32.h

@ -74,8 +74,12 @@
#define LOG4CPLUS_HAVE__VSNPRINTF
#define LOG4CPLUS_HAVE__VSNWPRINTF
#if defined (_MSC_VER) \
|| (defined (__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR >= 3)
// Limit the use of foo_s() functions to builds using Visual Studio
// 2005 and its run time library. In MinGW land, limit the foo_s()
// functions to MinGw-w64 toolchain and __MSVCRT_VERSION__ >= 0x0900.
#if (defined (_MSC_VER) && _MSC_VER >= 1400) \
|| (defined (__MSVCRT_VERSION__) && __MSVCRT_VERSION__ >= 0x0900 \
&& defined (__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR >= 2)
// MS secure versions of vprintf().
# define LOG4CPLUS_HAVE_VSPRINTF_S
# define LOG4CPLUS_HAVE_VSWPRINTF_S
@ -175,7 +179,11 @@
# define LOG4CPLUS_HAVE___ATOMIC_ADD_FETCH
# define LOG4CPLUS_HAVE___ATOMIC_SUB_FETCH
# endif
# define LOG4CPLUS_INLINES_ARE_EXPORTED
// This has worked for some versions of MinGW with GCC 4.7+ but it
// appears to be broken again in 4.8.x. Thus, we disable this for GCC
// completely forever.
//
//# define LOG4CPLUS_INLINES_ARE_EXPORTED
# endif
# define LOG4CPLUS_HAVE_FUNCTION_MACRO
# define LOG4CPLUS_HAVE_GNU_VARIADIC_MACROS

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/config/windowsh-inc.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/config/windowsh-inc.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/configurator.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/configurator.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/consoleappender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/consoleappender.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/fileappender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/fileappender.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/fstreams.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/fstreams.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/appenderattachableimpl.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/appenderattachableimpl.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/fileinfo.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/fileinfo.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/lockfile.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/lockfile.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/loglog.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/loglog.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/logloguser.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/logloguser.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/pointer.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/pointer.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/property.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/property.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/queue.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/queue.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/sleep.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/sleep.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/snprintf.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/snprintf.h

3
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/socket.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/socket.h

@ -63,7 +63,7 @@ namespace log4cplus {
/// Close socket
virtual void close();
virtual bool isOpen() const;
virtual void shutdown();
AbstractSocket& operator=(const AbstractSocket& rhs);
protected:
@ -124,6 +124,7 @@ namespace log4cplus {
SocketState& state);
LOG4CPLUS_EXPORT SOCKET_TYPE acceptSocket(SOCKET_TYPE sock, SocketState& state);
LOG4CPLUS_EXPORT int closeSocket(SOCKET_TYPE sock);
LOG4CPLUS_EXPORT int shutdownSocket(SOCKET_TYPE sock);
LOG4CPLUS_EXPORT long read(SOCKET_TYPE sock, SocketBuffer& buffer);
LOG4CPLUS_EXPORT long write(SOCKET_TYPE sock,

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/socketbuffer.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/socketbuffer.h

8
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/stringhelper.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/stringhelper.h

@ -159,10 +159,12 @@ namespace log4cplus {
typedef std::numeric_limits<intType> intTypeLimits;
typedef ConvertIntegerToStringHelper<intType, intTypeLimits::is_signed>
HelperType;
tchar buffer[intTypeLimits::digits10 + 2];
// We define buffer_size from buffer using sizeof operator
// to appease HP aCC compiler.
const std::size_t buffer_size = sizeof (buffer) / sizeof (tchar);
const std::size_t buffer_size
= intTypeLimits::digits10 + 2;
tchar buffer[buffer_size];
tchar * it = &buffer[buffer_size];
tchar const * const buf_end = it;

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/thread-config.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/thread-config.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/helpers/timehelper.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/helpers/timehelper.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/hierarchy.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/hierarchy.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/hierarchylocker.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/hierarchylocker.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/internal/cygwin-win32.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/cygwin-win32.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/internal/env.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/env.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/internal/internal.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/internal.h

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/internal/socket.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/internal/socket.h

23
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/layout.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/layout.h

@ -311,6 +311,18 @@ namespace log4cplus {
* </tr>
*
* <tr>
* <td align=center><b>E</b></td>
*
* <td>Used to output the value of a given environment variable. The
* name of is supplied as an argument in brackets. If the variable does
* exist then empty string will be used.
*
* For example, the pattern <b>%E{HOME}</b> will output the contents
* of the HOME environment variable.
* </td>
* </tr>
*
* <tr>
* <td align=center><b>F</b></td>
*
* <td>Used to output the file name where the logging request was
@ -435,6 +447,17 @@ namespace log4cplus {
* </tr>
*
* <tr>
* <td align=center><b>X</b></td>
*
* <td>Used to output the MDC (mapped diagnostic context)
* associated with the thread that generated the logging
* event. It takes optional key parameter. Without the key
* paramter (%%X), it outputs the whole MDC map. With the key
* (%%X{key}), it outputs just the key's value.
* </td>
* </tr>
*
* <tr>
* <td align=center><b>"%%"</b></td>
* <td>The sequence "%%" outputs a single percent sign.
* </td>

0
resources/3rdparty/log4cplus-1.1.2-rc2/include/log4cplus/log4judpappender.h → resources/3rdparty/log4cplus-1.1.3-rc1/include/log4cplus/log4judpappender.h

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save