opnsense-src/gnu/usr.bin/binutils/ld/Makefile.mips
John Baldwin 69b4d461be Enable /usr/lib32 for o32 binaries on mips64.
Build and install an o32 set of libraries on mips64 suitable for
running o32 binaries via COMPAT_FREEBSD32. Enable COMPAT_FREEBSD32 in
MALTA64.

Reviewed by:	jmallett, imp
Sponsored by:	DARPA / AFRL
Differential Revision:	https://reviews.freebsd.org/D9032
2017-01-06 23:30:54 +00:00

38 lines
1.1 KiB
Makefile

# $FreeBSD$
.if ${TARGET_ARCH:Mmips*el*} != ""
_EMULATION_ENDIAN=l
.else
_EMULATION_ENDIAN=b
.endif
.if ${TARGET_ARCH:Mmips64*} != ""
NATIVE_EMULATION=elf64${_EMULATION_ENDIAN}tsmip_fbsd
LIBSEARCHPATH.elf32${_EMULATION_ENDIAN}tsmip_fbsd=\"=/usr/lib32\"
.elif ${TARGET_ARCH:Mmipsn32*} != ""
NATIVE_EMULATION=elf32${_EMULATION_ENDIAN}tsmipn32_fbsd
.else
NATIVE_EMULATION?=elf32${_EMULATION_ENDIAN}tsmip_fbsd
.endif
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}
ldscripts/${abi}.${ext}: e${abi}.c
.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 ${LIBSEARCHPATH} \
${TOOLS_PREFIX}/usr \
${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \
${abi} "" no ${abi} ${TARGET_TUPLE} \
${.CURDIR}/${abi}.sh
.endfor