From c1f45b20b419b61bad8c7b69b6175097a38005ea Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 2 Oct 2024 10:58:25 +0100 Subject: [PATCH 1/5] x86 updates to create_llvm --- .github/workflows/create_llvm.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index 29c7db9f8..ea96b7b25 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -18,7 +18,7 @@ jobs: version: [17, 18] os: [ubuntu-22.04, windows-2019] build_type: [Release, RelAssert] - arch : [x86_64, aarch64] + arch : [x86, x86_64, aarch64] exclude: # Reduce the versions of llvm for aarch64 architecture, as # well as any windows os variants to reduce cache usage. @@ -45,6 +45,8 @@ jobs: - arch_flags: -DCMAKE_TOOLCHAIN_FILE="$GITHUB_WORKSPACE/ock/platform/arm-linux/aarch64-toolchain.cmake" -DLLVM_HOST_TRIPLE=aarch64-unknown-linux-gnu arch: aarch64 + - arch_flags: -DLLVM_BUILD_32_BITS=ON -DLIBXML2_LIBRARIES=IGNORE -DLLVM_ENABLE_TERMINFO=OFF + arch: x86 - build_type: Release build_type_flags: -DCMAKE_BUILD_TYPE=Release @@ -88,10 +90,17 @@ jobs: run: sudo apt-get install --yes g++-11-aarch64-linux-gnu + - name: install x86 build tools + if: ${{ steps.cache.outputs.cache-hit != 'true' && matrix.arch == 'x86' }} + run: | + sudo dpkg --add-architecture i386 + sudo apt-get update + sudo apt-get install --yes gcc-multilib g++-multilib libc6-dev:i386 lib32tinfo-dev + - name: Flags checker if: steps.cache.outputs.cache-hit != 'true' run: - echo Building on "${{ matrix.os }}" with os_flags "${{ matrix.os_flags}}" arch "${{ matrix.arch }}"extra flags "${{ matrix.build_type_flags}}" and build_type "${{matrix.build_type}}" + echo Building on "${{ matrix.os }}" with os_flags "${{ matrix.os_flags}}" arch "${{ matrix.arch }}" extra flags "${{ matrix.build_type_flags}}" and build_type "${{matrix.build_type}}" - name: Run cmake if: steps.cache.outputs.cache-hit != 'true' From a1cbb040e1696e58652dbf6fc7de98b9c0f111ac Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 2 Oct 2024 12:57:06 +0100 Subject: [PATCH 2/5] Restrict x86 to 18/RelAssert --- .github/workflows/create_llvm.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index ea96b7b25..409af7565 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -20,12 +20,16 @@ jobs: build_type: [Release, RelAssert] arch : [x86, x86_64, aarch64] exclude: - # Reduce the versions of llvm for aarch64 architecture, as + # Reduce the versions of llvm for aarch64 & x86 architectures, as # well as any windows os variants to reduce cache usage. - arch: aarch64 version: 17 - arch: aarch64 build_type: Release + - arch: x86 + version: 17 + - arch: x86 + build_type: Release - os: windows-2019 version: 17 - os: windows-2019 From 62518e274daee6d4ed7da8d60768946fb117b20d Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 2 Oct 2024 14:52:07 +0100 Subject: [PATCH 3/5] exclude windows x86 --- .github/workflows/create_llvm.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index 409af7565..3befdeda1 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -36,6 +36,8 @@ jobs: build_type: Release - os: windows-2019 arch: aarch64 + - os: windows-2019 + arch: x86 include: # We want to set flags related to particular matrix dimensions. To do this # we need to create default values first, and then against particular matrix From 345827df713fa62237c477a42f7f5ffd3f1b3088 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 2 Oct 2024 16:29:09 +0100 Subject: [PATCH 4/5] Set LLVM_HOST_TRIPLE for x86 --- .github/workflows/create_llvm.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index 3befdeda1..1d27e7004 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -52,6 +52,7 @@ jobs: -DLLVM_HOST_TRIPLE=aarch64-unknown-linux-gnu arch: aarch64 - arch_flags: -DLLVM_BUILD_32_BITS=ON -DLIBXML2_LIBRARIES=IGNORE -DLLVM_ENABLE_TERMINFO=OFF + -DLLVM_HOST_TRIPLE=i686-unknown-linux-gnu arch: x86 - build_type: Release build_type_flags: -DCMAKE_BUILD_TYPE=Release From 906e7e798d7d82ecc6bc8eeb05f1dd9153f7f647 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 3 Oct 2024 11:21:34 +0100 Subject: [PATCH 5/5] Add windows to llvm version comment --- .github/workflows/create_llvm.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index 1d27e7004..0fa21e6aa 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -20,7 +20,7 @@ jobs: build_type: [Release, RelAssert] arch : [x86, x86_64, aarch64] exclude: - # Reduce the versions of llvm for aarch64 & x86 architectures, as + # Reduce the versions of llvm for aarch64 & x86 architectures and windows, as # well as any windows os variants to reduce cache usage. - arch: aarch64 version: 17