Makefile revision 1.5
11.2SisNOPROG=installboot
21.1SisMAN=installboot.8
31.1Sis
41.2Sis### what we need:
51.1Sis
61.2SisS=		${.CURDIR}/../../../..
71.2SisDIR_SA = 	${S}/lib/libsa
81.2SisDIR_KERN=	${S}/lib/libkern
91.2SisDIR_KERN_MD=	${S}/lib/libkern/arch/$(MACHINE_ARCH)
101.1Sis
111.2Sis.PATH:  $(DIR_SA) $(DIR_KERN) $(DIR_KERN_MD)
121.1Sis
131.2Sis# prefer our assembler versions over assembler, and assembler over C:
141.1Sis
151.2Sis.SUFFIXES:
161.2Sis.SUFFIXES: .out .o .po .so .s .S .c .cc .C .f .y .l .ln .m4 .sh
171.1Sis
181.2SisSRCS=installboot.sh
191.1Sis
201.5SmycroftBOOTBLOCKS= xxboot fdboot
211.1Sis
221.2SisCOBJS = configure.o main.o console.o xd.o twiddle.o bzero.o gets.o
231.2SisCOBJS+=  lseek.o open.o read.o close.o dev.o
241.2SisCOBJS+=  ufs.o
251.1Sis
261.2SisSOBJS = alloc.o ashrdi3.o bcopy.o muldi3.o printf.o startit.o
271.2SisSOBJS += strlen.o strcmp.o
281.2SisSOBJS += libstubs.o 
291.1Sis
301.2SisOBJS=	$(SOBJS) $(COBJS)
311.1Sis
321.2SisDEFS = -DSTANDALONE -DINSECURE
331.1Sis
341.2Sis### main target: ###
351.1Sis
361.2Sisall: ${BOOTBLOCKS} installboot
371.1Sis
381.2Sis### special  rules for bootblocks ###
391.1Sis
401.2SisAFLAGS += -m68030 -l
411.2SisCAFLAGS += -Wa,-l -Wa,-m68030
421.1Sis
431.2SisINCPATH = -I${S} -I${S}/lib/libsa -I${.CURDIR} -I${.CURDIR}/../..
441.2SisBB_COPTIM= -O2 -fomit-frame-pointer -fno-function-cse -Wa,-l -m68060 -Wa,-m68030
451.2SisBB_CFLAGS = ${BB_COPTIM} ${INCPATH} ${DEFS} -Wall #-Wstrict-prototypes
461.1Sis
471.2Sis.c.o:
481.2Sis	$(CC) $(BB_CFLAGS) -S $< -o $*.s
491.2Sis	./txlt < $*.s | $(AS) $(AFLAGS) -o $*.o
501.2Sis	rm $*.s
511.1Sis
521.2Sis.s.o: ; $(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp -o $@ -c $<
531.1Sis
541.2Sis.S.o: ; $(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp -o $@ -c $<
551.1Sis
561.2Sis${COBJS}: txlt
571.1Sis
581.2Sis${BOOTBLOCKS}: aout2bb
591.2Sis
601.3SisCLEANFILES += xxboot fdboot x.out f.out xxstart.o fdstart.o libboot.a
611.1Sis
621.1Sisxxboot: x.out
631.2Sis	./aout2bb x.out $@ || nm -u x.out
641.1Sis
651.1Sisfdboot: f.out
661.2Sis	./aout2bb f.out $@ || nm -u f.out
671.2Sis
681.2Sisx.out: xxstart.o libboot.a
691.2Sis	$(LD) $(LDFLAGS) -r -dc -e _start -o $@ $>
701.2Sis	size $@
711.2Sis	nm -u $@
721.2Sis
731.2Sisf.out: fdstart.o libboot.a
741.2Sis	$(LD) $(LDFLAGS) -r -dc -e _start -o $@ $>
751.2Sis	size $@
761.2Sis	nm -u $@
771.2Sis
781.2Sisxxstart.o: ${.CURDIR}/bbstart.s
791.2Sis	$(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp \
801.2Sis		-o $@ -c $>
811.2Sis
821.2Sisfdstart.o: ${.CURDIR}/bbstart.s
831.2Sis	$(CC) -DAUTOLOAD=8192 $(CAFLAGS) $(COPTS) -x assembler-with-cpp \
841.2Sis		-o $@ -c $>
851.1Sis
861.2Sislibboot.a: $(OBJS)
871.2Sis	ar r $@ $> && ranlib $@
881.2Sis
891.2Sis### install what we need: ###
901.1Sis
911.1Sisinstall: all maninstall
921.2Sis	install -o $(BINOWN) -g $(BINGRP) installboot ${DESTDIR}/usr/sbin
931.2Sis	install -o $(BINOWN) -g $(BINGRP) $(BOOTBLOCKS) ${DESTDIR}/usr/mdec
941.2Sis
951.2Sis### start of helper programs: ###
961.2Sis
971.2SisHOSTED_CC=	$(CC)
981.2SisHOSTED_CFLAGS=	$(CFLAGS)
991.2Sis
1001.2SisHOSTED_C=	${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<
1011.2Sis
1021.2SisCLEANFILES += txlt txlt.o aout2bb aout2bb.o chksum.o
1031.2Sis
1041.2Sisaout2bb: aout2bb.o chksum.o
1051.2Sis	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $>
1061.1Sis
1071.2Sisaout2bb.o: ${.CURDIR}/aout2bb.c
1081.2Sis	${HOSTED_C}
1091.1Sis
1101.2Sischksum.o: ${.CURDIR}/chksum.c
1111.2Sis	${HOSTED_C}
1121.1Sis
1131.2Sistxlt: txlt.o
1141.2Sis	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $> -ll
1151.1Sis
1161.2Sisdepend::
1171.2Sis	mkdep -a ${.CURDIR}/aout2bb.c ${.CURDIR}/chksum.c
1181.1Sis
1191.2Sis### end of helper programs ###
1201.1Sis
1211.1Sis.include <bsd.prog.mk>
122