Remove restriction on number of processes for Emscripten static libra… #802
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
| name: Native Builds | |
| on: | |
| pull_request: | |
| branches: [main] | |
| push: | |
| branches: [main] | |
| release: | |
| types: [published] | |
| schedule: | |
| - cron: '30 20 * * *' # Warning: Timezone dep - 20:00 is 1:00 | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: ${{ matrix.name }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| # Ubuntu Arm Jobs | |
| - name: ubu22-arm-gcc12-clang-repl-20-coverage | |
| os: ubuntu-22.04-arm | |
| compiler: gcc-12 | |
| clang-runtime: '20' | |
| cling: Off | |
| cppyy: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| coverage: true | |
| - name: ubu24-arm-gcc12-clang-repl-20 | |
| os: ubuntu-24.04-arm | |
| compiler: gcc-12 | |
| clang-runtime: '20' | |
| cling: Off | |
| cppyy: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-arm-gcc12-clang-repl-19-cppyy | |
| os: ubuntu-24.04-arm | |
| compiler: gcc-12 | |
| clang-runtime: '19' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-arm-gcc12-clang-repl-18-cppyy | |
| os: ubuntu-24.04-arm | |
| compiler: gcc-12 | |
| clang-runtime: '18' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-arm-gcc9-clang18-cling-cppyy | |
| os: ubuntu-24.04-arm | |
| compiler: gcc-9 | |
| clang-runtime: '18' | |
| cling: On | |
| cppyy: Off | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| # Ubuntu X86 Jobs | |
| - name: ubu24-x86-gcc12-clang-repl-20 | |
| os: ubuntu-24.04 | |
| compiler: gcc-12 | |
| clang-runtime: '20' | |
| cling: Off | |
| cppyy: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-x86-gcc12-clang-repl-19-cppyy | |
| os: ubuntu-24.04 | |
| compiler: gcc-12 | |
| clang-runtime: '19' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-x86-gcc12-clang-repl-18-cppyy | |
| os: ubuntu-24.04 | |
| compiler: gcc-12 | |
| clang-runtime: '18' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: ubu24-x86-gcc9-clang18-cling-cppyy | |
| os: ubuntu-24.04 | |
| compiler: gcc-9 | |
| clang-runtime: '18' | |
| cling: On | |
| cppyy: Off | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| # MacOS Arm Jobs | |
| - name: osx15-arm-clang-clang-repl-20 | |
| os: macos-15 | |
| compiler: clang | |
| clang-runtime: '20' | |
| cling: Off | |
| cppyy: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-arm-clang-clang-repl-19-cppyy | |
| os: macos-15 | |
| compiler: clang | |
| clang-runtime: '19' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-arm-clang-clang-repl-18-cppyy | |
| os: macos-15 | |
| compiler: clang | |
| clang-runtime: '18' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-arm-clang-clang18-cling-cppyy | |
| os: macos-15 | |
| compiler: clang | |
| clang-runtime: '18' | |
| cling: On | |
| cppyy: On | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| # MacOS X86 Jobs | |
| - name: osx15-x86-clang-clang-repl-20 | |
| os: macos-15-intel | |
| compiler: clang | |
| clang-runtime: '20' | |
| cling: Off | |
| cppyy: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-x86-clang-clang-repl-19-cppyy | |
| os: macos-15-intel | |
| compiler: clang | |
| clang-runtime: '19' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-x86-clang-clang-repl-18-cppyy | |
| os: macos-15-intel | |
| compiler: clang | |
| clang-runtime: '18' | |
| cling: Off | |
| cppyy: On | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host" | |
| - name: osx15-x86-clang-clang18-cling-cppyy | |
| os: macos-15-intel | |
| compiler: clang | |
| clang-runtime: '18' | |
| cling: On | |
| cppyy: On | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| # Windows Arm Jobs | |
| - name: win11-msvc-clang-repl-20 | |
| os: windows-11-arm | |
| compiler: msvc | |
| clang-runtime: '20' | |
| cling: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: win11-msvc-clang18-cling | |
| os: windows-11-arm | |
| compiler: msvc | |
| clang-runtime: '18' | |
| cling: On | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| # Windows X86 Jobs | |
| - name: win2025-msvc-clang-repl-20 | |
| os: windows-2025 | |
| compiler: msvc | |
| clang-runtime: '20' | |
| cling: Off | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| - name: win2025-msvc-clang18-cling | |
| os: windows-2025 | |
| compiler: msvc | |
| clang-runtime: '18' | |
| cling: On | |
| cling-version: '1.2' | |
| llvm_enable_projects: "clang" | |
| llvm_targets_to_build: "host;NVPTX" | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: '3.11' | |
| - name: Save PR Info | |
| uses: ./.github/actions/Miscellaneous/Save_PR_Info | |
| - name: Restore cached LLVM-${{ matrix.clang-runtime }} and ${{ matrix.cling == 'On' && 'Cling' || 'Clang-REPL' }} build | |
| uses: actions/cache/restore@v4 | |
| id: cache | |
| with: | |
| path: | | |
| llvm-project | |
| ${{ matrix.cling=='On' && 'cling' || '' }} | |
| key: ${{ env.CLING_HASH }}-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-clang-${{ matrix.clang-runtime }}.x-patch-${{ hashFiles(format('patches/llvm/clang{0}-*.patch', matrix.clang-runtime)) || 'none' }} | |
| - name: Setup default Build Type | |
| uses: ./.github/actions/Miscellaneous/Select_Default_Build_Type | |
| - name: Setup compiler | |
| uses: ./.github/actions/Miscellaneous/Setup_Compiler | |
| - name: Install dependencies | |
| uses: ./.github/actions/Miscellaneous/Install_Dependencies | |
| - name: Build LLVM-${{ matrix.clang-runtime }} and ${{ matrix.cling == 'On' && 'Cling' || 'Clang-REPL' }} | |
| uses: ./.github/actions/Build_LLVM | |
| with: | |
| cache-hit: ${{ steps.cache.outputs.cache-hit }} | |
| - name: Cache LLVM-${{ matrix.clang-runtime }} and ${{ matrix.cling == 'On' && 'Cling' || 'Clang-REPL' }} build | |
| uses: actions/cache/save@v4 | |
| if: ${{ steps.cache.outputs.cache-hit != 'true' }} | |
| with: | |
| path: | | |
| llvm-project | |
| ${{ matrix.cling=='On' && 'cling' || '' }} | |
| key: ${{ steps.cache.outputs.cache-primary-key }} | |
| - name: Setup code coverage | |
| if: ${{ success() && (matrix.coverage == true) }} | |
| run: | | |
| sudo apt install lcov | |
| echo "CODE_COVERAGE=1" >> $GITHUB_ENV | |
| echo "BUILD_TYPE=Debug" >> $GITHUB_ENV | |
| - name: Build and test CppInterOp | |
| uses: ./.github/actions/Build_and_Test_CppInterOp | |
| - name: Prepare code coverage report | |
| if: ${{ success() && (matrix.coverage == true) }} | |
| run: | | |
| # Create lcov report | |
| # capture coverage info | |
| vers="${CC#*-}" | |
| lcov --directory build/ --capture --output-file coverage.info --gcov-tool /usr/bin/gcov-${vers} | |
| lcov --remove coverage.info '/usr/*' "${HOME}"'/.cache/*' ${{ github.workspace }}'/llvm-project/*' ${{ github.workspace }}'/unittests/*' --output-file coverage.info | |
| # output coverage data for debugging (optional) | |
| lcov --list coverage.info | |
| - name: Upload to codecov.io | |
| if: ${{ success() && (matrix.coverage == true) }} | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| files: ./coverage.info | |
| fail_ci_if_error: true | |
| verbose: true | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| - name: Build and test cppyy | |
| uses: ./.github/actions/Build_and_Test_cppyy | |
| - name: Show debug info | |
| if: ${{ failure() }} | |
| run: | | |
| export | |
| echo $GITHUB_ENV | |
| - name: Setup tmate session | |
| if: ${{ failure() && runner.debug }} | |
| uses: mxschmitt/action-tmate@v3 | |
| # When debugging increase to a suitable value! | |
| timeout-minutes: 30 | |