diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-09-16 16:24:54 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-09-16 16:24:54 +0400 |
commit | a4992871d62b50cd9e6ea2fb4863aab6193ac774 (patch) | |
tree | 1c03589d60abb84dfab6feaa7acbe3b06dd92082 /extern | |
parent | 02ef4cc33db22cbd6cd68bcfea55395ebc2b8eb5 (diff) |
Ceres: tweak namespace for hash classes for MSVC2010
Not sure if it'll solve all issues, but at least it should reduce
amount of errors.
Also added missed patch from previous commit.
Diffstat (limited to 'extern')
-rw-r--r-- | extern/libmv/third_party/ceres/CMakeLists.txt | 14 | ||||
-rwxr-xr-x | extern/libmv/third_party/ceres/bundle.sh | 14 | ||||
-rw-r--r-- | extern/libmv/third_party/ceres/patches/msvc_glog_fix.patch | 50 | ||||
-rw-r--r-- | extern/libmv/third_party/ceres/patches/series | 1 |
4 files changed, 75 insertions, 4 deletions
diff --git a/extern/libmv/third_party/ceres/CMakeLists.txt b/extern/libmv/third_party/ceres/CMakeLists.txt index 6f893090a74..16b7f12fb33 100644 --- a/extern/libmv/third_party/ceres/CMakeLists.txt +++ b/extern/libmv/third_party/ceres/CMakeLists.txt @@ -231,14 +231,24 @@ endif() add_definitions( -DCERES_HAVE_PTHREAD - -D"CERES_HASH_NAMESPACE_START=namespace std { namespace tr1 {" - -D"CERES_HASH_NAMESPACE_END=}}" -DCERES_NO_SUITESPARSE -DCERES_NO_CXSPARSE -DCERES_NO_PROTOCOL_BUFFERS -DCERES_RESTRICT_SCHUR_SPECIALIZATION ) +if(MSVC10) + add_definitions( + -D"CERES_HASH_NAMESPACE_START=namespace std {" + -D"CERES_HASH_NAMESPACE_END=}" + ) +else() + add_definitions( + -D"CERES_HASH_NAMESPACE_START=namespace std { namespace tr1 {" + -D"CERES_HASH_NAMESPACE_END=}}" + ) +endif() + if(APPLE) if( STREQUAL "10.5") add_definitions( diff --git a/extern/libmv/third_party/ceres/bundle.sh b/extern/libmv/third_party/ceres/bundle.sh index 8689f58ae4c..94ab8f87df6 100755 --- a/extern/libmv/third_party/ceres/bundle.sh +++ b/extern/libmv/third_party/ceres/bundle.sh @@ -156,14 +156,24 @@ endif() add_definitions( -DCERES_HAVE_PTHREAD - -D"CERES_HASH_NAMESPACE_START=namespace std { namespace tr1 {" - -D"CERES_HASH_NAMESPACE_END=}}" -DCERES_NO_SUITESPARSE -DCERES_NO_CXSPARSE -DCERES_NO_PROTOCOL_BUFFERS -DCERES_RESTRICT_SCHUR_SPECIALIZATION ) +if(MSVC10) + add_definitions( + -D"CERES_HASH_NAMESPACE_START=namespace std {" + -D"CERES_HASH_NAMESPACE_END=}" + ) +else() + add_definitions( + -D"CERES_HASH_NAMESPACE_START=namespace std { namespace tr1 {" + -D"CERES_HASH_NAMESPACE_END=}}" + ) +endif() + if(APPLE) if(${CMAKE_OSX_DEPLOYMENT_TARGET} STREQUAL "10.5") add_definitions( diff --git a/extern/libmv/third_party/ceres/patches/msvc_glog_fix.patch b/extern/libmv/third_party/ceres/patches/msvc_glog_fix.patch new file mode 100644 index 00000000000..f3200fb8e0a --- /dev/null +++ b/extern/libmv/third_party/ceres/patches/msvc_glog_fix.patch @@ -0,0 +1,50 @@ +diff --git a/internal/ceres/block_random_access_dense_matrix.cc b/internal/ceres/block_random_access_dense_matrix.cc +index aedfc74..0f95e89 100644 +--- a/internal/ceres/block_random_access_dense_matrix.cc ++++ b/internal/ceres/block_random_access_dense_matrix.cc +@@ -28,12 +28,12 @@ + // + // Author: sameeragarwal@google.com (Sameer Agarwal) + ++#include "glog/logging.h" + #include "ceres/block_random_access_dense_matrix.h" + + #include <vector> + #include "ceres/internal/eigen.h" + #include "ceres/internal/scoped_ptr.h" +-#include "glog/logging.h" + + namespace ceres { + namespace internal { +diff --git a/internal/ceres/block_random_access_sparse_matrix.cc b/internal/ceres/block_random_access_sparse_matrix.cc +index f789436..9ed62ce 100644 +--- a/internal/ceres/block_random_access_sparse_matrix.cc ++++ b/internal/ceres/block_random_access_sparse_matrix.cc +@@ -28,6 +28,7 @@ + // + // Author: sameeragarwal@google.com (Sameer Agarwal) + ++#include "glog/logging.h" + #include "ceres/block_random_access_sparse_matrix.h" + + #include <algorithm> +@@ -39,7 +40,6 @@ + #include "ceres/mutex.h" + #include "ceres/triplet_sparse_matrix.h" + #include "ceres/types.h" +-#include "glog/logging.h" + + namespace ceres { + namespace internal { +diff --git a/internal/ceres/schur_complement_solver.cc b/internal/ceres/schur_complement_solver.cc +index b9224d8..2cbe78d 100644 +--- a/internal/ceres/schur_complement_solver.cc ++++ b/internal/ceres/schur_complement_solver.cc +@@ -38,6 +38,7 @@ + #endif // CERES_NO_CXSPARSE + + #include "Eigen/Dense" ++#include "glog/logging.h" + #include "ceres/block_random_access_dense_matrix.h" + #include "ceres/block_random_access_matrix.h" + #include "ceres/block_random_access_sparse_matrix.h" diff --git a/extern/libmv/third_party/ceres/patches/series b/extern/libmv/third_party/ceres/patches/series index 3e65145696d..6386e49220a 100644 --- a/extern/libmv/third_party/ceres/patches/series +++ b/extern/libmv/third_party/ceres/patches/series @@ -1 +1,2 @@ collections_port.h.mingw.patch +msvc_glog_fix.patch |