1SubDir HAIKU_TOP src system libroot posix glibc arch ppc ; 2 3SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc include arch ppc ; 4SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc include arch generic ; 5SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc include ; 6SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc stdlib ; 7SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc math ; 8SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc libio ; 9SubDirSysHdrs $(HAIKU_TOP) src system libroot posix glibc ; 10 11SubDirHdrs $(HAIKU_TOP) src system libroot posix glibc arch generic ; 12 13UsePrivateHeaders libroot ; 14 15 16if $(OPTIM) = -O0 { 17 OPTIM = -O ; 18} 19 20# don't compile with debugging 21DEBUG = 0 ; 22 23SubDirCcFlags -D_GNU_SOURCE -D_IEEE_LIBM ; 24 25# Note: There is no *l() support yet. Our compiler says sizeof(long double) = 8, 26# while there are only 96 and 128 bit implementation in glibc. 27local genericSources = 28 branred.c 29 cmp.c dbl2mpn.c divrem.c 30 doasin.c dosincos.c 31 halfulp.c 32 memrchr.c 33 mpa.c mpatan.c mpatan2.c mpexp.c mplog.c mpn2dbl.c 34 mpn2flt.c mpn2ldbl.c mpsqrt.c mptan.c 35 mul.c mul_n.c 36 sincos32.c 37 slowexp.c 38 slowpow.c 39 40 e_acos.c e_acosf.c # e_acosl.c 41 e_acosh.c e_acoshf.c # e_acoshl.c 42 e_asin.c e_asinf.c # e_asinl.c 43 e_atan2.c e_atan2f.c # e_atan2l.c 44 e_atanh.c e_atanhf.c # e_atanhl.c 45 e_cosh.c e_coshf.c # e_coshl.c 46 e_exp.c e_expf.c 47 e_fmod.c e_fmodf.c # e_fmodl.c 48 e_gamma_r.c e_gammaf_r.c 49 e_hypot.c e_hypotf.c # e_hypotl.c 50 e_j0.c e_j0f.c 51 e_j1.c e_j1f.c 52 e_jn.c e_jnf.c 53 e_lgamma_r.c e_lgammaf_r.c 54 e_log.c e_logf.c 55 e_log10.c e_log10f.c 56 e_pow.c e_powf.c # e_powl.c 57 e_rem_pio2f.c 58 e_remainder.c e_remainderf.c # e_remainderl.c 59 e_scalb.c e_scalbf.c # e_scalbl.c 60 e_sinh.c e_sinhf.c # e_sinhl.c 61 k_cos.c k_cosf.c 62 k_sin.c k_sinf.c 63 k_rem_pio2.c k_rem_pio2f.c # k_rem_pio2l.c 64 k_tan.c k_tanf.c 65 s_asinh.c s_asinhf.c # s_asinhl.c 66 s_atan.c s_atanf.c # s_atanl.c 67 s_cbrt.c s_cbrtf.c # s_cbrtl.c 68 s_ceil.c s_ceilf.c # s_ceill.c 69 s_cos.c s_cosf.c 70 s_erf.c s_erff.c # s_erfl.c 71 s_expm1f.c s_expm1.c 72 s_finite.c s_finitef.c # s_finitel.c 73 s_clog.c s_clogf.c # s_clogl.c 74 s_csqrt.c s_csqrtf.c # s_csqrtl.c 75 s_floor.c s_floorf.c # s_floorl.c 76 s_fma.c s_fmaf.c # s_fmal.c 77 s_fpclassify.c s_fpclassifyf.c # s_fpclassifyl.c 78 s_frexp.c s_frexpf.c # s_frexpl.c 79 s_ilogb.c s_ilogbf.c 80 s_isinf.c s_isinff.c # s_isinfl.c 81 s_ldexp.c s_ldexpf.c # s_ldexpl.c 82 s_llrint.c s_llrintf.c # s_llrintl.c 83 s_log1p.c s_log1pf.c 84 s_logb.c s_logbf.c # s_logbl.c 85 s_lrint.c s_lrintf.c # s_lrintl.c 86 s_lround.c s_lroundf.c 87 s_modf.c s_modff.c # s_modfl.c 88 s_nan.c s_nanf.c # s_nanl.c 89 # s_nexttoward.c s_nexttowardf.c s_nexttowardl.c 90 s_round.c s_roundf.c # s_roundl.c 91 s_scalbn.c s_scalbnf.c # s_scalbnl.c 92 s_signbit.c s_signbitf.c # s_signbitl.c 93 s_significand.c s_significandf.c 94 s_signgam.c 95 s_sin.c s_sinf.c # s_sinl.c 96 s_sincos.c s_sincosf.c 97 s_tan.c s_tanf.c 98 s_tanh.c s_tanhf.c 99 s_trunc.c s_truncf.c 100 t_exp.c 101 w_acos.c w_acosf.c # w_acosl.c 102 w_acosh.c w_acoshf.c # w_acoshl.c 103 w_atan2.c w_atan2f.c # w_atan2l.c 104 w_asin.c w_asinf.c # w_asinl.c 105 w_atanh.c w_atanhf.c # w_atanhl.c 106 w_cosh.c w_coshf.c # w_coshl.c 107 w_drem.c w_dremf.c # w_dreml.c 108 w_exp.c w_expf.c # w_expl.c 109 w_fmod.c w_fmodf.c # w_fmodl.c 110 w_hypot.c w_hypotf.c # w_hypotl.c 111 w_j0.c w_j0f.c 112 w_j1.c w_j1f.c 113 w_jn.c w_jnf.c 114 w_lgamma.c w_lgammaf.c 115 w_lgamma_r.c w_lgammaf_r.c 116 w_log.c w_logf.c # w_logl.c 117 w_log10.c w_log10f.c # w_log10l.c 118 w_pow.c w_powf.c # w_powl.c 119 w_remainder.c w_remainderf.c # w_remainderl.c 120 w_scalb.c w_scalbf.c # w_scalbl.c 121 w_sinh.c w_sinhf.c # w_sinhl.c 122 w_tgamma.c w_tgammaf.c # w_tgammal.c 123 ; 124 125local architectureObject ; 126for architectureObject in [ MultiArchSubDirSetup ppc ] { 127 on $(architectureObject) { 128 local architecture = $(TARGET_PACKAGING_ARCH) ; 129 130 MergeObject <$(architecture)>posix_gnu_arch_$(TARGET_ARCH)_generic.o : 131 $(genericSources) 132 ; 133 134 MergeObject <$(architecture)>posix_gnu_arch_$(TARGET_ARCH)_other.o : 135 add_n.S 136 addmul_1.S 137 feholdexcpt.c fraiseexcpt.c fesetenv.c fesetround.c ftestexcept.c 138 ldbl2mpn.c 139 lshift.S rshift.S 140 mul_1.S 141 sub_n.S 142 submul_1.S 143 144 e_sqrt.c e_sqrtf.c # e_sqrtl.c 145 s_copysign.S s_copysignf.S # s_copysignl.S 146 s_fabs.S s_fabsf.S # s_fabsl.S 147 s_fdim.c s_fdimf.c # s_fdiml.S 148 s_fmax.S s_fmaxf.S # s_fmaxl.S 149 s_fmin.S s_fminf.S # s_fminl.S 150 s_isnan.c s_isnanf.S 151 s_rint.c s_rintf.c # s_rintl.c 152 t_sqrt.c 153 w_sqrt.c w_sqrtf.c # w_sqrtl.c 154 ; 155 156 MergeObjectFromObjects <$(architecture)>posix_gnu_arch_$(TARGET_ARCH).o 157 : : 158 <$(architecture)>posix_gnu_arch_$(TARGET_ARCH)_generic.o 159 <$(architecture)>posix_gnu_arch_$(TARGET_ARCH)_other.o 160 ; 161 162 SEARCH on [ FGristFiles $(genericSources) ] 163 = [ FDirName $(HAIKU_TOP) src system libroot posix glibc arch 164 generic ] ; 165 } 166} 167