Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .github/problem-matchers/gcc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"problemMatcher": [
{
"owner": "gcc-problem-matcher",
"pattern": [
{
"regexp": "^(.*?):(\\d+):(\\d*):?\\s+(?:fatal\\s+)?(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
]
}
]
}

277 changes: 141 additions & 136 deletions .github/workflows/dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,171 +2,176 @@ name: Tcl/SSL Versions

on:
pull_request:
branches: [ develop ]
branches: [develop]
push:
branches: [ develop ]
branches: [develop]

jobs:
tcl-versions:
name: Tcl Versions
strategy:
matrix:
tcl_version: [ '8.5.19', '8.6.14', '8.7a5', '9.0.1' ]
tcl_version: ["8.5.19", "8.6.14", "8.7a5", "9.0.1"]
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get update && sudo apt-get install openssl libssl-dev
- uses: actions/cache@v4
id: tcl-cache
with:
path: ~/tcl
key: ${{ runner.os }}-tcl-${{ matrix.tcl_version }}
- name: Build Tcl
if: steps.tcl-cache.outputs.cache-hit != 'true'
run: |
wget http://prdownloads.sourceforge.net/tcl/tcl${{ matrix.tcl_version }}-src.tar.gz && \
tar xzf tcl${{ matrix.tcl_version }}-src.tar.gz && \
cd tcl${{ matrix.tcl_version }}/unix && \
./configure --prefix=$HOME/tcl && \
make -j4 && make install
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
./configure --with-tcl=$HOME/tcl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/tcl/lib make config eggdrop
fgrep -q "Tcl version: ${{ matrix.tcl_version }}" configure.log
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: install dependencies
run: sudo apt-get update && sudo apt-get install openssl libssl-dev
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
id: tcl-cache
with:
path: ~/tcl
key: ${{ runner.os }}-tcl-${{ matrix.tcl_version }}
- name: Build Tcl
if: steps.tcl-cache.outputs.cache-hit != 'true'
run: |
wget http://prdownloads.sourceforge.net/tcl/tcl${{ matrix.tcl_version }}-src.tar.gz && \
tar xzf tcl${{ matrix.tcl_version }}-src.tar.gz && \
cd tcl${{ matrix.tcl_version }}/unix && \
./configure --prefix=$HOME/tcl && \
make -j4 && make install
- name: GCC Problem Matcher
run: echo "::add-matcher::.github/problem-matchers/gcc.json"
- name: Build
run: |
./configure --with-tcl=$HOME/tcl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/tcl/lib make config eggdrop
fgrep -q "Tcl version: ${{ matrix.tcl_version }}" configure.log
ssl-version-098:
name: OpenSSL 0.9.8
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: 'eggdrop'
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/cache@v4
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-0.9.8zh
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
wget https://www.openssl.org/source/old/0.9.x/openssl-0.9.8zh.tar.gz && \
sha256sum --status --check <(echo f1d9f3ed1b85a82ecf80d0e2d389e1fda3fca9a4dba0bf07adbf231e1a5e2fd6 openssl-0.9.8zh.tar.gz) && \
tar xzf openssl-0.9.8zh.tar.gz && \
cd openssl-0.9.8zh && ./config --prefix=$HOME/ssl -fPIC && make -j4 && make install_sw
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: "eggdrop"
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-0.9.8zh
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
wget https://www.openssl.org/source/old/0.9.x/openssl-0.9.8zh.tar.gz && \
sha256sum --status --check <(echo f1d9f3ed1b85a82ecf80d0e2d389e1fda3fca9a4dba0bf07adbf231e1a5e2fd6 openssl-0.9.8zh.tar.gz) && \
tar xzf openssl-0.9.8zh.tar.gz && \
cd openssl-0.9.8zh && ./config --prefix=$HOME/ssl -fPIC && make -j4 && make install_sw
- name: GCC Problem Matcher
run: echo "::add-matcher::eggdrop/.github/problem-matchers/gcc.json"
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
ssl-version-10:
name: OpenSSL 1.0
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
path: 'eggdrop'
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/cache@v4
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-1.0.2u
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz && \
sha256sum --status --check <(echo ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16 openssl-1.0.2u.tar.gz) && \
tar xzf openssl-1.0.2u.tar.gz && \
cd openssl-1.0.2u && ./config --prefix=$HOME/ssl -fPIC && make -j4 && make install_sw
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: "eggdrop"
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-1.0.2u
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz && \
sha256sum --status --check <(echo ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16 openssl-1.0.2u.tar.gz) && \
tar xzf openssl-1.0.2u.tar.gz && \
cd openssl-1.0.2u && ./config --prefix=$HOME/ssl -fPIC && make -j4 && make install_sw
- name: GCC Problem Matcher
run: echo "::add-matcher::eggdrop/.github/problem-matchers/gcc.json"
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
ssl-version-11:
name: OpenSSL 1.1
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/cache@v4
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-1.1.1w
- uses: actions/checkout@v4
if: steps.ssl-cache.outputs.cache-hit != 'true'
with:
repository: openssl/openssl
ref: 'OpenSSL_1_1_1w'
path: 'openssl'
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
cd $GITHUB_WORKSPACE/openssl && ./config --prefix=$HOME/ssl && make -j4 && make install_sw
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/checkout@v4
with:
path: 'eggdrop'
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-1.1.1w
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
if: steps.ssl-cache.outputs.cache-hit != 'true'
with:
repository: openssl/openssl
ref: "OpenSSL_1_1_1w"
path: "openssl"
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
cd $GITHUB_WORKSPACE/openssl && ./config --prefix=$HOME/ssl && make -j4 && make install_sw
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: "eggdrop"
- name: GCC Problem Matcher
run: echo "::add-matcher::eggdrop/.github/problem-matchers/gcc.json"
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
ssl-versions-3x:
name: OpenSSL 3.x
strategy:
matrix:
ssl_version: [ '3.0', '3.1', '3.2', '3.3', '3.4', '3.5' ]
ssl_version: ["3.0", "3.1", "3.2", "3.3", "3.4", "3.5"]
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: oprypin/find-latest-tag@v1
with:
repository: openssl/openssl
releases-only: true
prefix: 'openssl-'
regex: "${{ matrix.ssl_version }}.[0-9]+"
sort-tags: true
id: openssl
- uses: actions/cache@v4
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-${{ steps.openssl.outputs.tag }}
- uses: actions/checkout@v4
if: steps.ssl-cache.outputs.cache-hit != 'true'
with:
repository: openssl/openssl
ref: ${{ steps.openssl.outputs.tag }}
path: 'openssl'
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
cd $GITHUB_WORKSPACE/openssl && ./config --prefix=$HOME/ssl && make -j4 && make install_sw
- uses: actions/checkout@v4
with:
path: 'eggdrop'
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib64 | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib64 make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
- uses: oprypin/find-latest-tag@dd2729fe78b0bb55523ae2b2a310c6773a652bd1 # v1.1.2
with:
repository: openssl/openssl
releases-only: true
prefix: "openssl-"
regex: "${{ matrix.ssl_version }}.[0-9]+"
sort-tags: true
id: openssl
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
id: ssl-cache
with:
path: ~/ssl
key: ${{ runner.os }}-ssl-${{ steps.openssl.outputs.tag }}
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
if: steps.ssl-cache.outputs.cache-hit != 'true'
with:
repository: openssl/openssl
ref: ${{ steps.openssl.outputs.tag }}
path: "openssl"
- name: Build OpenSSL
if: steps.ssl-cache.outputs.cache-hit != 'true'
run: |
cd $GITHUB_WORKSPACE/openssl && ./config --prefix=$HOME/ssl && make -j4 && make install_sw
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
path: "eggdrop"
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev
- name: GCC Problem Matcher
run: echo "::add-matcher::eggdrop/.github/problem-matchers/gcc.json"
- name: Build
run: |
cd $GITHUB_WORKSPACE/eggdrop
./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib64 | tee configure.log
LD_LIBRARY_PATH=$HOME/ssl/lib64 make config eggdrop
fgrep -q "SSL/TLS Support: yes" configure.log
44 changes: 23 additions & 21 deletions .github/workflows/make.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,41 +2,43 @@ name: Eggdrop Compile

