Index: sys/conf/Makefile.mips =================================================================== --- sys/conf/Makefile.mips +++ sys/conf/Makefile.mips @@ -39,10 +39,16 @@ # To be changed later TRAMPLOADADDR?=0x807963c0 -# We default to the MIPS32 ISA, if none specified in the -# kernel configuration file. +# We default to the MIPS32 ISA for O32 and MIPS64 ISA for N64 and N32 +# if none is specified in the kernel configuration file. +.if ${MACHINE_ARCH:Mmips64*} != "" || ${MACHINE_ARCH:Mmipsn32*} != "" +ARCH_FLAGS?=-march=mips64 +.else ARCH_FLAGS?=-march=mips32 +.endif +ARCH_FLAGS+=-mabi=${MIPS_ABI} EXTRA_FLAGS=-fno-pic -mno-abicalls -G0 -DKERNLOADADDR=${KERNLOADADDR} +EXTRA_FLAGS+=-${MIPS_ENDIAN} HACK_EXTRA_FLAGS=-shared Index: sys/mips/conf/ERL =================================================================== --- sys/mips/conf/ERL +++ sys/mips/conf/ERL @@ -21,7 +21,7 @@ ident ERL -makeoptions ARCH_FLAGS="-march=octeon+ -mabi=64" +makeoptions ARCH_FLAGS="-march=octeon+" makeoptions LDSCRIPT_NAME=ldscript.mips.octeon1 makeoptions KERNLOADADDR=0xffffffff80100000 Index: sys/mips/conf/JZ4780 =================================================================== --- sys/mips/conf/JZ4780 +++ sys/mips/conf/JZ4780 @@ -12,7 +12,7 @@ cpu CPU_MIPS4KC makeoptions KERNLOADADDR=0x80020000 -makeoptions ARCH_FLAGS="-EL -march=mips32r2" +makeoptions ARCH_FLAGS="-march=mips32r2" # Don't build any modules yet. makeoptions MODULES_OVERRIDE="" Index: sys/mips/conf/MALTA64 =================================================================== --- sys/mips/conf/MALTA64 +++ sys/mips/conf/MALTA64 @@ -8,8 +8,6 @@ machine mips mips64 -makeoptions ARCH_FLAGS="-march=mips64 -mabi=64" - makeoptions KERNLOADADDR=0xffffffff80100000 options COMPAT_FREEBSD32 # Compatible with o32 binaries Index: sys/mips/conf/MALTA64EL =================================================================== --- sys/mips/conf/MALTA64EL +++ sys/mips/conf/MALTA64EL @@ -8,5 +8,4 @@ machine mips mips64el -makeoptions ARCH_FLAGS="-march=mips64 -mabi=64" makeoptions KERNLOADADDR=0xffffffff80100000 Index: sys/mips/conf/OCTEON1 =================================================================== --- sys/mips/conf/OCTEON1 +++ sys/mips/conf/OCTEON1 @@ -20,7 +20,7 @@ ident OCTEON1 -makeoptions ARCH_FLAGS="-march=octeon -mabi=64" +makeoptions ARCH_FLAGS="-march=octeon" makeoptions LDSCRIPT_NAME=ldscript.mips.octeon1 # Don't build any modules yet. Index: sys/mips/conf/X1000 =================================================================== --- sys/mips/conf/X1000 +++ sys/mips/conf/X1000 @@ -10,7 +10,7 @@ cpu CPU_MIPS4KC makeoptions KERNLOADADDR=0x80020000 -makeoptions ARCH_FLAGS="-EL -march=mips32r2" +makeoptions ARCH_FLAGS="-march=mips32r2" # Don't build any modules yet. makeoptions MODULES_OVERRIDE="" Index: sys/mips/conf/XLP64 =================================================================== --- sys/mips/conf/XLP64 +++ sys/mips/conf/XLP64 @@ -20,7 +20,7 @@ machine mips mips64 ident XLP64 -makeoptions ARCH_FLAGS="-march=mips64r2 -mabi=64" +makeoptions ARCH_FLAGS="-march=mips64r2" makeoptions KERNLOADADDR=0xffffffff80100000 include "std.XLP" Index: sys/mips/conf/XLPN32 =================================================================== --- sys/mips/conf/XLPN32 +++ sys/mips/conf/XLPN32 @@ -20,7 +20,6 @@ machine mips mipsn32 ident XLPN32 -makeoptions ARCH_FLAGS="-march=mips64 -mabi=n32" makeoptions KERNLOADADDR=0x80100000 include "std.XLP" Index: sys/mips/conf/std.BERI =================================================================== --- sys/mips/conf/std.BERI +++ sys/mips/conf/std.BERI @@ -13,8 +13,6 @@ options HZ=200 -makeoptions ARCH_FLAGS="-march=mips64 -mabi=64" - makeoptions KERNLOADADDR=0xffffffff80100000 include "../beri/std.beri"