Skip to content

Add portable CI workflow without MKL dependency - #32

Merged
ivan-pi merged 2 commits into
mainfrom
claude/ci-workflow-no-mkl-43fo9v
Aug 6, 2026
Merged

Add portable CI workflow without MKL dependency#32
ivan-pi merged 2 commits into
mainfrom
claude/ci-workflow-no-mkl-43fo9v

Conversation

@ivan-pi

@ivan-pi ivan-pi commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

This PR adds a new GitHub Actions CI workflow that tests the codebase in a portable configuration without the Intel MKL library dependency. This provides a quick smoke test to ensure the project builds and tests successfully with only standard C++17 compiler support.

Key Changes

  • Added .github/workflows/ci-portable.yml workflow that:
    • Runs on push to main and all pull requests
    • Tests with both GCC and Clang compilers on ubuntu-latest
    • Builds with -DCQR_WITH_MKL=OFF to verify portable (BLAS-free) functionality
    • Uses RelWithDebInfo build type for optimized testing with debug symbols
    • Leverages pre-installed toolchain (CMake, Ninja, compilers) to keep CI fast
    • Runs the full test suite to validate portable build correctness

Implementation Details

  • Uses workflow concurrency to cancel in-progress runs when newer commits are pushed to the same ref
  • Skips explicit toolchain installation since ubuntu-latest already provides CMake, Ninja, GCC, and Clang
  • Avoids the heavy libmkl-dev dependency installation, keeping this a lightweight smoke test
  • Complements existing CI workflows by providing coverage for the portable build configuration

https://claude.ai/code/session_01K6WaceLhu1dpQMkiNCXnX6

claude added 2 commits August 6, 2026 16:53
Add a second CI workflow that builds and tests the BLAS-free portable
kernels without Intel MKL, so the -DCQR_WITH_MKL=OFF path stays healthy
and gives fast feedback without the heavy libmkl-dev install.

Configures with -DCQR_WITH_MKL=OFF in RelWithDebInfo, then builds and
runs the four portable CTest suites across the gcc and clang matrix.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K6WaceLhu1dpQMkiNCXnX6
CMake, Ninja, GCC, and Clang all ship on the ubuntu-latest runner
image, and the -DCQR_WITH_MKL=OFF build needs nothing beyond a C++17
compiler. Remove the apt install step entirely so the BLAS-free smoke
check skips both the toolchain and the libmkl-dev install.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K6WaceLhu1dpQMkiNCXnX6
@ivan-pi
ivan-pi merged commit 8db3fb8 into main Aug 6, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants