#!smake
#
# Makefile for lboot, the kernel linker.
#
#ident $Revision: 1.37 $

BASEVERSION=32bit
ALTVERSIONS=64bit 32elf
WANTPARALLEL=yes-please

include	$(ROOT)/usr/include/make/cmdcommondefs

COMMANDS=lboot
LCOPTS+=-fullwarn
LLDLIBS+=-ll
LCDEFS=-D__my_yyerror

HFILES=boothdr.h lboot.h mkboot.h
CFILES=drivers.c error.c main.c master.c subr.c util.c exprobe.c tune.c ml.c \
	exprspace.c elfsym.c admin.c

YFILES=mkboot.y

LINTFLAGS=-woff 91,102
#
# Turn off:
#	1110): statement is unreachable
#	1174): label "XXX" was declared but never referenced
#	1167): pointer points outside of underlying object
# These are generated by xmkboot.l and mkboot.y and can't really be changed.
#YACCMKDEPFLAGS+=-woff 1110,1174,1167
#LEXMKDEPFLAGS+=-woff 1110,1174,1167

LDIRT=xmkboot.c

default: $(TARGETS)

include $(CMDCOMMONRULES)

lboot: $(OBJECTS)
	$(CCF) $(OBJECTS) $(LDFLAGS) -o $@

#
# The 32bit and 64bit targets are for the EOE ism.
#
32bitinstall: default
	$(INSTALL) -F /usr/sbin $(IDB_TAG32) $(COMMANDS)
	$(INSTALL) -F /usr/cpu/sysgen/root/usr/sbin \
		   -lns ../../../../../sbin/$(COMMANDS) \
		   $(COMMANDS)

64bitinstall: default
	$(INSTALL) -F /usr/sbin $(IDB_TAG64) $(COMMANDS)

#
# This install target is needed for the TOOLS ism.
# 
32elfinstall: default
	$(INSTALL) -F /usr/sbin $(COMMANDS)

#
# The parser #includes its lex-generated scanner, so we need
# this hardwired dependency.
#
# XXX - as of 11/20/94 fec and cfe differed in what they placed in the
# makedepend file - one put in a ./ in front of the file name, the other
# didn't
#
#if $(VERSION) == "32bit"
mkboot.o: ./xmkboot.c
#else
mkboot.o: xmkboot.c
#endif
