xref: /netbsd/lib/libc/arch/sparc64/Makefile.inc (revision c4a72b64)
1#	$NetBSD: Makefile.inc,v 1.7 2002/10/27 18:45:12 chs Exp $
2
3KMINCLUDES= arch/sparc64/SYS.h
4KMSRCS=	bzero.S ffs.S strlen.S htonl.S htons.S \
5	ntohl.S ntohs.S divrem.m4 \
6	mul.S saveregs.S umul.S
7
8SRCS+=	__sigaction14_sigtramp.c __sigtramp1.S
9
10# Some assembler files use v9a extensions.
11AFLAGS+= -Wa,-Av9a
12
13# `source' files built from m4 source
14# the name `div.o' is taken for the ANSI C `div' function, hence sdiv here
15SRCS+=	rem.S sdiv.S udiv.S urem.S
16CLEANFILES+=rem.S sdiv.S udiv.S urem.S
17
18sdiv.S: ${.CURDIR}/arch/sparc64/gen/divrem.m4
19	@echo 'building ${.TARGET} from ${.ALLSRC}'
20	@(echo "define(NAME,\`.div')define(OP,\`div')define(S,\`true')"; \
21	 cat ${.ALLSRC}) | m4 > ${.TARGET}
22	@chmod 444 ${.TARGET}
23
24udiv.S: ${.CURDIR}/arch/sparc64/gen/divrem.m4
25	@echo 'building ${.TARGET} from ${.ALLSRC}'
26	@(echo "define(NAME,\`.udiv')define(OP,\`div')define(S,\`false')"; \
27	 cat ${.ALLSRC}) | m4 > ${.TARGET}
28	@chmod 444 ${.TARGET}
29
30rem.S: ${.CURDIR}/arch/sparc64/gen/divrem.m4
31	@echo 'building ${.TARGET} from ${.ALLSRC}'
32	@(echo "define(NAME,\`.rem')define(OP,\`rem')define(S,\`true')"; \
33	 cat ${.ALLSRC}) | m4 > ${.TARGET}
34	@chmod 444 ${.TARGET}
35
36urem.S: ${.CURDIR}/arch/sparc64/gen/divrem.m4
37	@echo 'building ${.TARGET} from ${.ALLSRC}'
38	@(echo "define(NAME,\`.urem')define(OP,\`rem')define(S,\`false')"; \
39	 cat ${.ALLSRC}) | m4 > ${.TARGET}
40	@chmod 444 ${.TARGET}
41
42.PATH: ${ARCHDIR}/softfloat
43SRCS+= qp.c
44CPPFLAGS+=	-DSOFTFLOATSPARC64_FOR_GCC
45.if ${MKSOFTFLOAT} != "no"
46.include <softfloat/Makefile.inc>
47.else
48#
49# Can't directly use softfloat.c due to .PATH issues with the other source
50# in softfloat. Just provide a wrapper which pulls it in via a #include
51SRCS+= softfloat-wrapper.c
52CPPFLAGS+=      -I${ARCHDIR}/softfloat -I${.CURDIR}/softfloat \
53		-I${.CURDIR}/softfloat/bits64
54.endif
55