Makefile revision 59087
1139825Simp# $FreeBSD: head/sys/boot/i386/loader/Makefile 59087 2000-04-08 01:22:14Z ps $ 21541Srgrimes 31541SrgrimesBASE= loader 41541SrgrimesPROG= ${BASE} 51541SrgrimesMAN5= ../../forth/loader.conf.5 61541SrgrimesMAN8= loader.8 ../../forth/loader.4th.8 71541Srgrimes#NOMAN= 81541SrgrimesSTRIP= 91541SrgrimesNEWVERSWHAT= "bootstrap loader" i386 101541SrgrimesBINDIR?= /boot 111541Srgrimes 121541Srgrimes# architecture-specific loader code 131541SrgrimesSRCS= main.c conf.c pxe.c 141541Srgrimes.PATH: ${.CURDIR}/../libi386 151541Srgrimes 161541Srgrimes# Enable PXE TFTP or NFS support, not both. 171541SrgrimesCFLAGS+= -DLOADER_NFS_SUPPORT 181541Srgrimes#CFLAGS+= -DLOADER_TFTP_SUPPORT 191541Srgrimes 201541Srgrimes# Enable PnP and ISA-PnP code. 211541SrgrimesHAVE_PNP= yes 221541SrgrimesHAVE_ISABUS= yes 231541Srgrimes 241541Srgrimes.if !defined(NOFORTH) 251541Srgrimes# Enable BootForth 261541SrgrimesBOOT_FORTH= yes 271541SrgrimesCFLAGS+= -DBOOT_FORTH -I${.CURDIR}/../../ficl -I${.CURDIR}/../../ficl/i386 281541Srgrimes.if exists(${.OBJDIR}/../../ficl/libficl.a) 291541SrgrimesLIBFICL= ${.OBJDIR}/../../ficl/libficl.a 301541Srgrimes.else 311541SrgrimesLIBFICL= ${.CURDIR}/../../ficl/libficl.a 321817Sdg.endif 331541Srgrimes.endif 341541Srgrimes 351541Srgrimes# Always add MI sources 361541Srgrimes.PATH: ${.CURDIR}/../../common 371541Srgrimes.include <${.CURDIR}/../../common/Makefile.inc> 381541SrgrimesCFLAGS+= -I${.CURDIR}/../../common 395455SdgCFLAGS+= -I${.CURDIR}/../../.. -I. 401541Srgrimes 411541SrgrimesCLEANFILES+= vers.c vers.o ${BASE}.list ${BASE}.bin ${BASE}.sym ${BASE}.help 421541Srgrimes 431541SrgrimesCFLAGS+= -Wall 441541SrgrimesLDFLAGS= -nostdlib -static -Ttext 0x0 455455Sdg 465455Sdg# i386 standalone support library 475455SdgLIBI386= ${.OBJDIR}/../libi386/libi386.a 481541SrgrimesCFLAGS+= -I${.CURDIR}/.. 495455Sdg 501541Srgrimes# where to get libstand from 511541SrgrimesLIBSTAND= -lstand 521541Srgrimes#LIBSTAND= ${.CURDIR}/../../../../lib/libstand/libstand.a 531541SrgrimesCFLAGS+= -I${.CURDIR}/../../../../lib/libstand/ 541541Srgrimes 551541Srgrimes# BTX components 561541Srgrimes.if exists(${.OBJDIR}/../btx) 571541SrgrimesBTXDIR= ${.OBJDIR}/../btx 581541Srgrimes.else 591541SrgrimesBTXDIR= ${.CURDIR}/../btx 601541Srgrimes.endif 611541SrgrimesBTXLDR= ${BTXDIR}/btxldr/btxldr 621541SrgrimesBTXKERN= ${BTXDIR}/btx/btx 631541SrgrimesBTXCRT= ${BTXDIR}/lib/crt0.o 641541SrgrimesCFLAGS+= -I${.CURDIR}/../btx/lib 65116226Sobrien 66116226Sobrien# BTX is expecting ELF components 67116226SobrienCFLAGS+= -elf 681541Srgrimes 691541Srgrimes# New linker set code 7087157SluigiCFLAGS+= -DNEW_LINKER_SET 71168395Spjd 7276166Smarkm# Debug me! 7376166Smarkm#CFLAGS+= -g 742112Swollman#LDFLAGS+= -g 756129Sdg 76188964Srwatsonvers.o: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version 771541Srgrimes sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT} 781541Srgrimes ${CC} -c vers.c 7912662Sdg 8012662Sdg${BASE}: ${BASE}.bin ${BTXLDR} ${BTXKERN} ${BTXCRT} ${BASE}.help 8112662Sdg btxld -v -f aout -e ${LOADER_ADDRESS} -o ${.TARGET} -l ${BTXLDR} \ 8212662Sdg -b ${BTXKERN} ${BASE}.bin 831541Srgrimes# /usr/bin/kzip ${.TARGET} 841541Srgrimes# mv ${.TARGET}.kz ${.TARGET} 8512726Sbde 86168395Spjd${BASE}.bin: ${BASE}.sym 871541Srgrimes cp ${.ALLSRC} ${.TARGET} 8819830Sdyson strip ${.TARGET} 8919830Sdyson 9019830Sdyson${BASE}.help: help.common help.i386 91118764Ssilby cat ${.ALLSRC} | awk -f ${.CURDIR}/../../common/merge_help.awk > ${.TARGET} 9219830Sdyson 932112Swollmanbeforeinstall: 94221853Smdf.if exists(${DESTDIR}/boot/loader) 95221853Smdf mv ${DESTDIR}/boot/loader ${DESTDIR}/boot/loader.old 96221853Smdf.endif 97246316Smarius.if exists(${.OBJDIR}/loader.help) 98246316Smarius ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 99246316Smarius ${.OBJDIR}/${BASE}.help ${DESTDIR}/boot 100246316Smarius.else 101246926Salc ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 102246316Smarius ${.CURDIR}/${BASE}.help ${DESTDIR}/boot 103246316Smarius.endif 104246316Smarius.if !exists(${DESTDIR}/boot/loader.rc) 105246316Smarius ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 106246316Smarius ${.CURDIR}/../../forth/loader.rc ${DESTDIR}/boot 107246316Smarius.endif 1081541Srgrimes ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 10947841Sdt ${.CURDIR}/../../forth/loader.4th ${DESTDIR}/boot 11047841Sdt ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 111118317Salc ${.CURDIR}/../../forth/support.4th ${DESTDIR}/boot 112118317Salc ${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \ 113118317Salc ${.CURDIR}/../../forth/loader.conf ${DESTDIR}/boot/defaults 114118317Salc 115118317Salc.include <${.CURDIR}/../Makefile.inc> 11647841Sdt 11747841Sdt# Cannot use ${OBJS} above this line 11847841Sdt.include <bsd.prog.mk> 11947841Sdt 12070480Salfred${BASE}.sym: ${OBJS} ${LIBI386} ${LIBSTAND} ${LIBFICL} vers.o 12147841Sdt ${CC} ${LDFLAGS} -o ${.TARGET} ${BTXCRT} ${OBJS} vers.o \ 12247841Sdt ${LIBFICL} ${LIBSTAND} ${LIBI386} ${LIBSTAND} 12370480Salfred 12447841Sdt# If it's not there, don't consider it a target 12547841Sdt.if exists(${.CURDIR}/../../../i386/include) 12647841Sdtbeforedepend ${OBJS}: machine 127178933Salc 128178933Salcmachine: 12947841Sdt ln -sf ${.CURDIR}/../../../i386/include machine 13047841Sdt 13147841Sdt.endif 13247841Sdt 13347841SdtCLEANFILES+= machine 13447841Sdt