fix .gitlab-ci.yml
authorJacob Lifshay <programmerjake@gmail.com>
Tue, 10 May 2022 04:13:17 +0000 (21:13 -0700)
committerJacob Lifshay <programmerjake@gmail.com>
Tue, 10 May 2022 04:13:17 +0000 (21:13 -0700)
.gitlab-ci.yml

index 4094971c92ab6976509bd08e6249187622a3ce7d..5dde1f208ad3de940d4a10e8c38ee96545fdd283 100644 (file)
@@ -1,6 +1,7 @@
 image: debian:10
 
 cache:
+    when: always
     paths:
         - ccache
 
@@ -8,28 +9,47 @@ build:
     stage: build
     before_script:
         - apt-get update
+        # one package per line to simplify sorting, git diff, etc.
         - >-
             apt-get -y install
-            build-essential git python3-dev python3-pip
-            python3-setuptools python3-wheel pkg-config tcl-dev
-            libreadline-dev bison flex libffi-dev ccache python3-venv
-            libgmp-dev libmpfr-dev
-        - export PATH="/usr/lib/ccache:$PATH"
+            autoconf
+            bison
+            build-essential
+            ccache
+            clang
+            cmake
+            curl
+            flex
+            gawk
+            git
+            gperf
+            libboost-program-options-dev
+            libffi-dev
+            libftdi-dev
+            libgmp-dev
+            libmpfr-dev
+            libreadline-dev
+            mercurial
+            pkg-config
+            python
+            python3
+            python3-dev
+            python3-keyring
+            python3-pip
+            python3-setuptools
+            python3-wheel
+            tcl-dev
+        - 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
-    after_script:
-        - export CCACHE_DIR="$PWD/ccache"
-        - ccache --show-stats
+        - python3 -m pip install --user pytest-xdist twine cython
     script:
-        - python3 -m venv .env
-        - . .env/bin/activate
-        - pip install nose
-
         - IEEE754FPU_PATH="$(pwd)"
         - git clone --depth 1 --recursive https://github.com/billzorn/sfpy.git sfpy
+        - git rev-parse HEAD
         - pushd sfpy
         - pushd berkeley-softfloat-3
         - git apply "$IEEE754FPU_PATH"/berkeley-softfloat.patch
@@ -38,30 +58,57 @@ build:
         - git apply ../softposit_sfpy_build.patch
         - git apply "$IEEE754FPU_PATH"/SoftPosit.patch
         - popd
-        - pip install --upgrade -r requirements.txt
         - make lib -j$(nproc)
         - make cython -j$(nproc)
         - make wheel -j$(nproc)
-        - pip install dist/sfpy*.whl
+        - python3 -m pip install --user dist/sfpy*.whl
         - popd
 
         - 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/nmigen/nmigen.git nmigen
+        - 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
-        - python setup.py develop
+        - git rev-parse HEAD
+        - python3 setup.py develop
         - popd
 
-        - git clone --depth 1 git://git.libre-riscv.org/nmutil.git nmutil
+        - git clone --depth 1 https://git.libre-soc.org/git/nmutil.git nmutil
         - pushd nmutil
-        - python setup.py develop
+        - git rev-parse HEAD
+        - python3 setup.py develop
         - popd
 
-        - python setup.py develop
-        - nosetests -v --processes=-1
+        - python3 setup.py develop
+
+        - pytest -n auto src/ieee754