diff options
| author | Mistivia <i@mistivia.com> | 2025-10-23 23:44:03 +0800 |
|---|---|---|
| committer | Mistivia <i@mistivia.com> | 2025-10-23 23:44:07 +0800 |
| commit | c8aeef18cb46a617b6397b9822263895e97e9048 (patch) | |
| tree | ebe127e7c194039f315b74a5998b05a271c57b9d /ngircd/.github/workflows | |
add ircd
Diffstat (limited to 'ngircd/.github/workflows')
| -rw-r--r-- | ngircd/.github/workflows/ci.yml | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/ngircd/.github/workflows/ci.yml b/ngircd/.github/workflows/ci.yml new file mode 100644 index 0000000..ae2c99e --- /dev/null +++ b/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 |
