Finding source files in repositories

SCons User Guide 0.98.0
Prev | Chapter 20. Building From Code Repositories | Next

# 20.2. Finding source files in repositories

The above example specifies that SCons will first search for files under the `/usr/repository1` tree and next under the `/usr/repository2` tree. SCons expects that any files it searches for will be found in the same position relative to the top-level directory. In the above example, if the `hello.c` file is not found in the local build tree, SCons will search first for a `/usr/repository1/hello.c` file and then for a `/usr/repository2/hello.c` file to use in its place.

So given the `SConstruct` file above, if the `hello.c` file exists in the local build directory, SCons will rebuild the hello program as normal:

          % scons -Q
          cc -o hello.o -c hello.c
          cc -o hello hello.o

If, however, there is no local `hello.c` file, but one exists in `/usr/repository1`, SCons will recompile the hello program from the source file it finds in the repository:

          % scons -Q
          cc -o hello.o -c /usr/repository1/hello.c
          cc -o hello hello.o

And similarly, if there is no local `hello.c` file and no `/usr/repository1/hello.c`, but one exists in `/usr/repository2`:

          % scons -Q
          cc -o hello.o -c /usr/repository2/hello.c
          cc -o hello hello.o

Prev | Home | Next
Building From Code Repositories | Up | Finding `#include` files in repositories