X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=cross-compile%2Fandroid%2Fsigrok-cross-android;h=c0aa4fd3dc93f9ef971ec14091dfc59f89337047;hb=e2bb3ab160f04022593d36c34ab6480755e214d1;hp=cd40fde6ed992f983c643ff03ab24fee88b80b0f;hpb=900a8684089d1d0441a2737ae4805ec312eb8738;p=sigrok-util.git diff --git a/cross-compile/android/sigrok-cross-android b/cross-compile/android/sigrok-cross-android index cd40fde..c0aa4fd 100755 --- a/cross-compile/android/sigrok-cross-android +++ b/cross-compile/android/sigrok-cross-android @@ -23,6 +23,14 @@ set -e # The path where your Android toolchain directory is located. TOOLCHAIN=$HOME/android/android-arm-toolchain +# TOOLCHAIN=$HOME/android/android-mipsel-toolchain +# TOOLCHAIN=$HOME/android/android-i686-toolchain + +# Select which Android toolchain to use. +# Don't forget to also adapt TOOLCHAIN above if you change TOOLCHAIN_TRIPLET! +TOOLCHAIN_TRIPLET=arm-linux-androideabi +# TOOLCHAIN_TRIPLET=mipsel-linux-android +# TOOLCHAIN_TRIPLET=i686-linux-android # The path where the cross-compiled packages will be installed. PREFIX=$HOME/sr_android @@ -43,7 +51,8 @@ VER_GLIB=2.34.3 VER_LIBZIP=0.11.1 VER_LIBUSB=0.1.12 VER_LIBFTDI=0.20 -VER_LIBUSB_1_0=1.0.9 +VER_LIBUSBX=1.0.17 +VER_PYTHON=3.3.3 SF_MIRROR=switch.dl.sourceforge.net @@ -55,9 +64,9 @@ mkdir $BUILDDIR cd $BUILDDIR # Build host Python before we start messing with the environment. -wget http://python.org/ftp/python/3.3.3/Python-3.3.3.tar.xz -tar xJf Python-3.3.3.tar.xz -cd Python-3.3.3 +wget http://python.org/ftp/python/$VER_PYTHON/Python-$VER_PYTHON.tar.xz +tar xJf Python-$VER_PYTHON.tar.xz +cd Python-$VER_PYTHON ./configure make python make Parser/pgen @@ -75,13 +84,7 @@ export PKG_CONFIG_LIBDIR="$PREFIX/lib/pkgconfig" export -n PKG_CONFIG_PATH # Define some helper variables. -C="--host=arm-linux-androideabi --prefix=$PREFIX" - -# Remember the directory we're in. -case "$0" in - /*) TOP=$(dirname "$0");; - *) TOP=$(dirname "$(pwd)"/"$0");; -esac +C="--host=$TOOLCHAIN_TRIPLET --prefix=$PREFIX" # Get the latest versions of config.guess/config.sub that know about Android. git clone git://git.savannah.gnu.org/config.git @@ -124,7 +127,7 @@ wget http://zlib.net/zlib-$VER_ZLIB.tar.gz tar xfvz zlib-$VER_ZLIB.tar.gz cd zlib-$VER_ZLIB # Note: zlib's configure doesn't understand --host, we need to pass $CC. -CC=arm-linux-androideabi-gcc ./configure --prefix=$PREFIX +CC=$TOOLCHAIN_TRIPLET-gcc ./configure --prefix=$PREFIX make make install cd .. @@ -153,7 +156,7 @@ tar xJf glib-2.38.2.tar.xz cd glib-2.38.2 ./autogen.sh # Note: Manual LDFLAGS/CPPFLAGS needed for libiconv, rest uses pkg-config. -LDFLAGS=-L$PREFIX/lib CPPFLAGS=-I$PREFIX/include glib_cv_stack_grows=no glib_cv_uscore=no ac_cv_func_posix_getpwuid_r=no ac_cv_func_posix_getgrgid_r=no ./configure $C +LDFLAGS=-L$PREFIX/lib CPPFLAGS=-I$PREFIX/include glib_cv_stack_grows=no glib_cv_uscore=no ac_cv_func_posix_getpwuid_r=no ac_cv_func_posix_getgrgid_r=no ./configure --disable-compile-warnings $C make make install cd .. @@ -187,17 +190,18 @@ tar xfz libftdi-$VER_LIBFTDI.tar.gz cd libftdi-$VER_LIBFTDI cp -f ../config/config.guess . cp -f ../config/config.sub . -./configure $C +# libftdi needs to find libusb-config which is installed in $PREFIX/bin. +PATH=$PREFIX/bin:$PATH ./configure $C make make install cd .. # libusb-1.0 -wget http://$SF_MIRROR/project/libusb/libusb-1.0/libusb-$VER_LIBUSB_1_0/libusb-$VER_LIBUSB_1_0.tar.bz2 -tar xfj libusb-$VER_LIBUSB_1_0.tar.bz2 -cd libusb-$VER_LIBUSB_1_0 -patch -p1 < $TOP/libusb-1.0.patch -./configure $C +wget http://$SF_MIRROR/project/libusbx/releases/$VER_LIBUSBX/source/libusbx-$VER_LIBUSBX.tar.bz2 +tar xfj libusbx-$VER_LIBUSBX.tar.bz2 +cd libusbx-$VER_LIBUSBX +patch -p1 < ../../libusb-1.0.patch +./configure $C --disable-udev make make install cd .. @@ -221,10 +225,10 @@ make install cd .. # Python -cd Python-3.3.3 +cd Python-$VER_PYTHON make distclean autoreconf -patch -p1 < ../../Python-3.3.3.patch +patch -p1 < ../../Python-$VER_PYTHON.patch ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no ac_cv_func_pipe2=no ac_cv_func_fdatasync=no ac_cv_func_killpg=no ac_cv_func_waitid=no ac_cv_func_sigaltstack=no ./configure $C --build=x86_64-linux-gnu --disable-ipv6 make HOSTPYTHON=./hostpython HOSTPGEN=./Parser/hostpgen install cd ..