Dan Albert | 2a18e9f | 2018-05-17 09:13:22 -0700 | [diff] [blame] | 1 | STLport for Android |
| 2 | |
| 3 | WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
| 4 | WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
| 5 | |
| 6 | This feature is currently in beta. In case of issue |
| 7 | please contact the android-ndk support forum or |
| 8 | file bugs at http://b.android.com |
| 9 | |
| 10 | WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
| 11 | WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
| 12 | |
| 13 | This directory contains a port of STLport for Android, which provides |
| 14 | a simple STL implementation. Note that it currently does not support |
| 15 | C++ exceptions and RTTI. Support for wchar_t and locales is probably buggy. |
| 16 | |
| 17 | You can either use it as a static or shared library. |
| 18 | |
| 19 | 1/ The static library is recommended if you will only produce |
| 20 | one shared library for your project. All necessary STLport functions |
| 21 | will be added to it. This option should also generate smaller |
| 22 | overall binaries. |
| 23 | |
| 24 | 2/ The shared library, is recommended if you want to produce |
| 25 | several shared libraries in your project, because it avoids copying the |
| 26 | same STLport functions to each one of them, and having different instances |
| 27 | of the same global variables (which can easily conflict or result in |
| 28 | undefined behaviour). |
| 29 | |
| 30 | To use the *static* library, define APP_STL in your Application.mk as follows: |
| 31 | |
| 32 | APP_STL := stlport_static |
| 33 | |
| 34 | To use the *shared* library, use "stlport_shared" instead: |
| 35 | |
| 36 | APP_STL := stlport_shared |
| 37 | |
| 38 | Note that, in this case, you will need, in your application, to explicitely |
| 39 | load the 'stlport_shared' library before any library that depends on it. |
| 40 | For example: |
| 41 | |
| 42 | static { |
| 43 | System.loadLibrary("stlport_shared"); |
| 44 | System.loadLibrary("foo"); |
| 45 | System.loadLibrary("bar"); |
| 46 | } |
| 47 | |
| 48 | If both libfoo.so and libbar.so depend on STLport. |
| 49 | |
| 50 | You can build the STLport unit test program by doing the following: |
| 51 | |
| 52 | cd $NDK |
| 53 | tests/run-tests.sh --test=test-stlport |
| 54 | |
| 55 | If you have an Android device connected to your machine, this will |
| 56 | automatically try to run the generated test command. Note that for now |
| 57 | a few tests are still failing (mostly related to wchar_t and locales). |
| 58 | |
| 59 | They should be fixed hopefully by a later release of this library. |
| 60 | |
| 61 | The NDK comes with prebuilt binaries for this library to speed up development. |
| 62 | You can however rebuild them from sources in your own application build by |
| 63 | defining STLPORT_FORCE_REBUILD to 'true' in your Application.mk as in: |
| 64 | |
| 65 | STLPORT_FORCE_REBUILD := true |
| 66 | |
| 67 | |
| 68 | VERSION INFORMATION: This module is based on STLport version 5.2.0 |
| 69 | |