#
# Makefile  -  makefile for main boot routines
#
# Copyright (C) 1995,1996 Gero Kuhlmann <gero@gkminix.han.de>
#
#  This program is free software; you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation; either version 2 of the License, or
#  any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program; if not, write to the Free Software
#  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#


#
#  Include system dependent definitions:
#
include ../../config.mk


#
#  List of source and object files:
#
CSRCS	= boot.c load.c menu.c
ASRCS	= utility.asm lddisk.asm
OBJS	= boot.obj load.obj menu.obj utility.obj lddisk.obj
TARGET	= boot.lib

CHDRS	= ../../headers/general.h \
	  ../public/net.h \
	  ../public/arpa.h \
	  ../public/romlib.h \
	  ./bootpriv.h

AHDRS	= ../../headers/asm/layout.inc \
	  ../../headers/asm/macros.inc \
	  ../../headers/asm/memory.inc


#
#  Rules to create object files from source files:
#
.SUFFIXES:	.c .asm .obj .exe

.c.obj: 
ifdef VERBOSE
	$(CC) -c $(CFLAGS) $(BOOTCFL) $<
else
	$(CC) -c $(CFLAGS) $(BOOTCFL) $< >NUL
endif
	$(LIBP) $(TARGET:.lib=)-+$@ ; >NUL

.asm.obj:
	$(ASM) $(AFLAGS) $(BOOTAFL) $< ;
	$(LIBP) $(TARGET:.lib=)-+$@ ; >NUL


#
#  Target rules. Note that assembler files cannot have their dependencies
#  created automatically, and therefore have to appear here.
#
all:		$(TARGET)

$(TARGET):	$(OBJS)

boot.obj:	boot.c $(CHDRS) ./menu.h ./load.h ../public/boot.h

load.obj:	load.c $(CHDRS) ./load.h ../../headers/memory.h

menu.obj:	menu.c $(CHDRS) ./menu.h

utility.obj:	utility.asm $(AHDRS)

lddisk.obj:	lddisk.asm $(AHDRS)


#
#  Maintenance rules for cleaning up.
#
.PHONY:	clean

clean:
	-$(RM) $(TARGET)
	-$(RM) *.obj
	-$(RM) *.lst
	-$(RM) *.map
	-$(RM) *.bak


dummy:
