%% gk <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]>          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


_______________________________________________
Help-make mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/help-make

Reply via email to