Subject: Top level make problems (and others) + fixes (1 of 11 - #106) Index: src/*/{Makefile,.c} 2.11BSD Description: The process of recompiling the complete system from sources does not completely succeed, there are programs not compiled, programs installed in the wrong place, files (objects, man pages,etc) which are not removed when a "make clean" is done, man pages not formatted, other man pages which are the wrong ones being installed, programs compiling with errors and so on and so forth. In short, most of the Makefiles and a number of sourcefiles in the system were in need of repair. Much of the credit (or blame ;-)) for the series of patches to follow is due to Paul Taylor (taylor@oswego.oswego.edu). Takes a high amount of "patience" to do multiple top level 'make's on a pdp-11/73. Thanks. Repeat-By: cd /usr/src make all make install make clean After anywhere between 12 and 18 hours note the debris and errors left behind. Fix: Apply this (#106) and the following patches (107,108,109,110,111, 112,113,114,115, and 116). Some of the patches may not apply because the programs (notably in /usr/src/new and /usr/src/local) may not be present in the system (having been ported/added since the initial release of the system). There was an earlier posting of these programs ('popper', 'less', etc), if those articles are not present they may be obtained (along with these and previous patches) via anonymous FTP to 'ftp.iipo.gtegsc.com' in the directory pub/2.11BSD. The patches have been grouped and split along directory boundaries. The contents are: #106 - script to remove some redundant man pages and rename others to their correct resting place. /usr/src/Makefile (top level makefile) patch. NOTE: the choice of hostfile or nameserver is made only in lib/libc/Makefile now, not in both /usr/src/Makefile and lib/libc/Makefile #107 - /usr/src/bin updates. There are two source (.c and .h) updates as well as the Makefile patches. #108 - /usr/src/etc updates. Several source patches are included. #109 - /usr/src/games updates. A couple of .c files are also updated to remove compile time warnings. NOTE: before doing a top level make you will have to configure 'warp' and do a 'make depend'. #110 - /usr/src/lib updates. Only Makefiles are updated. #111 - /usr/src/local updates. Only Makefile are updated but some of the directories/programs may not exist on all systems. #112 - /usr/src/man updates. One man page (last.1) is updated along with the Makefiles. #113 - /usr/src/new updates. Some programs may not exist ('tcsh') on all systems (but are available via ftp). Other programs (rn, etc) may require some attention if the patches do not apply cleanly. #114 - /usr/src/ucb updates. The 'last' command is updated to handle alternate wtmp files. A couple other .h or .c files are updated to remove compile time warning errors. #115 - /usr/src/usr.bin updates. The 'struct' and 'tbl' program sources receive numerous updates to remove compile time errors. The remaining updates apply to the Makefiles. #116 - /usr/src/usr.lib updates. Makefiles are fixed. ===================================================================== The following script renames or removes redundant man pages. -------------------------cut here------------------------- #! /bin/sh mv /usr/src/man/man6/battlestar.6 /usr/src/games/battlestar/battlestar.6 mv /usr/src/man/man6/sail.6 /usr/src/games/sail/sail.6 rm /usr/src/new/shar/getopt.3 rm /usr/src/etc/ftpd/getusershell.3 rm /usr/src/usr.lib/sendmail/aux/logger.1 rm /usr/src/usr.lib/sendmail/doc/mailaddr.7 rm /usr/src/usr.lib/sendmail/doc/sendmail.8 rm /usr/src/usr.lib/sendmail/aux/vacation.1 rm /usr/src/man/man8/tftpd.8 -----------------------------cut here----------------------------- *** /usr/src/Makefile.old Sun May 6 13:33:20 1990 --- /usr/src/Makefile Sat Jan 23 15:59:57 1993 *************** *** 21,34 **** # # C library options: passed to libc makefile. # See lib/libc/Makefile for explanation. ! # HOSTLOOKUP must be either named or hosttable. # DFLMON must be either mon.o or gmon.o. # DEFS may include -DLIBC_SCCS, -DSYSLIBC_SCCS, both, or neither. # - HOSTLOOKUP=hosttable DFLMON=mon.o DEFS= ! LIBCDEFS= HOSTLOOKUP=${HOSTLOOKUP} DFLMON=${DFLMON} DEFS="${DEFS}" # global flags # SRC_MFLAGS are used on makes in command source directories, --- 21,35 ---- # # C library options: passed to libc makefile. # See lib/libc/Makefile for explanation. ! # NOTE: The method of hostname lookup (hosts file or nameserver) is no ! # longer selected here. Make sure to edit lib/libc/Makefile to set ! # HOSTLOOKUP # DFLMON must be either mon.o or gmon.o. # DEFS may include -DLIBC_SCCS, -DSYSLIBC_SCCS, both, or neither. # DFLMON=mon.o DEFS= ! LIBCDEFS= DFLMON=${DFLMON} DEFS="${DEFS}" # global flags # SRC_MFLAGS are used on makes in command source directories, *************** *** 42,48 **** # Programs that live in subdirectories, and have makefiles of their own. # LIBDIR= lib usr.lib ! SRCDIR= bin usr.bin etc ucb new games all: ${LIBDIR} ${SRCDIR} --- 43,49 ---- # Programs that live in subdirectories, and have makefiles of their own. # LIBDIR= lib usr.lib ! SRCDIR= bin etc games local new ucb usr.bin man all: ${LIBDIR} ${SRCDIR}