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:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-06-14 17:33:37 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-06-14 17:33:37 +0400
commit554107b6a1c4a89288e77fbf3e0d11c4ec777bfe (patch)
treec47aefbe67e9ea7e24b64af735b6402a5c31c9b8 /extern/libmv/third_party/ceres/bundle.sh
parent1f19bacf8ee39b779b4e2940bed758ade1191ee2 (diff)
Disable fixed-sized specializations for schur solver
As far as i remember Keir, this should be safe for our usages of ceres and it should save noticeable amount of time and used memory when compiling blender with libmv support. Quick tests with tracking went smooth after this.
Diffstat (limited to 'extern/libmv/third_party/ceres/bundle.sh')
-rwxr-xr-xextern/libmv/third_party/ceres/bundle.sh20
1 files changed, 19 insertions, 1 deletions
diff --git a/extern/libmv/third_party/ceres/bundle.sh b/extern/libmv/third_party/ceres/bundle.sh
index f54342180db..99aaadd8d87 100755
--- a/extern/libmv/third_party/ceres/bundle.sh
+++ b/extern/libmv/third_party/ceres/bundle.sh
@@ -1,5 +1,6 @@
#!/bin/sh
+if false; then
if [ "x$1" = "x--i-really-know-what-im-doing" ] ; then
echo Proceeding as requested by command line ...
else
@@ -36,7 +37,10 @@ done
rm -rf $tmp
-sources=`find ./include ./internal -type f -iname '*.cc' -or -iname '*.cpp' -or -iname '*.c' | sed -r 's/^\.\//\t/' | sort -d`
+fi
+
+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`
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`
@@ -48,6 +52,10 @@ for x in $src_dir $src_third_dir; do
continue;
fi
+ if test `echo "$x" | grep -c generated` -eq 1; then
+ continue;
+ fi
+
if stat $x/*.cpp > /dev/null 2>&1; then
t="src += env.Glob('`echo $x'/*.cpp'`')"
fi
@@ -121,6 +129,12 @@ ${sources}
${headers}
)
+#if(FALSE)
+# list(APPEND SRC
+${generated_sources}
+# )
+#endif()
+
if(WIN32)
list(APPEND INC
../glog/src/windows
@@ -143,6 +157,7 @@ add_definitions(
-D"CERES_HASH_NAMESPACE_END=}}"
-DCERES_NO_SUITESPARSE
-DCERES_DONT_HAVE_PROTOCOL_BUFFERS
+ -DCERES_RESTRICT_SCHUR_SPECIALIZATION
)
blender_add_lib(extern_ceres "\${SRC}" "\${INC}" "\${INC_SYS}")
@@ -164,12 +179,15 @@ src = []
defs = []
$src
+src += env.Glob('internal/ceres/generated/schur_eliminator_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_DONT_HAVE_PROTOCOL_BUFFERS')
+defs.append('CERES_RESTRICT_SCHUR_SPECIALIZATION')
incs = '. ../../ ../../../Eigen3 ./include ./internal ../gflags'