summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas2025-10-12 15:39:37 +0000
committerÁlvaro Fernández Rojas2025-10-12 20:09:00 +0000
commitfa6a52b0371356aeebd0b0c50dbb4ae77ee24bd0 (patch)
tree0ab502d59240ff926b6e2ff7d3bf9e965f8bfbe2
parentfeca1d341d4baa9579ec62762672aa0f20edf564 (diff)
downloadlibnl-tiny-fa6a52b0371356aeebd0b0c50dbb4ae77ee24bd0.tar.gz
github: add CI build
Add Github CI supporting different architectures. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
-rw-r--r--.github/workflows/ci.yml48
1 files changed, 48 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..dd53af8
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,48 @@
+name: libnl-tiny
+
+on:
+ pull_request:
+ push:
+
+jobs:
+ build:
+ name: Build ${{ matrix.arch }}
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - arch: aarch64
+ gcc: /usr/bin/aarch64-linux-gnu-gcc
+ packages: gcc-aarch64-linux-gnu
+ - arch: arm
+ gcc: /usr/bin/arm-linux-gnueabi-gcc
+ packages: gcc-arm-linux-gnueabi
+ - arch: mips
+ gcc: /usr/bin/mips-linux-gnu-gcc
+ packages: gcc-mips-linux-gnu
+ - arch: x86_64
+ gcc: /usr/bin/x86_64-linux-gnu-gcc
+ packages: gcc-x86-64-linux-gnu
+
+ steps:
+ - name: Checkout libnl-tiny
+ uses: actions/checkout@v5
+
+ - name: Install dependencies
+ run: |
+ sudo apt install ${{ matrix.packages }}
+
+ - name: Prepare build
+ run: |
+ mkdir -p ${GITHUB_WORKSPACE}/build
+
+ - name: Build libnl-tiny
+ run: |
+ cmake \
+ -DCMAKE_SYSTEM_PROCESSOR=${{ matrix.arch }} \
+ -DCMAKE_C_COMPILER=${{ matrix.gcc }} \
+ -DCMAKE_PREFIX_PATH=${GITHUB_WORKSPACE}/build \
+ --install-prefix ${GITHUB_WORKSPACE}/build
+ make
+ make install