#!/bin/sh build() { sudo apt update -qq sudo apt install -y git-core gnupg flex bison lftp gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev libx11-dev lib32z-dev libxml2-utils xsltproc schedtool gettext nodejs npm sudo npm config set strict-ssl false sudo npm install -g surge sudo apt-get clean export TUPLE="danio" for i in aarch64-${TUPLE}-linux alpha-${TUPLE}-linux arm-${TUPLE}-eabi arc-${TUPLE}-linux c6x-${TUPLE}-linux h8300-${TUPLE}-elf parisc64-${TUPLE}-linux parisc-${TUPLE}-linux i386-${TUPLE}-linux -${TUPLE}-linux ia64-${TUPLE}-linux m68k-${TUPLE}-linux microblaze-${TUPLE}-linux mips64-${TUPLE}-linux mips-${TUPLE}-linux nios2-${TUPLE}-elf powerpc64-${TUPLE}-linux powerpc64-${TUPLE}-linux s390-${TUPLE}-linux sh2-${TUPLE}-linux sh4-${TUPLE}-linux riscv32-${TUPLE}-linux riscv64-${TUPLE}-linux sparc-${TUPLE}-linux sparc64-${TUPLE}-linux x86_64-${TUPLE}-linux xtensa-${TUPLE}-linux nds32le-${TUPLE}-linux or1k-${TUPLE}-linux hexagon-${TUPLE}-linux am33_2.0-${TUPLE}-linux bfin-${TUPLE}-uclinux crisv32-${TUPLE}-linux frv-${TUPLE}-linux m32r-${TUPLE}-linux tilepro-${TUPLE}-linux tilegx-${TUPLE}-linux; do if [ -e .error ]; then . ./.error break else sudo rm -rf binutils-* build-* LATEST-* gcc-* newlib-* sudo ./danio_gcc.sh ${i} ${1} | tee out/${i}.log fi done if [ -e .error ]; then echo "error detected @ ${STAGE} !" exit 1 fi } mkdir -p out case ${1} in 64) build 64;; 32) build 32;; --build-upload) ${0} 64 && ${0} 32 && surge ./out gcc.danio.ga ;; --build) ${0} 64 && ${0} 32 ;; esac exit ${?}