mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-14 15:05:35 +02:00
rename some of the new Environment methods, make PocoDoc config changes backwards-compatible, revert PocoDoc config changes, make doc build scripts work on macos
This commit is contained in:
@@ -3,7 +3,7 @@ AAAIntroduction
|
||||
|
||||
!!!Introduction
|
||||
|
||||
Starting with release 1.4.2 the POCO C++ Libraries can be used on
|
||||
Starting with release 1.4.2 the POCO C++ Libraries can be used on
|
||||
Android, using the NDK r6. The gmake-based build system (also used
|
||||
for Mac OS X, Linux, etc.) is used to build the libraries.
|
||||
A standalone "customized" toolchain for Android (see below) is required.
|
||||
@@ -18,7 +18,7 @@ Please refer to the Android NDK Dev Guide document "Standalone Toolchain", secti
|
||||
|
||||
Typically, you'll run a command like:
|
||||
|
||||
$NDK/build/tools/make-standalone-toolchain.sh --platform=android-8 --install-dir=$HOME/my-android-toolchain
|
||||
$NDK/build/tools/make-standalone-toolchain.sh --arch arm --install-dir=$HOME/my-android-toolchain/arm
|
||||
----
|
||||
|
||||
Then, add the directory containing the toolchain executables to your <[$PATH]>:
|
||||
@@ -33,7 +33,7 @@ When compiling the POCO C++ Libraries for a Android target, as well as
|
||||
when including POCO C++ Libraries headers in a project for a Android
|
||||
target, the preprocessor macro <[POCO_ANDROID]> must be defined. This is
|
||||
because the Android NDK GCC compiler does not provide a predefined macro that
|
||||
allows for reliable detection of an Android target.
|
||||
allows for reliable detection of an Android target.
|
||||
|
||||
|
||||
!!!Restrictions
|
||||
@@ -43,19 +43,19 @@ However, there are a few restrictions due to the Binoic C library used by Androi
|
||||
|
||||
!!Poco::NamedEvent and Poco::NamedMutex
|
||||
|
||||
These classes are not supported on Android. While Poco::NamedEvent and
|
||||
These classes are not supported on Android. While Poco::NamedEvent and
|
||||
Poco::NamedMutex objects can be created, any attempt to call a method
|
||||
of these classes will result in a Poco::NotImplementedException being thrown.
|
||||
|
||||
!!Poco::SharedMemory
|
||||
|
||||
Shared memory is not supported on Android.
|
||||
Shared memory is not supported on Android.
|
||||
|
||||
!!Poco::FPEnvironment
|
||||
|
||||
The Poco::FPEnvironment class is not available on Android and
|
||||
cannot be used.
|
||||
|
||||
cannot be used.
|
||||
|
||||
!!Poco::RWLock
|
||||
|
||||
On Android, Poco::RWLock is an ordinary mutex.
|
||||
@@ -65,24 +65,22 @@ On Android, Poco::RWLock is an ordinary mutex.
|
||||
|
||||
!!Using POCO's GNU Make-based Build System
|
||||
|
||||
The <*Android*> build configuration (located in <*$POCO_BASE/build/config/Android*>)
|
||||
The <*Android*> build configuration (located in <*$POCO_BASE/build/config/Android*>)
|
||||
is used to cross-build for Android from a Linux or Mac OS X host.
|
||||
|
||||
To build the POCO C++ Libraries (static) on a Linux or Mac OS X host:
|
||||
|
||||
./configure --config=Android --no-samples --no-tests
|
||||
./make -s -j4
|
||||
make -s -j4
|
||||
----
|
||||
|
||||
The default configuration builds for the <*armeabi*> platform ABI. To build for
|
||||
<*armeabi-v7a*>, set the <[ANDROID_ABI]> make variable to <[armeabi-v7a]>:
|
||||
|
||||
./make -s -j4 ANDROID_ABI=armeabi-v7a
|
||||
make -s -j4 ANDROID_ABI=armeabi-v7a
|
||||
----
|
||||
|
||||
The build configuration also supports setting the <[ANDROID_ABI]> to <[x86]>,
|
||||
but the NDK r6 standalone toolchain for x86 generated by <*make-standalone-toolchain.sh*>
|
||||
lacks the C++ STL headers, so this does not work.
|
||||
The build configuration also supports setting the <[ANDROID_ABI]> to <[x86]>.
|
||||
|
||||
Depending on your specific requirements (e.g., no ARM architecture, etc.), it may be necessary
|
||||
to modify the Android build configuration, or create a new one based on it.
|
||||
@@ -100,15 +98,15 @@ POCO C++ Libraries. A sample makefile for the Foundation library is shown below.
|
||||
#
|
||||
# POCO Foundation
|
||||
#
|
||||
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
|
||||
LOCAL_MODULE := PocoFoundation
|
||||
LOCAL_PATH := $(call my-dir)/src
|
||||
LOCAL_CFLAGS := -DPOCO_ANDROID -DPOCO_NO_FPENVIRONMENT -DPOCO_NO_WSTRING -DPOCO_NO_SHAREDMEMORY
|
||||
LOCAL_CPPFLAGS := -frtti -fexceptions
|
||||
LOCAL_C_INCLUDES := $(call my-dir)/include
|
||||
|
||||
|
||||
LOCAL_SRC_FILES := \
|
||||
AbstractObserver.cpp \
|
||||
ActiveDispatcher.cpp \
|
||||
@@ -271,6 +269,6 @@ POCO C++ Libraries. A sample makefile for the Foundation library is shown below.
|
||||
Void.cpp \
|
||||
Windows1252Encoding.cpp \
|
||||
zutil.c
|
||||
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
----
|
||||
|
Reference in New Issue
Block a user