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
6import modules ;
7import path ;
8
9local ntl-path = [ modules.peek : NTL_PATH ] ;
10local gmp_path = [ modules.peek : GMP_PATH ] ;
11local e_float_path = [ modules.peek : E_FLOAT_PATH ] ;
12
13lib quadmath ;
14lib fftw3 ;
15lib fftw3f ;
16lib fftw3l ;
17lib fftw3q ;
18
19obj has_long_double_support : has_long_double_support.cpp ;
20obj has_mpfr_class : has_mpfr_class.cpp :
21      <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx ;
22obj has_mpreal : has_mpreal.cpp :
23      <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/mpfrc++ ;
24obj has_ntl_rr : has_ntl_rr.cpp : <include>$(ntl-path)/include ;
25obj has_gmpxx : has_gmpxx.cpp :
26      <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx ;
27obj has_gcc_visibility : has_gcc_visibility.cpp :
28      <toolset>gcc:<cxxflags>-fvisibility=hidden <toolset>gcc:<cxxflags>-Werror ;
29obj has_e_float : has_e_float.cpp : <include>$(e_float_path) ;
30exe has_float128 : has_float128.cpp quadmath ;
31exe has_fftw3 : has_fftw3.cpp fftw3 fftw3f fftw3l ;
32exe has_intel_quad : has_intel_quad.cpp : <cxxflags>-Qoption,cpp,--extended_float_type ;
33obj has_128bit_floatmax_t : has_128bit_floatmax_t.cpp ;
34obj has_mpfr : has_mpfr.cpp :
35      <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx ;
36obj has_gmp : has_gmp.cpp :
37      <include>$(gmp_path) <include>$(gmp_path)/mpfr <include>$(gmp_path)/gmpfrxx ;
38
39explicit has_long_double_support ;
40explicit has_mpfr_class ;
41explicit has_mpfr ;
42explicit has_gmp ;
43explicit has_mpreal ;
44explicit has_ntl_rr ;
45explicit has_gmpxx ;
46explicit has_gcc_visibility ;
47explicit has_e_float ;
48explicit has_float128 ;
49explicit has_intel_quad ;
50explicit has_128bit_floatmax_t ;
51explicit has_fftw3 ;
52
53