Work on CI Builds - fix for windows? #43
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build SocNetV (CI) 🚀 | |
# run-name: ${{ github.actor }} testing latest SocNetV build with | |
on: [push] | |
jobs: | |
build: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-22.04, ubuntu-latest, macos-latest, windows-2019] | |
qt-version: ['6.2.4', '6.4.3', '6.5.3', '6.6.3'] | |
# exclude: | |
# - os: ubuntu-latest | |
# qt-version: '6.5.3' | |
# - os: windows-2019 | |
# qt-version: '6.5.3' | |
# - os: macos-latest | |
# qt-version: '6.5.3' | |
# include: | |
# - os: ubuntu-latest | |
# qt-version: '6.6.3' | |
# - os: windows-2019 | |
# qt-version: '6.6.3' | |
# - os: macos-latest | |
# qt-version: '6.6.3' | |
# # Snapcraft | |
# - os: ubuntu-22.04 | |
# qt-version: '6.5.3' | |
runs-on: ${{ matrix.os }} | |
steps: | |
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event, by actor ${{ github.actor }}." | |
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!" | |
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner." | |
- run: echo "🖥️ The workflow is now ready to test your code on the runner." | |
- name: List files in the repository | |
run: | | |
ls ${{ github.workspace }} | |
# | |
# Install Qt | |
# | |
- if: contains( matrix.os, 'windows') | |
name: Prepare for Windows | |
run: | | |
dir | |
pip install aqtinstall | |
# aqt list-qt linux desktop | |
# aqt list-qt windows desktop | |
# aqt list-qt mac desktop | |
aqt list-qt windows desktop --arch ${{ matrix.qt-version }} | |
# aqt list-qt windows desktop --modules ${{ matrix.qt-version }} win64_mingw | |
- if: contains( matrix.os, 'ubuntu') | |
name: Install dependencies | |
run: | | |
ls | |
# pip install aqtinstall | |
# aqt list-qt linux desktop | |
# aqt list-qt linux desktop --long-modules ${{ matrix.qt-version }} win64_mingw | |
sudo apt install build-essential libssl-dev \ | |
cmake ninja-build \ | |
libssl-dev libxkbcommon-x11-dev libxcb-cursor-dev zlib1g-dev | |
- if: contains( matrix.os, 'macos') | |
name: Install for macOS | |
run: | | |
ls | |
# pip install aqtinstall | |
# aqt list-qt mac desktop | |
# aqt list-qt mac desktop --modules ${{ matrix.qt-version }} | |
# | |
# Install Qt | |
# | |
- if: contains( matrix.os, 'windows') | |
name: Make sure MSVC is found | |
uses: ilammy/msvc-dev-cmd@v1 | |
- if: contains( matrix.os, 'windows') && matrix.qt-version == '6.2.4' | |
name: Install Qt Qt 6.2.4 on Windows | |
uses: jurplel/install-qt-action@v4 | |
with: | |
aqtversion: '==2.0.0' | |
version: ${{ matrix.qt-version }} | |
#arch: win64_mingw | |
modules: qtwebsockets qtimageformats qt5compat qtcharts qtdatavis3d qtwebview qt3d | |
# cache: true | |
- if: contains( matrix.os, 'windows') && startsWith( matrix.qt-version, '6.' ) && matrix.qt-version != '6.2.4' | |
name: Install Qt 6.3+ on Windows | |
uses: jurplel/install-qt-action@v4 | |
with: | |
aqtversion: '==2.1.*' | |
version: ${{ matrix.qt-version }} | |
#arch: win64_mingw | |
modules: qtwebsockets qtimageformats qt5compat qtcharts qtdatavis3d qtwebview qt3d | |
# cache: true | |
- if: contains( matrix.os, 'ubuntu') && startsWith( matrix.qt-version, '6.' ) | |
name: Install Qt 6 on Linux | |
uses: jurplel/install-qt-action@v4 | |
with: | |
aqtversion: '==2.0.0' | |
version: ${{ matrix.qt-version }} | |
modules: qtwebsockets qtimageformats qt5compat qtcharts qtdatavis3d qtwebview qt3d | |
cache: true | |
- if: contains( matrix.os, 'macos') && startsWith( matrix.qt-version, '6.' ) | |
name: Install Qt 6 on macOS | |
uses: jurplel/install-qt-action@v4 | |
with: | |
aqtversion: '==2.0.0' | |
version: ${{ matrix.qt-version }} | |
modules: qtwebsockets qtimageformats qt5compat qtcharts qtdatavis3d qtwebview qt3d | |
cache: true | |
# | |
# Build SocNetV | |
# | |
# - if: contains( matrix.os, 'ubuntu-latest') | |
# name: Build for Linux | |
# run: | | |
# echo "openssl version:" | |
# echo `openssl version` | |
# echo "Check output of 'which qmake6':" | |
# which qmake6 | |
# echo "Check qmake6 -v:" | |
# qmake6 -v | |
# qmake6 CONFIG+=debug && make -s -j 8 | |
# echo "Building finished! " | |
# echo "Files in current directory: " | |
# find . | |
# # BUILD FOR MACOS | |
# - if: contains( matrix.os, 'macos') | |
# name: Build for macOS | |
# run: | | |
# qmake CONFIG+=debug socnetv.pro | |
# make -s -j 8 | |
# find . | |
# BUILD FOR WINDOWS | |
- if: contains( matrix.os, 'windows') && startsWith( matrix.qt-version, '6.' ) && matrix.qt-version == '6.2.4' | |
name: Build for Windows | |
run: | | |
dir D:\a\app\Qt\ | |
dir D:\a\app\Qt\6.2.4 | |
dir D:\a\app\Qt\6.2.4\mingw_64 | |
dir D:\a\app\Qt\6.2.4\mingw_64\bin | |
qmake6 CONFIG+=debug socnetv.pro -r | |
nmake | |
# dir | |
- run: echo "🍏 This job's status is ${{ job.status }}." |