Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6531225

Disable GNU make builtin rules using SUFFIXES pseudo-rules

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • 7
    • 7
    • infrastructure
    • generic
    • generic

      From email:

      Kelly O'Hair wrote:
      >>
      >> Teamware has (or had) a bug with regards to file movements.
      >> When a file is moved, the SCCS/s.* files can end up with
      >> newer timestamps than the matching read-only 'sccs get' file.
      >> This triggers the GNU make pattern rule for keeping the
      >> 'sccs get' files up-to-date (%:SCCS/s.% rule).
      >> I think historically, this rule has not been reliable, sometimes
      >> extracting the file in the wrong location, or not working if you
      >> don't have /usr/ccs/bin in your PATH (it runs 'get').

      I suggest we explicitly specify the list of suffixes/rules used by make,
      which will give us performance advantages (no more searching for
      fortran source files) and reliability advantages (no more trying
      to call "get").

      From the GNU make manual:


         If you wish to eliminate the default known suffixes instead of just
      adding to them, write a rule for `.SUFFIXES' with no prerequisites. By
      special dispensation, this eliminates all existing prerequisites of
      `.SUFFIXES'. You can then write another rule to add the suffixes you
      want. For example,

           .SUFFIXES: # Delete the default suffixes
           .SUFFIXES: .c .o .h # Define our suffix list

         The `-r' or `--no-builtin-rules' flag causes the default list of
      suffixes to be empty.

            ohair Kelly Ohair (Inactive)
            martin Martin Buchholz
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: