Makefile revision 1.4
1NOPROG=installboot 2MAN=installboot.8 3 4### what we need: 5 6S= ${.CURDIR}/../../../.. 7DIR_SA = ${S}/lib/libsa 8DIR_KERN= ${S}/lib/libkern 9DIR_KERN_MD= ${S}/lib/libkern/arch/$(MACHINE_ARCH) 10 11.PATH: $(DIR_SA) $(DIR_KERN) $(DIR_KERN_MD) 12 13# prefer our assembler versions over assembler, and assembler over C: 14 15.SUFFIXES: 16.SUFFIXES: .out .o .po .so .s .S .c .cc .C .f .y .l .ln .m4 .sh 17 18SRCS=installboot.sh 19 20BOOTBLOCKS= xxboot # XXX fdboot is too big again. is. 21 22COBJS = configure.o main.o console.o xd.o twiddle.o bzero.o gets.o 23COBJS+= lseek.o open.o read.o close.o dev.o 24COBJS+= ufs.o 25 26SOBJS = alloc.o ashrdi3.o bcopy.o muldi3.o printf.o startit.o 27SOBJS += strlen.o strcmp.o 28SOBJS += libstubs.o 29 30OBJS= $(SOBJS) $(COBJS) 31 32DEFS = -DSTANDALONE -DINSECURE 33 34### main target: ### 35 36all: ${BOOTBLOCKS} installboot 37 38### special rules for bootblocks ### 39 40AFLAGS += -m68030 -l 41CAFLAGS += -Wa,-l -Wa,-m68030 42 43INCPATH = -I${S} -I${S}/lib/libsa -I${.CURDIR} -I${.CURDIR}/../.. 44BB_COPTIM= -O2 -fomit-frame-pointer -fno-function-cse -Wa,-l -m68060 -Wa,-m68030 45BB_CFLAGS = ${BB_COPTIM} ${INCPATH} ${DEFS} -Wall #-Wstrict-prototypes 46 47.c.o: 48 $(CC) $(BB_CFLAGS) -S $< -o $*.s 49 ./txlt < $*.s | $(AS) $(AFLAGS) -o $*.o 50 rm $*.s 51 52.s.o: ; $(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp -o $@ -c $< 53 54.S.o: ; $(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp -o $@ -c $< 55 56${COBJS}: txlt 57 58${BOOTBLOCKS}: aout2bb 59 60CLEANFILES += xxboot fdboot x.out f.out xxstart.o fdstart.o libboot.a 61 62xxboot: x.out 63 ./aout2bb x.out $@ || nm -u x.out 64 65fdboot: f.out 66 ./aout2bb f.out $@ || nm -u f.out 67 68x.out: xxstart.o libboot.a 69 $(LD) $(LDFLAGS) -r -dc -e _start -o $@ $> 70 size $@ 71 nm -u $@ 72 73f.out: fdstart.o libboot.a 74 $(LD) $(LDFLAGS) -r -dc -e _start -o $@ $> 75 size $@ 76 nm -u $@ 77 78xxstart.o: ${.CURDIR}/bbstart.s 79 $(CC) $(CAFLAGS) $(COPTS) -x assembler-with-cpp \ 80 -o $@ -c $> 81 82fdstart.o: ${.CURDIR}/bbstart.s 83 $(CC) -DAUTOLOAD=8192 $(CAFLAGS) $(COPTS) -x assembler-with-cpp \ 84 -o $@ -c $> 85 86libboot.a: $(OBJS) 87 ar r $@ $> && ranlib $@ 88 89### install what we need: ### 90 91install: all maninstall 92 install -o $(BINOWN) -g $(BINGRP) installboot ${DESTDIR}/usr/sbin 93 install -o $(BINOWN) -g $(BINGRP) $(BOOTBLOCKS) ${DESTDIR}/usr/mdec 94 95### start of helper programs: ### 96 97HOSTED_CC= $(CC) 98HOSTED_CFLAGS= $(CFLAGS) 99 100HOSTED_C= ${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $< 101 102CLEANFILES += txlt txlt.o aout2bb aout2bb.o chksum.o 103 104aout2bb: aout2bb.o chksum.o 105 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $> 106 107aout2bb.o: ${.CURDIR}/aout2bb.c 108 ${HOSTED_C} 109 110chksum.o: ${.CURDIR}/chksum.c 111 ${HOSTED_C} 112 113txlt: txlt.o 114 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $> -ll 115 116depend:: 117 mkdep -a ${.CURDIR}/aout2bb.c ${.CURDIR}/chksum.c 118 119### end of helper programs ### 120 121.include <bsd.prog.mk> 122