diff --git a/.github/workflows/conda.yml b/.github/workflows/conda.yml index e6e2fb379..41f4101e7 100644 --- a/.github/workflows/conda.yml +++ b/.github/workflows/conda.yml @@ -114,7 +114,7 @@ jobs: # In Linux/macOS we need the conda-forge channel to install their pinned versions - name: Install the Conda package (Linux/macOS) if: runner.os != 'Windows' - run: conda install --channel conda-forge --channel ./build/conda khiops-core + run: conda install --channel ./build/conda khiops-core - name: Test that the executables are installed run: | MODL -v diff --git a/packaging/conda/build.sh b/packaging/conda/build.sh index 85a4d1174..1418fdc93 100644 --- a/packaging/conda/build.sh +++ b/packaging/conda/build.sh @@ -16,8 +16,18 @@ cmake --fresh --preset $CMAKE_PRESET -DBUILD_JARS=OFF -DTESTING=OFF cmake --build --preset $CMAKE_PRESET --parallel --target MODL MODL_Coclustering # Copy the MODL binaries to the Conda PREFIX path -cp "./build/$CMAKE_PRESET/bin/MODL" "$PREFIX/bin" -cp "./build/$CMAKE_PRESET/bin/MODL_Coclustering" "$PREFIX/bin" +cp "./build/$CMAKE_PRESET/bin/MODL*" "$PREFIX/bin" + +# Make symbolic links for MODL in Linux since it has a prefix depending of the MPI version +if [[ "$(uname)" == "Linux" ]] +then + if [[ -f "$PREFIX/bin/MODL_mpich" ]] + then + ln -s "$PREFIX/bin/MODL" "$PREFIX/bin/MODL_mpich" + else + ln -s "$PREFIX/bin/MODL" "$PREFIX/bin/MODL_openmpi" + fi +fi # Custom rpath relocation and signing executables for macOS in arm64 # diff --git a/packaging/conda/meta.yaml b/packaging/conda/meta.yaml index 662716986..c2fc50442 100644 --- a/packaging/conda/meta.yaml +++ b/packaging/conda/meta.yaml @@ -26,35 +26,25 @@ build: detect_binary_files_with_prefix: false # [osx] {% endif %} -# Note on version pinning: -# OSX: -# - mpich=3.4.3 because 4.* is still unstable -# - requires conda-forge -# Linux: -# - mpich=4.0.3 because of bugs of the 3.* series -# - requires conda-forge requirements: build: - - mpich 4.0.3 # [linux] - - mpich-mpicc 4.0.3 # [linux] - - mpich-mpicxx 4.0.3 # [linux] - - mpich 3.4.3 # [osx] - - mpich-mpicc 3.4.3 # [osx] - - mpich-mpicxx 3.4.3 # [osx] + - openmpi # [not win] + - openmpi-mpicc # [not win] + - openmpi-mpicxx # [not win] - msmpi # [win] - cmake - ninja - {{ compiler('cxx') }} host: - - mpich 4.0.3 # [linux] - - mpich-mpicxx 4.0.3 # [linux] - - mpich 3.4.3 # [osx] - - mpich-mpicxx 3.4.3 # [osx] + - openmpi # [not win] + - openmpi-mpicc # [not win] + - openmpi-mpicxx # [not win] - msmpi # [win] run: - - mpich 4.0.3 # [linux] - - mpich 3.4.3 # [osx] - - msmpi # [win] + - openmpi # [not win] + - openmpi-mpicc # [not win] + - openmpi-mpicxx # [not win] + - msmpi # [win] outputs: - name: khiops-core