diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-10-01 09:59:43 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-10-02 11:01:34 +0400 |
commit | 178f8400ee37e11ec5de4a64adfeaaae19cbffe6 (patch) | |
tree | fb2f3e4ed065b31764bb5fa5b4ed5167c2fccfa7 /extern/libmv | |
parent | 5ab4c6b7aa65eeb878b016666ca6551548c9bc80 (diff) |
Libmv: Add an option to disable schur specializations build-time
This way folks with few ram or those who wants to hack into Ceres
code might compile Blender much faster.
Diffstat (limited to 'extern/libmv')
-rw-r--r-- | extern/libmv/third_party/ceres/CMakeLists.txt | 4 | ||||
-rw-r--r-- | extern/libmv/third_party/ceres/SConscript | 9 | ||||
-rwxr-xr-x | extern/libmv/third_party/ceres/bundle.sh | 13 |
3 files changed, 18 insertions, 8 deletions
diff --git a/extern/libmv/third_party/ceres/CMakeLists.txt b/extern/libmv/third_party/ceres/CMakeLists.txt index a349d3fca26..0ca888f6393 100644 --- a/extern/libmv/third_party/ceres/CMakeLists.txt +++ b/extern/libmv/third_party/ceres/CMakeLists.txt @@ -262,7 +262,7 @@ set(SRC internal/ceres/wall_time.h ) -if(TRUE) +if(WITH_LIBMV_SCHUR_SPECIALIZATIONS) list(APPEND SRC internal/ceres/generated/partitioned_matrix_view_2_2_2.cc internal/ceres/generated/partitioned_matrix_view_2_2_3.cc @@ -301,6 +301,8 @@ if(TRUE) internal/ceres/generated/schur_eliminator_4_4_4.cc internal/ceres/generated/schur_eliminator_4_4_d.cc ) +else() + add_definitions(-DCERES_RESTRICT_SCHUR_SPECIALIZATION) endif() if(WIN32) diff --git a/extern/libmv/third_party/ceres/SConscript b/extern/libmv/third_party/ceres/SConscript index a8a50dbbf7d..44869c88d0b 100644 --- a/extern/libmv/third_party/ceres/SConscript +++ b/extern/libmv/third_party/ceres/SConscript @@ -13,9 +13,12 @@ src = [] defs = [] src += env.Glob('internal/ceres/*.cc') -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') +if env['WITH_BF_LIBMV_SCHUR_SPECIALIZATIONS']: + src += env.Glob('internal/ceres/generated/*.cc') +else: + 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') + defs.append('CERES_RESTRICT_SCHUR_SPECIALIZATION') defs.append('CERES_HAVE_PTHREAD') defs.append('CERES_NO_SUITESPARSE') diff --git a/extern/libmv/third_party/ceres/bundle.sh b/extern/libmv/third_party/ceres/bundle.sh index 89b32416e22..0679840e126 100755 --- a/extern/libmv/third_party/ceres/bundle.sh +++ b/extern/libmv/third_party/ceres/bundle.sh @@ -138,10 +138,12 @@ ${sources} ${headers} ) -if(TRUE) +if(WITH_LIBMV_SCHUR_SPECIALIZATIONS) list(APPEND SRC ${generated_sources} ) +else() + add_definitions-DCERES_RESTRICT_SCHUR_SPECIALIZATION) endif() if(WIN32) @@ -214,9 +216,12 @@ src = [] 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') +if env['WITH_BF_LIBMV_SCHUR_SPECIALIZATIONS']: + src += env.Glob('internal/ceres/generated/*.cc') +else: + 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') + defs.append('CERES_RESTRICT_SCHUR_SPECIALIZATION') defs.append('CERES_HAVE_PTHREAD') defs.append('CERES_NO_SUITESPARSE') |