Skip to content

Commit

Permalink
Github CI Testing
Browse files Browse the repository at this point in the history
  • Loading branch information
thommey committed Jun 16, 2024
1 parent d58f563 commit 6d1e524
Show file tree
Hide file tree
Showing 7 changed files with 178 additions and 65 deletions.
40 changes: 40 additions & 0 deletions .github/workflows/autotools.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Autotools check

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

jobs:
default-build:
name: Check if autotools need to be run
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get install build-essential autoconf
- name: Stage configure with revision removed
run: |
for i in `find . -name configure`; do sed -i 's/From configure.ac .*//' $i; git add $i; done
- name: Run autotools
run: misc/runautotools
- name: Remove configure revision again
run: |
for i in `find . -name configure`; do sed -i 's/From configure.ac .*//' $i; done
- name: Check diff
env:
GH_TOKEN: ${{ github.token }}
run: |
git diff | tee .gitdiff
if [ "${{ github.event_name }}" = "pull_request" ]; then
if [ -s .gitdiff ]; then
gh pr edit "${{ github.event.number }}" --add-label "misc/runautotools"
else
gh pr edit "${{ github.event.number }}" --remove-label "misc/runautotools"
fi
else
if [ -s .gitdiff ]; then
exit 1
fi
fi
23 changes: 0 additions & 23 deletions .github/workflows/ccpp.yml

This file was deleted.

41 changes: 0 additions & 41 deletions .github/workflows/configure_flags.yml

This file was deleted.

96 changes: 96 additions & 0 deletions .github/workflows/dependencies.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: Tcl/SSL Versions

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

jobs:
tcl-versions:
name: Tcl Versions
strategy:
matrix:
tcl_version: [ '8.5.19', '8.6.14', '8.7a5', '9.0b2' ]
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get install openssl libssl-dev
- name: Build Tcl
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: Build
run: ./configure --with-tcl=$HOME/tcl/lib && LD_LIBRARY_PATH=$HOME/tcl/lib make config eggdrop
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 install tcl tcl-dev
- name: Build OpenSSL
run: |
wget https://www.openssl.org/source/old/1.0.2/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: Build
run: cd $GITHUB_WORKSPACE/eggdrop && ./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib && LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
ssl-version-11:
name: OpenSSL 1.1
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
repository: openssl/openssl
ref: 'OpenSSL_1_1_1w'
path: 'openssl'
- name: Build OpenSSL
run: |
cd $GITHUB_WORKSPACE/openssl && ./config --prefix=$HOME/ssl && make -j4 && make install_sw
- name: install dependencies
run: sudo apt-get install tcl tcl-dev
- uses: actions/checkout@v4
with:
path: 'eggdrop'
- name: Build
run: cd $GITHUB_WORKSPACE/eggdrop && ./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib && LD_LIBRARY_PATH=$HOME/ssl/lib make config eggdrop
ssl-versions-3x:
name: OpenSSL 3.x
strategy:
matrix:
ssl_version: [ '3.0', '3.1', '3.2', '3.3' ]
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/checkout@v4
with:
repository: openssl/openssl
ref: ${{ steps.openssl.outputs.tag }}
path: 'openssl'
- name: Build OpenSSL
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 install tcl tcl-dev
- name: Build
run: cd $GITHUB_WORKSPACE/eggdrop && ./configure --with-sslinc=$HOME/ssl/include --with-ssllib=$HOME/ssl/lib64 && LD_LIBRARY_PATH=$HOME/ssl/lib64 make config eggdrop
38 changes: 38 additions & 0 deletions .github/workflows/make.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Eggdrop Compile

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

jobs:
default-build:
name: Compile Test
strategy:
matrix:
cc: [ 'gcc', 'clang' ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install dependencies
run: sudo apt-get install clang tcl tcl-dev openssl libssl-dev
- name: Build
env:
CC: ${{ matrix.cc }}
run: ./configure && make config && make -j4 && make install
feature-test:
name: Features
continue-on-error: true
strategy:
matrix:
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 install tcl tcl-dev openssl libssl-dev
- name: Build
run: ./configure ${{ matrix.conf_tls }} ${{ matrix.conf_ipv6 }} ${{ matrix.conf_tdns }} && make config && make -j4
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ dnl configure.ac: this file is processed by autoconf to produce ./configure.

AC_PREREQ([2.71])
AC_INIT([Eggdrop],[1.9.5],[[email protected]],[eggdrop],[https://www.eggheads.org])
AC_COPYRIGHT([Copyright (C) 1999 - 2024 Eggheads Development Team])
AC_COPYRIGHT([Copyright (C) 1999 - 2025 Eggheads Development Team])
AC_LANG([C])
AC_REVISION([m4_esyscmd([misc/getcommit])])
AC_CONFIG_SRCDIR(src/eggdrop.h)
Expand Down
3 changes: 3 additions & 0 deletions src/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ srcdir = @srcdir@
VPATH = @srcdir@

@SET_MAKE@
EGGEXEC = @EGGEXEC@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
Expand All @@ -18,6 +19,8 @@ CFLAGS = @CFLAGS@ -I.. -I$(top_srcdir) @SSL_INCLUDES@ @DEFS@ $(CFLGS)
CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@

XLIBS = @SSL_LIBS@ @TCL_LIB_SPEC@ @LIBS@

eggdrop_objs = bg.o botcmd.o botmsg.o botnet.o chanprog.o cmds.o dcc.o \
dccutil.o dns.o flags.o language.o match.o main.o mem.o misc.o misc_file.o \
modules.o net.o rfc1459.o tcl.o tcldcc.o tclhash.o tclmisc.o tcluser.o \
Expand Down

0 comments on commit 6d1e524

Please sign in to comment.