on:
pull_request:
branches: [ develop ]
branches: [develop]
push:
branches: [ develop ]
branches: [develop]

jobs:
default-build:
name: Compile Test
strategy:
matrix:
cc: [ 'gcc', 'clang' ]
cc: ["gcc", "clang"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get update && sudo apt-get install clang tcl tcl-dev openssl libssl-dev
- uses: ammaraskar/gcc-problem-matcher@master
if: ${{ matrix.cc == 'gcc' }}
- name: Build
env:
CC: ${{ matrix.cc }}
run: ./configure && make config && make -j4 && make install
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: install dependencies
run: sudo apt-get update && sudo apt-get install clang tcl tcl-dev openssl libssl-dev
- name: GCC Problem Matcher
if: ${{ matrix.cc == 'gcc' }}
run: echo "::add-matcher::.github/problem-matchers/gcc.json"
- name: Build
env:
CC: ${{ matrix.cc }}
run: ./configure && make config && make -j4 && make install
feature-test:
name: Features
continue-on-error: true
needs: default-build
strategy:
matrix:
conf_tls: [ '', '--disable-tls' ]
conf_ipv6: [ '', '--disable-ipv6' ]
conf_tdns: [ '', '--disable-tdns' ]
conf_tls: ["", "--disable-tls"]
conf_ipv6: ["", "--disable-ipv6"]
conf_tdns: ["", "--disable-tdns"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev openssl libssl-dev
- uses: ammaraskar/gcc-problem-matcher@master
- name: Build
run: ./configure ${{ matrix.conf_tls }} ${{ matrix.conf_ipv6 }} ${{ matrix.conf_tdns }} && make config && make -j4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: install dependencies
run: sudo apt-get update && sudo apt-get install tcl tcl-dev openssl libssl-dev
- name: GCC Problem Matcher
run: echo "::add-matcher::.github/problem-matchers/gcc.json"
- name: Build
run: ./configure ${{ matrix.conf_tls }} ${{ matrix.conf_ipv6 }} ${{ matrix.conf_tdns }} && make config && make -j4
Loading
Loading