Enable sstate cache: Difference between revisions
Line 24: | Line 24: | ||
So that each build would consume the sstate file if match, and produce new sstate file if not match. | So that each build would consume the sstate file if match, and produce new sstate file if not match. | ||
'''Pls. do not start multiple builds at one time, | '''Pls. do not start multiple builds at one time, because of race condition issue''' | ||
== Verify the sstate is working == |
Revision as of 14:26, 17 February 2011
sstate background
To speed up the build process, sstate provides a cache mechanism, where sstate files from server can be reused to avoid build from scratch if the producer and consumer of the sstate has same environment. With perfect case, we can achieve more than 80% time decreasing.
use sstate cache server
Another build machine is needed to produce the sstate file periodically. The default sstate files directory is sstate-cache under build dir, which is needed to be exported via NFS, http or ftp server.
On your local machine, change the conf/local.conf as following:
SSTATE_MIRRORS ?= "\ file://.* http://someserver.tld/share/sstate/"
for NFS server
SSTATE_MIRRORS ?= "\ file://.* file:///local/mounted/dir/sstate/"
Use local sstate cache
You can make all the builds pointing to the same SSTATE_DIR to share sstate files between them, like this:
SSTATE_DIR ?= "/share/sstate-cache
So that each build would consume the sstate file if match, and produce new sstate file if not match.
Pls. do not start multiple builds at one time, because of race condition issue