Skip to content

(WIP) Refactor: Remove AVM #2408

(WIP) Refactor: Remove AVM

(WIP) Refactor: Remove AVM #2408

Workflow file for this run

name: UnitTests
on:
push:
branches:
- main
pull_request:
branches:
- main
- develop
jobs:
UnitTest:
name: (${{ matrix.backend }}) Unittests on (${{ matrix.lisp }})
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
lisp: [sbcl-bin, ccl-bin/1.12.2]
backend: [lisp, clang]
os: [ubuntu-latest]
target:
- normal
steps:
- uses: actions/checkout@v1
- name: Set up ${{ matrix.lisp }} via Roswell.
env:
LISP: sbcl-bin
run: |
curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh
ros install ${{ matrix.lisp }}
ros use ${{ matrix.lisp }}
ros install rove qlot
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Installing libisl-dev
run: |
sudo apt-get install -y libisl-dev
- name: pkg-config isl --modversion
run: |
pkg-config isl --modversion
- name: Update $PATH
run: |
echo $PATH
export PATH=/home/runner/.roswell/bin:$PATH
echo "PATH=$HOME/bin:$PATH" >> $GITHUB_ENV
- name: Installing Extra Dependency for testing
run: make install_extra
- name: Check $PATH
run: echo $PATH
- name: (Lisp) rove caten.asd
if: ${{ matrix.backend == 'lisp' }}
run: |
ros config set dynamic-space-size 8gb
ros -e '(ql:register-local-projects)' -q
CI=1 JIT=0 AVM=LISP rove caten.asd
- name: (Clang) rove caten.asd
if: ${{ matrix.backend == 'clang' && matrix.lisp != 'ccl-bin/1.12.2' }}
run: |
ulimit -n 8192
ros config set dynamic-space-size 8gb
ros -e '(ql:register-local-projects)' -q
CI=1 JIT=1 JIT_BACKEND=CLANG AVM=LISP rove caten.asd
Documentation:
name: Test building documentations
runs-on: ubuntu-latest
timeout-minutes: 20
permissions:
contents: read
steps:
- uses: actions/checkout@v1
- name: Set up SBCL via Roswell.
run: |
curl -L https://raw.githubusercontent.com/roswell/roswell/master/scripts/install-for-ci.sh | sh
ros install sbcl-bin
ros use sbcl-bin
ros install qlot
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Update $PATH
run: |
echo $PATH
export PATH=/home/runner/.roswell/bin:$PATH
echo "PATH=$HOME/bin:$PATH" >> $GITHUB_ENV
- name: Installing Dependencies
run: sudo apt-get install -y libisl-dev protobuf-compiler cmake
- name: Download and install Abseil
run: |
set -ex
git clone --recursive -b lts_2024_07_22 https://github.com/abseil/abseil-cpp $GITHUB_WORKSPACE/abseil-cpp
cd $GITHUB_WORKSPACE/abseil-cpp
sudo cmake . -DCMAKE_CXX_STANDARD=17 -DABSL_ENABLE_INSTALL=ON
sudo make -j20
sudo make install
sudo ldconfig
- name: Download and install protobuf
run: |
git clone --recursive -b 28.x https://github.com/protocolbuffers/protobuf
cd protobuf/cmake
mkdir build
cd build
cmake -DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_ABSL_PROVIDER=package -DCMAKE_INSTALL_PREFIX=/usr/local/ ../..
sudo make install -j20
sudo ldconfig
- name: Set up cl-protobufs
run: |
git clone https://github.com/qitab/cl-protobufs.git
cd cl-protobufs/protoc
cmake . -DCMAKE_CXX_STANDARD=17
cmake --build . --target install --parallel 16
cd ../../
- name: Installing extra dependencies
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
qlot install
qlot exec make install_docs
- name: Building documentations
run: mkdir -p docs/packages && CI=1 JIT=0 make build_docs