From 7b329c77b52be5cbec3aba4e32037d927882c7ef Mon Sep 17 00:00:00 2001 From: Bruno Verachten Date: Fri, 20 Mar 2026 13:52:16 +0100 Subject: [PATCH] ci: add riscv64 native build workflow Add a non-blocking CI job that builds Mosquitto on native riscv64 hardware using RISE Project runners (ubuntu-24.04-riscv). Build validated: Mosquitto 2.1.2 compiles in ~1m38s with all binaries (mosquitto, mosquitto_pub, mosquitto_sub) working correctly. Closes #3545 Signed-off-by: Bruno Verachten --- .github/workflows/alt-arch-riscv64.yml | 45 ++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/alt-arch-riscv64.yml diff --git a/.github/workflows/alt-arch-riscv64.yml b/.github/workflows/alt-arch-riscv64.yml new file mode 100644 index 0000000000..f74e4ea41e --- /dev/null +++ b/.github/workflows/alt-arch-riscv64.yml @@ -0,0 +1,45 @@ +name: Alt Arch Riscv64 + +on: + push: + branches: + - develop + - master + pull_request: + branches: + - develop + - master + workflow_dispatch: + +jobs: + build: + name: Build Mosquitto (riscv64) + runs-on: ubuntu-24.04-riscv + continue-on-error: true + steps: + - uses: actions/checkout@v6 + + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y build-essential cmake libssl-dev libcjson-dev \ + libsqlite3-dev libargon2-dev libreadline-dev docbook-xsl xsltproc \ + pkg-config + + - name: Configure + run: | + mkdir build + cd build + cmake .. -DCMAKE_BUILD_TYPE=Release -DWITH_TESTS=OFF + + - name: Build + run: | + cd build + time make -j$(nproc) + + - name: Verify + run: | + ./build/src/mosquitto --version + ./build/client/mosquitto_pub --help 2>&1 | head -3 + ./build/client/mosquitto_sub --help 2>&1 | head -3 + file ./build/src/mosquitto