Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'extern/libmv/third_party/ceres/bundle.sh')
-rwxr-xr-xextern/libmv/third_party/ceres/bundle.sh48
1 files changed, 26 insertions, 22 deletions
diff --git a/extern/libmv/third_party/ceres/bundle.sh b/extern/libmv/third_party/ceres/bundle.sh
index a6f040b6d29..10c70ec51f7 100755
--- a/extern/libmv/third_party/ceres/bundle.sh
+++ b/extern/libmv/third_party/ceres/bundle.sh
@@ -43,8 +43,11 @@ done
rm -rf $tmp
-sources=`find ./include ./internal -type f -iname '*.cc' -or -iname '*.cpp' -or -iname '*.c' | sed -r 's/^\.\//\t/' | grep -v -E 'schur_eliminator_[0-9]_[0-9]_[0-9d].cc' | sort -d`
-generated_sources=`find ./include ./internal -type f -iname '*.cc' -or -iname '*.cpp' -or -iname '*.c' | sed -r 's/^\.\//#\t\t/' | grep -E 'schur_eliminator_[0-9]_[0-9]_[0-9d].cc' | sort -d`
+sources=`find ./include ./internal -type f -iname '*.cc' -or -iname '*.cpp' -or -iname '*.c' | sed -r 's/^\.\//\t/' | \
+ grep -v -E 'schur_eliminator_[0-9]_[0-9d]_[0-9d].cc' | \
+ grep -v -E 'partitioned_matrix_view_[0-9]_[0-9d]_[0-9d].cc' | sort -d`
+generated_sources=`find ./include ./internal -type f -iname '*.cc' -or -iname '*.cpp' -or -iname '*.c' | sed -r 's/^\.\//#\t\t/' | \
+ grep -E 'schur_eliminator_[0-9]_[0-9d]_[0-9d].cc|partitioned_matrix_view_[0-9]_[0-9d]_[0-9d].cc' | sort -d`
headers=`find ./include ./internal -type f -iname '*.h' | sed -r 's/^\.\//\t/' | sort -d`
src_dir=`find ./internal -type f -iname '*.cc' -exec dirname {} \; -or -iname '*.cpp' -exec dirname {} \; -or -iname '*.c' -exec dirname {} \; | sed -r 's/^\.\//\t/' | sort -d | uniq`
@@ -171,23 +174,18 @@ if(WITH_OPENMP)
)
endif()
-if(MSVC10)
- add_definitions(
- -D"CERES_HASH_NAMESPACE_START=namespace std {"
- -D"CERES_HASH_NAMESPACE_END=}"
- )
+include(CheckIncludeFileCXX)
+CHECK_INCLUDE_FILE_CXX(unordered_map UNORDERED_MAP_IN_STD_NAMESPACE)
+if(UNORDERED_MAP_IN_STD_NAMESPACE)
+ ADD_DEFINITIONS(-DCERES_STD_UNORDERED_MAP)
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(
- -DCERES_NO_TR1
- )
+ CHECK_INCLUDE_FILE_CXX("tr1/unordered_map" UNORDERED_MAP_IN_TR1_NAMESPACE)
+ if(UNORDERED_MAP_IN_TR1_NAMESPACE)
+ ADD_DEFINITIONS(-DCERES_TR1_UNORDERED_MAP)
+ else()
+ MESSAGE("-- Unable to find <unordered_map> or <tr1/unordered_map>. ")
+ MESSAGE("-- Replacing unordered_map/set with map/set (warning: slower!)")
+ ADD_DEFINITIONS(-DCERES_NO_UNORDERED_MAP)
endif()
endif()
@@ -211,11 +209,10 @@ defs = []
$src
src += env.Glob('internal/ceres/generated/schur_eliminator_d_d_d.cc')
+src += env.Glob('internal/ceres/generated/partitioned_matrix_view_d_d_d.cc')
#src += env.Glob('internal/ceres/generated/*.cc')
defs.append('CERES_HAVE_PTHREAD')
-defs.append('CERES_HASH_NAMESPACE_START=namespace std { namespace tr1 {')
-defs.append('CERES_HASH_NAMESPACE_END=}}')
defs.append('CERES_NO_SUITESPARSE')
defs.append('CERES_NO_CXSPARSE')
defs.append('CERES_NO_LAPACK')
@@ -225,8 +222,15 @@ defs.append('CERES_HAVE_RWLOCK')
if env['WITH_BF_OPENMP']:
defs.append('CERES_USE_OPENMP')
-if 'Mac OS X 10.5' in env['MACOSX_SDK']:
- defs.append('CERES_NO_TR1')
+conf = Configure(env)
+if conf.CheckCXXHeader("unordered_map"):
+ defs.append('CERES_STD_UNORDERED_MAP')
+elif conf.CheckCXXHeader("tr1/unordered_map"):
+ defs.append('CERES_TR1_UNORDERED_MAP')
+else:
+ print("-- Unable to find <unordered_map> or <tr1/unordered_map>. ")
+ print("-- Replacing unordered_map/set with map/set (warning: slower!)")
+ defs.append('CERES_NO_UNORDERED_MAP')
incs = '. ../../ ../../../Eigen3 ./include ./internal ../gflags'