22.5. Populating a Derived-File Cache With Already-Built Files
Prev | Chapter 22. Caching Built Files | Next

## 22.5. Populating a Derived-File Cache With Already-Built Files

Sometimes, you may have one or more derived files already built in your local build tree that you wish to make available to other people doing builds. For example, you may find it more effective to perform integration builds with the cache disabled (per the previous section) and only populate the derived-file cache directory with the built files after the integration build has completed successfully. This way, the cache will only get filled up with derived files that are part of a complete, successful build not with files that might be later overwritten while you debug integration problems.

In this case, you can use the `--cache-force` option to tell SCons to put all derived files in the cache, even if the files already exist in your local tree from having been built by a previous invocation:

    % scons -Q --cache-disable
    cc -o hello.o -c hello.c
    cc -o hello hello.o
    % scons -Q -c
    Removed hello.o
    Removed hello
    % scons -Q --cache-disable
    cc -o hello.o -c hello.c
    cc -o hello hello.o
    % scons -Q --cache-force
    scons: `.' is up to date.
    % scons -Q
    scons: `.' is up to date.

Notice how the above sample run demonstrates that the `--cache-disable` option avoids putting the built `hello.o` and `hello` files in the cache, but after using the `--cache-force` option, the files have been put in the cache for the next invocation to retrieve.

Prev | Up | Next
22.4. Disabling the Derived-File Cache | Home | 22.6. Minimizing Cache Contention: the `--random` Option