mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2026-11-15 00:07:08 +01:00
Update POCO library.
This commit is contained in:
1 parent
8d15f4b6e9
commit
233fc103f9
2521 files changed
+257092
-72789
No files matched your search
+1
-1
@@ -461,7 +461,7 @@ or
|
||||
|
||||
To use POCO C++ Libraries in your cmake project, add following line in your project for example to use crypto:
|
||||
|
||||
find_package(Poco REQUIRED PocoCrypto)
|
||||
find_package(Poco REQUIRED Crypto)
|
||||
....
|
||||
target_link_libraries(yourTargetName ... Poco::Crypto)
|
||||
|
||||
|
||||
+286
@@ -1,6 +1,292 @@
|
||||
POCO C++ Libraries Release Notes
|
||||
AAAIntroduction
|
||||
|
||||
|
||||
!!!Release 1.12.3
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3682: Including Any.h causes Compiler error on Visual Studio
|
||||
- GH #3683: Poco::format receives empty Vector<Any>
|
||||
- GH #3692: v1.12.0 and v1.12.1 Poco::Any compile problem
|
||||
- GH #3723: DateTimeFormatter creates invalid ISO8601 string
|
||||
- GH #3737: Poco EventImpl for Win32 breaks INFINITE wait
|
||||
- GH #3744: bindImplLOB zero size (or NULL) HY104 "Invalid precision value"
|
||||
- GH #3748: Poco 1.12.2 - Building DataMySQL still fails (issue #3689)
|
||||
- GH #3753: Fix optional JSON support for MySQL
|
||||
- GH #3763: Poco::Util::Application VxWorks main is incorrect
|
||||
- GH #3769: Fixed converting/correcting pre-gregorian dates (#3723).
|
||||
- GH #3795: aix system NumberFormatter.cpp build error
|
||||
- GH #3805: Upgrade expat to 2.4.9
|
||||
- GH #3814: Security Vulnerability identified in POCO version 1.12.2
|
||||
- GH #3825: VS 2022 Net project missing ARM64 config
|
||||
- GH #3834: SocketImpl::available()
|
||||
- GH #3846: Upgrade bundled zlib to 1.2.13 [fixes CVE]
|
||||
- GH #3847: Upgrade bundled SQLite to 3.39.4
|
||||
|
||||
|
||||
!!!Release 1.12.2
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3460 fix(Platform): LoongArch support
|
||||
- GH #3688 Linking Crypto-testrunner fails
|
||||
- GH #3693 VS2022 compilation issues
|
||||
- GH #3698 SIGABRT in OSSL_PROVIDER_unload with static OpenSSL3
|
||||
- GH #3699 POSIX Event state need not be atomic
|
||||
- GH #3700 Release script must include build_vs170.cmd
|
||||
- GH #3708 wakeup fd is never read
|
||||
- GH #3711 lowercase winsock2 and iphlpapi to allow cross compile
|
||||
- GH #3716 Compiling with clang_cl_x64_x64 on Visual Studio 2022 failed
|
||||
- GH #3717 Only support extracting JSON fields when the SDK supports it
|
||||
- GH #3719 PocoNet Project File does not support Visual Studio 2022
|
||||
- GH #3720 Update max MSVC version information
|
||||
- GH #3721 fails to build with Visual Studio projects
|
||||
- GH #3722 Added missing Crypto Header to ProGen source
|
||||
- GH #3724 Crypto: Progen again to add new files and bring back ARM64 configuration
|
||||
- GH #3727 Add how to install using Conan section on README
|
||||
- GH #3733 Poco::format and C++20
|
||||
- GH #3734 g++ C++20 warnings
|
||||
|
||||
|
||||
!!!Release 1.12.1
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3677 PocoFoundationConfig.cmake should now check for PCRE2
|
||||
- GH #3686 SIGSEGV in OSSL_PROVIDER_unload with static OpenSSL3
|
||||
|
||||
|
||||
!!!Release 1.12.0
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- This release introduces Prometheus library
|
||||
- Upgraded bundled PCRE to PCRE2 10.40
|
||||
- Upgraded double-conversion to v3.2.0
|
||||
- Small object optimization for Any and Dynamic::Var (compile-time option, enabled by default)
|
||||
|
||||
- GH #709: Poco::Dynamic::Var memory leak
|
||||
- GH #1039 Race condition in Poco::AsyncChannel close/log
|
||||
- GH #1459 Fix Poco::Net::Socket::select() epoll and poll implementations
|
||||
- GH #1687 SQLite Notifier has no table information
|
||||
- GH #1884 Poco::Net::TCPServerDispatcher::run() issue
|
||||
- GH #2084 LogFile_STD (LogFileImpl) fails to recover from getting out of space
|
||||
- GH #2085 Crash due to race condition in TCPServerDispatcher
|
||||
- GH #2091 Integrate windows poll
|
||||
- GH #2222 Warning when compiling my that's use VarHolder
|
||||
- GH #2270 Poco::Net::HTTPClientSession not supporting binding source address for proxy connect
|
||||
- GH #2271 Poco::Net::HTTPClientSession source IP address
|
||||
- GH #2285 Poco::Data::SQLite::Connector::open() crashes on db file with non existing directory
|
||||
- GH #2287 Poco::Data::Statement becomes unusable after exception
|
||||
- GH #2352 Allow setting the socket of SecureSocketImpl to no-blocking
|
||||
- GH #2386 As of C++11, std::swap is noexcept
|
||||
- GH #2401 Poco::Net::MailMessage::read hangs on missing final multipart boundary
|
||||
- GH #2457 Poco::Redis after executing "auth" command next command always return "OK"
|
||||
- GH #2465 Operating system specific thread ID is not available any more in Logger/Formatter
|
||||
- GH #2470 Can't use Poco::MongoDB::Cursor on aggregation cursor
|
||||
- GH #2511 Negative precision in NumberFormatter::format()
|
||||
- GH #2513 Poco::Net::SocketConnector unregistering
|
||||
- GH #2516 SHA3Engine hard to use with HMACEngine duplicate enhancement
|
||||
- GH #2521 Poco::Data::MySQL::Extractor null value extraction
|
||||
- GH #2538 Poco::Data::Session::connector() returns empty string for MySQL session
|
||||
- GH #2569 Poco::Data::MySQL timestamp
|
||||
- GH #2576 Add std::chrono support to Timespan
|
||||
- GH #2590 Poco::Zip 64-bit extensions not set
|
||||
- GH #2614 Poco::Net::NTPClient ignores second fractions enhancement
|
||||
- GH #2619 Decoding URI query parameters incompatible with Spring 5
|
||||
- GH #2638 Upgrade Windows SDK Used for Building Poco
|
||||
- GH #2688 Static code analyzer warnings
|
||||
- GH #2691 MinGW: fatal error: kernelspecs.h: No such file
|
||||
- GH #2706 [windows bug] pollset WSAPoll with non blocking socket will not report error
|
||||
- GH #2755 Poco::Data::MySQL LONGTEXT
|
||||
- GH #2821 Poco::Buffer: full on creation
|
||||
- GH #2849 setPadding does nothing when OpenSSL 1.1.x is used
|
||||
- GH #2864 SessionImpl begin
|
||||
- GH #2940 Add vcpkg installation instructions
|
||||
- GH #2943 Avoid clang 10 -Wimplicit-int-float-conversion warning/error when converting int into float
|
||||
- GH #2959 Fix percent-encoded fragment modification in Poco::URI
|
||||
- GH #2980 Memory leaks in Poco::Any
|
||||
- GH #2986 Once exhausted, Poco::ObjectPool does not lend out returned objects
|
||||
- GH #3016 Poco::MongoDB::Array interface improvements
|
||||
- GH #3026 Poco::Net::HTTPDigestCredentials added support for RFC7616 algorithms
|
||||
- GH #3039 Poco errors with _DEBUG and NDEBUG
|
||||
- GH #3052 Fix constness of URI::getPathSegments
|
||||
- GH #3088 Fix error in find_package example
|
||||
- GH #3056 Inconsistent behavior ConsoleChannel vs. WindowsConsoleChannel
|
||||
- GH #3062 Makefile: space(s) following target name will break build (during link)
|
||||
- GH #3073 libPocoCrypto.so: undefined reference to `pthread_atfork' when linking statically with OpenSSL 1.1
|
||||
- GH #3104 Publicly expose Poco::Message parameters
|
||||
- GH #3105 CMake: use GNUInstallDirs
|
||||
- GH #3175 SharedLibrary::isLoaded() not thread safe
|
||||
- GH #3195 MinGW also defines __GNUC__
|
||||
- GH #3240 Task::postNotification possible leak
|
||||
- GH #3241 Poco::Data::SessionPool change connection timeout
|
||||
- GH #3251 Poco::JSON Serializing NAN
|
||||
- GH #3253 Arbitrary indent of 2 applied to JSON string objects Var conversion
|
||||
- GH #3261 Upgrade to PCRE2 latest version
|
||||
- GH #3283 DatagramSocket does not allow IPV6_V6ONLY
|
||||
- GH #3296 Add move semantics to Net (sockets and addresses)
|
||||
- GH #3297 Poco::Foundation Fails to Compile With POCO_ENABLE_SOO Defined
|
||||
- GH #3323 Extend format patterns %T and %I to support native threads
|
||||
- GH #3342 DB into() does not compile for more than 20 members in a tuple
|
||||
- GH #3357 Add socket proactor
|
||||
- GH #3359 Make PollSet::poll() interruptible
|
||||
- GH #3371 SocketReactor::getNotifier() does not use socket.impl()
|
||||
- GH #3372 FTPClientSession::activeDataConnection 1.11.0 cannot set specific data port
|
||||
- GH #3374 No access to padding in Cipher
|
||||
- GH #3375 Poco::Net::PollSet::SocketModeMap poll(const Poco::Timespan& timeout) hasSignaledFDs issue slow down connections
|
||||
- GH #3378 Poco::Net::PollSet function setMode 1.11.0 cause while(1) on windows
|
||||
- GH #3380 Windows SO_REUSEADDR is neither reliable nor safe
|
||||
- GH #3384 Always set thread names on POSIX platforms
|
||||
- GH #3385 Poco::Net::IPAddress::tryParse does not work for "::"
|
||||
- GH #3396 Poco::Data::ODBC - dbEncoding property not used for insert/update
|
||||
- GH #3399 IPAddress::isLoopback() returns false for IPv4 mapped in IPv6
|
||||
- GH #3404 Poco::Net: make MessageHeader limits configurable
|
||||
- GH #3415 OpenSSL 3.0 support
|
||||
- GH #3417 Calling SocketReactor's run() method in a program's main thread yields a lot of null pointer exceptions
|
||||
- GH #3421 Cannot use HMACEngine with SHA2Engine
|
||||
- GH #3452 Syslog: Include Facility to Syslog Message
|
||||
- GH #3453 added facility to SyslogChannel
|
||||
- GH #3460 LoongArch support
|
||||
- GH #3481 Poco::JSON DataType support for MySQL
|
||||
- GH #3482 Visual Studio 2022 (v170) missing from buildwin.cmd
|
||||
- GH #3486 Windows on ARM64 support
|
||||
- GH #3516 Fix OpenSSL 3.0 deprecated warnings
|
||||
- GH #3529 Added LocalConfigurationView to only search inside the viewed scope
|
||||
- GH #3543 Visual Studio Warning C4244
|
||||
- GH #3558 Race condition in SSLManager
|
||||
- GH #3561 Add envelope to crypto
|
||||
- GH #3569 Readded named substring support for regexes
|
||||
- GH #3580 Rounds very large negative numbers to the incorrect values
|
||||
- GH #3592 Add 425 / HTTP_TOO_EARLY to HTTPResponse::HTTPStatus
|
||||
- GH #3598 Poco::Net::Socket::available does not always return correct value for UDP
|
||||
- GH #3602 Add Poco::Data::JSONRowFormatter
|
||||
- GH #3603 Update minimum GCC version information
|
||||
- GH #3611 VS2022 Arm64 projects missing or do not load
|
||||
- GH #3613 Poco::Net::UDPHandler data race
|
||||
- GH #3620 MariaDB still uses tx_isolation for transaction isolation unlike MySQL 8+ which uses transaction_isolation
|
||||
- GH #3624 Upgrade double-conversion to v3.2.0
|
||||
- GH #3628 Poco::Net::PollSet data race
|
||||
- GH #3629 Event data race
|
||||
- GH #3633 Poco::Redis: Support Authentication
|
||||
- GH #3635 ConfigurationView and JSON is broken for array access
|
||||
- GH #3639 Bugcheck: indicate compiler that functions will never return
|
||||
- GH #3640 fix warning C4717: 'format<vector<any>': recursive on all control paths, function will cause runtime stack overflow
|
||||
- GH #3641 FifoBuffer.advance method not throw exception when length==0
|
||||
- GH #3642 Make ParallelSocketReactor thread namable
|
||||
- GH #3651 Poco::Net::TCPserver missing from Net/samples/CMakeLists.txt
|
||||
- GH #3652 Linking with Foundation on Android gives error
|
||||
- GH #3655 Poco::Net::Socket::select EPOLL implementation returns socket in exceptList when empty list is given
|
||||
- GH #3658 Support for chunked transfer encoding trailer
|
||||
- GH #3661 Poco::Net::PollSet::add()/update() semantics
|
||||
- GH #3665 MSVC does not properly recognize std version
|
||||
|
||||
!!Incompatible Changes and Possible Transition Issues
|
||||
|
||||
- All swap operations are noexcept now
|
||||
- PollSet::add() is mode-cumulative now
|
||||
- UDPServer now requires explicit starting
|
||||
- Move semantics for sockets and SocketAddress (compile-time option, disabled by default)
|
||||
|
||||
|
||||
!!!Release 1.11.6
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3147: Reading from request stream hangs when "Transfer-Encoding: chunked" is used
|
||||
- GH #3859: zlib headers not updated
|
||||
- Build system fixes for Xcode on Apple Silicon.
|
||||
- Upgrade bundled SQLite to 3.40.0
|
||||
|
||||
|
||||
!!!Release 1.11.5
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3849: Upgrade bundled libexpat to 2.5.0 [fixes CVE]
|
||||
|
||||
|
||||
!!!Release 1.11.4
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3805: Upgrade expat to 2.4.9
|
||||
- GH #3846: Upgrade bundled zlib to 1.2.13 [fixes CVE]
|
||||
- GH #3847: Upgrade bundled SQLite to 3.39.4
|
||||
|
||||
|
||||
!!!Release 1.11.3
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #3567: fix(openssl-initializer): check legacy provider existence for legacy exception
|
||||
- GH #3587: MySQL UUID binding temporary string
|
||||
- GH #3632: Redis - add TLS support
|
||||
- updated a few copyright dates
|
||||
|
||||
|
||||
!!!Release 1.11.2
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- GH #2882: Handle negative DST offset
|
||||
- GH #3268: Poco redis command set have a bug when you want to set nx ex or expireTime
|
||||
- GH #3338: NamedMutex does not work on Linux distributions where fs.protected_regular=1
|
||||
- GH #3448: Basic support for OpenSSL 3.0.0
|
||||
- GH #3458: encryptString() crash on redhat/centos 8 with FIPS enabled using md5 default digest
|
||||
- GH #3465: NetSSL_Win: bad error handling when decodeMessage() fails
|
||||
- GH #3466: DefinePlatformSpecific.cmake: handle RelWithDebInfo and MinSizeRel configurations
|
||||
- GH #3470: bug in JSON ParseHandler.cpp (RFC 7159 should be valid)
|
||||
- GH #3472: Add Windows 11 detection to Environment_WIN32U
|
||||
- GH #3483: Adds Windows 11 and Server 2022 to Environment::osDisplayName()
|
||||
- GH #3485: Adds Visual Studio 2022 (v170) to buildwin.cmd
|
||||
- GH #3495: Should the Array::operator[] throw?
|
||||
- GH #3500: Sandbox all iFrames in PocoDoc
|
||||
- GH #3504: OpenSSL 3 compatibility
|
||||
- GH #3505: JSON::PrintHandler.value(bool) prints incorrect value
|
||||
- GH #3507: Reference counting for bound configuration in Util::Option is broken
|
||||
- GH #3508: #3507: Fix bound configuration reference counting in Poco::Util::Option.
|
||||
- GH #3509: fix dst and utcOffset handling for Dublin time zone
|
||||
- GH #3515: NetSSL_OpenSSL Testsuite: testInterop() and testProxy() fail due to changed certificate
|
||||
- GH #3518: Expat version check in #defines incorrect.
|
||||
- GH #3519: Add convertation to string in Redis Command#set
|
||||
- GH #3524: [linux] Why is Poco::XML linked to Poco::Zip target?
|
||||
- GH #3525: Bad management of file in case of OpenSSLException in X509Certificate::readPEM and X509Certificate::writePEM
|
||||
- GH #3538: Upgrade bundled expat to 2.4.7
|
||||
- GH #3544: Add back NIOS2 double conversion detection to fix compile errors
|
||||
- GH #3549: Test against the correct signatures in the JWT ES384 and ES512 tests
|
||||
- GH #3553: Upgrade bundled zlib to 1.2.12
|
||||
- GH #3559: Poco::Data::PostgreSQL - DateTime extraction truncates fractional seconds
|
||||
- GH #3563: Remove support for OpenSSL < 1.0
|
||||
|
||||
|
||||
!!!Release 1.11.1
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
- Upgraded bundled PCRE to 8.45
|
||||
- Upgraded bundled SQLite to 3.36.0
|
||||
- GH #2823: error: implicit conversion from 'int' to 'float' changes value from 2147483647 to 2147483648
|
||||
- GH #2966: SocketReactor loads one core of CPU up to 100%
|
||||
- GH #3221: Crash reported on Windows in X509Certificate verification
|
||||
- GH #3330: Poco::Data::ODBC::ODBCStatementImpl causes crash
|
||||
- GH #3334: Fork error on tvOS and watchOS
|
||||
- GH #3335: XML error when build 1.11.0
|
||||
- GH #3344: [bug] MacOS bundle destination path is not set
|
||||
- GH #3345: fix cmake bundle
|
||||
- GH #3347: The definition POCO_NO_FORK_EXEC is not respected or something like this
|
||||
- GH #3353: fix fork option
|
||||
- GH #3360: Add POCO_PGSQL_{INCLUDE,LIB} variables
|
||||
- GH #3363: Fixed compilation error with MongoDB::Connection and Util::Application
|
||||
- GH #3377: Updates comments for windows
|
||||
- GH #3381: DNS::hostByAddress not thread-safe
|
||||
- GH #3397: Fix crash due to X.509 certificates with Subject Alternative Name other than DNS Host
|
||||
- GH #3400: fix std::localtime not thread safe
|
||||
- GH #3414: fix missing expat definition
|
||||
- GH #3425: Fixed suspend/resumeEvents pair in DirectoryWatcher
|
||||
|
||||
|
||||
!!!Release 1.11.0
|
||||
|
||||
!!Summary of Changes
|
||||
|
||||
+13
@@ -45,3 +45,16 @@ The following naming conventions are used:
|
||||
are placed in the <*lib64*> directory. DLLs are placed in <*bin*> (32-bit)
|
||||
or <*bin64*> (64-bit). 64-bit DLLs are named PocoLIB64.dll for release
|
||||
and PocoLIB64d.dll for debug, respectively.
|
||||
|
||||
|
||||
!!MSVC Compiler Notes
|
||||
|
||||
!!!C++ standard version not properly defined
|
||||
|
||||
In order to work around that, `/Zc:__cplusplus` compiler flag is necesary.
|
||||
|
||||
See following issues for details and explanations:
|
||||
|
||||
* https://github.com/pocoproject/poco/issues/3665
|
||||
* https://devblogs.microsoft.com/cppblog/msvc-now-correctly-reports-__cplusplus/
|
||||
|
||||
+14
-14
@@ -3,7 +3,7 @@ AAAIntroduction
|
||||
|
||||
!!!Introduction
|
||||
|
||||
Starting with release 1.4.0 the POCO C++ Libraries can be used on
|
||||
Starting with release 1.4.0 the POCO C++ Libraries can be used on
|
||||
Windows CE 6. Project files for Visual Studio 2008 are provided that
|
||||
support static and shared debug and release builds.
|
||||
|
||||
@@ -14,7 +14,7 @@ The port should work for Windows CE 5 as well, however, this has not been tested
|
||||
|
||||
The project files contain build configurations for the "Digi JumpStart (ARMV4I)"
|
||||
target. To use another target, the Visual Studio project and solution files
|
||||
must be changed accordingly. Note that the project files cannot be opened
|
||||
must be changed accordingly. Note that the project files cannot be opened
|
||||
by Visual Studio unless the target referenced in the project and solution files is available.
|
||||
To change the project and solution files for your platform, replace
|
||||
all occurrences of the string "Digi JumpStart (ARMV4I)" with the name
|
||||
@@ -28,7 +28,7 @@ files, so there's no risk breaking something).
|
||||
|
||||
!!Poco::Environment
|
||||
|
||||
Windows CE does not support environment variables.
|
||||
Windows CE does not support environment variables.
|
||||
Therefore, Poco::Environment::get() and Poco::Environment::has() only support the
|
||||
following hardcoded "pseudo" environment variables:
|
||||
* TEMP
|
||||
@@ -38,22 +38,22 @@ following hardcoded "pseudo" environment variables:
|
||||
* OS
|
||||
* NUMBER_OF_PROCESSORS
|
||||
* PROCESSOR_ARCHITECTURE
|
||||
|
||||
|
||||
Poco::Environment::set() always throws a Poco::NotImplementedException.
|
||||
|
||||
|
||||
!!Date/Time Support
|
||||
|
||||
Some date/time features are implemented with the help of [[http://wcelibcex.sourceforge.net/ WCELIBCEX]].
|
||||
The library is statically included in the Foundation library to simplify the build process.
|
||||
The library is statically included in the Foundation library to simplify the build process.
|
||||
However, it is also possible to use WCELIBCEX as a separate library if the Foundation project file is modified accordingly
|
||||
(by removing or excluding from build the WCELIBCEX folder and modifying the header file search path accordingly).
|
||||
The following functions from WCELIBCEX are used:
|
||||
* wceex_time()
|
||||
* wceex_localtime()
|
||||
* wceex_mktime()
|
||||
|
||||
It should also be possible to use wcecompat instead of WCELIBCEX, as this library provides
|
||||
|
||||
It should also be possible to use wcecompat instead of WCELIBCEX, as this library provides
|
||||
similar features. In this case, the calls to the wceex_* functions need to be replaced with
|
||||
the wcecompat counterparts. The affected files are Random.cpp, LocalDateTime.cpp,
|
||||
Timezone_WINCE.cpp and ThreadPool.cpp.
|
||||
@@ -66,7 +66,7 @@ the application.
|
||||
|
||||
!!Poco::Path
|
||||
|
||||
Poco::Path::listRoots() returns the root directory ("\"), as well as all mounted storage devices
|
||||
Poco::Path::listRoots() returns the root directory ("\"), as well as all mounted storage devices
|
||||
(e.g., "\Hard Disk"), even if they are also present in the root directory.
|
||||
|
||||
Poco::Path::current() and Poco::Path::home() always return the root directory.
|
||||
@@ -91,7 +91,7 @@ samples can be used to terminate a process from the command line.
|
||||
|
||||
!!Crypto and NetSSL
|
||||
|
||||
Crypto and NetSSL_OpenSSL have not been tested yet. Project files are there, but they might need some adaptions depending on
|
||||
Crypto and NetSSL_OpenSSL have not been tested yet. Project files are there, but they might need some adaptions depending on
|
||||
how OpenSSL has been built for the Windows CE target.
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ These are RawSocketTest::testEchoIPv4(), RawSocketTest::testSendToReceiveFromIPv
|
||||
|
||||
!!!Build Notes
|
||||
|
||||
Optimization settings should be set as follows for release builds
|
||||
Optimization settings should be set as follows for release builds
|
||||
(<*Properties > Configuration Properties > C/C++ > Optimization*>):
|
||||
* Optimization: Custom
|
||||
* Inline Function Expansion: Default
|
||||
@@ -120,13 +120,13 @@ Optimization settings should be set as follows for release builds
|
||||
* Favor Size or Speed: Favor Fast Code (/Ot)
|
||||
* Whole Program Optimization: No
|
||||
|
||||
Other settings may or may not produce working programs.
|
||||
Specifically, setting <*Optimization*> to <*Maximize Speed (/O2)*> will result in failures in the
|
||||
Other settings may or may not produce working programs.
|
||||
Specifically, setting <*Optimization*> to <*Maximize Speed (/O2)*> will result in failures in the
|
||||
test suite for Foundation Events due to a compiler optimizer bug.
|
||||
|
||||
For shared/DLL builds, the /FORCE:MULTIPLE option is passed to the linker. This is
|
||||
to avoid a problem with iostream classes and their methods (template instantiations),
|
||||
which for some unknown reason (possibly bug) will be exported by the Foundation library
|
||||
to avoid a problem with iostream classes and their methods (template instantiations),
|
||||
which for some unknown reason (possibly bug) will be exported by the Foundation library
|
||||
(and others) and thus cause multiply defined symbol errors.
|
||||
|
||||
The reference system used for testing is a Digi ConnectCore 9P 9360 running Windows CE 6.0.
|
||||
+14
-14
@@ -3,7 +3,7 @@ AAAIntroduction
|
||||
|
||||
!!!Introduction
|
||||
|
||||
Starting with release 1.4.1 the POCO C++ Libraries can be used on
|
||||
Starting with release 1.4.1 the POCO C++ Libraries can be used on
|
||||
VxWorks 5.5.1 and newer. Project files for Tornado are provided that
|
||||
support debug and release builds using the Diab C++ compiler.
|
||||
|
||||
@@ -16,7 +16,7 @@ When compiling the POCO C++ Libraries for a VxWorks target, as well as
|
||||
when including POCO C++ Libraries headers in a project for a VxWorks
|
||||
target, the preprocessor macro <[POCO_VXWORKS]> must be defined. This is
|
||||
because the Diab C++ compiler does not provide a predefined macro that
|
||||
allows for reliable detection of a VxWorks target.
|
||||
allows for reliable detection of a VxWorks target.
|
||||
|
||||
|
||||
!!VxWorks OS Libraries
|
||||
@@ -55,7 +55,7 @@ Some OS libraries can be omitted if the POCO class requiring it
|
||||
- Poco::Environment::nodeName() returns the result of gethostname(); the host name
|
||||
can be set with sethostname().
|
||||
- Poco::Environment::processorCount() always returns 1.
|
||||
|
||||
|
||||
|
||||
!!Date/Time Support
|
||||
|
||||
@@ -70,7 +70,7 @@ Some OS libraries can be omitted if the POCO class requiring it
|
||||
|
||||
- Poco::File::canRead() and Poco::File::canWrite() always return
|
||||
true. Poco::File::canExecute() always returns false, as does
|
||||
Poco::File::isLink().
|
||||
Poco::File::isLink().
|
||||
- Poco::File::isHidden() works the same as on Unix platforms
|
||||
(files with names starting with a period are considered hidden).
|
||||
- Poco::File::setWriteable() and Poco::File::setExecutable()
|
||||
@@ -81,18 +81,18 @@ Some OS libraries can be omitted if the POCO class requiring it
|
||||
|
||||
Poco::Path::home() returns the value of environment variable <[HOME]>, if defined,
|
||||
or else the root directory path ("/").
|
||||
|
||||
|
||||
|
||||
!!Poco::FPEnvironment
|
||||
|
||||
The Poco::FPEnvironment class is not available on VxWorks and
|
||||
cannot be used.
|
||||
|
||||
|
||||
|
||||
|
||||
!!Poco::Process, Poco::Pipe, Poco::SharedMemory, Poco::NamedEvent, Poco::NamedMutex
|
||||
|
||||
VxWorks does not support processes and POCO makes no attempt
|
||||
to hide this fact. Poco::Process, Poco::Pipe (and related stream classes),
|
||||
to hide this fact. Poco::Process, Poco::Pipe (and related stream classes),
|
||||
Poco::SharedMemory, Poco::NamedEvent and Poco::NamedMutex are not available on VxWorks.
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ On VxWorks, Poco::RWLock is an ordinary mutex.
|
||||
!!Poco::SharedLibrary
|
||||
|
||||
Symbol lookup (Poco::SharedLibrary::hasSymbol() and Poco::SharedLibrary::getSymbol()) is
|
||||
slow, as the entire symbol table has to be searched sequentially (using symEach())
|
||||
slow, as the entire symbol table has to be searched sequentially (using symEach())
|
||||
to find a symbol defined in a specific module.
|
||||
|
||||
|
||||
@@ -116,7 +116,7 @@ not support std::wstring.
|
||||
|
||||
!!Poco::Util::Application
|
||||
|
||||
The macro <[POCO_APP_MAIN]> defines a function
|
||||
The macro <[POCO_APP_MAIN]> defines a function
|
||||
|
||||
int pocoAppMain(const char* appName, ...);
|
||||
----
|
||||
@@ -132,7 +132,7 @@ list of command-line arguments must be terminated by a NULL argument.
|
||||
An application waiting in Poco::Util::ServerApplication::waitForTerminationRequest()
|
||||
can be shut down by calling Poco::Util::ServerApplication::terminate().
|
||||
|
||||
The macro <[POCO_SERVER_MAIN]> defines a function
|
||||
The macro <[POCO_SERVER_MAIN]> defines a function
|
||||
|
||||
int pocoSrvMain(const char* appName, ...);
|
||||
----
|
||||
@@ -170,9 +170,9 @@ will generate the project files (.wpj). On Windows, a Cygwin installation
|
||||
is required to run this script. Project files are
|
||||
generated from VxWorks build description files (<**.vxbuild*>),
|
||||
which are present in all library directories (<*$POCO_BASE/Foundation*>,
|
||||
<*$POCO_BASE/XML*>, etc.) of libraries that are available on VxWorks. Also
|
||||
required are build configuration files that specify the build settings
|
||||
for a specific target architecture. These are located in
|
||||
<*$POCO_BASE/XML*>, etc.) of libraries that are available on VxWorks. Also
|
||||
required are build configuration files that specify the build settings
|
||||
for a specific target architecture. These are located in
|
||||
<*$POCO_BASE/build/vxconfig*>. To generate
|
||||
a Tornado project file, run the <[vxprogen]> script from the
|
||||
respective directory and pass the name(s) of the desired build configuration
|
||||
|
||||
+15
-15
@@ -5,7 +5,7 @@ AAAIntroduction
|
||||
|
||||
Starting with release 1.4.2 the POCO C++ Libraries can be used on
|
||||
Android.
|
||||
In the past the android NDK used a gmake-based build system. They provided a
|
||||
In the past the android NDK used a gmake-based build system. They provided a
|
||||
a standalone "customized" toolchain. Also they used gcc and the gnu-stl as
|
||||
build environment. But these are all obsolete.
|
||||
|
||||
@@ -15,17 +15,17 @@ standard library.
|
||||
|
||||
!!!Requirements
|
||||
|
||||
To build Poco for android you need as minimum the android NDK plus cmake executable.
|
||||
You can download the newest NDK from: https://developer.android.com/ndk and
|
||||
cmake from http://www.cmake.org or if you have already installed Android SDK,
|
||||
To build Poco for android you need as minimum the android NDK plus cmake executable.
|
||||
You can download the newest NDK from: https://developer.android.com/ndk and
|
||||
cmake from http://www.cmake.org or if you have already installed Android SDK,
|
||||
then install the NDK and cmake executable via the <*Android SDK Manager*>.
|
||||
|
||||
!!!Quick start
|
||||
|
||||
<path_to_android_sdk>/cmake/<cmake_version>/bin/cmake
|
||||
-H<path_to_poco_sourcen>
|
||||
-B/tmp/poco-build
|
||||
-G'Ninja'
|
||||
<path_to_android_sdk>/cmake/<cmake_version>/bin/cmake
|
||||
-H<path_to_poco_sourcen>
|
||||
-B/tmp/poco-build
|
||||
-G'Ninja'
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/cmake/<cmake_version>/bin/ninja
|
||||
-DCMAKE_TOOLCHAIN_FILE=<path_to_android_sdk>/ndk-bundle/build/cmake/android.toolchain.cmake
|
||||
@@ -48,7 +48,7 @@ also the ninja build tool:
|
||||
|
||||
The easiest way is to set the PATH environment to <path_to_android_sdk>/cmake/<cmake_version>/bin
|
||||
then cmake and ninja is found via the environment.
|
||||
If you not set the PATH environment you should add -DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/cmake/<cmake_version>/bin/ninja
|
||||
If you not set the PATH environment you should add -DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/cmake/<cmake_version>/bin/ninja
|
||||
as parameter for cmake.
|
||||
|
||||
If you have didn't installed the Android SDK, it is also possible to use make as build tool:
|
||||
@@ -56,8 +56,8 @@ If you have didn't installed the Android SDK, it is also possible to use make as
|
||||
or
|
||||
<path_to_android_sdk>/ndk/<ndk_version>/prebuilt/linux-x86_64/bin/make
|
||||
|
||||
The easiest way is to set the PATH environment to <path_to_android_sdk>/ndk/<ndk_version>/prebuilt/linux-x86_64/bin.
|
||||
If you not set the PATH environment you should add -DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/ndk/<ndk_version>/prebuilt/linux-x86_64/bin/make
|
||||
The easiest way is to set the PATH environment to <path_to_android_sdk>/ndk/<ndk_version>/prebuilt/linux-x86_64/bin.
|
||||
If you not set the PATH environment you should add -DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/ndk/<ndk_version>/prebuilt/linux-x86_64/bin/make
|
||||
as parameter for cmake.
|
||||
|
||||
The toolchain file can be found in the android NDK:
|
||||
@@ -75,10 +75,10 @@ cmake -H<path_to_poco_sourcen> -B<path_to_build_dir>/poco_build -G'Ninja' -DCMAK
|
||||
|
||||
To build with the tools from the Android SDK:
|
||||
|
||||
<path_to_android_sdk>/cmake/<cmake_version>/bin/cmake
|
||||
-H<path_to_poco_sourcen>
|
||||
-B/tmp/poco-build
|
||||
-G'Ninja'
|
||||
<path_to_android_sdk>/cmake/<cmake_version>/bin/cmake
|
||||
-H<path_to_poco_sourcen>
|
||||
-B/tmp/poco-build
|
||||
-G'Ninja'
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
-DCMAKE_MAKE_PROGRAM=<path_to_android_sdk>/cmake/<cmake_version>/bin/ninja
|
||||
-DCMAKE_TOOLCHAIN_FILE=<path_to_android_sdk>/ndk-bundle/build/cmake/android.toolchain.cmake
|
||||
|
||||
BIN
Binary file not shown.
Reference in new issue
Block a user