Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] Considerable gnu make speedup with disabled implicit rules


Is there any reason, why we don't turn off gnu makes "implicit rules" (make -r) for the gnu makefile builder in CDT? It seems to significantly speedup make! According to my understanding, the goal of the CDT toolchain definitions and the makefile generator is to define explicit rules for everything it needs to build and therefore, implicit rules are useless in our case (although I'm not very sure about that statement).

Running make on a projects which was already built (aka up-to-date) with disabled implicit rules gave me speedups of more than factor 10! (~12 seconds vs. ~1 second) in the following use case: C++ project (~1500 .cpp files) on a Windows 7 64bit (running within VMWare) 2 years old Mac Book Pro with conventional harddisk (no SSD) using a mingw-built gnu make 3.82. (Side-note: On my Linux box, make is much faster and therefore the "-r" option doesn't help as much as on Windows.)

I was investigating in speeding up make because waiting ~12 second for make just to know that nothing needs to be built is an annoyingly long time... (note: it also takes ~12 seconds until make executes the first instance of the compiler when the project is not up-to-date). Personally, I hope that we could change the default behavior to use -r in order to improve user experience with CDT. If desired, I'll open a bugzilla for this.


Back to the top