Skip to content

Commit 52f1cea

Browse files
authored
Merge pull request #6500 from hjmjohnson/comp-future-legacy-vnl-eigensystem-tests
COMP: Gate VXL eigensystem tests under ITK_FUTURE_LEGACY_REMOVE
2 parents c0c1ccb + 434a420 commit 52f1cea

2 files changed

Lines changed: 36 additions & 7 deletions

File tree

Modules/ThirdParty/VNL/src/vxl/core/vnl/algo/tests/CMakeLists.txt

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This is core/vnl/algo/tests/CMakeLists.txt
22

3-
add_executable( vnl_algo_test_all
3+
set(vnl_algo_test_sources
44
# Driver source and utilities
55
test_driver.cxx
66
test_util.cxx test_util.h
@@ -11,52 +11,67 @@ add_executable( vnl_algo_test_all
1111
test_cholesky.cxx
1212
test_complex_algo.cxx
1313
test_determinant.cxx
14-
test_generalized_eigensystem.cxx
1514
test_ldl_cholesky.cxx
1615
test_levenberg_marquardt.cxx
1716
test_matrix_update.cxx
1817
test_minimizers.cxx
1918
test_powell.cxx
2019
test_qr.cxx
2120
test_rank.cxx
22-
test_real_eigensystem.cxx
2321
test_sparse_matrix.cxx
2422
test_svd.cxx
2523
test_svd_fixed.cxx
26-
test_symmetric_eigensystem.cxx
2724
test_integral.cxx
2825
test_solve_qp.cxx
2926
test_sparse_lu.cxx
3027
test_bracket_minimum.cxx
3128
test_brent_minimizer.cxx
3229
)
3330

31+
# The eispack-backed vnl_*_eigensystem solvers are excluded from the build under
32+
# ITK_FUTURE_LEGACY_REMOVE, so their tests cannot link there.
33+
if(NOT ITK_FUTURE_LEGACY_REMOVE)
34+
list(APPEND vnl_algo_test_sources
35+
test_generalized_eigensystem.cxx
36+
test_real_eigensystem.cxx
37+
test_symmetric_eigensystem.cxx
38+
)
39+
endif()
40+
41+
add_executable( vnl_algo_test_all ${vnl_algo_test_sources} )
42+
if(ITK_FUTURE_LEGACY_REMOVE)
43+
target_compile_definitions( vnl_algo_test_all PRIVATE VNL_EISPACK_REMOVED )
44+
endif()
45+
3446
target_link_libraries( vnl_algo_test_all itkvnl_algo itktestlib ${CMAKE_THREAD_LIBS} )
3547

3648
add_test( NAME vnl_algo_test_algo COMMAND vnl_algo_test_all test_algo )
3749
add_test( NAME vnl_algo_test_amoeba COMMAND vnl_algo_test_all test_amoeba )
3850
add_test( NAME vnl_algo_test_cholesky COMMAND vnl_algo_test_all test_cholesky )
3951
add_test( NAME vnl_algo_test_complex_algo COMMAND vnl_algo_test_all test_complex_algo )
4052
add_test( NAME vnl_algo_test_determinant COMMAND vnl_algo_test_all test_determinant )
41-
add_test( NAME vnl_algo_test_generalized_eigensystem COMMAND vnl_algo_test_all test_generalized_eigensystem )
4253
add_test( NAME vnl_algo_test_ldl_cholesky COMMAND vnl_algo_test_all test_ldl_cholesky )
4354
add_test( NAME vnl_algo_test_levenberg_marquardt COMMAND vnl_algo_test_all test_levenberg_marquardt )
4455
add_test( NAME vnl_algo_test_matrix_update COMMAND vnl_algo_test_all test_matrix_update )
4556
add_test( NAME vnl_algo_test_minimizers COMMAND vnl_algo_test_all test_minimizers )
4657
add_test( NAME vnl_algo_test_powell COMMAND vnl_algo_test_all test_powell )
4758
add_test( NAME vnl_algo_test_qr COMMAND vnl_algo_test_all test_qr )
4859
add_test( NAME vnl_algo_test_rank COMMAND vnl_algo_test_all test_rank )
49-
add_test( NAME vnl_algo_test_real_eigensystem COMMAND vnl_algo_test_all test_real_eigensystem )
5060
add_test( NAME vnl_algo_test_integral COMMAND vnl_algo_test_all test_integral )
5161
add_test( NAME vnl_algo_test_solve_qp COMMAND vnl_algo_test_all test_solve_qp )
5262
add_test( NAME vnl_algo_test_sparse_lu COMMAND vnl_algo_test_all test_sparse_lu )
5363
add_test( NAME vnl_algo_test_bracket_minimum COMMAND vnl_algo_test_all test_bracket_minimum )
5464
add_test( NAME vnl_algo_test_brent_minimizer COMMAND vnl_algo_test_all test_brent_minimizer )
55-
add_test( NAME vnl_algo_test_symmetric_eigensystem COMMAND vnl_algo_test_all test_symmetric_eigensystem )
5665
add_test( NAME vnl_algo_test_sparse_matrix COMMAND vnl_algo_test_all test_sparse_matrix )
5766
add_test( NAME vnl_algo_test_svd COMMAND vnl_algo_test_all test_svd )
5867
add_test( NAME vnl_algo_test_svd_fixed COMMAND vnl_algo_test_all test_svd_fixed )
5968

69+
if(NOT ITK_FUTURE_LEGACY_REMOVE)
70+
add_test( NAME vnl_algo_test_generalized_eigensystem COMMAND vnl_algo_test_all test_generalized_eigensystem )
71+
add_test( NAME vnl_algo_test_real_eigensystem COMMAND vnl_algo_test_all test_real_eigensystem )
72+
add_test( NAME vnl_algo_test_symmetric_eigensystem COMMAND vnl_algo_test_all test_symmetric_eigensystem )
73+
endif()
74+
6075
add_executable( vnl_algo_test_include test_include.cxx )
6176
target_link_libraries( vnl_algo_test_include itkvnl_algo )
6277
add_executable( vnl_algo_test_template_include test_template_include.cxx )

Modules/ThirdParty/VNL/src/vxl/core/vnl/algo/tests/test_driver.cxx

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,31 @@
11
#include "testlib/testlib_register.h"
22

3+
// VNL_EISPACK_REMOVED is defined by CMake under ITK_FUTURE_LEGACY_REMOVE, where
4+
// the eispack-backed vnl_*_eigensystem solvers are excluded from the build.
35
DECLARE(test_amoeba);
46
DECLARE(test_cholesky);
57
DECLARE(test_determinant);
68
DECLARE(test_rank);
9+
#ifndef VNL_EISPACK_REMOVED
710
DECLARE(test_generalized_eigensystem);
11+
#endif
812
DECLARE(test_ldl_cholesky);
913
DECLARE(test_levenberg_marquardt);
1014
DECLARE(test_matrix_update);
1115
DECLARE(test_minimizers);
1216
DECLARE(test_powell);
1317
DECLARE(test_qr);
1418
DECLARE(test_rational);
19+
#ifndef VNL_EISPACK_REMOVED
1520
DECLARE(test_real_eigensystem);
21+
#endif
1622
DECLARE(test_sparse_matrix);
1723
DECLARE(test_integral);
1824
DECLARE(test_svd);
1925
DECLARE(test_svd_fixed);
26+
#ifndef VNL_EISPACK_REMOVED
2027
DECLARE(test_symmetric_eigensystem);
28+
#endif
2129
DECLARE(test_algo);
2230
DECLARE(test_solve_qp);
2331
DECLARE(test_sparse_lu);
@@ -32,19 +40,25 @@ register_tests()
3240
REGISTER(test_cholesky);
3341
REGISTER(test_determinant);
3442
REGISTER(test_rank);
43+
#ifndef VNL_EISPACK_REMOVED
3544
REGISTER(test_generalized_eigensystem);
45+
#endif
3646
REGISTER(test_ldl_cholesky);
3747
REGISTER(test_levenberg_marquardt);
3848
REGISTER(test_matrix_update);
3949
REGISTER(test_minimizers);
4050
REGISTER(test_powell);
4151
REGISTER(test_qr);
52+
#ifndef VNL_EISPACK_REMOVED
4253
REGISTER(test_real_eigensystem);
54+
#endif
4355
REGISTER(test_integral);
4456
REGISTER(test_sparse_matrix);
4557
REGISTER(test_svd);
4658
REGISTER(test_svd_fixed);
59+
#ifndef VNL_EISPACK_REMOVED
4760
REGISTER(test_symmetric_eigensystem);
61+
#endif
4862
REGISTER(test_algo);
4963
REGISTER(test_solve_qp);
5064
REGISTER(test_sparse_lu);

0 commit comments

Comments
 (0)