xref: /illumos-gate/usr/src/boot/i386/pxeldr/Makefile (revision 5d9d9091f564c198a760790b0bfa72c44e17912b)
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#
1522028508SToomas Soome
1622028508SToomas Soomeinclude $(SRC)/Makefile.master
1722028508SToomas Soomeinclude $(SRC)/boot/Makefile.inc
1822028508SToomas Soome
1922028508SToomas SoomeROOT_BOOT = $(ROOT)/boot
2022028508SToomas Soome
2122028508SToomas SoomeDD=		/usr/bin/dd
2222028508SToomas Soome
2322028508SToomas SoomeCPPFLAGS += -I../../sys
2422028508SToomas SoomeCPPFLAGS += -I../common
25*5d9d9091SRichard LoweAS_CPPFLAGS += $(CPPFLAGS)
2622028508SToomas Soome
2722028508SToomas SoomeCCASFLAGS= -Wa,--divide
2822028508SToomas Soome
2922028508SToomas Soomeinclude ../Makefile.inc
3022028508SToomas Soome
3122028508SToomas SoomeBTXDIR= ../btx
3222028508SToomas Soome
33db1a8debSToomas SoomePROG=	$(LDR)
3422028508SToomas SoomeINTERNALPROG=
35db1a8debSToomas SoomeFILES=	$(BOOT)
36db1a8debSToomas SoomeMAN=	$(BOOT).8
37db1a8debSToomas SoomeSRCS=	$(LDR).S
38db1a8debSToomas SoomeOBJS=	$(LDR).o
39db1a8debSToomas SoomeCLEANFILES= $(BOOT) $(OBJS)
4022028508SToomas Soome
4122028508SToomas SoomeBOOT=	pxeboot
4222028508SToomas SoomeLDR=	pxeldr
4322028508SToomas SoomeORG=	0x7c00
4422028508SToomas SoomeLOADER=	loader
4522028508SToomas SoomeFILEMODE=0444
4622028508SToomas Soome
4722028508SToomas Soome#CFLAGS +=	-DPROBE_KEYBOARD
4822028508SToomas Soome
4922028508SToomas Soome#.if defined(BOOT_PXELDR_ALWAYS_SERIAL)
5022028508SToomas Soome#CFLAGS+=-DALWAYS_SERIAL
5122028508SToomas Soome#.endif
5222028508SToomas Soome
5322028508SToomas SoomeLOADERBIN= ../loader/loader.bin
5422028508SToomas Soome
55db1a8debSToomas SoomeCLEANFILES += $(BOOT).tmp
5622028508SToomas Soome
57db1a8debSToomas Soome$(BOOT): $(LDR) $(LOADER)
58db1a8debSToomas Soome	$(CAT) $(LDR) $(LOADER) > $@.tmp
5922028508SToomas Soome	$(DD) if=$@.tmp of=$@ obs=2k conv=sync
6022028508SToomas Soome	$(RM) $@.tmp
6122028508SToomas Soome
62db1a8debSToomas SoomeLDFLAGS += $(GLDTARGET) -e start -Ttext $(ORG) -N -S --oformat binary
6322028508SToomas Soome
64db1a8debSToomas SoomeCLEANFILES += $(LOADER) $(LDR)
6522028508SToomas Soome
66db1a8debSToomas Soome$(LDR): $(OBJS)
67db1a8debSToomas Soome	$(GLD) $(LDFLAGS) -o $@ $^
6822028508SToomas Soome
69db1a8debSToomas Soome$(LOADER): $(LOADERBIN) $(BTXLDR) $(BTXKERN)
70db1a8debSToomas Soome	$(BTXLD) -f aout -e $(LOADER_ADDRESS) -o $@ -l $(BTXLDR) \
71db1a8debSToomas Soome	    -b $(BTXKERN) $(LOADERBIN)
7222028508SToomas Soome
73db1a8debSToomas Soomeall: $(BOOT)
7422028508SToomas Soome
7522028508SToomas Soomeinstall: $(BOOT:%=$(ROOT_BOOT)/%)
7622028508SToomas Soome
7722028508SToomas Soomeclobber: clean
7822028508SToomas Soomeclean:
7922028508SToomas Soome	$(RM) $(CLEANFILES)
8022028508SToomas Soome
8122028508SToomas Soome$(ROOT_BOOT)/%: %
8222028508SToomas Soome	$(INS.file)
83