URL: <https://savannah.gnu.org/bugs/?68054>
Summary: Per-target valid-for TTL to suppress rebuild if
target is recent
Group: make
Submitter: yairlenga
Submitted: Mon 16 Feb 2026 11:32:34 PM UTC
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Enhancement
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Unlocked
Component Version: 4.4.1
Operating System: Any
Fixed Release: None
Triage Status: None
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Mon 16 Feb 2026 11:32:34 PM UTC By: Yair <yairlenga>
This patch adds a per-target attribute valid-for=TIME which suppresses rebuild
of a target if its timestamp is newer than the specified age.
Example:
big.data: private valid_for=5m
big.data: /path/to/big.txt
create_big_data < $< > $@
If valid_for attribute indicate that big.data should not be rebuilt, if it was
created in the last 5 minutes. This can be used to avoid expensive remake,
when input timestamp is update frequently, without significant change to the
data.
Likewise, the valid-max option can be used to force rebuilding of targets
based on time. This can be used to force periodic update when actual
dependency list is not complete, etc.
This is an opt-in feature and does not change default rebuild semantics.
The patch was posted to bug-make:
https://lists.gnu.org/archive/html/bug-make/2026-02/msg00011.html
_______________________________________________________
File Attachments:
Name: 0001-Add-support-valid-for-and-valid-max.patch Size: 6.8KiB
<https://file.savannah.gnu.org/file/0001-Add-support-valid-for-and-valid-max.patch?file_id=58253>
AGPL NOTICE
These attachments are served by Savane. You can download the corresponding
source code of Savane at
https://savannah.gnu.org/source/savane-0ce18f920e65bfe617d234583dbb0a207f4283fb.tar.gz
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?68054>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
