add WIP jpeg decoder demo
[openpower-isa.git] / .gitlab-ci.yml
1 image: debian:10
2
3 cache:
4 when: always
5 paths:
6 - ccache
7
8 build:
9 stage: build
10 before_script:
11 - apt-get update
12 # one package per line to simplify sorting, git diff, etc.
13 - >-
14 apt-get -y install --no-install-recommends
15 autoconf
16 binutils-powerpc64-linux-gnu
17 binutils-powerpc64le-linux-gnu
18 bison
19 build-essential
20 ccache
21 clang
22 cmake
23 curl
24 flex
25 gawk
26 git
27 gperf
28 libboost-program-options-dev
29 libffi-dev
30 libftdi-dev
31 libgmp-dev
32 libreadline-dev
33 mercurial
34 pkg-config
35 python
36 python3
37 python3-dev
38 python3-pip
39 python3-setuptools
40 python3-wheel
41 qemu-system-ppc
42 tcl-dev
43 - export PATH="$HOME/.local/bin:/usr/lib/ccache:$PATH"
44 - export CCACHE_BASEDIR="$PWD"
45 - export CCACHE_DIR="$PWD/ccache"
46 - export CCACHE_COMPILERCHECK=content
47 - ccache --zero-stats || true
48 - ccache --show-stats || true
49 - python3 -m pip install --user pytest-xdist
50 script:
51 - git clone --depth 1 -b yosys-0.17 https://github.com/YosysHQ/yosys.git yosys
52 - pushd yosys
53 - make config-gcc
54 - make -j$(nproc)
55 - make install
56 - popd
57 - yosys -V
58
59 - git clone https://github.com/YosysHQ/SymbiYosys.git SymbiYosys
60 - pushd SymbiYosys
61 - git checkout d10e472edf4ea9be3aa6347b264ba575fbea933a
62 - make install
63 - popd
64
65 - git clone --depth 1 -b Yices-2.6.4 https://github.com/SRI-CSL/yices2.git yices2
66 - pushd yices2
67 - autoconf
68 - ./configure
69 - make -j$(nproc)
70 - make install
71 - popd
72
73 - git clone --depth 1 -b z3-4.8.17 https://github.com/Z3Prover/z3.git z3
74 - pushd z3
75 - python scripts/mk_make.py
76 - cd build
77 - make -j$(nproc)
78 - make install
79 - popd
80
81 - git clone --depth 1 https://gitlab.com/nmigen/nmigen.git nmigen
82 - pushd nmigen
83 - git rev-parse HEAD
84 - python3 setup.py develop
85 - popd
86
87 - git clone --depth 1 https://git.libre-soc.org/git/nmutil.git nmutil
88 - pushd nmutil
89 - git rev-parse HEAD
90 - python3 setup.py develop
91 - popd
92
93 - python3 setup.py develop
94
95 - make generate &> generate.log || { cat generate.log; false; }
96
97 - SILENCELOG='!*,default' pytest -n auto -v src/openpower --maxfail=5