From 71aba26edb2c3951c5c9f9fcb2ae3bb40ac291c6 Mon Sep 17 00:00:00 2001 From: Kenjiro Nakayama Date: Sat, 8 Aug 2026 16:01:21 +0900 Subject: Install CI dependencies in workflows Move APT package installation from scripts/test to the CI workflows. Build the Linux package list based on the target architecture so that CMake, Ninja, QEMU, and the required cross-compilers are installed together. This makes the packages required by each target explicit and avoids repeated apt-get operations within each CI job. --- .github/workflows/android.yml | 5 +++++ .github/workflows/linux.yml | 25 +++++++++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) (limited to '.github') diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 5e5cf66..a2faa94 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -27,6 +27,11 @@ jobs: - name: "Checkout repository" uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + - name: "Install build dependencies" + run: | + sudo apt-get update + sudo apt-get install -y cmake ninja-build + - name: "Run CI script" run: ./scripts/test env: diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 197e894..ad13ed8 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -48,8 +48,29 @@ jobs: - name: "Install test dependencies" run: | + packages=(cmake ninja-build libio-socket-ssl-perl) + case "${{ matrix.arch }}" in + mingw32|mingw64) + packages+=(mingw-w64) + ;; + arm32) + packages+=(qemu-user-static binfmt-support g++-arm-linux-gnueabihf) + ;; + arm64) + packages+=(qemu-user-static binfmt-support g++-aarch64-linux-gnu) + ;; + loong64) + packages+=(qemu-user-static binfmt-support g++-14-loongarch64-linux-gnu) + ;; + mips32) + packages+=(qemu-user-static binfmt-support g++-mips-linux-gnu) + ;; + mips64) + packages+=(qemu-user-static binfmt-support g++-mips64el-linux-gnuabi64) + ;; + esac sudo apt-get update - sudo apt-get install -y libio-socket-ssl-perl + sudo apt-get install -y "${packages[@]}" perl -MIO::Socket::SSL::Utils -e 1 - name: "Run tests" @@ -77,7 +98,7 @@ jobs: - name: "Install test dependencies" run: | sudo apt-get update - sudo apt-get install -y libio-socket-ssl-perl + sudo apt-get install -y cmake ninja-build libio-socket-ssl-perl perl -MIO::Socket::SSL::Utils -e 1 - name: "Run tests" -- cgit v1.2.3-55-g6feb