|
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