The buildrc file tells the ribosome build system where how to access CVS and where to look for BIF files. In order to find your buildrc file, build looks in the following places:
The buildrc file has the same syntax as a python file, but there are only two functions available to call:
AddCVS(name, root [, shadow])
arguments: name(string), root(string), shadow(string)
returns: none
This function adds a cvs repository and gives it a name.
If you are using maccvs, then root should be the
name of a CVSSESSION file, otherwise it should be a standard
CVSROOT. The name can later be used from a BIF file
or in a BIF file search path.
Example: AddCVS("helix",":pserver:yourname@localhost:/cvs")
If the shadow parameter is present, it is assumed to be a mirror repository which will be used for the initial checkout. The CVS/Root file in each directory will then be updated to point to the real cvs repository.
AddBIFPath(prefix, path)
arguments: prefix(string), path(string)
returns: none
This function adds a search path for BIF files.
The prefix is used to give unique names to targets
in BIF files, so don't use the same prefix twice.
Also, the prefix must be a valid file name. The path
can either be a normal file system path, or a reference to
a cvs repository. To reference a CVS repository, you must
use a string like: "[cvsname]/cvsmodule/subdir"
In this case 'cvsname' is the name of a CVS repository which
should be added using AddCVS.
If no AddBIFPath is present in your buildrc file, or if there is no buildrc file, some backwards compatible default will be used.
Example: AddBIFPath("common","[helix]/common/build/BIF")
SetBIFShadow(bif_id)
arguments: bif_id(string)
returns: none
This function instructs the build system to parse the specified BIF
file after reading any other BIF file. This BIF file can thus redefine
modules and modify builds accordingly.
AddProfilePath(prefix, path)
arguments: prefix(string), path(string)
returns: none
This function adds a search path for profile files.
The prefix is used to give unique names to profiles
in case there are duplicates, so don't use the same prefix twice.
Also, the prefix must be a valid file name. The path
can either be a normal file system path, or a reference to
a cvs repository. To reference a CVS repository, you must
use a string like: "[cvsname]/cvsmodule/subdir"
In this case 'cvsname' is the name of a CVS repository which
should be added using AddCVS.
If no AddProfilePath is present in your buildrc file, or if there is no buildrc file, some backwards compatible default will be used.
Example: AddProfilePath("common","[helix]/common/build/umakepf")
SetSDKPath(sdk_name, path)
arguments: sdk_name(string), path(string)
returns: none
This function tells the build system where to find an SDK.
It is required in order for the build system to be able to
find directx and other third party libraries. These paths
can later be used in your Umake files
and should also be declared in your BIF
files.