Merge pull request #1117 from acxz/metis-include
Allow more functionality through system METISrelease/4.3a0
commit
a9a4075ff6
|
@ -21,7 +21,12 @@ if(GTSAM_USE_SYSTEM_METIS)
|
||||||
mark_as_advanced(METIS_LIBRARY)
|
mark_as_advanced(METIS_LIBRARY)
|
||||||
|
|
||||||
add_library(metis-gtsam-if INTERFACE)
|
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 internal metislib.h API
|
||||||
|
# via extern "C"
|
||||||
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/libmetis>
|
||||||
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/GKlib>
|
||||||
|
)
|
||||||
target_link_libraries(metis-gtsam-if INTERFACE ${METIS_LIBRARY})
|
target_link_libraries(metis-gtsam-if INTERFACE ${METIS_LIBRARY})
|
||||||
endif()
|
endif()
|
||||||
else()
|
else()
|
||||||
|
@ -30,10 +35,12 @@ else()
|
||||||
add_subdirectory(${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis)
|
add_subdirectory(${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis)
|
||||||
|
|
||||||
target_include_directories(metis-gtsam BEFORE PUBLIC
|
target_include_directories(metis-gtsam BEFORE PUBLIC
|
||||||
|
$<INSTALL_INTERFACE:include/gtsam/3rdparty/metis/>
|
||||||
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/include>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/include>
|
||||||
|
# gtsam_unstable/partition/FindSeparator-inl.h uses internal metislib.h API
|
||||||
|
# via extern "C"
|
||||||
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/libmetis>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/libmetis>
|
||||||
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/GKlib>
|
$<BUILD_INTERFACE:${GTSAM_SOURCE_DIR}/gtsam/3rdparty/metis/GKlib>
|
||||||
$<INSTALL_INTERFACE:include/gtsam/3rdparty/metis/>
|
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(metis-gtsam-if INTERFACE)
|
add_library(metis-gtsam-if INTERFACE)
|
||||||
|
|
|
@ -25,11 +25,7 @@
|
||||||
#include <gtsam/3rdparty/CCOLAMD/Include/ccolamd.h>
|
#include <gtsam/3rdparty/CCOLAMD/Include/ccolamd.h>
|
||||||
|
|
||||||
#ifdef GTSAM_SUPPORT_NESTED_DISSECTION
|
#ifdef GTSAM_SUPPORT_NESTED_DISSECTION
|
||||||
#ifdef GTSAM_USE_SYSTEM_METIS
|
|
||||||
#include <metis.h>
|
#include <metis.h>
|
||||||
#else
|
|
||||||
#include <gtsam/3rdparty/metis/include/metis.h>
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
|
@ -20,11 +20,10 @@
|
||||||
|
|
||||||
#include "FindSeparator.h"
|
#include "FindSeparator.h"
|
||||||
|
|
||||||
#ifndef GTSAM_USE_SYSTEM_METIS
|
#include <metis.h>
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#include <metis.h>
|
#include <metislib.h>
|
||||||
#include "metislib.h"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -566,5 +565,3 @@ namespace gtsam { namespace partition {
|
||||||
}
|
}
|
||||||
|
|
||||||
}} //namespace
|
}} //namespace
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -20,8 +20,6 @@ using namespace std;
|
||||||
using namespace gtsam;
|
using namespace gtsam;
|
||||||
using namespace gtsam::partition;
|
using namespace gtsam::partition;
|
||||||
|
|
||||||
#ifndef GTSAM_USE_SYSTEM_METIS
|
|
||||||
|
|
||||||
/* ************************************************************************* */
|
/* ************************************************************************* */
|
||||||
// x0 - x1 - x2
|
// x0 - x1 - x2
|
||||||
// l3 l4
|
// l3 l4
|
||||||
|
@ -229,8 +227,6 @@ TEST ( Partition, findSeparator3_with_reduced_camera )
|
||||||
LONGS_EQUAL(2, partitionTable[28]);
|
LONGS_EQUAL(2, partitionTable[28]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* ************************************************************************* */
|
/* ************************************************************************* */
|
||||||
int main() { TestResult tr; return TestRegistry::runAllTests(tr);}
|
int main() { TestResult tr; return TestRegistry::runAllTests(tr);}
|
||||||
/* ************************************************************************* */
|
/* ************************************************************************* */
|
||||||
|
|
Loading…
Reference in New Issue