added ci.yml

This commit is contained in:
yuhuig 2021-02-15 11:23:25 -08:00 committed by Eric Matthews
parent ab1b5e4fd8
commit 8cc7e217ee

128
.gitlab-ci.yml Normal file
View file

@ -0,0 +1,128 @@
stages:
- build-toolchain
- embench
- dhrystone
- coremark
- compliance-test
#- util_timing_rpt
build-toolchain:
tags:
- new-taiga-ci
stage: build-toolchain
script:
- echo $CI_PROJECT_NAMESPACE
- echo $CI_PROJECT_PATH
- echo $CI_PROJECT_ROOT_NAMESPACE
- echo $CI_PROJECT_TITLE
- module load LANG/PYTHON/3.7.6
- pip3 install meson
# create the taiga project file hierachy
- cd ..
- rm -rf taiga-project
#- cp -r $CI_PROJECT_TITLE taiga
- cp -r project-0 taiga # only used for local tests
- git clone https://gitlab.com/sfu-rcl/taiga-project.git
- mv -f taiga taiga-project/
- cd taiga-project
- source settings.sh
- git clone https://github.com/gcc-mirror/gcc.git --branch releases/gcc-10 --single-branch tool-chain/gcc
- git clone https://gitlab.com/sfu-rcl/taiga-picolibc.git --branch master --single-branch tool-chain/picolibc
- git clone http://git.veripool.org/git/verilator --branch master --single-branch tool-chain/verilator
- git clone https://sourceware.org/git/binutils-gdb.git --branch binutils-2_35-branch --single-branch tool-chain/binutils-gdb
- git clone https://sourceware.org/git/newlib-cygwin.git --branch master --single-branch tool-chain/newlib-cygwin
- cd tool-chain/gcc
- ./contrib/download_prerequisites
- cd $TAIGA_PROJECT_ROOT
- ./build-tool-chain.sh
- cp -rf $TAIGA_PROJECT_ROOT/tool-chain $CI_PROJECT_DIR #needed for caching
cache:
key: tool-chain-cache
paths:
- tool-chain/
embench:
tags:
- new-taiga-ci
stage: embench
script:
# create the taiga project file hierachy
- cp -rf tool-chain ../taiga-project/tool-chain
- cd ..
#- rm -rf taiga-project
#- git clone https://gitlab.com/sfu-rcl/taiga-project.git
#- cp -r project-0 taiga
##- cp -r Taiga-dev taiga
#- mv -f taiga taiga-project/
- cd taiga-project
- source settings.sh
- git clone https://gitlab.com/sfu-rcl/taiga-embench.git --branch taiga-picolibc --single-branch benchmarks/embench
- make build-embench
- make run-embench-verilator
cache:
key: tool-chain-cache
paths:
- tool-chain/
compliance-test:
tags:
- new-taiga-ci
stage: compliance-test
script:
- cp -rf tool-chain ../taiga-project/tool-chain
- cd ..
- cd taiga-project
- git clone https://gitlab.com/sfu-rcl/taiga-riscv-compliance.git --branch taiga-sim --single-branch benchmarks/riscv-compliance
- source settings.sh
- make run-compliance-tests-verilator
cache:
key: tool-chain
paths:
- tool-chain/RISCV-compiler/
dhrystone:
tags:
- new-taiga-ci
stage: dhrystone
script:
- cp -rf tool-chain ../taiga-project/tool-chain
- cd ..
- cd taiga-project
- git clone https://gitlab.com/sfu-rcl/taiga-dhrystone.git --branch master --single-branch benchmarks/taiga-dhrystone
- source settings.sh
- make run run-dhrystone-verilator
cache:
key: toolchain
paths:
- tool-chain/RISCV-compiler/
coremark:
tags:
- new-taiga-ci
stage: coremark
script:
- cp -rf tool-chain ../taiga-project/tool-chain
- cd ..
- cd taiga-project
- git clone https://gitlab.com/sfu-rcl/taiga-coremark.git --branch master --single-branch benchmarks/taiga-coremark
- source settings.sh
- make run run-coremark-verilator
cache:
key: toolchain
paths:
- tool-chain/RISCV-compiler/
#util_timing_rpt-test:
#tags:
#- new-taiga-ci
#stage: util_timing_rpt
#script:
#- cd ..
#- cd taiga-project
#- git clone https://gitlab.com/sfu-rcl/taiga-coremark.git --branch master --single-branch benchmarks/taiga-coremark
#- source settings.sh
#- source /exports/rcl-tools/Vivado/Vivado/2019.2/settings64.sh
#- bash taiga/tools/PPA.sh