Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 beta 4/12/84; site rlgvax.UUCP Path: utzoo!linus!decvax!ittvax!dcdwest!sdcsvax!sdcrdcf!hplabs!hao!seismo!rlgvax!guy From: guy@rlgvax.UUCP Newsgroups: net.unix-wizards Subject: Re: SCCS and RCS Message-ID: <2102@rlgvax.UUCP> Date: Fri, 13-Jul-84 15:29:31 EDT Article-I.D.: rlgvax.2102 Posted: Fri Jul 13 15:29:31 1984 Date-Received: Mon, 16-Jul-84 05:01:43 EDT References: <1468@sri-arpa.UUCP> Organization: CCI Office Systems Group, Reston, VA Lines: 23 "make" can be easily modified to support RCS as well; we've modified the System III "make" to do it. Instead of using the "~.c.o" rules (which require you to change the "~.c.o" rule every time you want to change the ".c.o" rule), we used some built-in code (used to automatically "get" the Makefile) and hardcoded the checkout stuff. It's fairly smart - it knows about RCS subdirectories, knows that to "check out" "../includes/foobar.h" it should do "cd ../includes;co foobar.h", and doesn't check out things only needed to remake things that it isn't going to remake. One problem with not keeping source checked out, though, is that "grep"ping for things is a *R*O*Y*A*L* *P*A*I*N*. Also, the System III/System V rebuild procedures are unhappy, because if they don't find "frobozz.c" in "/usr/src/cmd" they don't know that there's a "frobozz" command to be made. (Then again, if they see "frobozz.c" and "frobozz.mk" or "frobozz.rc", they make "frobozz". TWICE. So I'm not sure those rebuild procedures are that great, anyway.) It also makes it hard to make source distribution tapes if you aren't distributing the SCCS/RCS files (the 4.2BSD "tar" has a "-F" option, presumably for making source distribution tapes, that has some stuff to avoid writing things like SCCS directories), and makes it a pain to FTP (or UUCP) source from other machines. Guy Harris {seismo,ihnp4,allegra}!rlgvax!guy