Follow-up Comment #16, bug #65533 (group make): OK great that's forward progress.
Just to be clear this is not a fix, that's just an experiment to see if it was the problem. I'm not going to make that change in the official GNU make source code, because it will lead to other problems. For example, consider this code: $(shell rm -f /tmp/newfile) files := $(wildcard /tmp/*) $(shell echo hi > /tmp/newfile) files := $(wildcard /tmp/*) $(info files: '$(filter %/newfile $(files))') In the official GNU Make 4.4, you will see the new file printed: files: '/tmp/newfile' After the change I suggested below, you'll see the new file is missing: files: '' This is the purpose of the cache invalidation; without it GNU Make won't notice when shell functions or recipes create random files. The thing we have to discover is, what about your makefile environment is forcing excessive cache invalidation and, is there anything we can do in the implementation of GNU Make to alleviate it. If you can examine the output and glean anything useful from it, such as something different about the directories which are invalidated or what operations make is running over and over, that is forcing the invalidation, that would be helpful. If you don't see anything, and it's OK with you, you can create an excerpt of the full debug log (say a few thousand lines or so), compress it, and email to me directly ([email protected]) as an attachment and I'll look at it. Please keep the complete log output so I get a complete picture of what's happening; don't just grep out the invalidation lines and send only those. Hopefully we'll find a way to make this work better by default. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?65533> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/
signature.asc
Description: PGP signature
