Skip to content

Export of runtime in a separate repository #195

Export of runtime in a separate repository

Export of runtime in a separate repository #195

Workflow file for this run

name: Compile and test SymCC
on: [pull_request, workflow_dispatch]
jobs:
build_and_test_symcc:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Setup docker compilation environment
run: docker build --target builder -t symcc .
- name: Build and test SymCC with simple backend
run: docker build --target builder_simple -t symcc .
- name: Build libcxx using SymCC simple backend
run: docker build --target builder_libcxx -t symcc .
- name: Build and test SymCC with Qsym backend
run: docker build --target builder_qsym -t symcc .
- name: Creation of the final SymCC docker image with Qsym backend and libcxx
run: docker build -t symcc .
llvm_compatibility:
runs-on: ubuntu-22.04
strategy:
matrix:
llvm_version: [11, 12, 13, 14, 15]
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
llvm-${{ matrix.llvm_version }}-dev \
libz3-dev \
git
- name: Build SymCC with the QSYM backend
run: |
git submodule update --init --recursive runtime
mkdir build
cd build
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DZ3_TRUST_SYSTEM_VERSION=ON \
-DSYMCC_RT_BACKEND=qsym \
-DLLVM_DIR=/usr/lib/llvm-${{ matrix.llvm_version }}/cmake \
..
make
llvm_compatibility_latest_llvm:
runs-on: ubuntu-22.04
strategy:
matrix:
llvm_version: [16, 17, 18]
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Add LLVM project deb repository
uses: myci-actions/add-deb-repo@11
with:
repo: deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-${{ matrix.llvm_version }} main
repo-name: llvm
update: false
keys-asc: https://apt.llvm.org/llvm-snapshot.gpg.key
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
llvm-${{ matrix.llvm_version }}-dev \
libz3-dev \
git
- name: Build SymCC with the QSYM backend
run: |
git submodule update --init --recursive runtime
mkdir build
cd build
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DZ3_TRUST_SYSTEM_VERSION=ON \
-DSYMCC_RT_BACKEND=qsym \
-DLLVM_DIR=/usr/lib/llvm-${{ matrix.llvm_version }}/cmake \
..
make