[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #62809] Make grouped targets not evaluated as single logical file
From: |
Jonathan Gravel |
Subject: |
[bug #62809] Make grouped targets not evaluated as single logical file |
Date: |
Mon, 25 Jul 2022 11:01:37 -0400 (EDT) |
URL:
<https://savannah.gnu.org/bugs/?62809>
Summary: Make grouped targets not evaluated as single logical
file
Project: make
Submitter: jogravel
Submitted: Mon 25 Jul 2022 03:01:35 PM UTC
Severity: 3 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: 4.3
Operating System: Any
Fixed Release: None
Triage Status: None
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Mon 25 Jul 2022 03:01:35 PM UTC By: Jonathan Gravel <jogravel>
The presence of the grouped target's peers are not considered when checking if
the target needs to be rebuilt.
For example, if `a` and `b` are grouped target peers (`a b &:`), and only `a`
is explicitly referenced in the DAG, the presence of `b` isn't considered. `b`
missing would not trigger the rule.
This is inconsistent with how the dependencies of `a` and `b` are treated. In
the example above, if `b`'s dependencies were newer than `a`, out-of-date, or
missing, `a` and `b` would ultimately be rebuilt as a consequence, even though
`b` isn't referenced in the DAG.
For better consistency, it is appropriate to rebuild `a` whenever any of its
peers are missing.
This would additionally solve a scenario where `c` depends on `a`, and `d`
depends on `b`, and both `c` and `d` are goal targets. If only `a` is
considered out of date, `c` is rebuilt, but not `d`. However, `b` is rebuilt,
so on the next invocation of make (with no changes), `d` will be rebuilt due
to it being older than `b`.
See attachment "0001-Fix-grouped-targets-consistency.patch" for proposed set
of changes.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Mon 25 Jul 2022 03:01:35 PM UTC Name:
0001-Fix-grouped-targets-consistency.patch Size: 4KiB By: jogravel
<http://savannah.gnu.org/bugs/download.php?file_id=53471>
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?62809>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug #62809] Make grouped targets not evaluated as single logical file,
Jonathan Gravel <=