summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/binutils/ld/Makefile.mips
blob: e0d0582df617d0627c947b6fbd42aee6ec3a7f33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# $FreeBSD$

#xxxIMPxxx: TARGET_BIG_ENDIAN is lame.  We should use the netbsd convention
# of mipsel and mips.
.if !defined(TARGET_BIG_ENDIAN)
_EMULATION_ENDIAN=l
.else
_EMULATION_ENDIAN=b
.endif

.if defined(TARGET_ABI) && ${TARGET_ABI} != "o32"
.if ${TARGET_ABI} == "n32"
NATIVE_EMULATION=elf32${_EMULATION_ENDIAN}tsmipn32_fbsd
.elif ${TARGET_ABI} == "n64"
NATIVE_EMULATION=elf64${_EMULATION_ENDIAN}tsmip_fbsd
.endif
.endif
NATIVE_EMULATION?=elf32${_EMULATION_ENDIAN}tsmip_fbsd

MIPS_ABIS=elf32btsmip_fbsd elf32ltsmip_fbsd elf64btsmip_fbsd elf64ltsmip_fbsd \
    elf32btsmipn32_fbsd elf32ltsmipn32_fbsd
.for abi in ${MIPS_ABIS}
#.if (${abi} != ${NATIVE_EMULATION})
EMS+= ${abi}
#.endif
.for ext in ${ELF_SCR_EXT}
LDSCRIPTS+= ${abi}.${ext}
.endfor
SRCS+=	e${abi}.c 
CLEANFILES+=	e${abi}.c
# nb: elf32 handles both elf32 and elf64 targets
e${abi}.c:	${.CURDIR}/${abi}.sh emultempl/elf32.em \
    scripttempl/elf.sc genscripts.sh stringify.sed
	sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${LIBSERACHPATH} \
	    ${TOOLS_PREFIX}/usr \
	    ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \
	    ${abi} ""  no ${abi} ${TARGET_TUPLE} \
	    ${.CURDIR}/${abi}.sh
.endfor
OpenPOWER on IntegriCloud