This commit is contained in:
Daniel
2018-10-11 21:17:11 +00:00
parent e605d91c5f
commit 743222b175
3 changed files with 75 additions and 30 deletions
+49 -24
View File
@@ -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 '<html><body>'; sed 's/^.*/<a href="&">&<\/a><br\/>/'; echo '</body></html>') > 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 '<html><body>'; sed 's/^.*/<a href="&">&<\/a><br\/>/'; echo '</body></html>') >index.html)
surge --project ./out --domain danio-gcc.surge.sh
workflows:
version: 2
runit:
jobs:
- build64
- build32
- deploy:
requires:
- build64
- build32
+6 -6
View File
@@ -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
+20
View File
@@ -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