ci: use Intel ifx/icx compilers in Intel CI jobs - #1342
Conversation
The Intel matrix entries install oneAPI and source setvars.sh, which puts Intel compilers on PATH but does not set FC/CC/CXX. Without these, CMake finds gfortran first and the 'Intel' CI jobs silently test gfortran instead of ifx. Also set MPIFC/MPICC/MPICXX so CMake find_package(MPI) picks up Intel MPI wrappers (mpiifx, mpiicx, mpiicpx).
icx/icpx are not installed (only intel-oneapi-compiler-fortran is). Filter CC/CXX from setvars.sh export so CMake uses gcc for C/CXX.
Add intel-oneapi-compiler-dpcpp-cpp to provide icx/icpx alongside ifx. Set all Intel compiler env vars (FC, CC, CXX, MPI wrappers).
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe pull request extends the GitHub Actions test workflow to add support for Intel oneAPI compilers. The Ubuntu (Intel) setup step now installs the additional 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1342 +/- ##
=======================================
Coverage 64.67% 64.67%
=======================================
Files 70 70
Lines 18249 18249
Branches 1504 1504
=======================================
Hits 11803 11803
Misses 5491 5491
Partials 955 955 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Summary
The Intel matrix entries in the test suite install oneAPI and source
setvars.sh, which puts Intel compilers onPATHbut does not setFC/CC/CXX. Without these, CMake finds gfortran first and the "Intel" CI jobs silently test gfortran instead of ifx.This PR sets:
FC=ifx,CC=icx,CXX=icpx— so CMake uses Intel compilersMPIFC=mpiifx,MPICC=mpiicx,MPICXX=mpiicpx— sofind_package(MPI)picks up Intel MPI wrappersTest plan
Github (ubuntu, mpi, reldebug, true)builds withIntelLLVMcompiler identificationGithub (ubuntu, mpi, no-debug, true)builds and tests pass with ifx