help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: how to disable RCS, SCCS implicit rules?


From: Paul D. Smith
Subject: Re: how to disable RCS, SCCS implicit rules?
Date: Sat, 9 Nov 2002 15:56:16 -0500

%% gk <address@hidden> writes:

  g> At 08:12 AM 11/9/2002 -0500, Paul D. Smith wrote:

  g> %:: RCS/%,v
  g> %:: RCS/%
  g> %:: s.%
  g> %:: SCCS/s.%

  >> >> You can delete pattern rules.  See the GNU make manual, section
  >> >> "Canceling Implicit Rules".

  g> That section only says how to cancel rules that have commands by
  g> writing a rule without commands.  The manual does not seem to
  g> address how to cancel implicit rules that have no commands.

  >> I don't understand your comment.  All the above rules have
  >> commands.  There aren't any pattern rules without commands.

  g> What are the commands?

Right here:

  $ make -p -f/dev/null
      ...
  %:: %,v
  #  commands to execute (built-in):
          $(CHECKOUT,v)

  %:: RCS/%,v
  #  commands to execute (built-in):
          $(CHECKOUT,v)

  %:: RCS/%
  #  commands to execute (built-in):
          $(CHECKOUT,v)

  %:: s.%
  #  commands to execute (built-in):
          $(GET) $(GFLAGS) $(SCCS_OUTPUT_OPTION) $<

  %:: SCCS/s.%
  #  commands to execute (built-in):
          $(GET) $(GFLAGS) $(SCCS_OUTPUT_OPTION) $<
    ...

See the commands?  Things like "$(CHECKOUT,v)", etc.?

  g> They look like what the manual calls "terminal double-colon rules"

Yes, they are... and?

  g> You previously wrote:
  >> If you use "make -p -f/dev/null" you can tell which rules will and won't
  >> be removed by clearing .SUFFIXES prerequisite list fairly easily: any

  g> That is where I got the rules for RCS, SCCS.

Me too :).

  g> I do not want make to waste time and clutter my debug output
  g> searching for RCS and SCCS files since I don't have any.

  g> I quote from the manual:
  > For example, the built-in implicit rules for extracting sources from
  > RCS and SCCS files are terminal; as a result, if the file `foo.c,v'
  > does not exist, `make' will not even consider trying to make it as
  > an intermediate file from `foo.c,v.o' or from `RCS/SCCS/s.foo.c,v'.
  > RCS and SCCS files are generally ultimate source files, which should
  > not be remade from any other files; therefore, `make' can save time
  > by not looking for ways to remake them.

It's all good.

-- 
-------------------------------------------------------------------------------
 Paul D. Smith <address@hidden>          Find some GNU make tips at:
 http://www.gnu.org                      http://make.paulandlesley.org
 "Please remain calm...I may be mad, but I am a professional." --Mad Scientist




reply via email to

[Prev in Thread] Current Thread [Next in Thread]