From 743222b175f1af0633d59452715ed671f01bdf21 Mon Sep 17 00:00:00 2001 From: Daniel Date: Thu, 11 Oct 2018 21:17:11 +0000 Subject: [PATCH] update --- .circleci/config.yml | 73 +++++++++++++++++++++++++++++--------------- danio_gcc.sh | 12 ++++---- runit-all.sh | 20 ++++++++++++ 3 files changed, 75 insertions(+), 30 deletions(-) create mode 100644 runit-all.sh diff --git a/.circleci/config.yml b/.circleci/config.yml index 4265469..518bcb2 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,29 +1,54 @@ +defaults: &defaults + working_directory: /tmp/danio-gcc + machine: true + version: 2 jobs: - build: - machine: true - working_directory: ~/danio-gcc + build64: + <<: *defaults steps: - checkout - run: | - 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" - chmod +x -v ./danio_gcc.sh - 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 ./danio_gcc.sh ${i} | tee out/${i}.log - fi - done - if [ -e .error ]; then - echo "error detected @ ${STAGE} !" - exit 1 - fi - (cd out; ls | (echo ''; sed 's/^.*/&<\/a>/'; echo '') > index.html) - surge --project ./out --domain danio-gcc.surge.sh + export CC="cc -m64" + export CXX="c++ -m64" + chmod +x -v *.sh + sudo ./runit-all.sh + sudo rm -rf binutils-* build-* ${gcc_version} gcc-* newlib-* + - persist_to_workspace: + root: /tmp/danio-gcc + paths: + - out + build32: + <<: *defaults + steps: + - checkout + - run: | + export CC="cc -m32" + export CXX="c++ -m32" + chmod +x -v *.sh + sudo ./runit-all.sh + sudo rm -rf binutils-* build-* ${gcc_version} gcc-* newlib-* + - persist_to_workspace: + root: /tmp/danio-gcc + paths: + - out + + deploy: + steps: + - attach_workspace: + at: /tmp/danio-gcc + - run: | + (cd out; ls | (echo ''; sed 's/^.*/&<\/a>/'; echo '') >index.html) + surge --project ./out --domain danio-gcc.surge.sh + +workflows: + version: 2 + + runit: + jobs: + - build64 + - build32 + - deploy: + requires: + - build64 + - build32 \ No newline at end of file diff --git a/danio_gcc.sh b/danio_gcc.sh index af7f942..93638cf 100644 --- a/danio_gcc.sh +++ b/danio_gcc.sh @@ -17,10 +17,6 @@ if ! command -v lftp >/dev/null; then exit 1 fi -if [ "${REMOVE}" == "1" ]; then - rm -rf binutils-* build-* ${gcc_version} gcc-* */* newlib-* -fi - ( if [ ! -e binutils-${binutils_version}${binutils_ext} ]; then wget -c "http://ftp.gnu.org/gnu/binutils/binutils-${binutils_version}.${binutils_ext}" @@ -87,12 +83,16 @@ if ( mkdir -pv build-newlib (cd build-newlib; ../newlib-*/configure --target="${TARGET}" --prefix="${PREFIX}") make -C build-newlib -j${nproc} - make -C build-newlib -j${nproc} install + make -C build-newlib install ) then find ${PREFIX} | xargs file | grep "ELF" | grep "executable" | cut -f 1 -d ":" | xargs strip -S 2>/dev/null mkdir -pv out - (cd ${PREFIX}; tar -cJf "${OUT}/${TARGET}-`date +"%d-%m-%Y"`.txz" .) + if [ "${CC}" == "cc -m64" ]; then + (cd ${PREFIX}; tar -cJf "${OUT}/${TARGET}-`date +"%d-%m-%Y"`_x86-64.txz" .) + else + (cd ${PREFIX}; tar -cJf "${OUT}/${TARGET}-`date +"%d-%m-%Y"`_x86-32.txz" .) + fi rm -rf build-* #printf "\n POPRAWNIE ZBUDOWANO GCC DLA ${TARGET}!\n\n" else diff --git a/runit-all.sh b/runit-all.sh new file mode 100644 index 0000000..10a8fa3 --- /dev/null +++ b/runit-all.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +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 ./danio_gcc.sh ${i} | tee out/${i}.log + fi +done +if [ -e .error ]; then + echo "error detected @ ${STAGE} !" + exit 1 +fi