bug-make
[Top][All Lists]
Advanced

[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/




reply via email to

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