From 68297dedb530773eebea133b575636e5647c9bfc Mon Sep 17 00:00:00 2001 From: dellaert Date: Sun, 16 Mar 2014 16:36:07 -0400 Subject: [PATCH 1/7] Removed unused variable --- gtsam_unstable/dynamics/PoseRTV.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/gtsam_unstable/dynamics/PoseRTV.cpp b/gtsam_unstable/dynamics/PoseRTV.cpp index 4645af781..2246baee1 100644 --- a/gtsam_unstable/dynamics/PoseRTV.cpp +++ b/gtsam_unstable/dynamics/PoseRTV.cpp @@ -15,7 +15,6 @@ namespace gtsam { using namespace std; static const Vector g = delta(3, 2, 9.81); -const double pi = M_PI; /* ************************************************************************* */ double bound(double a, double min, double max) { From 3070e63cccf46fe577a3d1b4e750b3160bcfe3a8 Mon Sep 17 00:00:00 2001 From: Andrew Melim Date: Mon, 17 Mar 2014 11:42:10 -0400 Subject: [PATCH 2/7] cmake option to build metis executables --- gtsam/3rdparty/CMakeLists.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gtsam/3rdparty/CMakeLists.txt b/gtsam/3rdparty/CMakeLists.txt index 31947838d..f77454b9b 100644 --- a/gtsam/3rdparty/CMakeLists.txt +++ b/gtsam/3rdparty/CMakeLists.txt @@ -15,16 +15,17 @@ if(NOT GTSAM_USE_SYSTEM_EIGEN) install(FILES Eigen/Eigen/${filename} DESTINATION include/gtsam/3rdparty/Eigen/Eigen) endif() endforeach(eigen_dir) - + # Add to project source set(eigen_headers ${eigen_headers} PARENT_SCOPE) - + # install Eigen - only the headers in our 3rdparty directory - install(DIRECTORY Eigen/Eigen + install(DIRECTORY Eigen/Eigen DESTINATION include/gtsam/3rdparty/Eigen FILES_MATCHING PATTERN "*.h") endif() +option(GTSAM_BUILD_METIS_EXECUTABLES "Build metis library executables" OFF) add_subdirectory(metis-5.1.0) ############ NOTE: When updating GeographicLib be sure to disable building their examples ############ and unit tests by commenting out their lines: From 8e848946abe3345b92c869e5ff3906371f83600d Mon Sep 17 00:00:00 2001 From: Andrew Melim Date: Mon, 17 Mar 2014 11:46:07 -0400 Subject: [PATCH 3/7] Default build executables to off --- gtsam/3rdparty/metis-5.1.0/CMakeLists.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt index 4c4ecf566..69774c468 100644 --- a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt +++ b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt @@ -24,4 +24,7 @@ include_directories(include) # Recursively look for CMakeLists.txt in subdirs. add_subdirectory("include") add_subdirectory("libmetis") -add_subdirectory("programs") + +if(GTSAM_BUILD_METIS_EXECUTABLES) + add_subdirectory("programs") +endif() From da09c31c7b8eb2ffd0aa031ad74efa013efe83cb Mon Sep 17 00:00:00 2001 From: Andrew Melim Date: Mon, 17 Mar 2014 11:59:13 -0400 Subject: [PATCH 4/7] Supress metis warnings for gcc --- gtsam/3rdparty/metis-5.1.0/CMakeLists.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt index 69774c468..e80d3089b 100644 --- a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt +++ b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt @@ -1,6 +1,9 @@ cmake_minimum_required(VERSION 2.8) project(METIS) +# Add flags for currect directory and below +add_definitions(-Wno-unknown-pragmas) + set(GKLIB_PATH ${PROJECT_SOURCE_DIR}/GKlib CACHE PATH "path to GKlib") set(SHARED FALSE CACHE BOOL "build a shared library") From 719592258ba66ce1f1a03ef19f0fdb947c35e664 Mon Sep 17 00:00:00 2001 From: Andrew Melim Date: Mon, 17 Mar 2014 12:04:40 -0400 Subject: [PATCH 5/7] Remove unused variable --- gtsam_unstable/partition/GenericGraph.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gtsam_unstable/partition/GenericGraph.cpp b/gtsam_unstable/partition/GenericGraph.cpp index 1ee462728..580268c06 100644 --- a/gtsam_unstable/partition/GenericGraph.cpp +++ b/gtsam_unstable/partition/GenericGraph.cpp @@ -29,11 +29,10 @@ namespace gtsam { namespace partition { typedef map Connections; // create disjoin set forest - int numNodes = keys.size(); DSFVector dsf(workspace.dsf, keys); FactorList factors(graph.begin(), graph.end()); - size_t i, nrFactors = factors.size(); + size_t nrFactors = factors.size(); FactorList::iterator itEnd; workspace.prepareDictionary(keys); while (nrFactors) { @@ -135,7 +134,7 @@ namespace gtsam { namespace partition { typedef list FactorList; FactorList factors(graph.begin(), graph.end()); - size_t i, nrFactors = factors.size(); + size_t nrFactors = factors.size(); FactorList::iterator itEnd; while (nrFactors) { @@ -445,7 +444,7 @@ namespace gtsam { namespace partition { // find the minimum constraint for cameras and landmarks size_t minFoundConstraintsPerCamera = 10000; size_t minFoundConstraintsPerLandmark = 10000; - + for (int i=0; i Date: Mon, 17 Mar 2014 12:07:54 -0400 Subject: [PATCH 6/7] Correct signed vs unsigned comparison warnings --- gtsam_unstable/partition/GenericGraph.cpp | 18 +++++++++--------- gtsam_unstable/partition/GenericGraph.h | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/gtsam_unstable/partition/GenericGraph.cpp b/gtsam_unstable/partition/GenericGraph.cpp index 580268c06..aca916a04 100644 --- a/gtsam_unstable/partition/GenericGraph.cpp +++ b/gtsam_unstable/partition/GenericGraph.cpp @@ -224,7 +224,7 @@ namespace gtsam { namespace partition { // find singular cameras and landmarks foundSingularCamera = false; foundSingularLandmark = false; - for (int i=0; i > findIslands(const GenericGraph3D& graph, const vector& keys, WorkSpace& workspace, - const int minNrConstraintsPerCamera, const int minNrConstraintsPerLandmark) { + const size_t minNrConstraintsPerCamera, const size_t minNrConstraintsPerLandmark) { // create disjoint set forest workspace.prepareDictionary(keys); @@ -319,7 +319,7 @@ namespace gtsam { namespace partition { } // sanity check - int nrKeys = 0; + size_t nrKeys = 0; BOOST_FOREACH(const vector& island, islands) nrKeys += island.size(); if (nrKeys != keys.size()) { @@ -335,7 +335,7 @@ namespace gtsam { namespace partition { /* ************************************************************************* */ // return the number of intersection between two **sorted** landmark vectors inline int getNrCommonLandmarks(const vector& landmarks1, const vector& landmarks2){ - int i1 = 0, i2 = 0; + size_t i1 = 0, i2 = 0; int nrCommonLandmarks = 0; while (i1 < landmarks1.size() && i2 < landmarks2.size()) { if (landmarks1[i1] < landmarks2[i2]) @@ -391,8 +391,8 @@ namespace gtsam { namespace partition { int factorIndex = 0; int camera1, camera2, nrTotalConstraints; bool hasOdometry; - for (int i1=0; i1& frontals, - WorkSpace& workspace, const int minNrConstraintsPerCamera, const int minNrConstraintsPerLandmark) { + WorkSpace& workspace, const size_t minNrConstraintsPerCamera, const size_t minNrConstraintsPerLandmark) { workspace.prepareDictionary(frontals); vector nrConstraints(workspace.dictionary.size(), 0); @@ -445,7 +445,7 @@ namespace gtsam { namespace partition { size_t minFoundConstraintsPerCamera = 10000; size_t minFoundConstraintsPerLandmark = 10000; - for (int i=0; i > findIslands(const GenericGraph3D& graph, const std::vector& keys, WorkSpace& workspace, - const int minNrConstraintsPerCamera, const int minNrConstraintsPerLandmark); + const size_t minNrConstraintsPerCamera, const size_t minNrConstraintsPerLandmark); /** eliminate the sensors from generic graph */ void reduceGenericGraph(const GenericGraph3D& graph, const std::vector& cameraKeys, const std::vector& landmarkKeys, @@ -104,7 +104,7 @@ namespace gtsam { namespace partition { /** check whether the 3D graph is singular (under constrained) */ void checkSingularity(const GenericGraph3D& graph, const std::vector& frontals, - WorkSpace& workspace, const int minNrConstraintsPerCamera, const int minNrConstraintsPerLandmark); + WorkSpace& workspace, const size_t minNrConstraintsPerCamera, const size_t minNrConstraintsPerLandmark); /** print the graph **/ From c5c1460081a7cff0b715ce749149de2555f5a007 Mon Sep 17 00:00:00 2001 From: cbeall3 Date: Mon, 17 Mar 2014 15:49:14 -0400 Subject: [PATCH 7/7] silence two more metis warnings --- gtsam/3rdparty/metis-5.1.0/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt index e80d3089b..ceeb5d2aa 100644 --- a/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt +++ b/gtsam/3rdparty/metis-5.1.0/CMakeLists.txt @@ -2,7 +2,9 @@ cmake_minimum_required(VERSION 2.8) project(METIS) # Add flags for currect directory and below +add_definitions(-Wno-unused-variable) add_definitions(-Wno-unknown-pragmas) +add_definitions(-Wno-sometimes-uninitialized) set(GKLIB_PATH ${PROJECT_SOURCE_DIR}/GKlib CACHE PATH "path to GKlib") set(SHARED FALSE CACHE BOOL "build a shared library")