Use CFLAGS_NO_SIMD in preference to varying lists of -mno-xxxx flags.
Go ahead and defined -D_STANDALONE for all targets (only strictly needed for some architecture, but harmless on those it isn't required for). Also add -msoft-float to all architectures uniformly rather that higgley piggley like it is today. Differential Revision: https://reviews.freebsd.org/D3496
This commit is contained in:
parent
05c9f26dff
commit
d1be0bf24e
@ -21,34 +21,8 @@ MAN= libstand.3
|
||||
|
||||
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+= pkgfs.c
|
||||
SRCS+= nandfs.c
|
||||
.endif
|
||||
|
||||
.include <bsd.stand.mk>
|
||||
.include <bsd.lib.mk>
|
||||
|
24
share/mk/bsd.stand.mk
Normal file
24
share/mk/bsd.stand.mk
Normal file
@ -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
|
@ -4,19 +4,18 @@ BINDIR?= /boot
|
||||
|
||||
.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"
|
||||
|
@ -15,30 +15,14 @@ BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \
|
||||
|
||||
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 <bsd.stand.mk>
|
||||
.ifmake testmain
|
||||
CFLAGS+= -DTESTMAIN -D_TESTMAIN
|
||||
SRCS+= testmain.c
|
||||
|
@ -7,7 +7,7 @@ BINDIR?= /boot
|
||||
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"
|
||||
|
@ -22,29 +22,6 @@ NO_PIC=
|
||||
|
||||
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+= pkgfs.c
|
||||
SRCS+= nandfs.c
|
||||
.endif
|
||||
|
||||
.include <bsd.stand.mk>
|
||||
.include <bsd.lib.mk>
|
||||
|
||||
.if ${MACHINE_CPUARCH} == "amd64"
|
||||
|
@ -7,7 +7,7 @@ BINDIR?= /boot
|
||||
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
|
||||
|
||||
|
@ -10,24 +10,10 @@ BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \
|
||||
|
||||
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 <bsd.stand.mk>
|
||||
.ifmake testmain
|
||||
CFLAGS+= -DTESTMAIN -D_TESTMAIN
|
||||
SRCS+= testmain.c
|
||||
|
@ -22,26 +22,6 @@ NO_PIC=
|
||||
|
||||
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+= ufs.c nfs.c cd9660.c tftp.c gzipfs.c bzipfs.c
|
||||
SRCS+= dosfs.c ext2fs.c
|
||||
SRCS+= splitfs.c
|
||||
|
||||
.include <bsd.stand.mk>
|
||||
.include <bsd.lib.mk>
|
||||
|
@ -10,14 +10,8 @@ CFLAGS+= -I${.CURDIR}/../common -I${.CURDIR}/../.. -I.
|
||||
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 @@ machine:
|
||||
ln -sf ${.CURDIR}/../../i386/include machine
|
||||
.endif
|
||||
|
||||
.include <bsd.stand.mk>
|
||||
.include <bsd.lib.mk>
|
||||
|
||||
.if ${MACHINE_CPUARCH} == "amd64"
|
||||
|
Loading…
Reference in New Issue
Block a user