Skip to content

Commit

Permalink
CI: move over to OpenSSL 3; use apt to install deps on Linux
Browse files Browse the repository at this point in the history
  • Loading branch information
KitsuneRal committed Oct 23, 2023
1 parent a313422 commit a59db08
Showing 1 changed file with 21 additions and 23 deletions.
44 changes: 21 additions & 23 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,34 +56,33 @@ jobs:
with:
fetch-depth: 0

- name: Install Qt
# Install on Linux via apt to get everything necessary in one go
- name: Install dependencies (Linux)
if: startsWith(matrix.os, 'ubuntu')
run: |
COMMON_PKGS="libolm-dev ninja-build valgrind gnome-keyring"
sudo apt-get -qq update
sudo apt-get -qq install $COMMON_PKGS \
${{ startsWith(matrix.qt-version, '5')
&& 'qtmultimedia5-dev qttools5-dev qt5keychain-dev'
|| 'qt6-base-dev libgl1-mesa-dev qt6-l10n-tools qt6-tools-dev qt6-tools-dev-tools qtkeychain-qt6-dev'
}}
gnome-keyring-daemon -d --unlock <<<'' # Create a login keyring with no password
- name: Install dependencies (non-Linux)
if: "!startsWith(matrix.os, 'ubuntu')"
uses: jurplel/[email protected]
with:
version: '${{ matrix.qt-version }}.*'
cache: true
cache-key-prefix: Qt
tools: "tools_ninja${{ !startsWith(matrix.os, 'macos') && ' tools_openssl_x64' || '' }}"

- name: Install other dependencies (Linux)
if: startsWith(matrix.os, 'ubuntu')
run: |
sudo apt-get -qq install valgrind gnome-keyring
gnome-keyring-daemon -d --unlock <<<'' # Create a login keyring with no password
- name: Install other dependencies (macOS)
if: startsWith(matrix.os, 'macos') && matrix.e2ee
run: brew install openssl
tools: "tools_ninja${{ startsWith(matrix.os, 'windows') && ' tools_opensslv3_x64' || '' }}"

- name: Setup build environment
run: |
if [ '${{ matrix.override-compiler }}' == 'GCC' ]; then
echo "CC=gcc" >>$GITHUB_ENV
echo "CXX=g++" >>$GITHUB_ENV
if [ '${{ startsWith(matrix.qt-version, '5') }}' == 'true' ]; then
# Patch Qt to avoid GCC tumbling over QTBUG-90568/QTBUG-91909
sed -i 's/ThreadEngineStarter<void>(ThreadEngine<void> \*_threadEngine)/ThreadEngineStarter(ThreadEngine<void> \*_threadEngine)/' \
$Qt5_DIR/include/QtConcurrent/qtconcurrentthreadengine.h
fi
echo "VALGRIND=valgrind --tool=memcheck --leak-check=yes --gen-suppressions=all --suppressions=$GITHUB_WORKSPACE/quotest/.valgrind.supp" >>$GITHUB_ENV
elif [[ '${{ runner.os }}' != 'Windows' ]]; then
echo "CC=clang" >>$GITHUB_ENV
Expand All @@ -103,7 +102,7 @@ jobs:
fi
CMAKE_ARGS="-G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_MAKE_PROGRAM=$IQTA_TOOLS/Ninja/ninja \
${{ runner.os != 'Linux' && '-DCMAKE_MAKE_PROGRAM=$IQTA_TOOLS/Ninja/ninja' || '' }} \
-DBUILD_SHARED_LIBS=${{ runner.os == 'Linux' }} \
-DCMAKE_INSTALL_PREFIX=~/.local \
-DCMAKE_PREFIX_PATH=~/.local \
Expand All @@ -112,11 +111,10 @@ jobs:
if [ -n '${{ matrix.e2ee }}' ]; then
QUOTEST_ORIGIN="$QUOTEST_ORIGIN/E2EE"
if [ '${{ startsWith(runner.os, 'mac') }}' == 'true' ]; then
CMAKE_ARGS="$CMAKE_ARGS -DOPENSSL_ROOT_DIR=`brew --prefix [email protected]`"
else
CMAKE_ARGS="$CMAKE_ARGS -DOPENSSL_ROOT_DIR=$IQTA_TOOLS/OpenSSL/*/"
fi
CMAKE_ARGS="$CMAKE_ARGS \
${{ runner.os == 'macOS' && '-DOPENSSL_ROOT_DIR=`brew --prefix openssl`' ||
runner.os == 'Windows' && '-DOPENSSL_ROOT_DIR=$IQTA_TOOLS/OpenSSLv3/Win_x64/' || '' }} \
"
fi
if [ '${{ matrix.static-analysis }}' == 'sonar' ]; then
Expand Down

0 comments on commit a59db08

Please sign in to comment.