fix .gitlab-ci.yml
[ieee754fpu.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
15 autoconf
16 bison
17 build-essential
18 ccache
19 clang
20 cmake
21 curl
22 flex
23 gawk
24 git
25 gperf
26 libboost-program-options-dev
27 libffi-dev
28 libftdi-dev
29 libgmp-dev
30 libmpfr-dev
31 libreadline-dev
32 mercurial
33 pkg-config
34 python
35 python3
36 python3-dev
37 python3-keyring
38 python3-pip
39 python3-setuptools
40 python3-wheel
41 tcl-dev
42 - export PATH="$HOME/.local/bin:/usr/lib/ccache:$PATH"
43 - export CCACHE_BASEDIR="$PWD"
44 - export CCACHE_DIR="$PWD/ccache"
45 - export CCACHE_COMPILERCHECK=content
46 - ccache --zero-stats || true
47 - ccache --show-stats || true
48 - python3 -m pip install --user pytest-xdist twine cython
49 script:
50 - IEEE754FPU_PATH="$(pwd)"
51 - git clone --depth 1 --recursive https://github.com/billzorn/sfpy.git sfpy
52 - git rev-parse HEAD
53 - pushd sfpy
54 - pushd berkeley-softfloat-3
55 - git apply "$IEEE754FPU_PATH"/berkeley-softfloat.patch
56 - popd
57 - pushd SoftPosit
58 - git apply ../softposit_sfpy_build.patch
59 - git apply "$IEEE754FPU_PATH"/SoftPosit.patch
60 - popd
61 - make lib -j$(nproc)
62 - make cython -j$(nproc)
63 - make wheel -j$(nproc)
64 - python3 -m pip install --user dist/sfpy*.whl
65 - popd
66
67 - git clone --depth 1 https://github.com/YosysHQ/yosys.git yosys
68 - pushd yosys
69 - git rev-parse HEAD
70 - make config-gcc
71 - make -j$(nproc)
72 - make install
73 - popd
74 - yosys -V
75
76 - git clone --depth 1 https://github.com/YosysHQ/SymbiYosys.git SymbiYosys
77 - pushd SymbiYosys
78 - git rev-parse HEAD
79 - make install
80 - popd
81
82 - git clone --depth 1 https://github.com/SRI-CSL/yices2.git yices2
83 - pushd yices2
84 - git rev-parse HEAD
85 - autoconf
86 - ./configure
87 - make -j$(nproc)
88 - make install
89 - popd
90
91 - git clone --depth 1 https://github.com/Z3Prover/z3.git z3
92 - pushd z3
93 - git rev-parse HEAD
94 - python scripts/mk_make.py
95 - cd build
96 - make -j$(nproc)
97 - make install
98 - popd
99
100 - git clone --depth 1 https://gitlab.com/nmigen/nmigen.git nmigen
101 - pushd nmigen
102 - git rev-parse HEAD
103 - python3 setup.py develop
104 - popd
105
106 - git clone --depth 1 https://git.libre-soc.org/git/nmutil.git nmutil
107 - pushd nmutil
108 - git rev-parse HEAD
109 - python3 setup.py develop
110 - popd
111
112 - python3 setup.py develop
113
114 - pytest -n auto src/ieee754