1# $FreeBSD$ 2 3HAVE_GPT= yes 4HAVE_GELI= yes 5 6.include <bsd.init.mk> 7 8LIB= i386 9INTERNALLIB= 10 11SRCS= biosacpi.c bioscd.c biosdisk.c biosmem.c biospnp.c \ 12 biospci.c biossmap.c bootinfo.c bootinfo32.c bootinfo64.c \ 13 comconsole.c devicename.c elf32_freebsd.c \ 14 elf64_freebsd.c multiboot.c multiboot_tramp.S relocater_tramp.S \ 15 i386_copy.c i386_module.c nullconsole.c pxe.c pxetramp.s \ 16 smbios.c time.c vidconsole.c amd64_tramp.S spinconsole.c 17.PATH: ${ZFSSRC} 18SRCS+= devicename_stubs.c 19 20BOOT_COMCONSOLE_PORT?= 0x3f8 21CFLAGS+= -DCOMPORT=${BOOT_COMCONSOLE_PORT} 22 23BOOT_COMCONSOLE_SPEED?= 9600 24CFLAGS+= -DCOMSPEED=${BOOT_COMCONSOLE_SPEED} 25 26.ifdef(BOOT_BIOSDISK_DEBUG) 27# Make the disk code more talkative 28CFLAGS+= -DDISK_DEBUG 29.endif 30 31.if !defined(BOOT_HIDE_SERIAL_NUMBERS) 32# Export serial numbers, UUID, and asset tag from loader. 33CFLAGS+= -DSMBIOS_SERIAL_NUMBERS 34.if defined(BOOT_LITTLE_ENDIAN_UUID) 35# Use little-endian UUID format as defined in SMBIOS 2.6. 36CFLAGS+= -DSMBIOS_LITTLE_ENDIAN_UUID 37.elif defined(BOOT_NETWORK_ENDIAN_UUID) 38# Use network-endian UUID format for backward compatibility. 39CFLAGS+= -DSMBIOS_NETWORK_ENDIAN_UUID 40.endif 41.endif 42 43# Include simple terminal emulation (cons25-compatible) 44CFLAGS+= -DTERM_EMU 45 46# XXX: make alloca() useable 47CFLAGS+= -Dalloca=__builtin_alloca 48 49CFLAGS+= -I${BOOTSRC}/ficl -I${BOOTSRC}/ficl/i386 \ 50 -I${LDRSRC} -I${BOOTSRC}/i386/common \ 51 -I${BTXLIB} \ 52 -I${SYSDIR}/contrib/dev/acpica/include 53 54# Handle FreeBSD specific %b and %D printf format specifiers 55CFLAGS+= ${FORMAT_EXTENSIONS} 56 57.include <bsd.lib.mk> 58 59# XXX: clang integrated-as doesn't grok .codeNN directives yet 60CFLAGS.amd64_tramp.S= ${CLANG_NO_IAS} 61CFLAGS.multiboot_tramp.S= ${CLANG_NO_IAS} 62