Skip to content

Support Arm dynamic linking #1085

Support Arm dynamic linking

Support Arm dynamic linking #1085

Workflow file for this run

name: Github Actions
on: [push, pull_request]
jobs:
host-x86:
runs-on: ubuntu-24.04
strategy:
matrix:
compiler: [gcc, clang]
architecture: [arm, riscv]
link_mode: [static]
include:
- compiler: gcc
architecture: arm
link_mode: dynamic
- compiler: clang
architecture: arm
link_mode: dynamic
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Download dependencies
run: |
sudo apt-get update -q -y
sudo apt-get install -q -y graphviz jq
sudo apt-get install -q -y qemu-user
sudo apt-get install -q -y build-essential
sudo apt-get install -q -y gcc-arm-linux-gnueabihf
- name: Build artifacts
env:
CC: ${{ matrix.compiler }}
run: |
make ARCH=${{ matrix.architecture }} LINK_MODE=${{ matrix.link_mode }}
- name: IR regression tests
run: |
make check-snapshot LINK_MODE=${{ matrix.link_mode }} || exit 1
- name: Sanitizer-enabled stage 0 tests
env:
CC: ${{ matrix.compiler }}
run: |
make check-sanitizer LINK_MODE=${{ matrix.link_mode }} || exit 1
- name: Unit tests
run: |
make check LINK_MODE=${{ matrix.link_mode }} || exit 1
host-arm:
runs-on: ubuntu-24.04
strategy:
matrix:
link_mode: [static, dynamic]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Build artifacts
# The GitHub Action for non-x86 CPU
# https://github.com/uraimo/run-on-arch-action
uses: uraimo/run-on-arch-action@v3
with:
arch: armv7
distro: ubuntu24.04
githubToken: ${{ github.token }}
install: |
apt-get update -qq -y
apt-get install -yqq build-essential
run: |
make ARCH=arm LINK_MODE=${{ matrix.link_mode }}
make check-sanitizer LINK_MODE=${{ matrix.link_mode }} || exit 1
make check LINK_MODE=${{ matrix.link_mode }} || exit 1
coding-style:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Coding convention
run: |
sudo apt-get install -q -y clang-format-18
.ci/check-newline.sh
.ci/check-format.sh
shell: bash