Makefile revision 199767f8919635c4928607450d9e0abb932109ce
#
# This file and its contents are supplied under the terms of the
# Common Development and Distribution License ("CDDL"), version 1.0.
# You may only use this file in accordance with the terms of version
# 1.0 of the CDDL.
#
# A full copy of the text of the CDDL should have accompanied this
# source. A copy of the CDDL is also available via the Internet at
# http://www.illumos.org/license/CDDL.
#
#
# Copyright 2015 Toomas Soome <tsoome@me.com>
#
include $(SRC)/Makefile.master
ROOT_BOOT = $(ROOT)/boot
CC= $(GCC_ROOT)/bin/gcc
LD= $(GNU_ROOT)/bin/gld
DD= /usr/bin/dd
CFLAGS= -O2 -I../../..
CCASFLAGS= -Wa,--divide
include ../Makefile.inc
BTXDIR=../btx
PROG= ${LDR}
INTERNALPROG=
FILES= ${BOOT}
MAN= ${BOOT}.8
SRCS= ${LDR}.S
OBJS= ${LDR}.o
CLEANFILES= ${BOOT} ${OBJS}
BOOT= pxeboot
LDR= pxeldr
ORG= 0x7c00
LOADER= loader
FILEMODE=0444
#CFLAGS += -DPROBE_KEYBOARD
#.if defined(BOOT_PXELDR_ALWAYS_SERIAL)
#CFLAGS+=-DALWAYS_SERIAL
#.endif
CFLAGS +=-I../common
LOADERBIN= ../loader/zfsloader.bin
CLEANFILES += ${BOOT}.tmp
${BOOT}: ${LDR} ${LOADER}
$(CAT) ${LDR} ${LOADER} > $@.tmp
$(DD) if=$@.tmp of=$@ obs=2k conv=sync
$(RM) $@.tmp
LDFLAGS +=-e start -Ttext ${ORG} -N -S --oformat binary
CLEANFILES += ${LOADER} ${LDR}
${LDR}: ${OBJS}
${LD} ${LDFLAGS} -o $@ $^
${LOADER}: ${LOADERBIN} ${BTXLDR} ${BTXKERN}
$(BTXLD) -v -f aout -e ${LOADER_ADDRESS} -o $@ -l ${BTXLDR} \
-b ${BTXKERN} ${LOADERBIN}
all: ${BOOT}
install: $(BOOT:%=$(ROOT_BOOT)/%)
clobber: clean
clean:
$(RM) $(CLEANFILES)
.S.o:
$(CC) $(CFLAGS) $(CCASFLAGS) -c -o $@ $<
$(ROOT_BOOT)/%: %
$(INS.file)