Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 33 additions & 27 deletions .github/workflows/pr-build-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,38 +5,44 @@ on:
branches: [master]

jobs:
build-arm:
name: Build ARM (musl static)
build:
name: Build ${{ matrix.target }} (musl static)
runs-on: ubuntu-latest
env:
ARCHIVE: toolchain.hisilicon-hi3516cv100
PLATFORM: arm-openipc-linux-musleabi_sdk-buildroot
TOOLCHAIN: arm-openipc-linux-musleabi
strategy:
fail-fast: false
matrix:
include:
- target: arm32
toolchain_url: https://github.com/OpenIPC/firmware/releases/download/toolchain/toolchain.hisilicon-hi3516cv100.tgz
toolchain_dir: arm-openipc-linux-musleabi_sdk-buildroot
cc: arm-openipc-linux-musleabi-gcc
- target: mips32
toolchain_url: https://github.com/OpenIPC/firmware/releases/download/toolchain/toolchain.ingenic-t31.tgz
toolchain_dir: mipsel-openipc-linux-musl_sdk-buildroot
cc: mipsel-openipc-linux-musl-gcc
- target: arm64
# Bootlin's prebuilt aarch64 musl cross toolchain. Switch
# to an OpenIPC-hosted tarball once one is published.
toolchain_url: https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--stable-2025.08-1.tar.xz
toolchain_dir: aarch64--musl--stable-2025.08-1
cc: aarch64-buildroot-linux-musl-gcc
steps:
- uses: actions/checkout@v4
- name: Download toolchain and build
- name: Fetch toolchain
run: |
wget -qO- https://github.com/OpenIPC/firmware/releases/download/toolchain/$ARCHIVE.tgz | \
tar xfz - -C /opt
export PATH=/opt/$PLATFORM/bin:$PATH
cmake -H. -Bbuild -DCMAKE_C_COMPILER=${TOOLCHAIN}-gcc -DCMAKE_BUILD_TYPE=Release
cmake --build build

build-mips:
name: Build MIPS (musl static)
runs-on: ubuntu-latest
env:
ARCHIVE: toolchain.ingenic-t31
PLATFORM: mipsel-openipc-linux-musl_sdk-buildroot
TOOLCHAIN: mipsel-openipc-linux-musl
steps:
- uses: actions/checkout@v4
- name: Download toolchain and build
# Download to file (with retries) before extracting — piping
# wget -> tar makes transient stream truncations look like
# corrupt archives; the wget retry only helps with discrete
# files.
wget --tries=3 --timeout=60 -O /tmp/toolchain.tar "${{ matrix.toolchain_url }}"
# `tar xf` autodetects gzip/bzip2/xz so the matrix entries
# can mix archive formats freely.
tar xf /tmp/toolchain.tar -C /opt
rm /tmp/toolchain.tar
- name: Build
run: |
wget -qO- https://github.com/OpenIPC/firmware/releases/download/toolchain/$ARCHIVE.tgz | \
tar xfz - -C /opt
export PATH=/opt/$PLATFORM/bin:$PATH
cmake -H. -Bbuild -DCMAKE_C_COMPILER=${TOOLCHAIN}-gcc -DCMAKE_BUILD_TYPE=Release
export PATH=/opt/${{ matrix.toolchain_dir }}/bin:$PATH
cmake -H. -Bbuild -DCMAKE_C_COMPILER=${{ matrix.cc }} -DCMAKE_BUILD_TYPE=Release
cmake --build build

test-extraction-pipeline:
Expand Down
140 changes: 0 additions & 140 deletions .github/workflows/release-arm32.yml

This file was deleted.

140 changes: 0 additions & 140 deletions .github/workflows/release-mips32.yml

This file was deleted.

Loading
Loading