opencollab / arpack-ng

Collection of Fortran77 subroutines designed to solve large scale eigenvalue problems.
Other
290 stars 124 forks source link

CI: Add CI for CLANG64 environment of MSYS2 #459

Closed mmuetzel closed 5 months ago

mmuetzel commented 5 months ago

Pull request purpose

Add CI for CLANG64 environment of MSYS2. Add runners for different configurations (MPI, INTERFACE64) on MinGW-w64.

This picks up on #415.

Detailed changes proposed in this pull request

The CLANG64 environment of MSYS2 uses a toolchain that it almost entirely based on LLVM tools. That includes compilers (incl. LLVM Flang), linker, and LLVM libc++ (instead of GNU's libstdc++). Most common build environments are based on GNU tools (apart from maybe macOS and MSVC on Windows). It might be worth testing unusual build environments in CI to make sure they don't break unintentionally.

This PR adds runners for that build environment. It also adds Eigen3 as an additional build dependency on MinGW to test it on that platform. Additionally, it adds runners for the following configurations (to the UCRT64 and CLANG64 environments):

mmuetzel commented 5 months ago

Adding the path to the built libarpack.dll to the PATH variable is just to work around an issue that might better be fixed in the CMake build system. I'd be happy to look into proposing a change for that. But it would be nice if this could be merged first to make it easier to check if any follow-up change actually works.

mmuetzel commented 5 months ago

Is there an obvious reason why arpackmm_tst takes longer on Windows than on, e.g., Ubuntu? ubuntu_latest_cmake:

      Start 91: arpackmm_tst
91/95 Test #91: arpackmm_tst .....................   Passed   43.28 sec

MinGW-w64 UCRT64 INTERFACE64=OFF/MPI=OFF

      Start 82: arpackmm_tst
82/84 Test #82: arpackmm_tst .....................   Passed  148.70 sec
fghoussen commented 5 months ago

Could you fix the test that fails?

Is there an obvious reason why arpackmm_tst takes longer on Windows than on, e.g., Ubuntu?

Nope

mmuetzel commented 5 months ago

Could you fix the test that fails?

The macOS one? I don't have local access to macOS. But I can try...

fghoussen commented 5 months ago

The macOS one?

Yep. No mac too here. I hope pip3 install numpy>=2.0.0could be enough...

mmuetzel commented 5 months ago

The macOS one?

Yep. No mac too here. I hope pip3 install numpy>=2.0.0could be enough...

I've opened #460 that should fix the version conflict on that runner.