Index: lib/csu/aarch64/Makefile =================================================================== --- lib/csu/aarch64/Makefile +++ lib/csu/aarch64/Makefile @@ -27,20 +27,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/amd64/Makefile =================================================================== --- lib/csu/amd64/Makefile +++ lib/csu/amd64/Makefile @@ -28,20 +28,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/arm/Makefile =================================================================== --- lib/csu/arm/Makefile +++ lib/csu/arm/Makefile @@ -28,20 +28,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} ${STATIC_CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/i386/Makefile =================================================================== --- lib/csu/i386/Makefile +++ lib/csu/i386/Makefile @@ -27,7 +27,7 @@ sed ${SED_FIX_NOTE} ${.TARGET} gcrt1_c.o: gcrt1_c.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1_c.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1_c.s gcrt1.o: gcrt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o gcrt1.o -r crt1_s.o gcrt1_c.o @@ -37,7 +37,7 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1_c.o: crt1_c.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1_c.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1_c.s crt1.o: crt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o crt1.o -r crt1_s.o crt1_c.o @@ -48,7 +48,7 @@ sed ${SED_FIX_NOTE} ${.TARGET} Scrt1_c.o: Scrt1_c.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1_c.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1_c.s Scrt1.o: Scrt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o Scrt1.o -r crt1_s.o Scrt1_c.o Index: lib/csu/mips/Makefile =================================================================== --- lib/csu/mips/Makefile +++ lib/csu/mips/Makefile @@ -27,20 +27,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/powerpc/Makefile =================================================================== --- lib/csu/powerpc/Makefile +++ lib/csu/powerpc/Makefile @@ -27,20 +27,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/powerpc64/Makefile =================================================================== --- lib/csu/powerpc64/Makefile +++ lib/csu/powerpc64/Makefile @@ -28,20 +28,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: lib/csu/riscv/Makefile =================================================================== --- lib/csu/riscv/Makefile +++ lib/csu/riscv/Makefile @@ -27,20 +27,20 @@ sed ${SED_FIX_NOTE} ${.TARGET} crt1.o: crt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} crt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} crt1.s gcrt1.s: crt1.c ${CC} ${CFLAGS} -DGCRT -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} gcrt1.o: gcrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} gcrt1.s Scrt1.s: crt1.c ${CC} ${CFLAGS} -fPIC -DPIC -S -o ${.TARGET} ${.CURDIR}/crt1.c sed ${SED_FIX_NOTE} ${.TARGET} Scrt1.o: Scrt1.s - ${CC} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s + ${CC} ${CFLAGS:N-g} ${ACFLAGS} -c -o ${.TARGET} Scrt1.s .include Index: share/mk/bsd.cpu.mk =================================================================== --- share/mk/bsd.cpu.mk +++ share/mk/bsd.cpu.mk @@ -306,16 +306,27 @@ .if ${MACHINE_CPUARCH} == "mips" CFLAGS += -G0 . if ${MACHINE_ARCH:Mmips*el*} != "" -ACFLAGS += -EL AFLAGS += -EL CFLAGS += -EL LDFLAGS += -EL . else -ACFLAGS += -EB AFLAGS += -EB CFLAGS += -EB LDFLAGS += -EB . endif +. if ${MACHINE_ARCH:Mmips64*} != "" +AFLAGS+= -mabi=64 +CFLAGS+= -mabi=64 +LDFLAGS+= -mabi=64 +. elif ${MACHINE_ARCH:Mmipsn32*} != "" +AFLAGS+= -mabi=n32 +CFLAGS+= -mabi=n32 +LDFLAGS+= -mabi=n32 +. else +AFLAGS+= -mabi=32 +CFLAGS+= -mabi=32 +LDFLAGS+= -mabi=32 +. endif . if ${MACHINE_ARCH:Mmips*hf} CFLAGS += -mhard-float . else Index: share/mk/sys.mk =================================================================== --- share/mk/sys.mk +++ share/mk/sys.mk @@ -217,9 +217,12 @@ LEX ?= lex LFLAGS ?= +# LDFLAGS is for CC, _LDFLAGS is for LD. Generate _LDFLAGS from +# LDFLAGS by stripping -Wl, from pass-through arguments and dropping +# compiler driver flags (e.g. -mabi=*) that conflict with flags to LD. LD ?= ld -LDFLAGS ?= # LDFLAGS is for CC, -_LDFLAGS = ${LDFLAGS:S/-Wl,//g} # strip -Wl, for LD +LDFLAGS ?= +_LDFLAGS = ${LDFLAGS:S/-Wl,//g:N-mabi=*} LINT ?= lint LINTFLAGS ?= -cghapbx