1 include $(TOP)/config/make.cfg
3 #MM- AROS : compiler-stdc compiler-stdcio
36 localtime localtime_r \
40 math/e_acos math/e_acosf \
41 math/e_acosh math/e_acoshf \
42 math/e_asin math/e_asinf \
43 math/e_atan2 math/e_atan2f \
44 math/e_atanh math/e_atanhf \
45 math/e_cosh math/e_coshf \
46 math/e_exp math/e_expf \
47 math/e_fmod math/e_fmodf \
48 math/e_gamma math/e_gammaf math/e_gamma_r math/e_gammaf_r \
49 math/e_hypot math/e_hypotf \
50 math/e_j0 math/e_j0f \
51 math/e_j1 math/e_j1f \
52 math/e_jn math/e_jnf \
53 math/e_lgamma math/e_lgammaf math/e_lgamma_r math/e_lgammaf_r \
54 math/e_log math/e_logf \
55 math/e_log10 math/e_log10f \
56 math/e_pow math/e_powf \
57 math/e_rem_pio2 math/e_rem_pio2f \
58 math/e_remainder math/e_remainderf \
59 math/e_scalb math/e_scalbf \
60 math/e_sinh math/e_sinhf \
61 math/e_sqrt math/e_sqrtf \
62 math/k_cos math/k_cosf \
63 math/k_rem_pio2 math/k_rem_pio2f \
64 math/k_sin math/k_sinf \
65 math/k_tan math/k_tanf \
67 math/s_asinh math/s_asinhf \
68 math/s_atan math/s_atanf \
69 math/s_cbrt math/s_cbrtf \
70 math/s_ceil math/s_ceilf math/s_ceill \
71 math/s_cimag math/s_cimagf math/s_cimagl \
72 math/s_conj math/s_conjf math/s_conjl \
73 math/s_copysign math/s_copysignf math/s_copysignl \
74 math/s_cos math/s_cosf \
75 math/s_creal math/s_crealf math/s_creall \
76 math/s_erf math/s_erff \
77 math/s_exp2 math/s_exp2f \
78 math/s_expm1 math/s_expm1f \
79 math/s_fabs math/s_fabsf math/s_fabsl \
81 math/s_floor math/s_floorf math/s_floorl \
82 math/s_fma math/s_fmaf \
83 math/s_fmax math/s_fmaxf math/s_fmaxl \
84 math/s_fmin math/s_fminf math/s_fminl \
85 math/s_frexp math/s_frexpf \
86 math/s_ilogb math/s_ilogbf math/s_ilogbl \
88 math/s_isinf math/s_isinff \
91 math/s_log1p math/s_log1pf \
92 math/s_logb math/s_logbf \
93 math/s_modf math/s_modff math/s_modfl \
95 math/s_nextafter math/s_nextafterf \
97 math/s_remquo math/s_remquof \
98 math/s_rint math/s_rintf math/s_lrint math/s_lrintf math/s_llrint math/s_llrintf \
99 math/s_round math/s_roundf math/s_roundl math/s_lround math/s_lroundf math/s_lroundl \
100 math/s_llround math/s_llroundf math/s_llroundl \
102 math/s_scalbn math/s_scalbnf \
104 math/s_significand math/s_significandf \
105 math/s_sin math/s_sinf \
106 math/s_tan math/s_tanf \
107 math/s_tanh math/s_tanhf \
108 math/s_trunc math/s_truncf math/s_truncl \
109 math/sincos math/sincosf math/sincosl \
110 math/w_cabs math/w_cabsf \
183 # If long double != double use these; otherwise, we alias the double versions
184 # These are architectures that have LDBL_MANT_DIG == 53 in float.h
185 # XXX use configure to determine this
186 ifneq ($(AROS_TARGET_CPU), ppc)
187 ifneq ($(AROS_TARGET_CPU), arm)
188 STDC += math/s_fmal math/s_frexpl math/s_nextafterl math/s_nexttoward math/s_scalbnl
196 # The common files will be put both in the shared and in the static link lib
199 __stdc_getsigngamptr \
247 # The common files will be put both in the shared and in the static link lib
251 #MM- core-linklibs : linklibs-stdc linklibs-stdcio linklibs-libm
253 STDC_LINKOBJS := $(addsuffix .o,$(addprefix $(GENDIR)/$(CURDIR)/,$(notdir $(STDC_COMMON))))
255 USER_CFLAGS := -noposixc -Dlint '-D__FBSDID(x)='
256 USER_LDFLAGS := -nostdc -noposixc
258 # Ugh. These are for the math routines, which have a number of
260 USER_CFLAGS += -Wno-unused-variable -Wno-parentheses -Wno-uninitialized
262 %build_module mmake=compiler-stdc \
263 modname=stdc modtype=library \
264 files="$(STDC) $(STDC_COMMON)" \
265 linklibfiles=$(STDC_LINKLIB) linklibobjs=$(STDC_LINKOBJS)
267 STDCIO_LINKOBJS := $(addsuffix .o,$(addprefix $(GENDIR)/$(CURDIR)/,$(notdir $(STDCIO_COMMON))))
269 %build_module mmake=compiler-stdcio \
270 modname=stdcio modtype=library \
271 files="$(STDCIO) $(STDCIO_COMMON)" \
272 linklibobjs=$(STDCIO_LINKOBJS) \
325 USER_CFLAGS := -DSTDC_STATIC
327 # Ugh. These are for the math routines, which have a number of
328 # lint issues, that should be fixed.
329 USER_CFLAGS += -Wno-unused-variable -Wno-parentheses -Wno-uninitialized
331 #MM- core-linklibs : linklibs-stdc-static
332 %build_linklib mmake=linklibs-stdc-static libname=stdc.static \
333 files="$(STDC_STATIC)" objdir=$(GENDIR)/$(CURDIR)/static
335 #MM- linklibs-romhack : compiler-stdc
336 # FIXME: The next romhack linklib is a temporary hack and has to be
337 # excommunicated in the future !
338 # setjmp()/longjmp() is used in dos.library so make it available.
339 # Plan to put stdc.library also in aros-base rom so this is not needed anymore
340 %build_linklib mmake=linklibs-romhack \
341 libname=romhack files="setjmp longjmp"
343 # x86_64 needs a 32bit version stdc.static
344 %build_linklib mmake=linklibs-stdc-static32 \
345 libname=stdc.static files="$(STDC_STATIC)" objs=$(ROM_COMMON_OBJ32) \
346 cflags="-m32 $(CFLAGS) -DSTDC_LIB32 -DSTDC_STATIC" \
347 objdir=$(GENDIR)/$(CURDIR)/32bit libdir=$(GENDIR)/lib32
349 # A dummy libm.a is provided so that -lm link option does not produce an error
350 # objdir is provided to avoid that arch specific files end up in libm.a
351 %build_linklib mmake=linklibs-libm \
352 libname=m files=empty objdir=$(GENDIR)/$(CURDIR)/libm