Changeset View
Changeset View
Standalone View
Standalone View
head/share/mk/bsd.compat.mk
Show First 20 Lines • Show All 46 Lines • ▼ Show 20 Lines | |||||
.else | .else | ||||
LIB32CPUFLAGS= -mcpu=${COMPAT_CPUTYPE} | LIB32CPUFLAGS= -mcpu=${COMPAT_CPUTYPE} | ||||
.endif | .endif | ||||
.if ${COMPAT_COMPILER_TYPE} == "gcc" | .if ${COMPAT_COMPILER_TYPE} == "gcc" | ||||
LIB32CPUFLAGS+= -m32 | LIB32CPUFLAGS+= -m32 | ||||
.else | .else | ||||
LIB32CPUFLAGS+= -target powerpc-unknown-freebsd13.0 | LIB32CPUFLAGS+= -target powerpc-unknown-freebsd13.0 | ||||
# Use BFD to workaround ld.lld issues on PowerPC 32 bit | |||||
LIB32CPUFLAGS+= -fuse-ld=${LD_BFD} | |||||
.endif | .endif | ||||
LIB32_MACHINE= powerpc | LIB32_MACHINE= powerpc | ||||
LIB32_MACHINE_ARCH= powerpc | LIB32_MACHINE_ARCH= powerpc | ||||
LIB32WMAKEFLAGS= \ | LIB32WMAKEFLAGS= -m elf32ppc_fbsd | ||||
arichardson: Shouldn't this be `LD="${LD} -m elf32ppc_fbsd"`? It seems like this would pass `-m… | |||||
bdragonAuthorUnsubmitted Done Inline ActionsYou're right, committed rS359373 to fix this. bdragon: You're right, committed rS359373 to fix this. | |||||
LD="${LD_BFD} -m elf32ppc_fbsd" | |||||
.elif ${COMPAT_ARCH:Mmips64*} != "" | .elif ${COMPAT_ARCH:Mmips64*} != "" | ||||
HAS_COMPAT=32 | HAS_COMPAT=32 | ||||
.if ${COMPAT_COMPILER_TYPE} == gcc | .if ${COMPAT_COMPILER_TYPE} == gcc | ||||
.if empty(COMPAT_CPUTYPE) | .if empty(COMPAT_CPUTYPE) | ||||
LIB32CPUFLAGS= -march=mips3 | LIB32CPUFLAGS= -march=mips3 | ||||
.else | .else | ||||
LIB32CPUFLAGS= -march=${COMPAT_CPUTYPE} | LIB32CPUFLAGS= -march=${COMPAT_CPUTYPE} | ||||
▲ Show 20 Lines • Show All 101 Lines • Show Last 20 Lines |
Shouldn't this be LD="${LD} -m elf32ppc_fbsd"? It seems like this would pass -m elf32ppc_fbsd to make and make ignores it since the directory doesn't exist?
The -m flag doesn't do much for lld since it will just set infer everything from the first .o file if not present. The only thing that the _fbsd suffix does is set the OSABI field (which might not be required since the crt files add the freebsd note section).