Jamfile.v2 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. # Copyright 2012-2013 Karsten Ahnert
  2. # Copyright 2012-2013 Mario Mulansky
  3. # Copyright 2013 Pascal Germroth
  4. # Distributed under the Boost Software License, Version 1.0.
  5. # (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. # bring in rules for testing
  7. import testing ;
  8. # make sure you are using a new version of boost.build, otherwise the local
  9. # odeint will not be included properly
  10. # you can fix older boost.build versions by applying the patch provided in
  11. # odeint's root, e.g.:
  12. # cd ~/odeint-v2
  13. # sudo patch /usr/share/boost-build/build/toolset.jam toolset.jam.patch
  14. use-project boost : $(BOOST_ROOT) ;
  15. project
  16. : requirements
  17. <define>BOOST_ALL_NO_LIB=1
  18. # use test library
  19. <library>/boost//unit_test_framework
  20. <link>static
  21. <toolset>clang:<cxxflags>-Wno-unused-variable
  22. # <cxxflags>-D_SCL_SECURE_NO_WARNINGS
  23. ;
  24. test-suite "odeint"
  25. :
  26. [ run euler_stepper.cpp ]
  27. [ run runge_kutta_concepts.cpp ]
  28. [ run runge_kutta_error_concepts.cpp ]
  29. [ run runge_kutta_controlled_concepts.cpp ]
  30. [ run resizing.cpp ]
  31. [ run default_operations.cpp ]
  32. [ run range_algebra.cpp ]
  33. [ run implicit_euler.cpp ]
  34. # disable in clang
  35. [ run fusion_algebra.cpp : : : <toolset>clang:<build>no ]
  36. [ run stepper_with_units.cpp : : : <toolset>clang:<build>no ]
  37. [ run stepper_copying.cpp ]
  38. [ run stepper_with_ranges.cpp ]
  39. [ run rosenbrock4.cpp ]
  40. [ run rosenbrock4_mp.cpp ]
  41. [ run is_pair.cpp ]
  42. [ run adams_bashforth.cpp ]
  43. [ run adams_moulton.cpp ]
  44. [ run adams_bashforth_moulton.cpp ]
  45. [ run controlled_adams_bashforth_moulton.cpp ]
  46. [ run adaptive_adams_coefficients.cpp ]
  47. [ run generic_stepper.cpp ]
  48. [ run generic_error_stepper.cpp ]
  49. [ run bulirsch_stoer.cpp ]
  50. [ run integrate_times.cpp ]
  51. [ run integrate_times.cpp : : : <define>ODEINT_INTEGRATE_ITERATOR : integrate_times_iterator ]
  52. [ run integrate.cpp ]
  53. [ run integrate.cpp : : : <define>ODEINT_INTEGRATE_ITERATOR : integrate_iterator ]
  54. [ run integrate_implicit.cpp ]
  55. [ run integrate_implicit.cpp : : : <define>ODEINT_INTEGRATE_ITERATOR : integrate_implicit_iterator ]
  56. [ run generation.cpp ]
  57. [ run trivial_state.cpp ]
  58. [ run is_resizeable.cpp ]
  59. [ run resize.cpp ]
  60. [ run same_size.cpp ]
  61. [ run split.cpp ]
  62. [ run symplectic_steppers.cpp ]
  63. [ run integrators_symplectic.cpp ]
  64. [ run integrators_symplectic.cpp : : : <define>ODEINT_INTEGRATE_ITERATOR : integrators_symplectic_iterator ]
  65. [ run velocity_verlet.cpp ]
  66. [ run multi_array.cpp ]
  67. [ compile algebra_dispatcher.cpp ]
  68. [ run integrate_stepper_refs.cpp ]
  69. [ run const_step_iterator.cpp ]
  70. [ run const_step_time_iterator.cpp ]
  71. [ run adaptive_iterator.cpp ]
  72. [ run adaptive_time_iterator.cpp ]
  73. [ run n_step_iterator.cpp ]
  74. [ run n_step_time_iterator.cpp ]
  75. [ run times_iterator.cpp ]
  76. [ run times_time_iterator.cpp ]
  77. [ run step_size_limitation.cpp ]
  78. [ run integrate_overflow.cpp ]
  79. [ compile unwrap_boost_reference.cpp ]
  80. [ compile unwrap_reference.cpp : <cxxflags>-std=c++0x : unwrap_reference_C++11 ]
  81. [ compile std_array.cpp : <cxxflags>-std=c++0x ]
  82. :
  83. <testing.launcher>valgrind
  84. ;
  85. # also run numeric tests
  86. build-project numeric ;
  87. build-project regression ;
  88. # test-suite "odeint-iterator_integrate"
  89. # :
  90. # [ run integrate.cpp : : : : integrate_iterator ]
  91. # : <testing.launcher>valgrind
  92. # <define>ODEINT_ITERATOR_INTEGRATE
  93. # ;