summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorWilliam Marlow <william.marlow@ibm.com>2022-06-19 10:45:57 +0100
committerAzat Khuzhin <azat@libevent.org>2022-07-10 10:07:25 +0300
commita29570a1e2d1164f5286bbfe1c6a18e5e87ffc1e (patch)
treefe4936fd4cbf10c091e8fbeff6f114bc4699dfc9 /.github
parent29c420c418aeb497e5e8b7abd45dee39194ca5fc (diff)
downloadlibevent-a29570a1e2d1164f5286bbfe1c6a18e5e87ffc1e.tar.gz
Attempt to add OpenSSL 3 to the Linux build matrix
v2: fix echo messages v3: fix autotools build (wrong path to pkg config)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/linux.yml59
1 files changed, 59 insertions, 0 deletions
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
index edf04bf1..0fd8946b 100644
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -31,6 +31,7 @@ jobs:
- NONE
- NO_SSL
- DISABLE_OPENSSL
+ - OPENSSL_3
- DISABLE_THREAD_SUPPORT
- DISABLE_DEBUG_MODE
- DISABLE_MM_REPLACEMENT
@@ -59,6 +60,32 @@ jobs:
sudo apt-get update
sudo apt-get install -y libmbedtls-dev
+ if [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_3" ]; then
+ OPENSSL_VERSION=3.0.3
+ JOBS=20
+
+ echo [openssl-${OPENSSL_VERSION}]: Downloading
+ wget "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz"
+
+ echo [openssl-${OPENSSL_VERSION}]: Extracting
+ tar xzf "openssl-${OPENSSL_VERSION}.tar.gz"
+ rm "openssl-${OPENSSL_VERSION}.tar.gz"
+ mv "openssl-${OPENSSL_VERSION}" /tmp/openssl-3
+
+ echo [openssl-${OPENSSL_VERSION}]: Building
+ pushd /tmp/openssl-3
+ ./Configure --prefix=$PWD/install
+ make -j ${JOBS}
+ make install
+ cd install
+ if [ ! -d lib ]; then
+ ln -s lib64 lib
+ fi
+
+ echo [openssl-${OPENSSL_VERSION}]: Installed to $PWD
+ popd
+ fi
+
- name: Build
shell: bash
run: |
@@ -78,6 +105,8 @@ jobs:
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON"
elif [ "${{ matrix.EVENT_MATRIX }}" == "NO_SSL" ]; then
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_OPENSSL=ON -DEVENT__DISABLE_MBEDTLS=ON"
+ elif [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_3" ]; then
+ EVENT_CMAKE_OPTIONS="-DOPENSSL_ROOT_DIR=/tmp/openssl-3/install -DOPENSSL_USE_STATIC_LIBS=TRUE"
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
EVENT_CMAKE_OPTIONS="-DEVENT__DISABLE_THREAD_SUPPORT=ON"
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_DEBUG_MODE" ]; then
@@ -155,6 +184,7 @@ jobs:
- NONE
- NO_SSL
- DISABLE_OPENSSL
+ - OPENSSL_3
- DISABLE_THREAD_SUPPORT
- DISABLE_DEBUG_MODE
- DISABLE_MM_REPLACEMENT
@@ -178,6 +208,32 @@ jobs:
sudo apt-get update
sudo apt-get install -y libmbedtls-dev
+ if [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_3" ]; then
+ OPENSSL_VERSION=3.0.3
+ JOBS=20
+
+ echo [openssl-${OPENSSL_VERSION}]: Downloading
+ wget "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz"
+
+ echo [openssl-${OPENSSL_VERSION}]: Extracting
+ tar xzf "openssl-${OPENSSL_VERSION}.tar.gz"
+ rm "openssl-${OPENSSL_VERSION}.tar.gz"
+ mv "openssl-${OPENSSL_VERSION}" /tmp/openssl-3
+
+ echo [openssl-${OPENSSL_VERSION}]: Building
+ pushd /tmp/openssl-3
+ ./Configure --prefix=$PWD/install
+ make -j ${JOBS}
+ make install
+ cd install
+ if [ ! -d lib ]; then
+ ln -s lib64 lib
+ fi
+
+ echo [openssl-${OPENSSL_VERSION}]: Installed to $PWD
+ popd
+ fi
+
- name: Build
shell: bash
run: |
@@ -187,6 +243,9 @@ jobs:
elif [ "${{ matrix.EVENT_MATRIX }}" == "NO_SSL" ]; then
EVENT_CONFIGURE_OPTIONS="--disable-openssl --disable-mbedtls"
+ elif [ "${{ matrix.EVENT_MATRIX }}" == "OPENSSL_3" ]; then
+ export PKG_CONFIG_PATH=/tmp/openssl-3/install/lib/pkgconfig
+
elif [ "${{ matrix.EVENT_MATRIX }}" == "DISABLE_THREAD_SUPPORT" ]; then
EVENT_CONFIGURE_OPTIONS="--disable-thread-support"