Skip to content

Merge pull request #11 from HEAPLab/CI #36

Merge pull request #11 from HEAPLab/CI

Merge pull request #11 from HEAPLab/CI #36

Workflow file for this run

name: ASPIS main CI
on: [push]
jobs:
compile-ASPIS:
runs-on: ubuntu-latest
steps:
- name: Checking out ASPIS
uses: actions/checkout@v4
with:
path: ASPIS
- name: Cache LLVM build
uses: actions/cache@v4
id: llvm-cache
with:
path: /mnt/build/
key: llvm-build-${{ hashFiles('llvm-project/**', 'ASPIS/CMakeLists.txt') }}
restore-keys: |
llvm-build-
- name: Checking out LLVM project
uses: actions/checkout@master
if: steps.llvm-cache.outputs.cache-hit != 'true'
with:
repository: llvm/llvm-project
ref: llvmorg-16.0.6
path: llvm-project
- name: Compiling LLVM
if: steps.llvm-cache.outputs.cache-hit != 'true'
shell: bash
working-directory: ./llvm-project
run: |
builddir="/mnt/build/"
sudo mkdir -p $builddir
sudo chmod 777 $builddir
cmake -G Ninja \
-B "$builddir" \
-S llvm \
-DLLVM_ENABLE_PROJECTS="clang" \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=OFF \
-DLLDB_INCLUDE_TESTS=OFF \
-DLIBCLC_TARGETS_TO_BUILD="RISCV;X86"
cmake --build "$builddir"
- name: Compiling ASPIS
shell: bash
working-directory: ./ASPIS
run: |
mkdir build
cmake -B build -DLLVM_DIR=/mnt/build/lib/cmake/llvm/
cmake --build build
- name: Cache pip
uses: actions/cache@v4
id: pip-cache
with:
path: ~/.cache/pip
key: pip-${{ hashFiles('ASPIS/testing/requirements.txt') }}
restore-keys: |
pip-
- name: Install Python requirements
shell: bash
if: steps.llvm-cache.outputs.cache-hit != 'true'
working-directory: ./ASPIS/testing
run: |
pip install -r requirements.txt
- name: Testing ASPIS
shell: bash
working-directory: ./ASPIS/testing
run: |
pytest test.py