@@ -33,31 +33,37 @@ COPY android $PYTHON_TMPDIR
33
33
RUN /android-system.sh arm
34
34
35
35
ENV CROSS_SYSROOT=/android-ndk/sysroot
36
+ ENV CROSS_ANDROID_SDK=$ANDROID_SDK
37
+ ENV CROSS_ANDROID_ARCH=armv7-a
38
+ ENV CROSS_ANDROID_TARGET=arm-linux-androideabi
36
39
COPY android-symlink.sh /
37
- RUN /android-symlink.sh arm arm-linux-androideabi
40
+ RUN /android-symlink.sh arm $CROSS_ANDROID_TARGET
38
41
39
42
COPY android-runner /
40
43
44
+ COPY android.cmake /opt/android.cmake
45
+ ENV CMAKE_TOOLCHAIN_FILE=/opt/android.cmake
46
+
41
47
# Libz is distributed in the android ndk, but for some unknown reason it is not
42
48
# found in the build process of some crates, so we explicit set the DEP_Z_ROOT
43
49
# likewise, the toolchains expect the prefix `thumbv7neon-linux-androideabi`,
44
50
# which we don't have, so just export every possible variable, such as AR.
45
51
# Also export all target binutils just in case required.
46
- ENV CARGO_TARGET_THUMBV7NEON_LINUX_ANDROIDEABI_LINKER=arm-linux-androideabi- gcc \
52
+ ENV CARGO_TARGET_THUMBV7NEON_LINUX_ANDROIDEABI_LINKER="$CROSS_ANDROID_TARGET- gcc" \
47
53
CARGO_TARGET_THUMBV7NEON_LINUX_ANDROIDEABI_RUNNER="/android-runner arm" \
48
- AR_thumbv7neon_linux_androideabi=arm-linux-androideabi-ar \
49
- AS_thumbv7neon_linux_androideabi=arm-linux-androideabi-as \
50
- CC_thumbv7neon_linux_androideabi=arm-linux-androideabi- gcc \
51
- CXX_thumbv7neon_linux_androideabi=arm-linux-androideabi- g++ \
52
- LD_thumbv7neon_linux_androideabi=arm-linux-androideabi-ld \
53
- NM_thumbv7neon_linux_androideabi=arm-linux-androideabi-nm \
54
- OBJCOPY_thumbv7neon_linux_androideabi=arm-linux-androideabi- objcopy \
55
- OBJDUMP_thumbv7neon_linux_androideabi=arm-linux-androideabi- objdump \
56
- RANLIB_thumbv7neon_linux_androideabi=arm-linux-androideabi- ranlib \
57
- READELF_thumbv7neon_linux_androideabi=arm-linux-androideabi- readelf \
58
- SIZE_thumbv7neon_linux_androideabi=arm-linux-androideabi- size \
59
- STRINGS_thumbv7neon_linux_androideabi=arm-linux-androideabi- strings \
60
- STRIP_thumbv7neon_linux_androideabi=arm-linux-androideabi- strip \
54
+ AR_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET-ar" \
55
+ AS_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET-as" \
56
+ CC_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- gcc" \
57
+ CXX_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- g++" \
58
+ LD_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET-ld" \
59
+ NM_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET-nm" \
60
+ OBJCOPY_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- objcopy" \
61
+ OBJDUMP_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- objdump" \
62
+ RANLIB_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- ranlib" \
63
+ READELF_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- readelf" \
64
+ SIZE_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- size" \
65
+ STRINGS_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- strings" \
66
+ STRIP_thumbv7neon_linux_androideabi="$CROSS_ANDROID_TARGET- strip" \
61
67
BINDGEN_EXTRA_CLANG_ARGS_thumbv7neon_linux_androideabi="--sysroot=$CROSS_SYSROOT" \
62
68
DEP_Z_INCLUDE="$CROSS_SYSROOT/usr/include/" \
63
69
RUST_TEST_THREADS=1 \
0 commit comments