122028508SToomas Soome# 222028508SToomas Soome# This file and its contents are supplied under the terms of the 322028508SToomas Soome# Common Development and Distribution License ("CDDL"), version 1.0. 422028508SToomas Soome# You may only use this file in accordance with the terms of version 522028508SToomas Soome# 1.0 of the CDDL. 622028508SToomas Soome# 722028508SToomas Soome# A full copy of the text of the CDDL should have accompanied this 822028508SToomas Soome# source. A copy of the CDDL is also available via the Internet at 922028508SToomas Soome# http://www.illumos.org/license/CDDL. 1022028508SToomas Soome# 1122028508SToomas Soome 1222028508SToomas Soome# 1322028508SToomas Soome# Copyright 2015 Toomas Soome <tsoome@me.com> 1422028508SToomas Soome# Copyright 2016 RackTop Systems. 1522028508SToomas Soome# 1622028508SToomas Soome 1722028508SToomas Soomeinclude $(SRC)/Makefile.master 1822028508SToomas Soomeinclude $(SRC)/boot/Makefile.inc 1922028508SToomas Soome 2022028508SToomas SoomeCPPFLAGS += -I../../include -I../../sys 2122028508SToomas SoomeCPPFLAGS += -I$(ZFSSRC) 2222028508SToomas Soome 2322028508SToomas Soomeall install: libi386.a 2422028508SToomas Soome 2522028508SToomas Soomeclean: clobber 2622028508SToomas Soomeclobber: 2722028508SToomas Soome $(RM) machine x86 $(OBJS) libi386.a 2822028508SToomas Soome 2922028508SToomas SoomeSRCS= \ 3022028508SToomas Soome amd64_tramp.S \ 3122028508SToomas Soome bio.c \ 3222028508SToomas Soome biosacpi.c \ 3322028508SToomas Soome biosdisk.c \ 3422028508SToomas Soome biosmem.c \ 3522028508SToomas Soome biospci.c \ 3622028508SToomas Soome biospnp.c \ 3722028508SToomas Soome biossmap.c \ 3822028508SToomas Soome bootinfo.c \ 3922028508SToomas Soome bootinfo32.c \ 4022028508SToomas Soome bootinfo64.c \ 4122028508SToomas Soome comconsole.c \ 4222028508SToomas Soome cpuid.c \ 4322028508SToomas Soome devicename.c \ 4422028508SToomas Soome elf32_freebsd.c \ 4522028508SToomas Soome elf64_freebsd.c \ 4622028508SToomas Soome i386_copy.c \ 4722028508SToomas Soome i386_module.c \ 4822028508SToomas Soome linux.c \ 4922028508SToomas Soome multiboot.c \ 5022028508SToomas Soome multiboot_tramp.S \ 5122028508SToomas Soome nullconsole.c \ 5222028508SToomas Soome pxe.c \ 5322028508SToomas Soome pxetramp.s \ 5422028508SToomas Soome relocater_tramp.S \ 5522028508SToomas Soome spinconsole.c \ 5622028508SToomas Soome time.c \ 5722028508SToomas Soome vbe.c \ 5822028508SToomas Soome vgasubr.c \ 5922028508SToomas Soome vidconsole.c 6022028508SToomas Soome 6122028508SToomas SoomeOBJS= \ 6222028508SToomas Soome amd64_tramp.o \ 6322028508SToomas Soome bio.o \ 6422028508SToomas Soome biosacpi.o \ 6522028508SToomas Soome biosdisk.o \ 6622028508SToomas Soome biosmem.o \ 6722028508SToomas Soome biospci.o \ 6822028508SToomas Soome biospnp.o \ 6922028508SToomas Soome biossmap.o \ 7022028508SToomas Soome bootinfo.o \ 7122028508SToomas Soome bootinfo32.o \ 7222028508SToomas Soome bootinfo64.o \ 7322028508SToomas Soome comconsole.o \ 7422028508SToomas Soome cpuid.o \ 7522028508SToomas Soome devicename.o \ 7622028508SToomas Soome elf32_freebsd.o \ 7722028508SToomas Soome elf64_freebsd.o \ 7822028508SToomas Soome i386_copy.o \ 7922028508SToomas Soome i386_module.o \ 8022028508SToomas Soome linux.o \ 8122028508SToomas Soome multiboot.o \ 8222028508SToomas Soome multiboot_tramp.o \ 8322028508SToomas Soome nullconsole.o \ 8422028508SToomas Soome pxe.o \ 8522028508SToomas Soome pxetramp.o \ 8622028508SToomas Soome relocater_tramp.o \ 8722028508SToomas Soome spinconsole.o \ 8822028508SToomas Soome time.o \ 8922028508SToomas Soome vbe.o \ 9022028508SToomas Soome vgasubr.o \ 9122028508SToomas Soome vidconsole.o 9222028508SToomas Soome 9322028508SToomas SoomeCOMMON= ../../common 9422028508SToomas SoomeVGASUBR=$(SRC)/common/vga 9522028508SToomas SoomeCPPFLAGS += -I$(PNGLITE) 9622028508SToomas SoomeSRCS += $(COMMON)/gfx_fb.c $(PNGLITE)/pnglite.c 9722028508SToomas SoomeOBJS += gfx_fb.o pnglite.o 9822028508SToomas Soome 99*c2eb74cbSToomas Soomebiosacpi.o := CFLAGS += -_gcc14=--param=min-pagesize=0 100*c2eb74cbSToomas Soomebiosdisk.o := CFLAGS += -_gcc14=--param=min-pagesize=0 10122028508SToomas Soomegfx_fb.o := CPPFLAGS += $(DEFAULT_CONSOLE_COLOR) -I$(LZ4) 10222028508SToomas Soomepnglite.o := CPPFLAGS += -I$(ZLIB) 10322028508SToomas Soome 10422028508SToomas SoomeSRCS += $(ZFSSRC)/devicename_stubs.c 10522028508SToomas SoomeOBJS += devicename_stubs.o 10622028508SToomas Soome 10722028508SToomas SoomeBOOT_COMCONSOLE_PORT= 0x3f8 10822028508SToomas SoomeCPPFLAGS += -DCOMPORT=${BOOT_COMCONSOLE_PORT} 10922028508SToomas Soome 11022028508SToomas SoomeBOOT_COMCONSOLE_SPEED= 9600 11122028508SToomas SoomeCPPFLAGS += -DCOMSPEED=${BOOT_COMCONSOLE_SPEED} 11222028508SToomas Soome 11322028508SToomas Soome# Make the disk code more talkative 11422028508SToomas Soome# CPPFLAGS+= -DDISK_DEBUG 11522028508SToomas Soome 11622028508SToomas Soome# XXX: make alloca() useable 11722028508SToomas SoomeCPPFLAGS += -Dalloca=__builtin_alloca 11822028508SToomas Soome 11922028508SToomas SoomeCPPFLAGS += -I$(SRC)/common/ficl -I../../libficl \ 12022028508SToomas Soome -I../../common -I../common \ 12122028508SToomas Soome -I../btx/lib \ 12222028508SToomas Soome -I$(SRC)/uts/intel/sys/acpi \ 12322028508SToomas Soome -I. 12422028508SToomas Soome# the location of libstand 12522028508SToomas SoomeCPPFLAGS += -I../../libsa 12622028508SToomas Soome 12722028508SToomas Soomemultiboot.o := CPPFLAGS += -I../../sys/cddl/boot/zfs 12822028508SToomas Soomemultiboot2.o := CPPFLAGS += -I../../sys/cddl/boot/zfs 12922028508SToomas Soomedevicename.o := CPPFLAGS += -I../../sys/cddl/boot/zfs 13022028508SToomas Soomedevicename_stubs.o := CPPFLAGS += -I../../sys/cddl/boot/zfs 13122028508SToomas Soome 13222028508SToomas SoomeCLEANFILES += machine x86 13322028508SToomas Soome 13422028508SToomas Soomeinclude ../Makefile.inc 13522028508SToomas Soome 13622028508SToomas Soome# For multiboot2.h, must be last, to avoid conflicts 13722028508SToomas SoomeCPPFLAGS += -I$(SRC)/uts/common 13822028508SToomas Soome 13922028508SToomas Soomemachine: 14022028508SToomas Soome $(RM) machine 14122028508SToomas Soome $(SYMLINK) ../../sys/i386/include machine 14222028508SToomas Soome 14322028508SToomas Soomex86: 14422028508SToomas Soome $(RM) x86 14522028508SToomas Soome $(SYMLINK) ../../sys/x86/include x86 14622028508SToomas Soome 14722028508SToomas Soome$(OBJS): machine x86 14822028508SToomas Soome 14922028508SToomas Soomelibi386.a: $(OBJS) 15022028508SToomas Soome $(AR) $(ARFLAGS) $@ $(OBJS) 15122028508SToomas Soome 15222028508SToomas Soome%.o: $(ZFSSRC)/%.c 15322028508SToomas Soome $(COMPILE.c) -o $@ $< 15422028508SToomas Soome 15522028508SToomas Soome%.o: $(COMMON)/%.c 15622028508SToomas Soome $(COMPILE.c) -o $@ $< 15722028508SToomas Soome 15822028508SToomas Soome%.o: $(PNGLITE)/%.c 15922028508SToomas Soome $(COMPILE.c) -o $@ $< 16022028508SToomas Soome 16122028508SToomas Soome%.o: $(VGASUBR)/%.c 16222028508SToomas Soome $(COMPILE.c) -o $@ $< 163