# copyright John Maddock 2012 # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt. import modules ; import path ; import ../../config/checks/config : requires ; local ntl-path = [ modules.peek : NTL_PATH ] ; local gmp_path = [ modules.peek : GMP_PATH ] ; local mpfr_path = [ modules.peek : MPFR_PATH ] ; local tommath_path = [ modules.peek : TOMMATH_PATH ] ; project : requirements freebsd:"-lrt" linux:"-lrt" pgi:"-lrt" $(gmp_path) $(gmp_path)/mpfr $(gmp_path)/gmpfrxx $(mpfr_path) $(tommath_path) ../../.. $(gmp_path) $(mpfr_path) $(mpfr_path)/build.vc10/lib/Win32/Debug $(tommath_path) # We set these to make it easier to set up and test GMP and MPFR under Win32: msvc:static msvc:static intel-win:static intel-win:static BOOST_ALL_NO_LIB off NDEBUG=1 ; lib gmp ; lib mpfr ; lib quadmath ; lib f2c ; if $(tommath_path) { TOMMATH = [ GLOB $(tommath_path) : *.c ] ; } else { lib tommath ; TOMMATH = tommath ; } test-suite performance : [ exe performance_test : performance_test.cpp performance_test_files/test01.cpp performance_test_files/test18.cpp performance_test_files/test35.cpp performance_test_files/test02.cpp performance_test_files/test19.cpp performance_test_files/test36.cpp performance_test_files/test03.cpp performance_test_files/test20.cpp performance_test_files/test37.cpp performance_test_files/test04.cpp performance_test_files/test21.cpp performance_test_files/test38.cpp performance_test_files/test05.cpp performance_test_files/test22.cpp performance_test_files/test39.cpp performance_test_files/test06.cpp performance_test_files/test23.cpp performance_test_files/test40.cpp performance_test_files/test07.cpp performance_test_files/test24.cpp performance_test_files/test41.cpp performance_test_files/test08.cpp performance_test_files/test25.cpp performance_test_files/test42.cpp performance_test_files/test09.cpp performance_test_files/test26.cpp performance_test_files/test43.cpp performance_test_files/test10.cpp performance_test_files/test27.cpp performance_test_files/test44.cpp performance_test_files/test11.cpp performance_test_files/test28.cpp performance_test_files/test45.cpp performance_test_files/test12.cpp performance_test_files/test29.cpp performance_test_files/test46.cpp performance_test_files/test13.cpp performance_test_files/test30.cpp performance_test_files/test47.cpp performance_test_files/test14.cpp performance_test_files/test31.cpp performance_test_files/test48.cpp performance_test_files/test15.cpp performance_test_files/test32.cpp performance_test_files/test49.cpp performance_test_files/test16.cpp performance_test_files/test33.cpp performance_test_files/test50.cpp performance_test_files/test17.cpp performance_test_files/test34.cpp performance_test_files/test51.cpp /boost/system//boost_system : release [ check-target-builds ../config//has_gmp : TEST_MPF TEST_MPZ TEST_MPQ gmp : ] [ check-target-builds ../config//has_mpfr : TEST_MPFR mpfr : ] [ check-target-builds ../config//has_tommath : TEST_TOMMATH $(TOMMATH) : ] TEST_CPP_DEC_FLOAT TEST_CPP_BIN_FLOAT TEST_CPP_INT TEST_CPP_INT_RATIONAL TEST_MUL_ONLY [ requires cxx11_auto_declarations cxx11_allocator ] ] [ exe miller_rabin_performance : miller_rabin_performance.cpp miller_rabin_performance_files/test01.cpp miller_rabin_performance_files/test07.cpp miller_rabin_performance_files/test02.cpp miller_rabin_performance_files/test08.cpp miller_rabin_performance_files/test03.cpp miller_rabin_performance_files/test09.cpp miller_rabin_performance_files/test04.cpp miller_rabin_performance_files/test10.cpp miller_rabin_performance_files/test05.cpp miller_rabin_performance_files/test11.cpp miller_rabin_performance_files/test06.cpp miller_rabin_performance_files/test12.cpp /boost/system//boost_system /boost/chrono//boost_chrono : release [ check-target-builds ../config//has_gmp : TEST_MPF TEST_MPZ gmp : ] [ check-target-builds ../config//has_mpfr : TEST_MPFR mpfr : ] [ check-target-builds ../config//has_tommath : TEST_TOMMATH $(TOMMATH) : ] TEST_CPP_DEC_FLOAT TEST_CPP_INT ] [ exe sf_performance : sf_performance.cpp sf_performance_basic.cpp sf_performance_bessel.cpp sf_performance_nct.cpp sf_performance_poly.cpp sf_performance_files/sf_performance_basic_1.cpp sf_performance_files/sf_performance_nct_06.cpp sf_performance_files/sf_performance_basic_2.cpp sf_performance_files/sf_performance_nct_07.cpp sf_performance_files/sf_performance_basic_3.cpp sf_performance_files/sf_performance_nct_08.cpp sf_performance_files/sf_performance_basic_4.cpp sf_performance_files/sf_performance_nct_09.cpp sf_performance_files/sf_performance_basic_5.cpp sf_performance_files/sf_performance_nct_10.cpp sf_performance_files/sf_performance_basic_6.cpp sf_performance_files/sf_performance_nct_11.cpp sf_performance_files/sf_performance_basic_7.cpp sf_performance_files/sf_performance_nct_12.cpp sf_performance_files/sf_performance_basic_8.cpp sf_performance_files/sf_performance_nct_13.cpp sf_performance_files/sf_performance_basic_9.cpp sf_performance_files/sf_performance_nct_14.cpp sf_performance_files/sf_performance_bessel_01.cpp sf_performance_files/sf_performance_nct_15.cpp sf_performance_files/sf_performance_bessel_02.cpp sf_performance_files/sf_performance_nct_16.cpp sf_performance_files/sf_performance_bessel_03.cpp sf_performance_files/sf_performance_nct_17.cpp sf_performance_files/sf_performance_bessel_04.cpp sf_performance_files/sf_performance_nct_18.cpp sf_performance_files/sf_performance_bessel_05.cpp sf_performance_files/sf_performance_nct_19.cpp sf_performance_files/sf_performance_bessel_06.cpp sf_performance_files/sf_performance_nct_20.cpp sf_performance_files/sf_performance_bessel_07.cpp sf_performance_files/sf_performance_poly_01.cpp sf_performance_files/sf_performance_bessel_08.cpp sf_performance_files/sf_performance_poly_02.cpp sf_performance_files/sf_performance_bessel_09.cpp sf_performance_files/sf_performance_poly_03.cpp sf_performance_files/sf_performance_bessel_10.cpp sf_performance_files/sf_performance_poly_04.cpp sf_performance_files/sf_performance_bessel_11.cpp sf_performance_files/sf_performance_poly_05.cpp sf_performance_files/sf_performance_bessel_12.cpp sf_performance_files/sf_performance_poly_06.cpp sf_performance_files/sf_performance_bessel_13.cpp sf_performance_files/sf_performance_poly_07.cpp sf_performance_files/sf_performance_bessel_14.cpp sf_performance_files/sf_performance_poly_08.cpp sf_performance_files/sf_performance_bessel_15.cpp sf_performance_files/sf_performance_poly_09.cpp sf_performance_files/sf_performance_bessel_16.cpp sf_performance_files/sf_performance_poly_10.cpp sf_performance_files/sf_performance_bessel_17.cpp sf_performance_files/sf_performance_poly_11.cpp sf_performance_files/sf_performance_bessel_18.cpp sf_performance_files/sf_performance_poly_12.cpp sf_performance_files/sf_performance_bessel_19.cpp sf_performance_files/sf_performance_poly_13.cpp sf_performance_files/sf_performance_nct_01.cpp sf_performance_files/sf_performance_poly_14.cpp sf_performance_files/sf_performance_nct_02.cpp sf_performance_files/sf_performance_poly_15.cpp sf_performance_files/sf_performance_nct_03.cpp sf_performance_files/sf_performance_poly_16.cpp sf_performance_files/sf_performance_nct_04.cpp sf_performance_files/sf_performance_poly_17.cpp sf_performance_files/sf_performance_nct_05.cpp sf_performance_files/sf_performance_poly_18.cpp /boost/system//boost_system /boost/chrono//boost_chrono /boost/thread//boost_thread : release [ check-target-builds ../config//has_gmp : TEST_MPF TEST_MPZ gmp : ] [ check-target-builds ../config//has_mpfr : TEST_MPFR mpfr : ] [ check-target-builds ../config//has_float128 : quadmath : ] TEST_CPP_DEC_FLOAT TEST_CPP_BIN_FLOAT TEST_FLOAT msvc:-bigobj [ requires cxx11_auto_declarations cxx11_allocator ] ] [ exe delaunay_test : delaunay_test.cpp /boost/system//boost_system /boost/chrono//boost_chrono ] [ exe voronoi_performance : voronoi_performance.cpp /boost/system//boost_system /boost/chrono//boost_chrono : release [ check-target-builds ../config//has_gmp : TEST_GMP gmp : ] [ check-target-builds ../config//has_tommath : TEST_TOMMATH $(TOMMATH) : ] ] [ obj obj_linpack_benchmark_mpfr : linpack-benchmark.cpp : release [ check-target-builds ../config//has_mpfr : : no ] TEST_MPFR_50 [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_mpf : linpack-benchmark.cpp : release [ check-target-builds ../config//has_gmp : : no ] TEST_MPF_50 [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_cpp_float : linpack-benchmark.cpp : release TEST_CPP_DEC_FLOAT [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_double : linpack-benchmark.cpp : release [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_native_float128 : linpack-benchmark.cpp : release NATIVE_FLOAT128 [ check-target-builds ../config//has_float128 : : no ] [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_float128 : linpack-benchmark.cpp : release TEST_FLOAT128 [ check-target-builds ../config//has_float128 : : no ] [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_cpp_quad_float : linpack-benchmark.cpp : release TEST_CPP_BIN_FLOAT_QUAD [ check-target-builds ../config//has_f2c : : no ] ] [ obj obj_linpack_benchmark_cpp_oct_float : linpack-benchmark.cpp : release TEST_CPP_BIN_FLOAT_OCT [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_mpfr : obj_linpack_benchmark_mpfr mpfr f2c gmp : release [ check-target-builds ../config//has_mpfr : : no ] TEST_MPFR_50 [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_mpf : obj_linpack_benchmark_mpf gmp f2c : release [ check-target-builds ../config//has_gmp : : no ] TEST_MPF_50 [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_cpp_float : obj_linpack_benchmark_cpp_float f2c : release TEST_CPP_DEC_FLOAT [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_double : obj_linpack_benchmark_double f2c : release [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_native_float128 : obj_linpack_benchmark_native_float128 f2c quadmath : release [ check-target-builds ../config//has_float128 : : no ] [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_float128 : obj_linpack_benchmark_float128 f2c quadmath : release [ check-target-builds ../config//has_float128 : : no ] [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_cpp_quad_float : obj_linpack_benchmark_cpp_quad_float f2c : release [ check-target-builds ../config//has_f2c : : no ] ] [ exe linpack_benchmark_cpp_oct_float : obj_linpack_benchmark_cpp_oct_float f2c : release [ check-target-builds ../config//has_f2c : : no ] ] ; # # These cause conflicting targets for the build system when building # with multiple compilers, so they are not part of the regular CI tests: # test-suite performance_install : [ install miller_rabin_install : miller_rabin_performance : . ] [ install performance_test_install : performance_test : . ] [ install sf_performance_install : sf_performance : . ] [ install . : linpack_benchmark_double linpack_benchmark_cpp_float linpack_benchmark_mpf linpack_benchmark_mpfr linpack_benchmark_native_float128 linpack_benchmark_float128 linpack_benchmark_cpp_quad_float linpack_benchmark_cpp_oct_float ] [ install delaunay_install : delaunay_test : . ] [ install voronoi_install : voronoi_performance : . ] ;