From 5d3b0bf1c1407c8b3a56e4a70fb382080422ea17 Mon Sep 17 00:00:00 2001 From: acxz <17132214+acxz@users.noreply.github.com> Date: Mon, 21 Feb 2022 17:22:39 -0500 Subject: [PATCH 1/3] only metis.h is needed to include both system and local metis.h file metislib.h can be changed to <> due to cmake changes --- gtsam/inference/Ordering.cpp | 4 ---- gtsam_unstable/partition/FindSeparator-inl.h | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/gtsam/inference/Ordering.cpp b/gtsam/inference/Ordering.cpp index 440d2b828..2ac2c0dde 100644 --- a/gtsam/inference/Ordering.cpp +++ b/gtsam/inference/Ordering.cpp @@ -25,11 +25,7 @@ #include #ifdef GTSAM_SUPPORT_NESTED_DISSECTION -#ifdef GTSAM_USE_SYSTEM_METIS #include -#else -#include -#endif #endif using namespace std; diff --git a/gtsam_unstable/partition/FindSeparator-inl.h b/gtsam_unstable/partition/FindSeparator-inl.h index 2e48b0d45..5ec8813b9 100644 --- a/gtsam_unstable/partition/FindSeparator-inl.h +++ b/gtsam_unstable/partition/FindSeparator-inl.h @@ -24,7 +24,7 @@ extern "C" { #include -#include "metislib.h" +#include } From c7374307f4dfdbddec241fb527dfc559d89c1244 Mon Sep 17 00:00:00 2001 From: acxz <17132214+acxz@users.noreply.github.com> Date: Mon, 21 Feb 2022 18:14:49 -0500 Subject: [PATCH 2/3] use internal metislib.h; extern C for system&local --- cmake/HandleMetis.cmake | 11 +++++++++-- gtsam_unstable/partition/FindSeparator-inl.h | 5 +---- gtsam_unstable/partition/tests/testFindSeparator.cpp | 4 ---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/cmake/HandleMetis.cmake b/cmake/HandleMetis.cmake index 9c29e5776..d74621654 100644 --- a/cmake/HandleMetis.cmake +++ b/cmake/HandleMetis.cmake @@ -21,7 +21,12 @@ if(GTSAM_USE_SYSTEM_METIS) mark_as_advanced(METIS_LIBRARY) add_library(metis-gtsam-if INTERFACE) - target_include_directories(metis-gtsam-if BEFORE INTERFACE ${METIS_INCLUDE_DIR}) + target_include_directories(metis-gtsam-if BEFORE INTERFACE ${METIS_INCLUDE_DIR} + # gtsam_unstable/partition/FindSeparator-inl.h uses internel metislib.h API + # via extern "C" + $ + $ + ) target_link_libraries(metis-gtsam-if INTERFACE ${METIS_LIBRARY}) endif() else() @@ -30,10 +35,12 @@ else() add_subdirectory(${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis) target_include_directories(metis-gtsam BEFORE PUBLIC + $ $ + # gtsam_unstable/partition/FindSeparator-inl.h uses internel metislib.h API + # via extern "C" $ $ - $ ) add_library(metis-gtsam-if INTERFACE) diff --git a/gtsam_unstable/partition/FindSeparator-inl.h b/gtsam_unstable/partition/FindSeparator-inl.h index 5ec8813b9..0e4950b79 100644 --- a/gtsam_unstable/partition/FindSeparator-inl.h +++ b/gtsam_unstable/partition/FindSeparator-inl.h @@ -20,10 +20,9 @@ #include "FindSeparator.h" -#ifndef GTSAM_USE_SYSTEM_METIS +#include extern "C" { -#include #include } @@ -566,5 +565,3 @@ namespace gtsam { namespace partition { } }} //namespace - -#endif diff --git a/gtsam_unstable/partition/tests/testFindSeparator.cpp b/gtsam_unstable/partition/tests/testFindSeparator.cpp index 63acc8f18..fe49de928 100644 --- a/gtsam_unstable/partition/tests/testFindSeparator.cpp +++ b/gtsam_unstable/partition/tests/testFindSeparator.cpp @@ -20,8 +20,6 @@ using namespace std; using namespace gtsam; using namespace gtsam::partition; -#ifndef GTSAM_USE_SYSTEM_METIS - /* ************************************************************************* */ // x0 - x1 - x2 // l3 l4 @@ -229,8 +227,6 @@ TEST ( Partition, findSeparator3_with_reduced_camera ) LONGS_EQUAL(2, partitionTable[28]); } -#endif - /* ************************************************************************* */ int main() { TestResult tr; return TestRegistry::runAllTests(tr);} /* ************************************************************************* */ From 4efdc6982e42f0ac0f5ed45ec051225ca4674787 Mon Sep 17 00:00:00 2001 From: Akash Patel <17132214+acxz@users.noreply.github.com> Date: Fri, 25 Mar 2022 17:11:05 -0400 Subject: [PATCH 3/3] fix typo Co-authored-by: Varun Agrawal --- cmake/HandleMetis.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/HandleMetis.cmake b/cmake/HandleMetis.cmake index d74621654..5cbec4ff5 100644 --- a/cmake/HandleMetis.cmake +++ b/cmake/HandleMetis.cmake @@ -22,7 +22,7 @@ if(GTSAM_USE_SYSTEM_METIS) add_library(metis-gtsam-if INTERFACE) target_include_directories(metis-gtsam-if BEFORE INTERFACE ${METIS_INCLUDE_DIR} - # gtsam_unstable/partition/FindSeparator-inl.h uses internel metislib.h API + # gtsam_unstable/partition/FindSeparator-inl.h uses internal metislib.h API # via extern "C" $ $ @@ -37,7 +37,7 @@ else() target_include_directories(metis-gtsam BEFORE PUBLIC $ $ - # gtsam_unstable/partition/FindSeparator-inl.h uses internel metislib.h API + # gtsam_unstable/partition/FindSeparator-inl.h uses internal metislib.h API # via extern "C" $ $