|
Packit Service |
e08953 |
name: CI
|
|
Packit Service |
e08953 |
|
|
Packit Service |
e08953 |
on: [push, pull_request]
|
|
Packit Service |
e08953 |
|
|
Packit Service |
e08953 |
jobs:
|
|
Packit Service |
e08953 |
build-cross-qemu:
|
|
Packit Service |
e08953 |
runs-on: ubuntu-latest
|
|
Packit Service |
e08953 |
name: build-cross-qemu-${{ matrix.config.target }}
|
|
Packit Service |
e08953 |
|
|
Packit Service |
e08953 |
strategy:
|
|
Packit Service |
e08953 |
fail-fast: false
|
|
Packit Service |
e08953 |
matrix:
|
|
Packit Service |
e08953 |
config:
|
|
Packit Service |
e08953 |
- {target: arm, toolchain: gcc-arm-linux-gnueabi, cc: arm-linux-gnueabi-gcc, qemu: qemu-arm-static }
|
|
Packit Service |
e08953 |
- {target: armhf, toolchain: gcc-arm-linux-gnueabihf, cc: arm-linux-gnueabihf-gcc, qemu: qemu-arm-static }
|
|
Packit Service |
e08953 |
- {target: aarch64, toolchain: gcc-aarch64-linux-gnu, cc: aarch64-linux-gnu-gcc, qemu: qemu-aarch64-static }
|
|
Packit Service |
e08953 |
- {target: riscv64, toolchain: gcc-riscv64-linux-gnu, cc: riscv64-linux-gnu-gcc, qemu: qemu-riscv64-static }
|
|
Packit Service |
e08953 |
- {target: ppc, toolchain: gcc-powerpc-linux-gnu, cc: powerpc-linux-gnu-gcc, qemu: qemu-ppc-static }
|
|
Packit Service |
e08953 |
- {target: ppc64, toolchain: gcc-powerpc64-linux-gnu, cc: powerpc64-linux-gnu-gcc, qemu: qemu-ppc64-static }
|
|
Packit Service |
e08953 |
- {target: ppc64le, toolchain: gcc-powerpc64le-linux-gnu, cc: powerpc64le-linux-gnu-gcc, qemu: qemu-ppc64le-static }
|
|
Packit Service |
e08953 |
- {target: s390x, toolchain: gcc-s390x-linux-gnu, cc: s390x-linux-gnu-gcc, qemu: qemu-s390x-static }
|
|
Packit Service |
e08953 |
- {target: mips, toolchain: gcc-mips-linux-gnu, cc: mips-linux-gnu-gcc, qemu: qemu-mips-static }
|
|
Packit Service |
e08953 |
- {target: mips64, toolchain: gcc-mips64-linux-gnuabi64, cc: mips64-linux-gnuabi64-gcc, qemu: qemu-mips64-static }
|
|
Packit Service |
e08953 |
- {target: mipsel, toolchain: gcc-mipsel-linux-gnu, cc: mipsel-linux-gnu-gcc, qemu: qemu-mipsel-static }
|
|
Packit Service |
e08953 |
- {target: mips64el,toolchain: gcc-mips64el-linux-gnuabi64, cc: mips64el-linux-gnuabi64-gcc,qemu: qemu-mips64el-static }
|
|
Packit Service |
e08953 |
- {target: alpha, toolchain: gcc-alpha-linux-gnu, cc: alpha-linux-gnu-gcc, qemu: qemu-alpha-static }
|
|
Packit Service |
e08953 |
- {target: arm (u64 slots), toolchain: gcc-arm-linux-gnueabi, cc: arm-linux-gnueabi-gcc, qemu: qemu-arm-static}
|
|
Packit Service |
e08953 |
- {target: aarch64 (u64 slots), toolchain: gcc-aarch64-linux-gnu, cc: aarch64-linux-gnu-gcc, qemu: qemu-aarch64-static}
|
|
Packit Service |
e08953 |
- {target: ppc (u64 slots), toolchain: gcc-powerpc-linux-gnu, cc: powerpc-linux-gnu-gcc, qemu: qemu-ppc-static}
|
|
Packit Service |
e08953 |
- {target: ppc64 (u64 slots), toolchain: gcc-powerpc64-linux-gnu, cc: powerpc64-linux-gnu-gcc, qemu: qemu-ppc64-static}
|
|
Packit Service |
e08953 |
|
|
Packit Service |
e08953 |
steps:
|
|
Packit Service |
e08953 |
- uses: actions/checkout@v2
|
|
Packit Service |
e08953 |
- name: Install QEMU
|
|
Packit Service |
e08953 |
# this ensure install latest qemu on ubuntu, apt get version is old
|
|
Packit Service |
e08953 |
env:
|
|
Packit Service |
e08953 |
QEMU_SRC: "http://archive.ubuntu.com/ubuntu/pool/universe/q/qemu"
|
|
Packit Service |
e08953 |
QEMU_VER: "qemu-user-static_4\\.2-.*_amd64.deb$"
|
|
Packit Service |
e08953 |
run: |
|
|
Packit Service |
e08953 |
DEB=`curl -s $QEMU_SRC/ | grep -o -E 'href="([^"#]+)"' | cut -d'"' -f2 | grep $QEMU_VER`
|
|
Packit Service |
e08953 |
wget $QEMU_SRC/$DEB
|
|
Packit Service |
e08953 |
sudo dpkg -i $DEB
|
|
Packit Service |
e08953 |
- name: Install ${{ matrix.config.toolchain }}
|
|
Packit Service |
e08953 |
run: |
|
|
Packit Service |
e08953 |
sudo apt install ${{ matrix.config.toolchain }} -y
|
|
Packit Service |
e08953 |
- name: Build
|
|
Packit Service |
e08953 |
run: |
|
|
Packit Service |
e08953 |
mkdir build
|
|
Packit Service |
e08953 |
cd build && cmake .. -DBUILD_TESTING=ON -DQEMU=ON -DCMAKE_C_COMPILER=${{ matrix.config.cc }}
|
|
Packit Service |
e08953 |
cmake --build .
|
|
Packit Service |
e08953 |
ls -lh
|
|
Packit Service |
e08953 |
- name: Test
|
|
Packit Service |
e08953 |
run: |
|
|
Packit Service |
e08953 |
${{ matrix.config.qemu }} build/uv_run_tests_a
|