1
Fork 0
mirror of https://https.git.savannah.gnu.org/git/guix.git/ synced 2025-07-12 01:50:46 +02:00
guix/gnu/packages/patches/scotch-cmake-remove-metis.patch
Ludovic Courtès 665bbd0413
gnu: scotch: Remove CMake machinery for the Metis compatibility layer.
This fixes a bug whereby ‘SCOTCHConfig.cmake’ would fail to find
‘scotchmetisTargets.cmake’ because it expects it to be in the same
directory as itself, ${CMAKE_CURRENT_LIST_DIR}.

* gnu/packages/patches/scotch-cmake-remove-metis.patch: New file.
* gnu/packages/maths.scm (scotch)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.

Change-Id: If8d8f890852c35cede6e81c33d18b9101988a635
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-04-29 19:10:18 +02:00

24 lines
1,008 B
Diff

Remove the CMake machinery for the Metis/Parmetis compatibility layer:
it has zero users and complicates things due to the separate "metis"
output.
Notably, the assumption in 'SCOTCHConfig.cmake' is that *metisTargets.cmake
are in the same directory, which is not the case here. Furthermore,
'*metisTargets-relwithdebuginfo.cmake' assumes 'libscotchmetis*.so*' is
available under '_IMPORT_PREFIX', which is only the case when
'libscotchmetis*.so' is installed in the same directory as 'libscotch.so'.
diff --git a/cmake/SCOTCHConfig.cmake.in b/cmake/SCOTCHConfig.cmake.in
index ec52ac5..4ce5c30 100644
--- a/cmake/SCOTCHConfig.cmake.in
+++ b/cmake/SCOTCHConfig.cmake.in
@@ -77,9 +77,3 @@ if(@BUILD_LIBESMUMPS@)
include("${CMAKE_CURRENT_LIST_DIR}/ptesmumpsTargets.cmake")
endif()
endif()
-if(@BUILD_LIBSCOTCHMETIS@)
- include("${CMAKE_CURRENT_LIST_DIR}/scotchmetisTargets.cmake")
- if(@BUILD_PTSCOTCH@)
- include("${CMAKE_CURRENT_LIST_DIR}/ptscotchparmetisTargets.cmake")
- endif()
-endif()