summaryrefslogtreecommitdiff
path: root/deprecated-ngircd/.github/workflows/ci.yml
diff options
context:
space:
mode:
Diffstat (limited to 'deprecated-ngircd/.github/workflows/ci.yml')
-rw-r--r--deprecated-ngircd/.github/workflows/ci.yml81
1 files changed, 81 insertions, 0 deletions
diff --git a/deprecated-ngircd/.github/workflows/ci.yml b/deprecated-ngircd/.github/workflows/ci.yml
new file mode 100644
index 0000000..ae2c99e
--- /dev/null
+++ b/deprecated-ngircd/.github/workflows/ci.yml
@@ -0,0 +1,81 @@
+name: ngIRCd CI
+
+on:
+ push:
+ branches:
+ - master
+ paths-ignore:
+ - 'COPYING'
+ - 'ChangeLog'
+ - 'NEWS'
+ - 'contrib/**'
+ - 'doc/**'
+ - 'man/**'
+ - '**.md'
+ - '**.txt'
+ pull_request:
+ branches:
+ - master
+ paths-ignore:
+ - 'COPYING'
+ - 'ChangeLog'
+ - 'NEWS'
+ - 'contrib/**'
+ - 'doc/**'
+ - 'man/**'
+ - '**.md'
+ - '**.txt'
+
+jobs:
+ build_and_distcheck:
+ name: build+test
+ strategy:
+ matrix:
+ os:
+ - ubuntu
+ - macos
+ toolchain:
+ - gcc
+ - llvm
+ include:
+ - os: ubuntu
+ toolchain: gcc
+ install_cmd: |
+ sudo apt update
+ sudo apt install build-essential expect libident-dev libpam0g-dev libssl-dev libwrap0-dev pkg-config telnet zlib1g-dev gcc
+ configure_cmd: |
+ ./configure CC=gcc --enable-ipv6 --with-iconv --with-ident --with-openssl --with-pam --with-tcp-wrappers --with-zlib
+ - os: ubuntu
+ toolchain: llvm
+ install_cmd: |
+ sudo apt update
+ sudo apt install build-essential expect libident-dev libpam0g-dev libssl-dev libwrap0-dev pkg-config telnet zlib1g-dev clang
+ configure_cmd: |
+ ./configure CC=clang --enable-ipv6 --with-iconv --with-ident --with-openssl --with-pam --with-tcp-wrappers --with-zlib
+ - os: macos
+ toolchain: gcc
+ install_cmd: |
+ brew update
+ brew install autoconf automake expect openssl@3 pkg-config telnet zlib gcc
+ configure_cmd: |
+ ./configure CC=gcc --enable-ipv6 --with-iconv --with-openssl --with-zlib
+ - os: macos
+ toolchain: llvm
+ install_cmd: |
+ brew update
+ brew install autoconf automake expect openssl@3 pkg-config telnet zlib llvm
+ configure_cmd: |
+ ./configure CC=clang --enable-ipv6 --with-iconv --with-openssl --with-zlib
+ runs-on: ${{ matrix.os }}-latest
+ steps:
+ - uses: actions/checkout@v4
+ - name: Install dependencies
+ run: ${{ matrix.install_cmd }}
+ - name: Generate build system files
+ run: ./autogen.sh
+ - name: Configure the build system
+ run: ${{ matrix.configure_cmd }}
+ - name: Build everything
+ run: make all
+ - name: Create distribution archive and run tests
+ run: make distcheck