From 2a5f5c326cad8a0a7d51baa7ab132ed9d38df725 Mon Sep 17 00:00:00 2001 From: aurelf Date: Wed, 15 Nov 2023 23:53:59 +0100 Subject: [PATCH 1/5] Add CI tests for LLVM 16 and 17 --- .github/workflows/run_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index f4003558..e03f504c 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-22.04 strategy: matrix: - llvm_version: [11, 12, 13, 14, 15] + llvm_version: [11, 12, 13, 14, 15, 16, 17] steps: - uses: actions/checkout@v3 with: From f1dd472c3116bd299411fac8679120f248932611 Mon Sep 17 00:00:00 2001 From: Aurelien Francillon Date: Thu, 16 Nov 2023 00:02:48 +0100 Subject: [PATCH 2/5] Create CI when LLVM version is not present in distribution --- .github/workflows/run_tests.yml | 35 ++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index e03f504c..e45b6dcd 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-22.04 strategy: matrix: - llvm_version: [11, 12, 13, 14, 15, 16, 17] + llvm_version: [11, 12, 13, 14, 15] steps: - uses: actions/checkout@v3 with: @@ -42,3 +42,36 @@ jobs: -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] + steps: + - uses: actions/checkout@v3 + with: + submodules: true + - name: Install dependencies + run: | + cat >> /etc/apt/sources.list.d/llvm.list << EOF + deb [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main + deb-src [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main + deb [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${{ matrix.llvm_version }} main + deb-src [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${{ matrix.llvm_version }} main + EOF + sudo apt-get update + sudo apt-get install -y \ + llvm-${{ matrix.llvm_version }}-dev \ + libz3-dev \ + python2 + - name: Build SymCC with the QSYM backend + run: | + mkdir build + cd build + cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DZ3_TRUST_SYSTEM_VERSION=ON \ + -DQSYM_BACKEND=ON \ + -DLLVM_DIR=/usr/lib/llvm-${{ matrix.llvm_version }}/cmake \ + .. + make From 30cf9dbfc52923578fbf934d2b522ce0e3349bfc Mon Sep 17 00:00:00 2001 From: Aurelien Francillon Date: Thu, 16 Nov 2023 00:12:27 +0100 Subject: [PATCH 3/5] Using myci-actions/add-deb-repo@11 --- .github/workflows/run_tests.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index e45b6dcd..aa0d15cb 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -51,14 +51,14 @@ jobs: - uses: actions/checkout@v3 with: submodules: true + - name: add custom 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 + keys-asc: https://apt.llvm.org/llvm-snapshot.gpg.key - name: Install dependencies run: | - cat >> /etc/apt/sources.list.d/llvm.list << EOF - deb [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main - deb-src [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main - deb [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${{ matrix.llvm_version }} main - deb-src [trusted=yes] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${{ matrix.llvm_version }} main - EOF sudo apt-get update sudo apt-get install -y \ llvm-${{ matrix.llvm_version }}-dev \ From 72bc24ce4d3aae50bf782a27b003873b6bb5f320 Mon Sep 17 00:00:00 2001 From: Aurelien Francillon Date: Thu, 16 Nov 2023 00:15:18 +0100 Subject: [PATCH 4/5] Temporarily remove LLVM 17 from CI --- .github/workflows/run_tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index aa0d15cb..aabe8fc7 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -46,7 +46,7 @@ jobs: runs-on: ubuntu-22.04 strategy: matrix: - llvm_version: [16, 17] + llvm_version: [16] # 17] steps: - uses: actions/checkout@v3 with: From f4ae1fb5e30676bf7e42a78df07ff84d3548b2b7 Mon Sep 17 00:00:00 2001 From: aurelf Date: Thu, 16 Nov 2023 00:27:59 +0100 Subject: [PATCH 5/5] Minor changes to deb import --- .github/workflows/run_tests.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index aabe8fc7..c22e7d22 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -51,11 +51,12 @@ jobs: - uses: actions/checkout@v3 with: submodules: true - - name: add custom deb repository + - 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: |