Subject: Re: [Boost-build] Is there any way to prevent Boost.Buildfromrecursively scanning header files for #include directives?
From: Konstantin Litvinenko (to.darkangel_at_[hidden])
Date: 2009-04-28 04:20:27
Johan Nilsson Ð¿Ð¸ÑÐµÑ:
> There is (was?) something called "header cache" support in bjam
> (originating from FTJam or Perforce Jam).
> IIRC, this simply stored the names of all header files in a file
> together with their timestamps and used this as an optimization. Don't
> remember the details and thus don't know if this is something
> conceptually similar to PSH. It might also not be supported no more.
> Someone else (Rene/Volodya) probably remember the details.
Yes it is, but not saved into file because HCACHEFILE variable not
initialized anywhere. But anyway this doesn't help. On my projects
setting it to '.bjam_hcache' does generate cache file and reduce no-op
build from 32 s. to 31 s. - not much help :(. If some body more
experienced in bjam codebase will look why bjam doing so many directory
querying and looks for many strange named files (according to FileMon
from SysInternals on windows machine) that would be great and may have
positive changes in bjam performance.
From my experience header scanning is high cost process but not
measured in minutes. My own c++ scanner doing header scanning in less
then a second on a project where bjam doing this 31 seconds. Maybe the
algorithm it uses is not optimal or somewhat else prevent it from being
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk