This commit is contained in:
Shaun Reed 2025-03-08 12:08:35 -05:00
parent c86a7744b3
commit 1edd360766
4 changed files with 39 additions and 24 deletions

View File

@ -10,6 +10,7 @@ env:
jobs: jobs:
Qtk: Qtk:
name: Qtk Applications
env: env:
CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=ON -DQTK_PLUGINS=OFF -DQTK_EXAMPLE=ON CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=ON -DQTK_PLUGINS=OFF -DQTK_EXAMPLE=ON
strategy: strategy:
@ -29,10 +30,10 @@ jobs:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v4
with: with:
version: ${{ env.QT_VERSION }} version: ${{ env.QT_VERSION }}
@ -82,7 +83,7 @@ jobs:
- name: Upload package artifacts (DEB) - name: Upload package artifacts (DEB)
if: matrix.os == 'ubuntu-latest' if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-gui-${{ matrix.os }} name: qtk-gui-${{ matrix.os }}
path: | path: |
@ -97,7 +98,7 @@ jobs:
- name: Upload package artifacts (WIN) - name: Upload package artifacts (WIN)
if: matrix.os == 'windows-latest' if: matrix.os == 'windows-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-gui-${{ matrix.os }} name: qtk-gui-${{ matrix.os }}
path: | path: |
@ -112,14 +113,14 @@ jobs:
- name: Upload package artifacts (OSX) - name: Upload package artifacts (OSX)
if: matrix.os == 'macos-latest' if: matrix.os == 'macos-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-gui-${{ matrix.os }} name: qtk-gui-${{ matrix.os }}
path: | path: |
build/packages/*.tar.gz build/packages/*.tar.gz
- name: Upload Qtk install directory - name: Upload Qtk install directory
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-gui-${{ matrix.os }}-install name: qtk-gui-${{ matrix.os }}-install
path: install/* path: install/*
@ -132,7 +133,7 @@ jobs:
# cmake --build build/ --target package_source # cmake --build build/ --target package_source
# #
# - name: Upload package artifacts # - name: Upload package artifacts
# uses: actions/upload-artifact@v3 # uses: actions/upload-artifact@v4
# with: # with:
# name: qtk-${{ matrix.os }}-packages # name: qtk-${{ matrix.os }}-packages
# path: | # path: |
@ -140,6 +141,7 @@ jobs:
# !build/packages/_CPack_Packages/* # !build/packages/_CPack_Packages/*
Qtk-Library: Qtk-Library:
name: Qtk library
env: env:
CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=OFF -DQTK_PLUGINS=OFF -DQTK_EXAMPLE=OFF CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=OFF -DQTK_PLUGINS=OFF -DQTK_EXAMPLE=OFF
strategy: strategy:
@ -159,10 +161,10 @@ jobs:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v4
with: with:
version: ${{ env.QT_VERSION }} version: ${{ env.QT_VERSION }}
@ -201,7 +203,7 @@ jobs:
- name: Upload package artifacts (DEB) - name: Upload package artifacts (DEB)
if: matrix.os == 'ubuntu-latest' if: matrix.os == 'ubuntu-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: libqtk-${{ matrix.os }} name: libqtk-${{ matrix.os }}
path: | path: |
@ -216,7 +218,7 @@ jobs:
- name: Upload package artifacts (WIN) - name: Upload package artifacts (WIN)
if: matrix.os == 'windows-latest' if: matrix.os == 'windows-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-${{ matrix.os }} name: qtk-${{ matrix.os }}
path: | path: |
@ -231,20 +233,21 @@ jobs:
- name: Upload package artifacts (OSX) - name: Upload package artifacts (OSX)
if: matrix.os == 'macos-latest' if: matrix.os == 'macos-latest'
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
with: with:
name: qtk-${{ matrix.os }} name: qtk-${{ matrix.os }}
path: | path: |
build/packages/*.tar.gz build/packages/*.tar.gz
- name: Upload libqtk install - name: Upload libqtk install
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v4
if: always() if: always()
with: with:
name: libqtk-${{ matrix.os }}-install name: libqtk-${{ matrix.os }}-install
path: install/* path: install/*
Qtk-Plugins: Qtk-Plugins:
name: Qtk Qt Designer Plugins
env: env:
CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=OFF -DQTK_PLUGINS=ON -DQTK_EXAMPLE=OFF CONFIG: -DQTK_SUBMODULES=ON -DQTK_DEBUG=OFF -DQTK_CCACHE=OFF -DQTK_GUI=OFF -DQTK_PLUGINS=ON -DQTK_EXAMPLE=OFF
strategy: strategy:
@ -264,10 +267,10 @@ jobs:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v4
with: with:
version: ${{ env.QT_VERSION }} version: ${{ env.QT_VERSION }}
@ -292,6 +295,7 @@ jobs:
run: cmake --install build/ --config Release --component qtk_plugins run: cmake --install build/ --config Release --component qtk_plugins
Qtk-Assimp-Targets: Qtk-Assimp-Targets:
name: Qtk Assimp Platform Targets
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -304,10 +308,10 @@ jobs:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v4
with: with:
version: ${{ env.QT_VERSION }} version: ${{ env.QT_VERSION }}

View File

@ -9,10 +9,10 @@ jobs:
Tidy: Tidy:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v4
with: with:
version: '6.5.0' version: '6.5.0'
@ -22,7 +22,7 @@ jobs:
- name: Build Qtk - name: Build Qtk
run: | run: |
cmake -B build -DQTK_SUBMODULES=OFF -DQTK_CCACHE=OFF -DQTK_PLUGINS=OFF -DQTK_GUI=ON cmake -B build -DQTK_SUBMODULES=OFF -DQTK_CCACHE=OFF -DQTK_PLUGINS=OFF -DQTK_GUI=ON
cmake --build build --target qtk_gui -- -j $(nproc) cmake --build build --target qtk_gui qtk_example -- -j $(nproc)
- uses: cpp-linter/cpp-linter-action@v2 - uses: cpp-linter/cpp-linter-action@v2
id: linter id: linter
@ -30,7 +30,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
# Use clang-tools 14 # Use clang-tools 14
version: '14' version: '18'
# Don't use clang-format with this action # Don't use clang-format with this action
# + Set to `file` to use .clang-format (Qtk formats with clang 15) # + Set to `file` to use .clang-format (Qtk formats with clang 15)
style: '' style: ''
@ -57,12 +57,12 @@ jobs:
matrix: matrix:
path: path:
- 'src' - 'src'
- 'app' - 'example-app'
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: clang-format Check - name: clang-format Check
uses: jidicula/clang-format-action@v4.9.0 uses: jidicula/clang-format-action@v4.9.0
with: with:
clang-format-version: '15' clang-format-version: '18'
check-path: ${{ matrix.path }} check-path: ${{ matrix.path }}

3
tools/build-qt.sh Normal file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash

8
tools/format.sh Executable file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
cd ..
cmake -B build && cmake --build build -- -j $(nproc --ignore=1)
clang-tidy -p build/ --fix --config-file=.clang-tidy \
src/**/*.cpp src/**/*.h example-app/*.cpp example-app/*.h
clang-format -i --style=file:.clang-format \
src/**/*.cpp src/**/*.h example-app/*.cpp example-app/*.h