# $Id: Makefile,v 1.8 1998/09/30 22:37:47 peter Exp $ BASE= loader PROG= ${BASE} NOMAN= STRIP= NEWVERSWHAT= "bootstrap loader" BINDIR?= /boot # architecture-specific loader code SRCS= main.c conf.c # Enable PnP and ISA-PnP code. #HAVE_PNP= yes #HAVE_ISABUS= yes # Verbose ls causes extra heap usage CFLAGS+= -DVERBOSE_LS # Always add MI sources .PATH: ${.CURDIR}/../../common .include <${.CURDIR}/../../common/Makefile.inc> CFLAGS+= -I${.CURDIR}/../../common -I. CLEANFILES+= vers.c vers.o ${BASE}.list setdef0.o setdef1.o setdefs.h \ gensetdefs.o gensetdefs ${BASE}.bin CFLAGS+= -Wall LDFLAGS= -nostdlib -static -Ttext 0x1000 # i386 standalone support library LIBI386= ${.OBJDIR}/../libi386/libi386.a CFLAGS+= -I${.CURDIR}/.. # where to get libstand from LIBSTAND= -lstand #LIBSTAND= ${.CURDIR}/../../../lib/libstand/libstand.a #CFLAGS+= -I${.CURDIR}/../../../lib/libstand/ # BTX components .if exists(${.OBJDIR}/../btx) BTXDIR= ${.OBJDIR}/../btx .else BTXDIR= ${.CURDIR}/../btx .endif BTXLDR= ${BTXDIR}/btxldr/btxldr BTXKERN= ${BTXDIR}/btx/btx BTXCRT= ${BTXDIR}/lib/crt0.o CFLAGS+= -I${.CURDIR}/../btx/lib # BTX is expecting ELF components CFLAGS+= -elf # Debug me! #CFLAGS+= -g #LDFLAGS+= -g vers.o: sh ${.CURDIR}/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT} ${CC} -c vers.c ${BASE}: ${BASE}.bin ${BTXLDR} ${BTXKERN} btxld -v -f aout -e 0x100000 -o ${.TARGET} -l ${BTXLDR} -b ${BTXKERN} \ ${BASE}.bin ${BASE}.bin: ${OBJS} ${LIBI386} vers.o setdef0.o setdef1.o ${LD} ${LDFLAGS} -o ${.TARGET} ${BTXCRT} setdef0.o ${OBJS} vers.o setdef1.o \ ${LIBSTAND} ${LIBI386} ${LIBSTAND} setdef0.o: setdefs.h setdef1.o: setdefs.h .include # Linker set gymnastics setdefs.h: gensetdefs ${OBJS} @echo Generating linker sets @./gensetdefs ${OBJS} >setdefs.h gensetdefs: gensetdefs.o ${CC} -static gensetdefs.o -o $@ gensetdefs.o: gensetdefs.c ${CC} -c $<