[Top][All Lists]

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

[bug #19975] Add function: $(mtime foo.c) -> 1180203683

From: Matt McCutchen
Subject: [bug #19975] Add function: $(mtime foo.c) -> 1180203683
Date: Sat, 26 May 2007 18:40:00 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20070510 Fedora/ Firefox/


                 Summary: Add function: $(mtime foo.c) -> 1180203683
                 Project: make
            Submitted by: hashproduct
            Submitted on: Saturday 05/26/2007 at 18:39
                Severity: 3 - Normal
              Item Group: Enhancement
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
       Component Version: 3.81
        Operating System: None
           Fixed Release: None



Please add a function $(mtime) that returns the modification time of a given
file as the number of seconds since the Epoch.  This would be easy to do
because make already caches mtimes.

I am writing a build tool on top of make, and I want it to have a better rule
for whether a prerequisite makes a target out of date than make's. 
Specifically, the tool will remember the prerequisite's mtime when the target
was last built and consider the target out of date if the prerequisite's mtime
has changed, forward or backward.  I want to implement this using a function
in the target's prerequisite list that is called during second-expansion,
checks the prerequisite's mtime, and expands to FORCE or nothing as

The tool doesn't know which files' mtimes it is going to need until make
actually gets to those files, so the tool can't easily do any better than
getting the mtimes one at a time.  Getting each mtime currently requires
running a stat(1) process, and doing this for every file *checked* (not just
built) is intolerably slow.  The $(mtime) function would make it practical.


Reply to this item at:


  Message sent via/by Savannah

reply via email to

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