From patchwork Wed Aug 15 15:57:47 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [bitbake-devel] build.py: Only execute mkdirhier if stampdir doesn't exist Date: Wed, 15 Aug 2012 15:57:47 -0000 From: Richard Purdie X-Patchwork-Id: 34637 Message-Id: <1345046267.14667.7.camel@ted> To: bitbake-devel I noticed this was showing up on profile logs as a sigificant time user in "bitbake bash" when bash was already built. It reduces the time from 5.2 to 4.5 seconds in my test environment. We make use of the parser's mtime cache as once a directory exists, we can assume it continues to exist and this avoids syscalls. Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/build.py b/bitbake/lib/bb/build.py index bea2926..d64077e 100644 --- a/bitbake/lib/bb/build.py +++ b/bitbake/lib/bb/build.py @@ -464,7 +464,9 @@ def stamp_internal(taskname, d, file_name): stamp = bb.parse.siggen.stampfile(stamp, file_name, taskname, extrainfo) - bb.utils.mkdirhier(os.path.dirname(stamp)) + stampdir = os.path.dirname(stamp) + if bb.parse.cached_mtime_noerror == 0: + bb.utils.mkdirhier(stampdir) return stamp