3 if [ -z "$ANDROID_NDK" ]; then
4 echo "Please set the ANDROID_NDK environment variable with its path."
10 VLC_SOURCEDIR="`dirname $0`/../../.."
12 # needed for old ndk: change all the arm-linux-androideabi to arm-eabi
13 # the --host is kept on purpose because otherwise libtool complains..
15 CFLAGS="-O2 -mlong-calls -fstrict-aliasing -fprefetch-loop-arrays -ffast-math"
16 LDFLAGS="-Wl,-Bdynamic,-dynamic-linker=/system/bin/linker -Wl,--no-undefined"
18 if [ -z "$NO_NEON" ]; then
19 CXX_TARGET="armeabi-v7a"
20 CFLAGS="$CFLAGS -mfpu=neon -march=armv7-a -mtune=cortex-a8 -mfloat-abi=softfp -ftree-vectorize -mvectorize-with-neon-quad -funsafe-math-optimizations"
21 LDFLAGS="$LDFLAGS -Wl,--fix-cortex-a8"
22 EXTRA_PARAMS=" --enable-neon"
25 CFLAGS="$CFLAGS -march=armv6j -mtune=arm1136j-s -msoft-float"
26 EXTRA_PARAMS=" --disable-neon"
29 CPPFLAGS="-I${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/include -I${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/libs/${CXX_TARGET}/include"
30 LDFLAGS="$LDFLAGS -L${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/libs/${CXX_TARGET}"
32 if [ -n "$ANDROID_SYS_HEADERS" ]; then
33 CPPFLAGS="$CPPFLAGS -I${ANDROID_SYS_HEADERS}/frameworks/base/include -I${ANDROID_SYS_HEADERS}/system/core/include"
34 LDFLAGS="$LDFLAGS -L${ANDROID_LIBS}"
37 SYSROOT=$ANDROID_NDK/platforms/$ANDROID_API/arch-arm
38 ANDROID_BIN=$ANDROID_NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/*-x86/bin/
39 CROSS_COMPILE=${ANDROID_BIN}/arm-linux-androideabi-
41 CPPFLAGS="$CPPFLAGS" \
45 CC="${CROSS_COMPILE}gcc --sysroot=${SYSROOT}" \
46 CXX="${CROSS_COMPILE}g++ --sysroot=${SYSROOT}" \
47 NM="${CROSS_COMPILE}nm" \
48 STRIP="${CROSS_COMPILE}strip" \
49 RANLIB="${CROSS_COMPILE}ranlib" \
50 AR="${CROSS_COMPILE}ar" \
51 PKG_CONFIG_LIBDIR="$VLC_SOURCEDIR/extras/contrib/hosts/arm-eabi/lib/pkgconfig" \
52 sh $VLC_SOURCEDIR/configure --host=arm-eabi-linux --build=x86_64-unknown-linux $EXTRA_PARAMS \
53 --enable-live555 --enable-realrtsp \
58 --enable-android-surface \
62 --disable-vlc --disable-shared \
63 --disable-vlm --disable-sout \
81 --disable-schroedinger --disable-dirac \
84 --disable-fluidsynth \
107 --disable-gles1 --disable-gles2 \