diff options
Diffstat (limited to 'modules/fdlibm/import.sh')
-rw-r--r-- | modules/fdlibm/import.sh | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/modules/fdlibm/import.sh b/modules/fdlibm/import.sh new file mode 100644 index 000000000..67ab1b463 --- /dev/null +++ b/modules/fdlibm/import.sh @@ -0,0 +1,112 @@ +#!/bin/sh + +set -e + +BASE_URL=https://raw.githubusercontent.com/freebsd/freebsd/master/lib/msun/src + +download_source() { + REMOTE_FILENAME=$1 + LOCAL_FILENAME=$2 + while true; do + curl -o "src/${LOCAL_FILENAME}" "${BASE_URL}/${REMOTE_FILENAME}" && break + done +} + +mkdir -p src + +# headers +download_source math.h fdlibm.h +download_source math_private.h math_private.h + +# Math.acos +download_source e_acos.c e_acos.cpp + +# Math.acosh +download_source e_acosh.c e_acosh.cpp + +# Math.asin +download_source e_asin.c e_asin.cpp + +# Math.asinh +download_source s_asinh.c s_asinh.cpp + +# Math.atan +download_source s_atan.c s_atan.cpp + +# Math.atanh +download_source e_atanh.c e_atanh.cpp + +# Math.atan2 +download_source e_atan2.c e_atan2.cpp + +# Math.cbrt +download_source s_cbrt.c s_cbrt.cpp + +# Math.ceil +download_source s_ceil.c s_ceil.cpp +download_source s_ceilf.c s_ceilf.cpp + +# Math.cos (not used due to poor performance) + +# Math.cosh +download_source e_cosh.c e_cosh.cpp + +# Math.exp +download_source e_exp.c e_exp.cpp + +# Math.expm1 +download_source s_expm1.c s_expm1.cpp + +# Math.floor and Math.round +download_source s_floor.c s_floor.cpp + +# Math.fround +download_source s_floorf.c s_floorf.cpp + +# Math.hypot +download_source e_hypot.c e_hypot.cpp + +# Math.log +download_source e_log.c e_log.cpp + +# Math.log1p +download_source s_log1p.c s_log1p.cpp + +# Math.log10 +download_source e_log10.c e_log10.cpp +download_source k_log.h k_log.h + +# Math.log2 +download_source e_log2.c e_log2.cpp + +# Math.pow (not used due to poor performance) + +# Math.sin (not used due to poor performance) + +# Math.sinh +download_source e_sinh.c e_sinh.cpp + +# Math.sqrt (not used due to poor performance) + +# Math.tan (not used due to poor performance) + +# Math.tanh +download_source s_tanh.c s_tanh.cpp + +# Math.trunc +download_source s_trunc.c s_trunc.cpp +download_source s_truncf.c s_truncf.cpp + +# dependencies +download_source k_exp.c k_exp.cpp +download_source s_copysign.c s_copysign.cpp +download_source s_fabs.c s_fabs.cpp +download_source s_scalbn.c s_scalbn.cpp + +# These are not not used in Math.* functions, but used internally. +download_source e_pow.c e_pow.cpp +download_source e_sqrt.c e_sqrt.cpp + +download_source s_nearbyint.c s_nearbyint.cpp +download_source s_rint.c s_rint.cpp +download_source s_rintf.c s_rintf.cpp |