Makefile.inc revision 1.41
1#	$NetBSD: Makefile.inc,v 1.41 2025/10/20 14:31:39 nat Exp $
2
3SRCS+=	alloca.S fabs.S
4
5# Common ieee754 constants and functions
6SRCS+=	infinityf_ieee754.c infinity_ieee754.c
7SRCS+=	fpclassifyf_ieee754.c fpclassifyd_ieee754.c
8SRCS+=	isinff_ieee754.c isinfd_ieee754.c
9SRCS+=	isnanf_ieee754.c isnand_ieee754.c
10SRCS+=	isfinitef_ieee754.c isfinited_ieee754.c
11SRCS+=	signbitf_ieee754.c signbitd_ieee754.c
12
13SRCS+=	nanf.c
14
15# 68000-based machines use a double-extended `long double' type
16# for which the generic ieee754 versions can be used
17.if	${MACHINE_ARCH:S/m68ksf/m68k/} != "m68k"
18SRCS+=	infinityl_dbl_ieee754.c
19.else
20SRCS+=	infinityl.c
21SRCS+=	fpclassifyl.c isfinitel.c isinfl.c isnanl.c 
22SRCS+=	signbitl_ieee754.c
23.endif
24
25SRCS+=	ashlsi3.S ashrsi3.S \
26	lshlsi3.S lshrsi3.S
27.if ${MKSOFTFLOAT} == "no" || ${MKLIBCSOFTFLOAT} != "no"
28SRCS+=	negdf2.S negsf2.S
29.endif
30SRCS+=	bswap16.S bswap32.S bswap64.S
31SRCS+=	_lwp.c
32CPPFLAGS._lwp.c	+= -D_LIBC_SOURCE
33
34# 68000-based machines build with a libgcc that includes
35# much of the (soft)float and integer support that would 
36# otherwise be compiled here.
37.if	(${MACHINE_ARCH} == "m68000" || \
38		(${MKSOFTFLOAT} != "no" && ${MKLIBCSOFTFLOAT} == "no"))
39SRCS+=	compat_modf_ieee754.c			# generic ieee754 version
40SRCS+=	flt_rounds_softfloat.S
41.if ${MKSOFTFLOAT} == "no"
42SRCS+=	fpfake.c
43.endif
44.endif
45
46.if ${MACHINE_ARCH:S/m68ksf/m68k/} == "m68k"
47SRCS+=	mulsi3.S umulsi3.S
48SRCS+=	muldi3.S
49.else
50muldi3.o muldi3.po muldi3.pico muldi3.d: muldi3.c
51.endif
52
53SRCS+=	setjmp.S longjmp.c
54SRCS+=	_setjmp.S
55SRCS+=	sigsetjmp.S
56
57SRCS+=	makecontext.c resumecontext.S swapcontext.S
58
59SRCS+=	compat_ldexp_ieee754.c			# generic ieee754 version
60
61LSRCS.m68k.gen=	Lint_bswap16.c Lint_bswap32.c Lint_bswap64.c \
62		Lint_resumecontext.c Lint_swapcontext.c
63LSRCS+=		${LSRCS.m68k.gen}
64DPSRCS+=	${LSRCS.m68k.gen}
65CLEANFILES+=	${LSRCS.m68k.gen}
66