aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/csharp/experimental
diff options
context:
space:
mode:
authorGravatar Alexander Houben <ahouben@greenliff.com>2018-06-30 20:45:33 +0200
committerGravatar Alexander Houben <ahouben@greenliff.com>2018-07-09 01:41:35 +0200
commit7a7e09cf8a875226c55966e2ae241a145bb8e3ee (patch)
treea5297e5393e7aba544d48e23880167d0d9d3a792 /src/csharp/experimental
parent86aa172d9baa33d3d0309b06c410d6eac351d748 (diff)
Xamarin support: introduce PlatformApis.isXamarin*, working NativeMethods for Xamarin.Android, do not use System.Runtime.Loader on Android for the moment
Diffstat (limited to 'src/csharp/experimental')
-rwxr-xr-xsrc/csharp/experimental/build_native_ext_for_android.sh23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/csharp/experimental/build_native_ext_for_android.sh b/src/csharp/experimental/build_native_ext_for_android.sh
index 8197df7c53..4b4b26524f 100755
--- a/src/csharp/experimental/build_native_ext_for_android.sh
+++ b/src/csharp/experimental/build_native_ext_for_android.sh
@@ -23,17 +23,28 @@ mkdir -p build
cd build
# set to the location where Android SDK is installed
-# e.g. ANDROID_NDK_PATH="$HOME/android-ndk-r16b"
+ANDROID_SDK_PATH="$HOME/Android/Sdk"
-cmake ../.. \
- -DCMAKE_SYSTEM_NAME=Android \
- -DCMAKE_SYSTEM_VERSION=15 \
- -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a \
+# set to location where Android NDK is installed, usually a subfolder of Android SDK
+# install the Android NDK through the Android SDK Manager
+ANDROID_NDK_PATH=${ANDROID_SDK_PATH}/ndk-bundle
+
+# set to location of the cmake executable
+# by default, use cmake binary from the Android SDK
+CMAKE_PATH="${ANDROID_SDK_PATH}/cmake/3.6.4111459/bin/cmake"
+
+# ANDROID_ABI in ('arm64-v8a', 'armeabi-v7a')
+${CMAKE_PATH} ../.. \
+ -DCMAKE_TOOLCHAIN_FILE="${ANDROID_NDK_PATH}/build/cmake/android.toolchain.cmake" \
-DCMAKE_ANDROID_NDK="${ANDROID_NDK_PATH}" \
-DCMAKE_ANDROID_STL_TYPE=c++_static \
-DRUN_HAVE_POSIX_REGEX=0 \
-DRUN_HAVE_STD_REGEX=0 \
-DRUN_HAVE_STEADY_CLOCK=0 \
- -DCMAKE_BUILD_TYPE=Release
+ -DCMAKE_BUILD_TYPE=Release \
+ -DANDROID_PLATFORM=android-28 \
+ -DANDROID_ABI=arm64-v8a \
+ -DANDROID_NDK="${ANDROID_NDK_PATH}"
make -j4 grpc_csharp_ext
+