|
31 | 31 | os: ubuntu-24.04-arm |
32 | 32 | multiarch: armhf |
33 | 33 | gcc_cross: arm-linux-gnueabihf |
| 34 | + - host_target: s390x-unknown-linux-gnu |
| 35 | + os: ubuntu-latest |
| 36 | + multiarch: s390x |
| 37 | + gcc_cross: s390x-linux-gnu |
| 38 | + qemu: true |
34 | 39 | - host_target: aarch64-apple-darwin |
35 | 40 | os: macos-latest |
36 | 41 | - host_target: i686-pc-windows-msvc |
|
40 | 45 | HOST_TARGET: ${{ matrix.host_target }} |
41 | 46 | steps: |
42 | 47 | - uses: actions/checkout@v4 |
43 | | - - name: multiarch setup |
| 48 | + - name: install qemu |
| 49 | + if: ${{ matrix.qemu }} |
| 50 | + run: sudo apt install qemu-user qemu-user-binfmt |
| 51 | + - name: install multiarch |
44 | 52 | if: ${{ matrix.multiarch != '' }} |
45 | 53 | run: | |
| 54 | + # Some multiarch architectures seem to be missing from security.ubuntu.com... so try to disable that. |
| 55 | + echo "Sources before patch:" |
| 56 | + cat /etc/apt/sources.list.d/* |
| 57 | + echo |
| 58 | + sudo sed -i -E 's/(Suites:.*security$)/\1\nArchitectures:/' /etc/apt/sources.list.d/ubuntu.sources |
| 59 | + sudo bash -c "echo 'https://ports.ubuntu.com/ priority:4' >> /etc/apt/apt-mirrors.txt" |
| 60 | + echo "Sources after patch:" |
| 61 | + cat /etc/apt/sources.list.d/* |
| 62 | + echo |
| 63 | + cat /etc/apt/apt-mirrors.txt |
| 64 | + # Add architecture and install base packages. |
46 | 65 | sudo dpkg --add-architecture ${{ matrix.multiarch }} |
47 | 66 | sudo apt update |
48 | 67 | sudo apt install $(echo "libatomic1: zlib1g-dev:" | sed 's/:/:${{ matrix.multiarch }}/g') |
|
52 | 71 |
|
53 | 72 | # We set up the cross-compiler *after* the basic setup as setting CC would otherwise |
54 | 73 | # cause confusion. |
55 | | - - name: gcc-cross setup |
| 74 | + - name: install gcc-cross |
56 | 75 | if: ${{ matrix.gcc_cross != '' }} |
57 | 76 | run: | |
58 | 77 | sudo apt install gcc-${{ matrix.gcc_cross }} |
|
0 commit comments