diff --git a/.github/workflows/create_llvm.yml b/.github/workflows/create_llvm.yml index 37193522f..a5a0d478d 100644 --- a/.github/workflows/create_llvm.yml +++ b/.github/workflows/create_llvm.yml @@ -20,20 +20,26 @@ 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 + # 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 - arch: aarch64 build_type: Release + - arch: x86 + version: 17 + - arch: x86 + build_type: Release - os: windows-2019 version: 17 - os: windows-2019 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 @@ -47,6 +53,9 @@ 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 + -DLLVM_HOST_TRIPLE=i686-unknown-linux-gnu + arch: x86 - build_type: Release build_type_flags: -DCMAKE_BUILD_TYPE=Release @@ -90,10 +99,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'