add --arbitrary flag
[bigint-presentation-code.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 binutils-powerpc64-linux-gnu
16 binutils-powerpc64le-linux-gnu
17 build-essential
18 ccache
19 curl
20 git
21 libffi-dev
22 pkg-config
23 python
24 python3
25 python3-dev
26 python3-pip
27 python3-setuptools
28 python3-wheel
29 - export PATH="$HOME/.local/bin:/usr/lib/ccache:$PATH"
30 - export CCACHE_BASEDIR="$PWD"
31 - export CCACHE_DIR="$PWD/ccache"
32 - export CCACHE_COMPILERCHECK=content
33 - ccache --zero-stats || true
34 - ccache --show-stats || true
35 - python3 -m pip install --user pytest-xdist
36 - curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain 1.67.1 --profile minimal --component rustfmt
37 - source "$HOME/.cargo/env"
38 script:
39 - pushd register_allocator
40 - cargo fmt --all --check
41 - cargo test --locked --workspace
42 - popd
43
44 - git clone --depth 1 https://gitlab.com/nmigen/nmigen.git nmigen
45 - pushd nmigen
46 - git rev-parse HEAD
47 - python3 setup.py develop
48 - popd
49
50 - git clone --depth 1 https://git.libre-soc.org/git/nmutil.git nmutil
51 - pushd nmutil
52 - git rev-parse HEAD
53 - python3 setup.py develop
54 - popd
55
56 - git clone --depth 1 https://git.libre-soc.org/git/openpower-isa.git openpower-isa
57 - pushd openpower-isa
58 - git rev-parse HEAD
59 - python3 setup.py develop
60 - make generate &> generate.log || { cat generate.log; false; }
61 - popd
62
63 - python3 setup.py develop
64
65 - SILENCELOG='!*,default' pytest --maxfail=5