image: debian:10 cache: paths: - ccache build: stage: build before_script: - apt-get update # one package per line to simplify sorting, git diff, etc. - >- apt-get -y install autoconf bison build-essential ccache clang cmake curl flex gawk git gperf graphviz libboost-program-options-dev libffi-dev libftdi-dev libgmp-dev libreadline-dev mercurial pkg-config python python3 python3-dev python3-pip python3-setuptools python3-wheel tcl-dev xdot - export PATH="$HOME/.local/bin:/usr/lib/ccache:$PATH" - export CCACHE_BASEDIR="$PWD" - export CCACHE_DIR="$PWD/ccache" - export CCACHE_COMPILERCHECK=content - ccache --zero-stats || true - ccache --show-stats || true - python3 -m pip install --user pytest-xdist after_script: - export CCACHE_DIR="$PWD/ccache" - ccache --show-stats script: - git clone --depth 1 https://github.com/YosysHQ/yosys.git yosys - pushd yosys - git rev-parse HEAD - make config-gcc - make -j$(nproc) - make install - popd - yosys -V - git clone --depth 1 https://github.com/YosysHQ/SymbiYosys.git SymbiYosys - pushd SymbiYosys - git rev-parse HEAD - make install - popd - git clone --depth 1 https://github.com/SRI-CSL/yices2.git yices2 - pushd yices2 - git rev-parse HEAD - autoconf - ./configure - make -j$(nproc) - make install - popd - git clone --depth 1 https://github.com/Z3Prover/z3.git z3 - pushd z3 - git rev-parse HEAD - python scripts/mk_make.py - cd build - make -j$(nproc) - make install - popd - git clone --depth 1 https://gitlab.com/nmigen/nmigen.git nmigen - pushd nmigen - git rev-parse HEAD - python3 setup.py develop - popd - git clone --depth 1 https://git.libre-soc.org/git/nmutil.git nmutil - pushd nmutil - git rev-parse HEAD - python3 setup.py develop - popd - python3 setup.py develop - pytest -n auto