]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | # copyright John Maddock 2008 |
2 | # Distributed under the Boost Software License, Version 1.0. | |
3 | # (See accompanying file LICENSE_1_0.txt or copy at | |
4 | # http://www.boost.org/LICENSE_1_0.txt. | |
5 | ||
6 | import modules ; | |
7 | import path ; | |
8 | ||
9 | local gmp_path = [ modules.peek : GMP_PATH ] ; | |
10 | local mpfr_path = [ modules.peek : MPFR_PATH ] ; | |
11 | local mpfi_path = [ modules.peek : MPFI_PATH ] ; | |
12 | local tommath_path = [ modules.peek : TOMMATH_PATH ] ; | |
13 | ||
14 | project : requirements | |
15 | <include>$(gmp_path) | |
16 | <include>$(gmp_path)/mpfr | |
17 | <include>$(gmp_path)/gmpfrxx | |
18 | <include>$(mpfr_path) | |
19 | <include>$(mpfi_path) | |
20 | <include>$(mpfi_path)/src | |
21 | <include>$(tommath_path) | |
22 | <include>../../.. | |
23 | <search>$(gmp_path) | |
24 | <search>$(mpfr_path) | |
25 | <search>$(mpfr_path)/build.vc10/lib/Win32/Debug | |
26 | <search>$(tommath_path) | |
27 | <search>$(mpfi_path) | |
28 | <search>$(mpfi_path)/src | |
29 | # We set these to make it easier to set up and test GMP and MPFR under Win32: | |
30 | <toolset>msvc:<runtime-link>static | |
31 | <toolset>msvc:<link>static | |
32 | <toolset>intel-win:<runtime-link>static | |
33 | <toolset>intel-win:<link>static | |
34 | <toolset>msvc:<warnings>all | |
35 | <toolset>gcc:<cxxflags>-Wall | |
36 | <toolset>gcc:<cxxflags>-Wextra | |
37 | ; | |
38 | ||
39 | lib gmp ; | |
40 | lib mpfr ; | |
41 | lib mpfi ; | |
92f5a8d4 | 42 | lib mpc ; |
7c673cae FG |
43 | lib quadmath ; |
44 | lib tommath ; | |
45 | ||
46 | actions mp_simple_run_action | |
47 | { | |
48 | $(>) > $(<) | |
49 | } | |
50 | ||
51 | rule mp-run-simple ( sources + : args * : input-files * : requirements * : target-name ) | |
52 | { | |
53 | exe $(target-name)_exe : $(sources) : $(requirements) ; | |
54 | explicit $(target-name)_exe ; | |
55 | make $(target-name).output : $(target-name)_exe : @mp_simple_run_action ; | |
56 | explicit $(target-name).output ; | |
57 | alias $(target-name) : $(target-name).output ; | |
58 | } | |
59 | ||
60 | mp-run-simple has_gmp.cpp gmp : : : | |
61 | <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx : has_gmp ; | |
62 | mp-run-simple has_mpfr.cpp mpfr gmp : : : | |
63 | <include>$(mpfr_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx <include>$(gmp_path) : has_mpfr ; | |
64 | mp-run-simple has_mpfi.cpp mpfi mpfr gmp : : : | |
65 | <include>$(mpfr_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx <include>$(gmp_path) : has_mpfi ; | |
92f5a8d4 TL |
66 | mp-run-simple has_mpc.cpp mpc mpfr gmp : : : |
67 | <include>$(mpfr_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx <include>$(gmp_path) : has_mpc ; | |
7c673cae FG |
68 | mp-run-simple has_tommath.cpp tommath : : : |
69 | <include>$(tommath_path) : has_tommath ; | |
70 | mp-run-simple has_float128.cpp quadmath : : : : has_float128 ; | |
71 | exe has_intel_quad : has_intel_quad.cpp : <cxxflags>-Qoption,cpp,--extended_float_type ; | |
92f5a8d4 TL |
72 | exe has_eigen : has_eigen.cpp ; |
73 | obj has_is_constant_evaluated : has_is_constant_evaluated.cpp ; | |
74 | obj has_constexpr_limits : has_constexpr_limits_cmd.cpp : <cxxflags>-fconstexpr-ops-limit=268435456 ; | |
7c673cae FG |
75 | |
76 | explicit has_gmp ; | |
77 | explicit has_mpfr ; | |
78 | explicit has_mpfi ; | |
79 | explicit has_tommath ; | |
80 | explicit has_float128 ; | |
81 | explicit has_intel_quad ; | |
92f5a8d4 TL |
82 | explicit has_mpc ; |
83 | explicit has_eigen ; | |
84 | explicit has_is_constant_evaluated ; | |
85 | explicit has_constexpr_limits ; | |
7c673cae FG |
86 | |
87 |