make & RCS

Mark Nagel nagel at paris.ics.uci.edu
Tue Nov 8 05:16:39 AEST 1988


In article <810 at cmx.npac.syr.edu>, jerryp at cmx (Jerry Peek) writes:
|[This posting was pretty old, but I figured I'd answer since no one else
|did.  The disadvantages of reading news once a month, sigh...]
|
|In article <752 at paris.ics.uci.edu> nagel at paris.ics.uci.edu (Mark Nagel) writes:
|> Not having a make that knows about RCS is a real pain.  As far as I
|> can tell, I need to explicitly state dependencies between RCS/foo.c,v
|> and foo.c for all files in my project.
|
|When you say "that knows about RCS," do you mean your make doesn't have rules
|like .c,v.c defined?  That's probably too simple an explanation.
|
|Does your make understand .PREFIXES?  If it does, you can put the following
|line in your makefile.  If make doesn't find a .c,v file in the current
|directory, this tells it to check the ./RCS directory as well:
|
|	.PREFIXES: ./RCS
|
|You can add other directories (like /usr/project/RCS) at the end, too.

Yes, I don't have a make that has builtin knowledge of the RCS
directory and rcs commands.  I received several replies about this
via email and almost all said "use gnumake".  I probably will end
up doing that.  I never did hear anything about the .PREFIXES
dependency, although I heard about the VPATH variable.  You can use
this to set a search path just like the shell PATH variable.
Interestingly enough, the system I'm developing on (Sun 4 with
SunOS 4.0) has a make that has the VPATH variable mentioned in strings
output, but it is not documented and it doesn't seem to work.  Like
I said, I'll probably start using gnumake, since this is only for
my own benefit -- the distributed program will use a different makefile.

Mark D. Nagel
  UC Irvine - Dept of Info and Comp Sci | The probability of someone
  nagel at ics.uci.edu             (ARPA)  | watching you is proportional to
  {sdcsvax|ucbvax}!ucivax!nagel (UUCP)  | the stupidity of your action.



More information about the Comp.unix.questions mailing list