#!/bin/bash set -eou pipefail TARGET=$1 VERSION=$2 TOOLCHAIN_VERSION_SUFFIX=$3 HOME=/home/ct ZLIB_VERSION=1.2.11 build_toolchain() { mkdir $HOME/build-"$TARGET" cd $HOME/build-"$TARGET" cp $HOME/toolchains/"$TARGET"/"$VERSION".config .config ct-ng build cd .. } build_zlib() { TOOLCHAINS_PATH=$HOME/x-tools INSTALL_PATH=$TOOLCHAINS_PATH/$TARGET/$TARGET/sysroot/usr TOOLCHAIN_BIN_PREFIX=$TOOLCHAINS_PATH/$TARGET/bin/$TARGET cd $HOME/zlib-$ZLIB_VERSION CHOST=$TARGET \ CC=$TOOLCHAIN_BIN_PREFIX-gcc \ AR=$TOOLCHAIN_BIN_PREFIX-ar \ RANLIB=$TOOLCHAIN_BIN_PREFIX-ranlib \ ./configure \ --prefix="$INSTALL_PATH" make && make install } build_archive() { cd $HOME/x-tools if [ -z "$TOOLCHAIN_VERSION_SUFFIX" ] then FULL_NAME="$TARGET-$VERSION" else FULL_NAME="$TARGET-$VERSION-$TOOLCHAIN_VERSION_SUFFIX" fi mv "$TARGET" "$FULL_NAME" ARCHIVE_NAME="$FULL_NAME.tar.gz" tar -czvf "$ARCHIVE_NAME" "$FULL_NAME" echo "$PWD/$ARCHIVE_NAME" mkdir -p ~/artifacts cp "$ARCHIVE_NAME" ~/artifacts/"$ARCHIVE_NAME" } echo "building toolchain for $TARGET" build_toolchain build_zlib build_archive