summary refs log tree commit diff
path: root/math/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'math/Makefile')
-rw-r--r--math/Makefile16
1 files changed, 13 insertions, 3 deletions
diff --git a/math/Makefile b/math/Makefile
index e1caa2908f..730b5610e0 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -30,7 +30,7 @@ distribute	:= math_private.h machine/asm.h machine/endian.h
 # Build the -lm library.
 
 extra-libs	:= libm
-libm-routines	:= e_acos e_acosf e_acosh e_acoshf e_asin e_asinf	\
+libm-routines	 = e_acos e_acosf e_acosh e_acoshf e_asin e_asinf	\
 		   e_atan2 e_atan2f e_atanh e_atanhf e_cosh e_coshf	\
 		   e_exp e_expf e_fmod e_fmodf e_hypot e_hypotf e_j0	\
 		   e_j0f e_j1 e_j1f e_jn e_jnf e_lgamma_r e_lgammaf_r	\
@@ -55,12 +55,22 @@ libm-routines	:= e_acos e_acosf e_acosh e_acoshf e_asin e_asinf	\
 		   w_j0f w_j1 w_j1f w_jn w_jnf w_lgamma w_lgamma_r	\
 		   w_lgammaf w_lgammaf_r w_log w_log10 w_log10f w_logf	\
 		   w_pow w_powf w_remainder w_remainderf w_scalb	\
-		   w_scalbf w_sinh w_sinhf w_sqrt w_sqrtf
+		   w_scalbf w_sinh w_sinhf w_sqrt w_sqrtf		\
+		   $(long-m-routines)
+
+ifeq ($(long-double-fcts),yes)
+long-m-routines	:= s_ceill s_copysignl s_fabsl s_finitel s_floorl	\
+		   s_nextafterl s_rintl s_significandl
+endif
 
 # These functions are in libc instead of libm because __printf_fp
 # calls them, so any program using printf will need them linked in,
 # and we don't want to have to link every program with -lm.
-routines := s_isinf s_isinff s_isnan s_isnanf isinfl isnanl
+routines = s_isinf s_isinff s_isnan s_isnanf $(long-c-routines)
+
+ifeq ($(long-double-fcts),yes)
+long-c-routines	:= s_isinfl s_isnanl
+endif
 
 
 include ../Rules