Update version numbers for 1.12 development #195
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: Win64-CI | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
jobs: | |
build: | |
runs-on: windows-2019 | |
name: "Windows-x64-Qt${{ matrix.cfg.qt_version }}" | |
strategy: | |
matrix: | |
cfg: | |
- kf_version: "5.115" | |
kf_fullver: "5.115.0" | |
qt_version: "5.15.2" | |
cmake_generator: "Visual Studio 16 2019" | |
kf_cmake_args: "" | |
build_installer: "$false" | |
deploy_openssl: "$true" | |
- kf_version: "6.0" | |
kf_fullver: "6.0.0" | |
qt_version: "6.5.3" | |
cmake_generator: "Visual Studio 16 2019" | |
kf_cmake_args: "-DBUILD_WITH_QT6=ON" | |
build_installer: "$true" | |
deploy_openssl: "$false" | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v3 | |
with: | |
arch: win64_msvc2019_64 | |
version: ${{ matrix.cfg.qt_version }} | |
- name: Build Qt Libs | |
run: | | |
mkdir build_deps | |
cd build_deps | |
curl -LO https://download.kde.org/stable/frameworks/${{ matrix.cfg.kf_version }}/extra-cmake-modules-${{ matrix.cfg.kf_fullver }}.tar.xz | |
curl -LO https://download.kde.org/stable/frameworks/${{ matrix.cfg.kf_version }}/syntax-highlighting-${{ matrix.cfg.kf_fullver }}.tar.xz | |
cmake -E tar xf extra-cmake-modules-${{ matrix.cfg.kf_fullver }}.tar.xz | |
cd extra-cmake-modules-${{ matrix.cfg.kf_fullver }} | |
mkdir build | |
cd build | |
cmake -G "${{ matrix.cfg.cmake_generator }}" -A x64 ` | |
"-DCMAKE_PREFIX_PATH=${Env:RUNNER_WORKSPACE}/Qt/${{ matrix.cfg.qt_version }}/msvc2019_64" ` | |
"-DCMAKE_INSTALL_PREFIX=${Env:RUNNER_WORKSPACE}/Qt/${{ matrix.cfg.qt_version }}/msvc2019_64" ` | |
-DCMAKE_BUILD_TYPE=Release ${{ matrix.cfg.kf_cmake_args }} .. | |
cmake --build . --config Release --target install | |
cd ..\.. | |
cmake -E tar xf syntax-highlighting-${{ matrix.cfg.kf_fullver }}.tar.xz | |
cd syntax-highlighting-${{ matrix.cfg.kf_fullver }} | |
mkdir build && cd build | |
cmake -G "${{ matrix.cfg.cmake_generator }}" -A x64 ` | |
"-DCMAKE_PREFIX_PATH=${Env:RUNNER_WORKSPACE}/Qt/${{ matrix.cfg.qt_version }}/msvc2019_64" ` | |
"-DCMAKE_INSTALL_PREFIX=${Env:RUNNER_WORKSPACE}/Qt/${{ matrix.cfg.qt_version }}/msvc2019_64" ` | |
-DCMAKE_BUILD_TYPE=Release ${{ matrix.cfg.kf_cmake_args }} .. | |
cmake --build . --config Release | |
cmake --build . --config Release --target install | |
- name: Build qtextpad | |
run: | | |
mkdir build | |
cd build | |
cmake -G "${{ matrix.cfg.cmake_generator }}" -A x64 ` | |
"-DCMAKE_PREFIX_PATH=${Env:RUNNER_WORKSPACE}/Qt/${{ matrix.cfg.qt_version }}/msvc2019_64" ` | |
"-DCMAKE_INSTALL_PREFIX=${Env:GITHUB_WORKSPACE}/dist/qtextpad-win64" ` | |
-DCMAKE_BUILD_TYPE=Release .. | |
cmake --build . --config Release | |
cmake --build . --config Release --target install | |
- name: Package qtextpad | |
run: | | |
$buildver = ((git describe --dirty) | Out-String).Trim() | |
$buildver += "-qt" + "${{ matrix.cfg.qt_version }}"[0] | |
$Env:VCINSTALLDIR = "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC" | |
cd "${Env:GITHUB_WORKSPACE}\dist" | |
windeployqt qtextpad-win64\qtextpad.exe --release --no-opengl-sw --no-system-d3d-compiler | |
copy -Path "${Env:GITHUB_WORKSPACE}\COPYING", ` | |
"${Env:RUNNER_WORKSPACE}\Qt\${{ matrix.cfg.qt_version }}\msvc2019_64\bin\KF*SyntaxHighlighting.dll" ` | |
-Destination qtextpad-win64 | |
cmake -E copy_directory "${Env:RUNNER_WORKSPACE}\Qt\${{ matrix.cfg.qt_version }}\msvc2019_64\bin\data" ` | |
qtextpad-win64\data | |
windeployqt qtextpad-win64\KF*SyntaxHighlighting.dll --release --no-opengl-sw --no-system-d3d-compiler | |
# OpenSSL libs are required for the online repository update in Qt5, | |
# but Qt6 can use the Windows SChannel backend instead | |
if (${{ matrix.cfg.deploy_openssl }}) { | |
copy -Path ` | |
"C:\Program Files\OpenSSL\bin\libcrypto-1_1-x64.dll", ` | |
"C:\Program Files\OpenSSL\bin\libssl-1_1-x64.dll" ` | |
-Destination qtextpad-win64 | |
} else { | |
del qtextpad-win64\tls\qopensslbackend.dll | |
} | |
cmake -E tar cf "..\qtextpad-win64-${buildver}.zip" --format=zip qtextpad-win64 | |
cd ..\win32 | |
cmake -E tar xf "..\qtextpad-win64-${buildver}.zip" | |
if (${{ matrix.cfg.build_installer }}) { | |
iscc setup.iss | |
cmake -E rename qtextpad-win64.exe "..\qtextpad-win64-${buildver}.exe" | |
} | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: QTextPad-win64-qt${{ matrix.cfg.qt_version }} | |
path: qtextpad-win64-*.* |