Created attachment 265348 [details] [diff] [review] fix I build on Windows under VMWare, with the sources in VMWare's shared file system and local objdirs. I noticed that mkdepend was running incredibly slowly. For example, mkdepend on nsPresShell.cpp: real 0m32.250s user 0m0.031s sys 0m0.031s Primitive profiling suggests that it was spending most of its time blocked on stat() calls searching include directories for include files. On a hunch I replaced the stat() calls to check for file existence with a call to GetFileAttributesEx. The result: real 0m1.578s user 0m0.015s sys 0m0.015s I suspect the issue is that stat() fills in a lot of fields like inode and user/group/other permissions that are expensive to gather on Windows, especially in VMWare's file system perhaps.
Created attachment 265789 [details] [diff] [review] Bustage? The patch breaks the tinderbox build on Solaris: http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox-Ports. S_ISDIR should be the POSIX macro for this check.
10 years ago
Checking in include.c; /cvsroot/mozilla/config/mkdepend/include.c,v <-- include.c new revision: 3.6; previous revision: 3.5 done
roc, any chance this could get landed on the 1.8.1 branch as well?
Dunno. Nominate it and find out
Comment on attachment 265348 [details] [diff] [review] fix approved for 22.214.171.124, a=dveditz for release-drivers
Comment on attachment 265348 [details] [diff] [review] fix closing tree early, this will have to wait for next time
Comment on attachment 265348 [details] [diff] [review] fix approved for 126.96.36.199, a=dveditz for release-drivers
10 years ago