--- /dev/null
+--- android.toolchain.cmake.orig 2014-04-06 16:08:25.765699476 +0200
++++ android.toolchain.cmake 2014-04-06 16:22:30.671987319 +0200
+@@ -464,7 +464,7 @@ if( BUILD_WITH_STANDALONE_TOOLCHAIN )
+ else()\r
+ execute_process( COMMAND "${ANDROID_STANDALONE_TOOLCHAIN}/bin/${__availableToolchainMachines}-gcc${TOOL_OS_SUFFIX}" --version\r
+ OUTPUT_VARIABLE __availableToolchainCompilerVersions OUTPUT_STRIP_TRAILING_WHITESPACE )\r
+- string( REGEX MATCH "[0-9]+.[0-9]+.[0-9]+" __availableToolchainCompilerVersions "${__availableToolchainCompilerVersions}" )\r
++ string( REGEX MATCH "[0-9]+(\\.[0-9]+)+" __availableToolchainCompilerVersions "${__availableToolchainCompilerVersions}" )\r
+ endif()\r
+ endif()\r
+ \r
+@@ -667,7 +667,12 @@ endif()
+ if( BUILD_WITH_STANDALONE_TOOLCHAIN )\r
+ set( ANDROID_TOOLCHAIN_ROOT "${ANDROID_STANDALONE_TOOLCHAIN}" )\r
+ set( ANDROID_SYSROOT "${ANDROID_STANDALONE_TOOLCHAIN}/sysroot" )\r
+- set( __stlLibPath "${ANDROID_STANDALONE_TOOLCHAIN}/${ANDROID_TOOLCHAIN_MACHINE_NAME}/lib" )\r
++ if (NOT DEFINED ANDROID_STL_PATH)\r
++ set( __stlLibPath "${ANDROID_STANDALONE_TOOLCHAIN}/${ANDROID_TOOLCHAIN_MACHINE_NAME}/lib" )\r
++ else()\r
++ set( __stlIncludePath "${ANDROID_STL_PATH}/gnu-libstdc++/${ANDROID_COMPILER_VERSION}/include" )\r
++ set( __stlLibPath "${ANDROID_STL_PATH}/gnu-libstdc++/${ANDROID_COMPILER_VERSION}/libs/${ANDROID_NDK_ABI_NAME}" )\r
++ endif()\r
+ endif()\r
+ if( BUILD_WITH_ANDROID_NDK )\r
+ set( ANDROID_TOOLCHAIN_ROOT "${ANDROID_NDK}/toolchains/${ANDROID_TOOLCHAIN_NAME}/prebuilt/${ANDROID_NDK_HOST_SYSTEM_NAME}" )\r
+@@ -732,6 +737,9 @@ list( APPEND ANDROID_SYSTEM_INCLUDE_DIRS
+ if( __stlIncludePath AND EXISTS "${__stlIncludePath}" )\r
+ list( APPEND ANDROID_SYSTEM_INCLUDE_DIRS "${__stlIncludePath}" )\r
+ endif()\r
++if( __stlLibPath AND EXISTS "${__stlLibPath}/include" )\r
++ list( APPEND ANDROID_SYSTEM_INCLUDE_DIRS "${__stlLibPath}/include" )\r
++endif()\r
+ \r
+ # c++ bits includes\r
+ if( __stlLibPath AND EXISTS "${__stlLibPath}/include" )\r
VER_GLIB=2.38.2
VER_GLIB_SHORT=2.38
VER_LIBZIP=0.11.1
-VER_LIBUSB=0.1.12
-VER_LIBFTDI=0.20
+VER_LIBFTDI1=1.1
VER_LIBUSBX=1.0.17
VER_PYTHON=3.3.3
WGET="wget --quiet"
GIT_CLONE="git clone --depth=1"
+case "$TOOLCHAIN_TRIPLET" in
+ arm*) TARGET_ARCH=armeabi;;
+ mips*) TARGET_ARCH=mips;;
+ i686*) TARGET_ARCH=x86;;
+ *) echo >&2 "Unknown prefix for TOOLCHAIN_TRIPLET"; exit 1;;
+esac
+
# -----------------------------------------------------------------------------
# Remove build directory contents (if any) and create a new build dir.
# Define some helper variables.
C="--host=$TOOLCHAIN_TRIPLET --prefix=$PREFIX"
+CM="-Wno-dev -DCMAKE_TOOLCHAIN_FILE=../android.toolchain.cmake -DANDROID_ABI=${TARGET_ARCH} -DCMAKE_INSTALL_PREFIX=${PREFIX} -DANDROID_STANDALONE_TOOLCHAIN=${TOOLCHAIN}"
# Get the latest versions of config.guess/config.sub that know about Android.
$GIT_CLONE git://git.savannah.gnu.org/config.git
+# Get a toolchain for cmake that knows about Android
+wget https://android-cmake.googlecode.com/hg/toolchain/android.toolchain.cmake
+patch < ../android.toolchain.cmake.patch android.toolchain.cmake
+
# -----------------------------------------------------------------------------
# Python (needed for libsigrokdecode)
make install
cd ..
-# libusb-0.1 (not used directly, but needed for libftdi)
-$WGET http://$SF_MIRROR/project/libusb/libusb-0.1%20%28LEGACY%29/$VER_LIBUSB/libusb-$VER_LIBUSB.tar.gz
-tar xfz libusb-$VER_LIBUSB.tar.gz
-cd libusb-$VER_LIBUSB
-cp -f ../config/config.guess .
-cp -f ../config/config.sub .
-./configure $C
-# Explicitly exclude libusbpp.la from lib_LTLIBRARIES, and skip subdirs.
-make lib_LTLIBRARIES=libusb.la SUBDIRS=. $PARALLEL
-make lib_LTLIBRARIES=libusb.la SUBDIRS=. install
-cd ..
-
-# libftdi
-$WGET http://www.intra2net.com/en/developer/libftdi/download/libftdi-$VER_LIBFTDI.tar.gz
-tar xfz libftdi-$VER_LIBFTDI.tar.gz
-cd libftdi-$VER_LIBFTDI
-cp -f ../config/config.guess .
-cp -f ../config/config.sub .
-# libftdi needs to find libusb-config which is installed in $PREFIX/bin.
-PATH=$PREFIX/bin:$PATH ./configure $C
-make $PARALLEL
-make install
-cd ..
-
# libusb-1.0
$WGET http://$SF_MIRROR/project/libusbx/releases/$VER_LIBUSBX/source/libusbx-$VER_LIBUSBX.tar.bz2
tar xfj libusbx-$VER_LIBUSBX.tar.bz2
make install
cd ..
+# libftdi1
+$WGET http://www.intra2net.com/en/developer/libftdi/download/libftdi1-$VER_LIBFTDI1.tar.bz2
+tar xfj libftdi1-$VER_LIBFTDI1.tar.bz2
+cd libftdi1-$VER_LIBFTDI1
+cmake $CM .
+make $PARALLEL
+make install
+cd ..
+
# libserialport
$GIT_CLONE git://sigrok.org/libserialport
cd libserialport