Index: head/lib/libstand/Makefile =================================================================== --- head/lib/libstand/Makefile +++ head/lib/libstand/Makefile @@ -21,34 +21,8 @@ WARNS?= 0 -CFLAGS+= -ffreestanding -Wformat CFLAGS+= -I${LIBSTAND_SRC} -.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -.endif -.if ${MACHINE_CPUARCH} == "i386" -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -.endif -.if ${MACHINE_CPUARCH} == "amd64" -CFLAGS+= -fPIC -mno-red-zone -.endif -.if ${MACHINE} == "pc98" -CFLAGS+= -Os -.endif -.if ${MACHINE_CPUARCH} == "powerpc" -CFLAGS+= -msoft-float -D_STANDALONE -DNETIF_DEBUG -.endif -.if ${MACHINE_CPUARCH} == "arm" -CFLAGS+= -msoft-float -D_STANDALONE -.endif -.if ${MACHINE_CPUARCH} == "aarch64" -CFLAGS+= -D_STANDALONE -mgeneral-regs-only -.endif -.if ${MACHINE_CPUARCH} == "mips" -CFLAGS+= -G0 -fno-pic -mno-abicalls -.endif - # standalone components and stuff we have modified locally SRCS+= gzguts.h zutil.h __main.c assert.c bcd.c bswap.c environment.c getopt.c gets.c \ globals.c pager.c printf.c strdup.c strerror.c strtol.c strtoul.c random.c \ @@ -168,4 +142,5 @@ SRCS+= nandfs.c .endif +.include .include Index: head/share/mk/bsd.stand.mk =================================================================== --- head/share/mk/bsd.stand.mk +++ head/share/mk/bsd.stand.mk @@ -0,0 +1,24 @@ +# $FreeBSD$ +# +# Common definitons for programs building in the stand-alone environment +# and/or using libstand. +# + +CFLAGS+= -ffreestanding -Wformat +CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float -D_STANDALONE + +.if ${MACHINE_CPUARCH} == "i386" +CFLAGS.gcc+= -mpreferred-stack-boundary=2 +.endif +.if ${MACHINE_CPUARCH} == "amd64" +CFLAGS+= -fPIC -mno-red-zone +.endif +.if ${MACHINE} == "pc98" +CFLAGS+= -Os +.endif +.if ${MACHINE_CPUARCH} == "aarch64" +CFLAGS+= -mgeneral-regs-only +.endif +.if ${MACHINE_CPUARCH} == "mips" +CFLAGS+= -G0 -fno-pic -mno-abicalls +.endif Index: head/sys/boot/efi/Makefile.inc =================================================================== --- head/sys/boot/efi/Makefile.inc +++ head/sys/boot/efi/Makefile.inc @@ -4,19 +4,18 @@ .if ${MACHINE_CPUARCH} == "i386" CFLAGS+= -march=i386 +CFLAGS+= -mno-aes .endif # Options used when building app-specific efi components # See conf/kern.mk for the correct set of these -CFLAGS+= -ffreestanding -Wformat -msoft-float +CFLAGS+= -ffreestanding -Wformat -msoft-float ${CFLAGS_NO_SIMD} LDFLAGS+= -nostdlib .if ${MACHINE_CPUARCH} == "amd64" CFLAGS+= -fshort-wchar CFLAGS+= -mno-red-zone -CFLAGS+= -mno-mmx -mno-sse -CFLAGS.clang+= -mno-aes -mno-avx +CFLAGS+= -mno-aes .endif - .include "../Makefile.inc" Index: head/sys/boot/ficl/Makefile =================================================================== --- head/sys/boot/ficl/Makefile +++ head/sys/boot/ficl/Makefile @@ -15,30 +15,14 @@ SRCS= ${BASE_SRCS} sysdep.c softcore.c CLEANFILES= softcore.c testmain testmain.o -CFLAGS+= -ffreestanding .if ${MACHINE_CPUARCH} == "i386" || \ (${MACHINE_CPUARCH} == "amd64" && defined(FICL32)) CFLAGS+= -march=i386 -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -.endif -.if ${MACHINE_CPUARCH} == "amd64" -CFLAGS+= -mno-red-zone -.endif -.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -.endif -.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "mips" -CFLAGS+= -msoft-float -.endif -.if ${MACHINE} == "pc98" -CFLAGS+= -Os -DPC98 -.endif -.if ${MACHINE_CPUARCH} == "mips" -CFLAGS+= -G0 -fno-pic -mno-abicalls .endif .if HAVE_PNP CFLAGS+= -DHAVE_PNP .endif +.include .ifmake testmain CFLAGS+= -DTESTMAIN -D_TESTMAIN SRCS+= testmain.c Index: head/sys/boot/i386/Makefile.inc =================================================================== --- head/sys/boot/i386/Makefile.inc +++ head/sys/boot/i386/Makefile.inc @@ -7,7 +7,7 @@ LOADER_ADDRESS?=0x200000 CFLAGS+= -march=i386 -ffreestanding CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float +CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float LDFLAGS+= -nostdlib .if ${MACHINE_CPUARCH} == "amd64" Index: head/sys/boot/libstand32/Makefile =================================================================== --- head/sys/boot/libstand32/Makefile +++ head/sys/boot/libstand32/Makefile @@ -22,29 +22,6 @@ WARNS?= 0 -CFLAGS+= -ffreestanding -Wformat -CFLAGS+= -I${LIBSTAND_SRC} - -.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -.endif -.if ${MACHINE} == "pc98" -CFLAGS+= -Os -.endif -.if ${MACHINE_CPUARCH} == "powerpc" -CFLAGS+= -msoft-float -D_STANDALONE -DNETIF_DEBUG -.endif -.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "powerpc64" -CFLAGS+= -m32 -I. -.endif -.if ${MACHINE_CPUARCH} == "arm" -CFLAGS+= -msoft-float -D_STANDALONE -.endif -.if ${MACHINE_CPUARCH} == "mips" -CFLAGS+= -G0 -fno-pic -mno-abicalls -.endif - # standalone components and stuff we have modified locally SRCS+= gzguts.h zutil.h __main.c assert.c bcd.c bswap.c environment.c getopt.c gets.c \ globals.c pager.c printf.c strdup.c strerror.c strtol.c strtoul.c random.c \ @@ -164,6 +141,7 @@ SRCS+= nandfs.c .endif +.include .include .if ${MACHINE_CPUARCH} == "amd64" Index: head/sys/boot/pc98/Makefile.inc =================================================================== --- head/sys/boot/pc98/Makefile.inc +++ head/sys/boot/pc98/Makefile.inc @@ -7,7 +7,7 @@ LOADER_ADDRESS?=0x200000 CFLAGS+= -march=i386 -ffreestanding CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float +CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float CFLAGS+= -Os -DPC98 LDFLAGS+= -nostdlib Index: head/sys/boot/userboot/ficl/Makefile =================================================================== --- head/sys/boot/userboot/ficl/Makefile +++ head/sys/boot/userboot/ficl/Makefile @@ -10,24 +10,10 @@ SRCS= ${BASE_SRCS} sysdep.c softcore.c CLEANFILES= softcore.c testmain testmain.o -CFLAGS+= -ffreestanding -fPIC -.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" -#CFLAGS+= -march=i386 -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -.endif -.if ${MACHINE_CPUARCH} == "i386" -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-sse3 -.endif -.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" -CFLAGS+= -msoft-float -.endif -.if ${MACHINE} == "pc98" -CFLAGS+= -Os -DPC98 -.endif .if HAVE_PNP CFLAGS+= -DHAVE_PNP .endif +.include .ifmake testmain CFLAGS+= -DTESTMAIN -D_TESTMAIN SRCS+= testmain.c Index: head/sys/boot/userboot/libstand/Makefile =================================================================== --- head/sys/boot/userboot/libstand/Makefile +++ head/sys/boot/userboot/libstand/Makefile @@ -22,26 +22,6 @@ WARNS?= 0 -CFLAGS+= -ffreestanding -Wformat -fPIC -CFLAGS+= -I${LIBSTAND_SRC} - -.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -.endif -.if ${MACHINE_CPUARCH} == "i386" -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-sse3 -.endif -.if ${MACHINE} == "pc98" -CFLAGS+= -Os -.endif -.if ${MACHINE_CPUARCH} == "powerpc" -CFLAGS+= -msoft-float -D_STANDALONE -DNETIF_DEBUG -.endif -.if ${MACHINE_CPUARCH} == "arm" -CFLAGS+= -msoft-float -D_STANDALONE -.endif - # standalone components and stuff we have modified locally SRCS+= gzguts.h zutil.h __main.c assert.c bcd.c bswap.c environment.c getopt.c gets.c \ globals.c pager.c printf.c strdup.c strerror.c strtol.c strtoul.c random.c \ @@ -152,4 +132,5 @@ SRCS+= dosfs.c ext2fs.c SRCS+= splitfs.c +.include .include Index: head/sys/boot/zfs/Makefile =================================================================== --- head/sys/boot/zfs/Makefile +++ head/sys/boot/zfs/Makefile @@ -10,14 +10,8 @@ CFLAGS+= -I${.CURDIR}/../../../lib/libstand CFLAGS+= -I${.CURDIR}/../../cddl/boot/zfs -CFLAGS+= -ffreestanding .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" CFLAGS+= -march=i386 -CFLAGS.gcc+= -mpreferred-stack-boundary=2 -CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -.endif -.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm" -CFLAGS+= -msoft-float .endif .if ${MACHINE_CPUARCH} == "amd64" CFLAGS+= -m32 @@ -31,6 +25,7 @@ ln -sf ${.CURDIR}/../../i386/include machine .endif +.include .include .if ${MACHINE_CPUARCH} == "amd64"