Builder Copyright © 2006 Mikko Rasa, Mikkosoft Productions Version 0.1 Builder is a program for building other programs, similar to make, scons and others. It is specifically designed to suit my needs, with the goal of minimizing the amount of per-package configuration. * Building Builder Builder is normally built using itself. However, if you just downloaded the source and don't yet have a Builder binary, how is that possible? To resolve this problem, there's a script called bootstrap.sh in the Builder main directory. Before running it, make sure you have the following libraries available: MSP libraries: core parser path strings Others: sigc++-2.0 Since the MSP libraries are also normally built with Builder, the script will need to have their sources available. By default, it will look at the parent directory of builder. You can change this by setting the LIBPATH evironment variable for the script. If everything goes well, you should have a builder-stage1 binary that you can use to build a normal version of Builder. * Using Builder in your project To use Builder, you need to create a Build file that tells what it should build. This file defines two main types of entities: packages and components. usually there is only one package definition in a Build file. The Build file uses a C-like structured language. It consists of statements and blocks. Statements are terminated with a semicolon (';'). Blocks are enclosed in braces ('{' and '}'). If a statement contains a block of substatements, the semicolon comes after the closing brace. For a simple example, look at Builder's own Build file.