4 ms·
# Disable implicit rules to speedup build .SUFFIXES: SUFFIXES := %.out: %.a: ... https://github.com/NVIDIAGameWorks/PhysX-3.4/blob/master/PhysX_3.4/Source/comp
by aleden 8y ago
# Disable implicit rules to speedup build
.SUFFIXES:
SUFFIXES :=
%.out:
%.a:
...
https://github.com/NVIDIAGameWorks/PhysX-3.4/blob/master/PhysX_3.4/Source/compiler/linux64/Makefile#L68 https://github.com/NVIDIAGameWorks/PhysX-3.4/blob/master/Phy...
Does this actually work? If it has tangible benefits then perhaps the AOSP could do the same.
- stefan_ 8y agoAOSP doesn't use makefiles anymore.
- quotemstr 8y agoYes we do. We just compile them to ninja graphs and use those to do the actual builds. For the moment, the actual input descriptions can (but don't have to) come in makefile form.
- stefan_ 8y agoThe build uses ninja for a long time now, the "Makefiles" aren't used with make anymore and instead use kati and there is a treewide effort of converting any makefiles into Soong specs.
- quotemstr 8y agoYes, but makefiles still exist, and they still provide build configuration. That they're off to the side during most incremental builds is a separate matter.
- ploxiln 8y agoIt helps with debug-logging from make anyway (the -d flag), so you get just a few relevant lines of checked rules for each target, instead of a page of irrelevant stuff like "maybe in SCCS there's a .y file which can generate a .c file which can generate this file ... hmm no I guess not" ... for each target. Come to think of it, it reduces the number of stat() system calls quite significantly, that can make a difference in large builds.