vexriscv: update
[litex.git] / .travis-build-socs.sh
1 #!/usr/bin/env bash
2
3 set -e
4
5 # Some colors, use it like following;
6 # echo -e "Hello ${YELLOW}yellow${NC}"
7 GRAY='\033[0;30m'
8 GREEN='\033[0;32m'
9 YELLOW='\033[0;33m'
10 PURPLE='\033[0;35m'
11 NC='\033[0m' # No Color
12
13 SPACER="echo -e ${GRAY} - ${NC}"
14
15 travis_fold start "environment.create"
16 travis_time_start
17 echo -e "Setting up basic ${YELLOW}conda environment${NC}"
18 echo "-------------------------------------------------------------------"
19 conda env create -f environment.yml
20 source activate litex
21 echo "-------------------------------------------------------------------"
22 travis_time_finish
23 travis_fold end "environment.create"
24
25 $SPACER
26
27 SOC_FILES=$(find litex/boards/targets -name \*.py | grep -v sim | grep -v "__")
28
29 COUNT=4
30
31 for SOC_FILE in $SOC_FILES; do
32 SOC=$(echo $SOC_FILE | sed -e's/\.py$//' -e's-/-.-g')
33 TARGET=$(echo $SOC | sed -e's/.*\.//')
34
35 travis_fold start "$SOC.1"
36 travis_time_start
37 echo -e "Building ${GREEN}${TARGET}${NC} (${PURPLE}${SOC}${NC})"
38 echo "-------------------------------------------------------------------"
39 python -m $SOC --no-compile-gateware
40 echo "-------------------------------------------------------------------"
41 travis_time_finish
42 travis_fold end "$SOC.1"
43 travis_fold start "$SOC.2"
44 echo -e "Output of building ${GREEN}${TARGET}${NC} (${PURPLE}${SOC}${NC})"
45 echo "-------------------------------------------------------------------"
46 find soc_*$TARGET* | sort
47 echo "-------------------------------------------------------------------"
48 travis_fold end "$SOC.2"
49
50 $SPACER
51 done