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