Commit 9de6c744 authored by Max Lv's avatar Max Lv

add both armeabi and armeabi-v7a

parent 1818209e
...@@ -25,5 +25,6 @@ out/ ...@@ -25,5 +25,6 @@ out/
#NDK #NDK
src/main/libs src/main/libs
src/main/assets/arm src/main/assets/armeabi
src/main/assets/armeabi-v7a
src/main/assets/x86 src/main/assets/x86
...@@ -2,10 +2,12 @@ ...@@ -2,10 +2,12 @@
cd src/main cd src/main
ndk-build clean ndk-build clean
ndk-build ndk-build
mkdir -p assets/arm mkdir -p assets/armeabi
mkdir -p assets/armeabi-v7a
mkdir -p assets/x86 mkdir -p assets/x86
for app in iptables pdnsd redsocks shadowsocks tun2socks for app in iptables pdnsd redsocks shadowsocks tun2socks
do do
mv libs/armeabi-v7a/$app assets/arm/ mv libs/armeabi/$app assets/armeabi/
mv libs/armeabi-v7a/$app assets/armeabi-v7a/
mv libs/x86/$app assets/x86/ mv libs/x86/$app assets/x86/
done done
APP_ABI := armeabi-v7a x86 APP_ABI := armeabi armeabi-v7a x86
APP_PLATFORM := android-9 APP_PLATFORM := android-9
APP_STL := stlport_static APP_STL := stlport_static
NDK_TOOLCHAIN_VERSION := 4.8 NDK_TOOLCHAIN_VERSION := 4.8
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
jstring Java_com_github_shadowsocks_system_getabi(JNIEnv *env, jobject thiz) { jstring Java_com_github_shadowsocks_system_getabi(JNIEnv *env, jobject thiz) {
AndroidCpuFamily family = android_getCpuFamily(); AndroidCpuFamily family = android_getCpuFamily();
uint64_t features = android_getCpuFeatures();
const char *abi; const char *abi;
if (family == ANDROID_CPU_FAMILY_X86) { if (family == ANDROID_CPU_FAMILY_X86) {
...@@ -20,7 +21,11 @@ jstring Java_com_github_shadowsocks_system_getabi(JNIEnv *env, jobject thiz) { ...@@ -20,7 +21,11 @@ jstring Java_com_github_shadowsocks_system_getabi(JNIEnv *env, jobject thiz) {
} else if (family == ANDROID_CPU_FAMILY_MIPS) { } else if (family == ANDROID_CPU_FAMILY_MIPS) {
abi = "mips"; abi = "mips";
} else if (family == ANDROID_CPU_FAMILY_ARM) { } else if (family == ANDROID_CPU_FAMILY_ARM) {
abi = "arm"; if (features & ANDROID_CPU_ARM_FEATURE_ARMv7) {
abi = "armeabi-v7a";
} else {
abi = "armeabi";
}
} }
return env->NewStringUTF(abi); return env->NewStringUTF(abi);
} }
......
...@@ -64,7 +64,8 @@ object Utils { ...@@ -64,7 +64,8 @@ object Utils {
val TAG: String = "Shadowsocks" val TAG: String = "Shadowsocks"
val ABI_PROP: String = "ro.product.cpu.abi" val ABI_PROP: String = "ro.product.cpu.abi"
val ABI2_PROP: String = "ro.product.cpu.abi2" val ABI2_PROP: String = "ro.product.cpu.abi2"
val ARM_ABI: String = "arm" val ARM_ABI: String = "armeabi"
val ARMV7_ABI: String = "armeabi-v7a"
val X86_ABI: String = "x86" val X86_ABI: String = "x86"
val MIPS_ABI: String = "mips" val MIPS_ABI: String = "mips"
val DEFAULT_SHELL: String = "/system/bin/sh" val DEFAULT_SHELL: String = "/system/bin/sh"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment