1# $FreeBSD$
2
3TARGET_TUPLE?=	sparc64-unknown-freebsd
4
5.if ${TARGET_ARCH} == "sparc64"
6NATIVE_EMULATION=	elf64_sparc_fbsd
7HOST=	${TARGET_TUPLE}
8CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\"
9CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\"
10_sparc_path=	\"${TOOLS_PREFIX}/usr/lib\"
11.else
12_sparc_path=	\"/usr/cross/sparc-freebsd/usr/lib\"
13.endif
14
15EMS+=		${NATIVE_EMULATION} elf64_sparc
16LDSCRIPTS+=	${NATIVE_EMULATION}.x ${NATIVE_EMULATION}.xbn ${NATIVE_EMULATION}.xn ${NATIVE_EMULATION}.xr \
17		${NATIVE_EMULATION}.xs ${NATIVE_EMULATION}.xu ${NATIVE_EMULATION}.xc ${NATIVE_EMULATION}.xsc
18SRCS+=		e${NATIVE_EMULATION}.c
19CLEANFILES+=	e${NATIVE_EMULATION}.c
20
21e${NATIVE_EMULATION}.c: emulparams/${NATIVE_EMULATION}.sh emultempl/elf32.em \
22    scripttempl/elf.sc genscripts.sh stringify.sed
23	sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${_sparc_path} \
24	    ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \
25	    ${NATIVE_EMULATION} "" ${NATIVE_EMULATION} ${TARGET_TUPLE}
26
27.for BITS in 64 32
28
29EMS+=		elf${BITS}_sparc
30LDSCRIPTS+=	elf${BITS}_sparc.x elf${BITS}_sparc.xbn elf${BITS}_sparc.xn \
31		elf${BITS}_sparc.xr \
32		elf${BITS}_sparc.xs elf${BITS}_sparc.xu elf${BITS}_sparc.xc \
33		elf${BITS}_sparc.xsc
34SRCS+=		eelf${BITS}_sparc.c
35CLEANFILES+=	eelf${BITS}_sparc.c
36
37eelf${BITS}_sparc.c: emulparams/elf${BITS}_sparc.sh emultempl/elf32.em \
38    scripttempl/elf.sc genscripts.sh stringify.sed
39	sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${_sparc_path} \
40	    ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \
41	    elf${BITS}_sparc "" elf${BITS}_sparc ${TARGET_TUPLE}
42
43.endfor	# BITS
44