Files
Latest commit
android
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
To build this within the NDK the following things have to be done: - By default, the strongSwan sources of the current Git tree are used. They have to be prepared first (see HACKING for a list of required tools): ./autogen.sh && ./configure && make && make distclean It's also possible to use the sources from a different directory (e.g. an extracted tarball) by setting strongswan_DIR in app/src/main/jni/Android.mk. - The libstrongswan library depends on an Android module called libcrypto_static that provides OpenSSL's libcrypto and header files. To simplify this, the build.sh script in the openssl directory can be used to statically build libcrypto for all ABIs. The results are placed in app/src/main/jni/openssl. The script expects the path to the Android NDK in ANDROID_NDK_ROOT, which is something like /path/to/android-ndk-<ver> for standalone NDKs, and something like /path/to/android-sdk/ndk/<ver> for side-by-side NDKs. The path to the OpenSSL sources is expected in OPENSSL_SRC (work with OpenSSL 1.1.1 or 3). For instance, it may be invoked like this: ANDROID_NDK_ROOT=~/android-ndk-<ver> \ OPENSSL_SRC=~/openssl-<ver> \ src/frontends/android/openssl/build.sh By default, the script uses Docker to compile the library. However, if the necessary build dependencies (jq, make, perl) are installed on the host, this can be disabled by defining the NO_DOCKER. The dependency on jq may be avoided by passing a space-separated list of target ABIs via ABIS variable.