diff --git a/.github/actions/cmake/action.yml b/.github/actions/cmake/action.yml index e73afd994..e3ff9bd6f 100644 --- a/.github/actions/cmake/action.yml +++ b/.github/actions/cmake/action.yml @@ -44,8 +44,15 @@ runs: export SystemDrive="$SYSTEMDRIVE" export SystemRoot="$SYSTEMROOT" export windir="$WINDIR" - vcpkg install doctest:x64-mingw-dynamic trompeloeil:x64-mingw-dynamic - echo cmake_extra_args="'-DCMAKE_TOOLCHAIN_FILE=$VCPKG_INSTALLATION_ROOT/scripts/buildsystems/vcpkg.cmake' '-DMINGW=ON' '-G MinGW Makefiles'" >> "$GITHUB_ENV" + CMAKE_EXTRA_ARGS="'-DCMAKE_TOOLCHAIN_FILE=$VCPKG_INSTALLATION_ROOT/scripts/buildsystems/vcpkg.cmake'" >> "$GITHUB_ENV" + if [[ ${{ inputs.qt_arch }} = win64_mingw ]]; then + vcpkg install doctest:x64-mingw-dynamic trompeloeil:x64-mingw-dynamic + CMAKE_EXTRA_ARGS="${CMAKE_EXTRA_ARGS} '-DMINGW=ON' '-G MinGW Makefiles'" + else + vcpkg install doctest trompeloeil + fi + + echo cmake_extra_args="${CMAKE_EXTRA_ARGS}" >> "$GITHUB_ENV" shell: bash # Qt diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c478f6605..313f5851d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -76,8 +76,8 @@ jobs: - name: Build and test uses: ./.github/actions/build-and-test - windows: - name: Qt 6.5.3 / Windows + windows-mingw: + name: Qt 6.5.3 / Windows MinGW runs-on: windows-2022 steps: - uses: actions/checkout@v4 @@ -100,6 +100,30 @@ jobs: - name: Build and test uses: ./.github/actions/build-and-test + windows-msvc: + name: Qt 6.5.3 / Windows MSVC + runs-on: windows-2022 + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: Setup CMake + uses: ./.github/actions/cmake + with: + qt_version: 6.5.3 + qt_arch: win64_msvc2019_64 + use_qt6: ON + modules: qtserialport qtwebsockets + # Need to get all binaries in the same directory, otherwise the tests can't find the dlls. + additional_cmake_args: | + -DLIBSHV_WITH_LDAP=OFF \ + -DCMAKE_RUNTIME_OUTPUT_DIRECTORY='${{github.workspace}}/build/bin' \ + -DCMAKE_LIBRARY_OUTPUT_DIRECTORY='${{github.workspace}}/build/bin' + + - name: Build and test + uses: ./.github/actions/build-and-test + android: name: Qt 6.7.3 / Android runs-on: ubuntu-22.04