Skip to content

update qt5 url

update qt5 url #66

Workflow file for this run

on:
push:
branches:
- master
- feature/*
pull_request:
name: CI
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
# All aqt options: https://ddalcino.github.io/aqt-list-server/
BUILD_TYPE: Release
jobs:
ubuntu:
if: false
runs-on: ubuntu-${{ matrix.ubuntu_version }}
name: Ubuntu-${{ matrix.ubuntu_version }}-Qt-${{ matrix.qt_version }}-shared-${{ matrix.shared }}
strategy:
fail-fast: false
matrix:
ubuntu_version: [20.04, 22.04]
qt_version: [5.12.12, 5.15.2, 6.6.2]
shared: [ON, OFF]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Qt6
if: "startsWith(matrix.qt_version, '6.')"
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
cache: 'true'
cache-key-prefix: ${{ runner.os }}-Qt-Cache-${{ matrix.qt_version }}
dir: ${{ github.workspace }}/Qt
modules: 'qt5compat'
- name: Install Qt5
if: "startsWith(matrix.qt_version, '5.')"
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
cache: 'true'
cache-key-prefix: ${{ runner.os }}-Qt-Cache-${{ matrix.qt_version }}
dir: ${{ github.workspace }}/Qt
- name: Install libraries
run: |
sudo apt-get update &&
sudo apt-get install -y --no-install-recommends \
zlib1g-dev libbz2-dev
- name: Configure CMake
run: cmake -DCMAKE_BUILD_TYPE="${{env.BUILD_TYPE}}" -DBUILD_SHARED_LIBS=${{ matrix.shared }} -DQUAZIP_ENABLE_TESTS=ON -B "${{github.workspace}}/build"
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Run tests
working-directory: ${{github.workspace}}/build
run: "ctest --verbose"
use-qt-zlib-ubuntu:
if: false
runs-on: ubuntu-22.04
name: Qt-${{ matrix.qt_version }}-tests
container: ghcr.io/cen1/qt:${{ matrix.qt_version }}
strategy:
fail-fast: false
matrix:
qt_version: [ 5.12.12, 6.4.3, 6.6.2 ]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Configure CMake
run: cmake -DCMAKE_BUILD_TYPE="${{env.BUILD_TYPE}}" -DBUILD_SHARED_LIBS=OFF -DQUAZIP_ENABLE_TESTS=ON -DQUAZIP_USE_QT_ZLIB=ON -DCMAKE_PREFIX_PATH="/usr/local/Qt-${{ matrix.qt_version }}" -B "${{github.workspace}}/build"
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Run tests
working-directory: ${{github.workspace}}/build
run: "ctest --verbose"
use-qt-zlib-windows:
if: true
runs-on: windows-latest
name: use-qt-zlib-windows-${{ matrix.qt_version }}
strategy:
fail-fast: false
matrix:
qt_version: [ 5.15.13, 6.6.2 ]
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: TheMrMilchmann/setup-msvc-dev@v3
with:
arch: x64
- name: Restore Qt cache
id: cache-qt-restore
uses: actions/cache@v4
with:
key: windows-qt-${{ matrix.qt_version }}
path: qt-everywhere-src-${{ matrix.qt_version }}
- name: Download Qt 6
if: steps.cache-qt-restore.outputs.cache-hit != 'true' && startsWith(matrix.qt_version, '6.')
shell: powershell
run: |
Invoke-WebRequest -Uri https://ftp.fau.de/qtproject/archive/qt/6.6/${{ matrix.qt_version }}/single/qt-everywhere-src-${{ matrix.qt_version }}.zip -OutFile qt-everywhere-src-${{ matrix.qt_version }}.zip;
Expand-Archive qt-everywhere-src-${{ matrix.qt_version }}.zip -DestinationPath . ;
Remove-Item qt-everywhere-src-${{ matrix.qt_version }}.zip
- name: Download Qt 5
if: steps.cache-qt-restore.outputs.cache-hit != 'true' && startsWith(matrix.qt_version, '5.')
shell: powershell
run: |
Invoke-WebRequest -Uri https://ftp.fau.de/qtproject/archive/qt/5.15/${{ matrix.qt_version }}/single/qt-everywhere-opensource-src-${{ matrix.qt_version }}.zip -OutFile qt-everywhere-src-${{ matrix.qt_version }}.zip;
Expand-Archive qt-everywhere-opensource-src-${{ matrix.qt_version }}.zip -DestinationPath . ;
Remove-Item qt-everywhere-opensource-src-${{ matrix.qt_version }}.zip
- name: Configure Qt
shell: cmd
working-directory: qt-everywhere-src-${{ matrix.qt_version }}
run: ./configure.bat -prefix="${{github.workspace}}/Qt" -qt-zlib \
-static \
-opensource \
-confirm-license \
-optimize-size \
-nomake examples \
-nomake tests \
-no-dbus \
-no-icu \
-no-fontconfig \
-no-opengl \
-no-openssl \
-no-gui \
-skip qtconnectivity \
-skip qtdatavis3d \
-skip qtdeclarative \
-skip qtdoc \
-skip qtactiveqt \
-skip qt3d \
-skip qtgraphs \
-skip qtgrpc \
-skip qtimageformats \
-skip qtlanguageserver \
-skip qtlocation \
-skip qthttpserver \
-skip qtmultimedia \
-skip qtopcua \
-skip qtpositioning \
-skip qtremoteobjects \
-skip qtscxml \
-skip qtsensors \
-skip qtserialbus \
-skip qtserialport \
-skip qtshadertools \
-skip qtspeech \
-skip qtsvg \
-skip qttools \
-skip qttranslations \
-skip qtwebchannel \
-skip qtwebengine \
-skip qtwebsockets \
-skip qtwebview \
-skip qtcharts \
-skip qtcoap \
-skip qtlottie \
-skip qtmqtt \
-skip qtnetworkauth \
-skip qtquick3d \
-skip qtquick3dphysics \
-skip qtquickeffectmaker \
-skip qtquicktimeline \
-skip qtvirtualkeyboard \
-skip qtwayland \
-skip qtcanvas3d \
-skip qtgamepad \
-skip qtpurchasing \
-skip qtscript
- name: Build Qt
shell: cmd
run: cmake --build . --config Release
- name: Cache Qt
id: cache-qt
uses: actions/cache/save@v4
with:
path: qt-everywhere-src-${{ matrix.qt_version }}
key: windows-qt-${{ matrix.qt_version }}
- name: Configure CMake
run: cmake -DCMAKE_BUILD_TYPE="${{env.BUILD_TYPE}}" -DBUILD_SHARED_LIBS=OFF -DQUAZIP_USE_QT_ZLIB=ON -B "${{github.workspace}}/build" -DCMAKE_PREFIX_PATH="${{github.workspace}}/Qt"
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Run tests
working-directory: ${{github.workspace}}/build
run: "ctest --verbose"
macos:
if: false
runs-on: macos-${{ matrix.macos_version }}
name: macos-${{ matrix.macos_version }}-Qt-${{ matrix.qt_version }}-shared-${{ matrix.shared }}
strategy:
fail-fast: false
matrix:
macos_version: [11, 12]
qt_version: [5.15.2, 6.6.2]
shared: [ON, OFF]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Qt6
if: "startsWith(matrix.qt_version, '6.')"
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
cache: 'true'
cache-key-prefix: ${{ runner.os }}-Qt-Cache-${{ matrix.qt_version }}
dir: ${{ github.workspace }}/Qt
modules: 'qt5compat'
- name: Install Qt5
if: "startsWith(matrix.qt_version, '5.')"
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
cache: 'true'
cache-key-prefix: ${{ runner.os }}-Qt-Cache-${{ matrix.qt_version }}
dir: ${{ github.workspace }}/Qt
- name: Configure CMake
run: cmake -DCMAKE_BUILD_TYPE="${{env.BUILD_TYPE}}" -DBUILD_SHARED_LIBS=${{ matrix.shared }} -DQUAZIP_ENABLE_TESTS=ON -B "${{github.workspace}}/build"
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
- name: Run tests
working-directory: ${{github.workspace}}/build
run: "ctest --verbose"
alpine:
if: false
name: "cmake on ${{ matrix.runner }}"
runs-on: "ubuntu-20.04"
container:
image: "${{ matrix.runner }}"
strategy:
matrix:
runner:
- "alpine:3.11" # cmake 3.15, qt 5.12
- "alpine:3.12" # cmake 3.17, qt 5.14
env:
DEBIAN_FRONTEND: noninteractive
steps:
- name: Show OS info
run: cat /etc/os-release
- uses: actions/checkout@v4
- name: Install qt and build tools
run: apk add --update g++ make cmake qt5-qtbase-dev
- name: Show cmake version
run: cmake --version
- name: Run cmake
run: cmake -S . -B build -DQUAZIP_ENABLE_TESTS=ON
- name: Build quazip
run: cd build && VERBOSE=1 make -j8
- name: Build tests
run: cd build/qztest && VERBOSE=1 make -j8
- name: Run tests
run: build/qztest/qztest
windows:
if: false
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
package_manager: [ conan, vcpkg ]
qt_version: [ 6.6.2 ]
steps:
- uses: actions/checkout@v4
- name: Install Qt6
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
cache: 'true'
cache-key-prefix: ${{ runner.os }}-Qt-Cache-${{ matrix.qt_version }}
dir: ${{ github.workspace }}/Qt
modules: 'qt5compat'
- uses: TheMrMilchmann/setup-msvc-dev@v3
with:
arch: x64
- name: Install Conan
if: matrix.package_manager == 'conan'
uses: turtlebrowser/get-conan@main
- name: Init conan
if: matrix.package_manager == 'conan'
run: conan profile detect
- name: Install dependencies with conan
if: matrix.package_manager == 'conan'
shell: cmd
run: conan install . -of build -s build_type=Release -o *:shared=False --build=missing
- name: Configure
shell: cmd
run: cmake --preset ${{ matrix.package_manager }} -DQUAZIP_ENABLE_TESTS=ON
- name: Build
shell: cmd
working-directory: ./build
run: cmake --build . --config Release
- name: Debug
shell: cmd
run: dir build\qztest\Release
- name: Test
if: false
shell: cmd
working-directory: ./build
run: ctest --verbose -C Release