bugmake - Bugs: bug #35132, Side effects of .SECONDARY with no...

 
 

bug #35132: Side effects of .SECONDARY with no targets not documented

Submitted by:  None
Submitted on:  Tue 20 Dec 2011 10:07:20 PM UTC  
 
Severity: 3 - NormalItem Group: Documentation
Status: Works for mePrivacy: Public
Assigned to: NoneOpen/Closed: Closed
Component Version: 3.82Operating System: POSIX-Based
Fixed Release: NoneTriage Status: Need Info

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Mon 10 Sep 2012 12:08:37 AM UTC, comment #1:

Unfortunately I can't understand the issues you're having well enough to decide whether there's a problem here, either in the implementation or in the code. I don't know what "unpredictable behavior" you mean. Reading the referenced message doesn't enlighten me.

One thing that makes me wary is that you're using symbolic links as targets. It's important to understand that by default make doesn't know anything about symbolic links: it treats them just like any other file. That is, when make examines the time-last-modified of the target it will see the time last modified of the file the link points to, NOT the link itself. So if you're relying on the timestamp when the link was created to be considered by make as distinct from the timestamp when the pointed-to file was modified, that just won't work. This doesn't have anything to do with .SECONDARY or .PRECIOUS, etc. it's just how the POSIX filesystem works.

In newer versions of GNU make you can force make to consider the timestamp of symlinks separately by using the --check-symlink-times command line argument; see the documentation.

At this point I don't have enough detail to move forward with this bug so I'm closing it. If you have more information feel free to add another comment; I'll get email and I can re-open the bug.

Paul D. Smith <psmith>
Project Administrator
Tue 20 Dec 2011 10:07:20 PM UTC, original submission:

There are some side effects associated with intermediate/secondary targets that aren't documented in any real detail in the documentation.

The documentation for .SECONDARY gives the impression you can use .SECONDARY to disable automatic deletion of intermediate targets, but doing so causes a number of side effects that produce unpredictable behavior in a build.

Unfortunately, I do not have a concise or publishable example demonstrating the problem; however, I outlined it on this thread:

http://groups.google.com/group/gnu.utils.bug/browse_frm/thread/d882703f60b20ea5?hl=en#

-Brian

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by psmith (Posted a comment)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 3 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon 10 Sep 2012 12:08:37 AM UTCpsmithStatusNone=>Works for me
      Open/ClosedOpen=>Closed
      Triage StatusNone=>Need Info

    Back to the top


    Powered by Savane 3.1-cleanup1