Skip to content

CI fix macOS FlexiBLAS build with newer CMake#223

Merged
ogrisel merged 9 commits into
joblib:masterfrom
ogrisel:cursor/joblib-fix-macos-flexiblas-571b
Jul 10, 2026
Merged

CI fix macOS FlexiBLAS build with newer CMake#223
ogrisel merged 9 commits into
joblib:masterfrom
ogrisel:cursor/joblib-fix-macos-flexiblas-571b

Conversation

@ogrisel

@ogrisel ogrisel commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Fixes macOS pylatest_flexiblas CI failure.

Newer CMake on macOS runners rejects the minimum policy version in FlexiBLAS v3.4.2 bundled LAPACK sources during install. Adds -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to the cmake invocation.

This is taken from #203. However let's isolate the fixes in individual PRs to be able to incrementally fix the CI.

cursoragent and others added 5 commits July 10, 2026 08:42
Newer CMake versions reject the minimum policy version bundled with
FlexiBLAS v3.4.2. Set CMAKE_POLICY_VERSION_MINIMUM=3.5 so the existing
FlexiBLAS pin keeps working without upgrading the library.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Remove the v3.4.2 checkout and its comment so CI builds the latest
FlexiBLAS release from the default branch.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Install ccache from conda-forge, wire it into the FlexiBLAS cmake build,
and persist the cache directory across CI runs for both macOS and Linux
flexiblas jobs.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
FlexiBLAS 3.5 installs libflexiblas_mgmt as a separate shared library
but does not embed a usable rpath in the flexiblas CLI. Set the install
rpath during cmake configuration and export the library path for the
post-install sanity check and subsequent build steps.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
@ogrisel

ogrisel commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Assuming CI is consistently green, this LGTM and I plan to merge.

@ogrisel

ogrisel commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

I am investigating the cause of the failure of the meta-test.

cursoragent and others added 2 commits July 10, 2026 13:35
Windows conda-forge MKL stacks now expose MKL as mkl_rt.<version>.dll
instead of libblas.dll. The mkl_rt prefix remains covered by the
parametrized tests.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Revert filtering libblas out of test_threadpool_limits_by_prefix and
instead whitelist the parametrized libblas cases in SAFE_SKIPPED_TESTS.

Document that libblas.dll handling is legacy conda-forge Windows code
that current stacks no longer exercise (MKL uses mkl_rt.<version>.dll).

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
@ogrisel

ogrisel commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

I plan to merge if CI is green.

cursoragent and others added 2 commits July 10, 2026 14:19
Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
Windows py39_pip CI runners report Cooperlake for the shipped
libscipy_openblas wheel.

Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org>
@ogrisel ogrisel merged commit 02d2d36 into joblib:master Jul 10, 2026
21 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