[comp.bugs.4bsd] make Makefile does not do `make depend'

chris@mimsy.UUCP (Chris Torek) (05/05/87)

Index: bin/make 4.3BSD Fix

Description:
	There is no `depend' target in make's makefile, hence the
	dependencies are not exact.

Repeat-By:
	% cd /usr/src/bin/make; make depend

Fix:

RCS file: RCS/Makefile,v
retrieving revision 1.1
diff -c2 -r1.1 Makefile
*** /tmp/,RCSt1005237	Mon May  4 22:16:26 1987
--- Makefile	Mon May  4 22:15:28 1987
***************
*** 4,7 ****
--- 4,8 ----
  VPATH=.:/usr/src/bin/make
  OBJECTS=ident.o main.o doname.o misc.o files.o dosys.o gram.o 
+ SOURCES=dosys.c doname.c files.c main.c misc.c ident.c gram.c
  LIBES= 
  LINT=	lint -ps
***************
*** 13,18 ****
  	${CC} -o make ${CFLAGS} ${OBJECTS} ${LIBES}
  
- ${OBJECTS}:  defs
- 
  clean:
  	-rm -f *.o gram.c make a.out errs
--- 14,17 ----
***************
*** 21,25 ****
  	install -s make ${DESTDIR}/bin/make
  
! lint :  dosys.c doname.c files.c main.c misc.c ident.c gram.c
! 	${LINT} dosys.c doname.c files.c main.c misc.c ident.c gram.c
  	rm -f gram.c
--- 20,72 ----
  	install -s make ${DESTDIR}/bin/make
  
! lint:	${SOURCES}
! 	${LINT} ${SOURCES}
  	rm -f gram.c
+ 
+ depend: ${SOURCES}
+ 	cc -M ${CFLAGS} ${SOURCES} | sed -e 's, ./, ,g' | \
+ 	    awk ' { if ($$1 != prev) \
+ 		{ if (rec != "") print rec; rec = $$0; prev = $$1; } \
+ 		else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
+ 		else rec = rec " " $$2 } } \
+ 		END { print rec } ' >makedep
+ 	echo '/^# DO NOT DELETE THIS LINE/+2,$$d' >eddep
+ 	echo '$$r makedep' >>eddep
+ 	echo 'w' >>eddep
+ 	cp Makefile Makefile.bak
+ 	ed - Makefile < eddep
+ 	rm eddep makedep
+ 	echo '# DEPENDENCIES MUST END AT END OF FILE' >> Makefile
+ 	echo '# IF YOU PUT STUFF HERE IT WILL GO AWAY' >> Makefile
+ 	echo '# see make depend above' >> Makefile
+ 
+ # DO NOT DELETE THIS LINE -- make depend uses it
+ 
+ dosys.o: dosys.c defs /usr/include/stdio.h /usr/include/ctype.h
+ dosys.o: /usr/include/sys/param.h /usr/include/machine/machparam.h
+ dosys.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/dir.h
+ dosys.o: /usr/include/signal.h /usr/include/errno.h /usr/include/sys/stat.h
+ doname.o: doname.c defs /usr/include/stdio.h /usr/include/ctype.h
+ doname.o: /usr/include/sys/param.h /usr/include/machine/machparam.h
+ doname.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/dir.h
+ doname.o: /usr/include/strings.h /usr/include/signal.h
+ files.o: files.c /usr/include/fcntl.h defs /usr/include/stdio.h
+ files.o: /usr/include/ctype.h /usr/include/sys/param.h
+ files.o: /usr/include/machine/machparam.h /usr/include/signal.h
+ files.o: /usr/include/sys/types.h /usr/include/sys/dir.h
+ files.o: /usr/include/sys/stat.h /usr/include/ar.h /usr/include/a.out.h
+ files.o: /usr/include/sys/exec.h /usr/include/sys/stat.h
+ main.o: main.c defs /usr/include/stdio.h /usr/include/ctype.h
+ main.o: /usr/include/sys/param.h /usr/include/machine/machparam.h
+ main.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/dir.h
+ main.o: /usr/include/signal.h /usr/include/sys/stat.h
+ misc.o: misc.c defs /usr/include/stdio.h /usr/include/ctype.h
+ misc.o: /usr/include/sys/param.h /usr/include/machine/machparam.h
+ misc.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/dir.h
+ ident.o: ident.c
+ gram.o: gram.c defs /usr/include/stdio.h /usr/include/ctype.h
+ gram.o: /usr/include/sys/param.h /usr/include/machine/machparam.h
+ gram.o: /usr/include/signal.h /usr/include/sys/types.h /usr/include/sys/dir.h
+ # DEPENDENCIES MUST END AT END OF FILE
+ # IF YOU PUT STUFF HERE IT WILL GO AWAY
+ # see make depend above
-- 
In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7690)
Domain:	chris@mimsy.umd.edu	Path:	seismo!mimsy!chris