[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #51454] Poor performance for Intermediate targets.
From: |
Paul Draper |
Subject: |
[bug #51454] Poor performance for Intermediate targets. |
Date: |
Thu, 13 Jul 2017 00:05:56 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.86 Safari/537.36 |
URL:
<http://savannah.gnu.org/bugs/?51454>
Summary: Poor performance for Intermediate targets.
Project: make
Submitted by: pauldraper
Submitted on: Thu 13 Jul 2017 04:05:54 AM UTC
Severity: 3 - Normal
Item Group: Enhancement
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Component Version: None
Operating System: Any
Fixed Release: None
Triage Status: None
_______________________________________________________
Details:
```
LIST := $(shell seq 200)
.PHONY: all
all: $(LIST:=.q)
%.q: $(LIST:=.r)
touch $@
%.r: $(LIST:=.s)
touch $@
%.s: $(LIST:=.t)
touch $@
%.t:
touch $@
```
The first `make` invocation takes <1s. Subsequent invocations take 18s on the
same machine. All of it is spent in make process, not sys calls. This is due
to recursion in the intermediate branch of the `check_dep` function.
I first noticed this when using no-prereq .SECONDARY in a large makefile,
which made everything intermediate.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?51454>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [bug #51454] Poor performance for Intermediate targets.,
Paul Draper <=