Tkg3 eval try upt revol offset curv also #482
This file contains hidden or 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
| # This workflow builds and tests OCCT on multiple platforms (Windows, macOS, Linux with Clang, and Linux with GCC). | |
| # It is triggered on pull requests to any branch. | |
| # The workflow includes steps to prepare and build the project on each platform, run tests, and upload the results. | |
| # Concurrency is set to ensure that only one instance of the workflow runs per pull request at a time. | |
| name: Build and Test OCCT on Multiple Platforms | |
| on: | |
| pull_request: | |
| branches: | |
| - '**' | |
| push: | |
| branches: | |
| - 'master' | |
| concurrency: | |
| group: ${{ github.event_name == 'pull_request' | |
| && format('{0}-{1}', github.workflow, github.event.pull_request.number) | |
| || format('{0}-{1}', github.workflow, github.run_id) }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' && !(github.head_ref == 'IR' && github.repository == 'Open-Cascade-SAS/OCCT') && true || false }} | |
| jobs: | |
| clang-format: | |
| name: Check code formatting | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| with: | |
| fetch-depth: 0 | |
| - name: Run clang-format check | |
| uses: ./.github/actions/clang-format-check | |
| with: | |
| base-ref: ${{ github.event.pull_request.base.ref || 'master' }} | |
| ascii-check: | |
| name: Check for non-ASCII characters | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| with: | |
| fetch-depth: 0 | |
| - name: Check for non-ASCII characters | |
| uses: ./.github/actions/ascii-check | |
| with: | |
| base-ref: ${{ github.event.pull_request.base.ref || 'master' }} | |
| documentation: | |
| name: Build Documentation | |
| runs-on: windows-2025 | |
| if: github.ref == 'refs/heads/master' | |
| needs: | |
| - clang-format | |
| - ascii-check | |
| - build-inspector-windows | |
| - build-inspector-linux | |
| - build-csharp-windows | |
| - build-mfc-windows | |
| - build-qt-windows | |
| - build-qt-linux | |
| - retest-windows-x64 | |
| - retest-macos-x64 | |
| - retest-linux-clang-x64 | |
| - run-gtest-windows-x64 | |
| - run-gtest-macos-x64 | |
| - run-gtest-linux-clang-x64 | |
| - run-gtest-macos-clang-no-pch | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build documentation | |
| uses: ./.github/actions/build-docs | |
| prepare-and-build-windows-x64: | |
| name: Prepare and Build on Windows with MSVC (x64) | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build OCCT | |
| uses: ./.github/actions/build-occt | |
| with: | |
| platform: windows | |
| compiler: msvc | |
| artifact-name: install-windows-x64 | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| prepare-and-build-macos-x64: | |
| name: Prepare and Build on macOS with Clang (x64) | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build OCCT | |
| uses: ./.github/actions/build-occt | |
| with: | |
| platform: macos | |
| compiler: clang | |
| artifact-name: install-macos-x64 | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| prepare-and-build-linux-clang-x64: | |
| name: Prepare and Build on Ubuntu with Clang (x64) | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build OCCT | |
| uses: ./.github/actions/build-occt | |
| with: | |
| platform: linux | |
| compiler: clang | |
| artifact-name: install-linux-clang-x64 | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| prepare-and-build-macos-clang-no-pch: | |
| name: Prepare and Build on macOS with Clang (No PCH) | |
| needs: prepare-and-build-macos-x64 | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build OCCT | |
| uses: ./.github/actions/build-occt | |
| with: | |
| platform: macos | |
| compiler: clang | |
| artifact-name: install-macos-clang-no-pch | |
| build-use-pch: 'false' | |
| build-opt-profile: 'Default' | |
| additional-cmake-flags: '-D CMAKE_CXX_FLAGS="-Werror -Wall -Wextra -Wno-error=cast-function-type-mismatch" -D CMAKE_C_FLAGS="-Werror -Wall -Wextra -Wno-error=cast-function-type-mismatch"' | |
| cmake-build-type: 'Debug' | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| build-inspector-windows: | |
| name: Build TInspector on Windows | |
| needs: prepare-and-build-windows-x64 | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build TInspector | |
| uses: ./.github/actions/build-tinspector | |
| with: | |
| platform: windows | |
| install-artifact-name: install-windows-x64 | |
| build-inspector-linux: | |
| name: Build TInspector on Linux | |
| needs: prepare-and-build-linux-clang-x64 | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build TInspector | |
| uses: ./.github/actions/build-tinspector | |
| with: | |
| platform: linux | |
| install-artifact-name: install-linux-clang-x64 | |
| build-csharp-windows: | |
| name: Build CSharp Sample on Windows | |
| needs: prepare-and-build-windows-x64 | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build CSharp Sample | |
| uses: ./.github/actions/build-sample-csharp | |
| with: | |
| platform: windows | |
| install-artifact-name: install-windows-x64 | |
| build-mfc-windows: | |
| name: Build MFC Sample on Windows | |
| needs: prepare-and-build-windows-x64 | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build MFC Sample | |
| uses: ./.github/actions/build-sample-mfc | |
| with: | |
| platform: windows | |
| install-artifact-name: install-windows-x64 | |
| build-qt-windows: | |
| name: Build Qt Sample on Windows | |
| needs: prepare-and-build-windows-x64 | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build Qt Sample | |
| uses: ./.github/actions/build-sample-qt | |
| with: | |
| platform: windows | |
| install-artifact-name: install-windows-x64 | |
| build-qt-linux: | |
| name: Build Qt Sample on Linux | |
| needs: prepare-and-build-linux-clang-x64 | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Build Qt Sample | |
| uses: ./.github/actions/build-sample-qt | |
| with: | |
| platform: linux | |
| install-artifact-name: install-linux-clang-x64 | |
| test-windows-x64: | |
| name: Test on Windows (x64) | |
| runs-on: windows-2025 | |
| needs: prepare-and-build-windows-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| platform: windows | |
| compiler: msvc | |
| install-artifact-name: install-windows-x64 | |
| test-directory-name: windows-x64 | |
| test-script: .github/actions/testgrid/testwindows.tcl | |
| retest-windows-x64: | |
| name: Regression Test on Windows (x64) | |
| runs-on: windows-2025 | |
| needs: test-windows-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run retest | |
| uses: ./.github/actions/retest-failures | |
| with: | |
| platform: windows | |
| compiler: msvc | |
| install-artifact-name: install-windows-x64 | |
| results-artifact-name: results-windows-x64 | |
| test-directory-name: windows-x64 | |
| test-macos-x64: | |
| name: Test on macOS (x64) | |
| runs-on: macos-15 | |
| needs: prepare-and-build-macos-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| platform: macos | |
| compiler: clang | |
| install-artifact-name: install-macos-x64 | |
| test-directory-name: macos-x64 | |
| test-script: .github/actions/testgrid/testmacos.tcl | |
| retest-macos-x64: | |
| name: Regression Test on macOS (x64) | |
| runs-on: macos-15 | |
| needs: test-macos-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run retest | |
| uses: ./.github/actions/retest-failures | |
| with: | |
| platform: macos | |
| compiler: clang | |
| install-artifact-name: install-macos-x64 | |
| results-artifact-name: results-macos-x64 | |
| test-directory-name: macos-x64 | |
| test-linux-clang-x64: | |
| name: Test on Linux with Clang (x64) | |
| runs-on: ubuntu-24.04 | |
| needs: prepare-and-build-linux-clang-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run tests | |
| uses: ./.github/actions/run-tests | |
| with: | |
| platform: linux | |
| compiler: clang | |
| install-artifact-name: install-linux-clang-x64 | |
| test-directory-name: linux-clang-x64 | |
| test-script: .github/actions/testgrid/testlinuxclang.tcl | |
| retest-linux-clang-x64: | |
| name: Regression Test on Linux with Clang (x64) | |
| runs-on: ubuntu-24.04 | |
| needs: test-linux-clang-x64 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run retest | |
| uses: ./.github/actions/retest-failures | |
| with: | |
| platform: linux | |
| compiler: clang | |
| install-artifact-name: install-linux-clang-x64 | |
| results-artifact-name: results-linux-clang-x64 | |
| test-directory-name: linux-clang-x64 | |
| run-gtest-windows-x64: | |
| name: Run GTest on Windows with MSVC (x64) | |
| needs: prepare-and-build-windows-x64 | |
| runs-on: windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run GTests | |
| uses: ./.github/actions/run-gtest | |
| with: | |
| platform: windows | |
| compiler: msvc | |
| install-artifact-name: install-windows-x64 | |
| artifact-suffix: x64 | |
| run-gtest-macos-x64: | |
| name: Run GTest on macOS with Clang (x64) | |
| needs: prepare-and-build-macos-x64 | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run GTests | |
| uses: ./.github/actions/run-gtest | |
| with: | |
| platform: macos | |
| compiler: clang | |
| install-artifact-name: install-macos-x64 | |
| artifact-suffix: x64 | |
| run-gtest-linux-clang-x64: | |
| name: Run GTest on Linux with Clang (x64) | |
| needs: prepare-and-build-linux-clang-x64 | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run GTests | |
| uses: ./.github/actions/run-gtest | |
| with: | |
| platform: linux | |
| compiler: clang | |
| install-artifact-name: install-linux-clang-x64 | |
| artifact-suffix: x64 | |
| run-gtest-macos-clang-no-pch: | |
| name: Run GTest on macOS with Clang (No PCH, Debug) | |
| needs: prepare-and-build-macos-clang-no-pch | |
| runs-on: macos-15 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Run GTests | |
| uses: ./.github/actions/run-gtest | |
| with: | |
| platform: macos | |
| compiler: clang | |
| install-artifact-name: install-macos-clang-no-pch | |
| artifact-suffix: no-pch | |
| test-summary: | |
| name: 'Summarize Test Results' | |
| runs-on: ubuntu-24.04 | |
| if: ${{ !cancelled() && github.event_name == 'pull_request' }} | |
| needs: [retest-windows-x64, retest-macos-x64, retest-linux-clang-x64] | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/[email protected] | |
| - name: Generate Test Summary | |
| uses: ./.github/actions/test-summary |