b9f745fdb1
In case of efi console having serial backend (video + serial or only serial), we need to stick with old emulator till we can draw console. Eventually we would need to get console terminal emulator to be removed from serial console because the serial link already has the terminal. However, we need to implement comconsole on all efi platforms first, then we need the ability to draw console, so we do not have to use SimpleTextOutput protocol (which will write both on video and serial in case of multiplexed ComOut). Differential Revision: https://reviews.freebsd.org/D22161
70 lines
1.6 KiB
Makefile
70 lines
1.6 KiB
Makefile
# $FreeBSD$
|
|
|
|
.include <bsd.init.mk>
|
|
|
|
LIB= efi
|
|
WARNS?= 2
|
|
|
|
SRCS= delay.c \
|
|
devicename.c \
|
|
devpath.c \
|
|
efi_console.c \
|
|
efi_driver_utils.c \
|
|
efichar.c \
|
|
efienv.c \
|
|
efihttp.c \
|
|
efinet.c \
|
|
efipart.c \
|
|
efizfs.c \
|
|
env.c \
|
|
errno.c \
|
|
handles.c \
|
|
libefi.c \
|
|
wchar.c
|
|
|
|
.PATH: ${SYSDIR}/teken
|
|
SRCS+= teken.c
|
|
|
|
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
|
|
SRCS+= time.c
|
|
.elif ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm"
|
|
SRCS+= time_event.c
|
|
.endif
|
|
|
|
# We implement a slightly non-standard %S in that it always takes a
|
|
# CHAR16 that's common in UEFI-land instead of a wchar_t. This only
|
|
# seems to matter on arm64 where wchar_t defaults to an int instead
|
|
# of a short. There's no good cast to use here so just ignore the
|
|
# warnings for now.
|
|
CWARNFLAGS.efinet.c+= -Wno-format
|
|
CWARNFLAGS.efipart.c+= -Wno-format
|
|
CWARNFLAGS.env.c+= -Wno-format
|
|
|
|
.if ${MACHINE_CPUARCH} == "aarch64"
|
|
CFLAGS+= -mgeneral-regs-only
|
|
.endif
|
|
.if ${MACHINE_ARCH} == "amd64"
|
|
CFLAGS+= -fPIC -mno-red-zone
|
|
.endif
|
|
CFLAGS+= -I${EFIINC}
|
|
CFLAGS+= -I${EFIINCMD}
|
|
CFLAGS.efi_console.c+= -I${SRCTOP}/sys/teken
|
|
CFLAGS.teken.c+= -I${SRCTOP}/sys/teken
|
|
.if ${MK_LOADER_ZFS} != "no"
|
|
CFLAGS+= -I${ZFSSRC}
|
|
CFLAGS+= -DEFI_ZFS_BOOT
|
|
.endif
|
|
|
|
# Pick up the bootstrap header for some interface items
|
|
CFLAGS+= -I${LDRSRC}
|
|
|
|
# Handle FreeBSD specific %b and %D printf format specifiers
|
|
CFLAGS+= ${FORMAT_EXTENSIONS}
|
|
|
|
# Do not use TERM_EMU on arm and arm64 as it doesn't behave well with serial console
|
|
.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "aarch64"
|
|
CFLAGS+= -DTERM_EMU
|
|
.endif
|
|
|
|
.include <bsd.lib.mk>
|