Chapter 3. How to Start Using Aegis

Table of Contents

1. First, Create The Project
2. Second, Use a Template Project
3. Second, Copy a Template Project

For the first-time user, Aegis can appear to be very daunting. It has a huge number of configuration alternatives for each project, and it is difficult to know where to begin.

It is assumed that you already have Aegis installed. If you do not, see the section of the Reference Manual called The BUILDING File. This reproduces the BUILDING file included in the Aegis source distribution.

1. First, Create The Project

You need to create a new project. Follow the instructions in the How to Create a New Project section, and then return here.

2. Second, Use a Template Project

The very first time you use Aegis, it will be easiest if you download one of the template projects. This gives you a project which (almost always) works correctly the first time “out of the box”.

  • The template projects can be found on the Aegis home page: http://­­~millerp/­aegis/

  • If you are a long-time GNU Make user, you probably want the Make-RCS template, at least to start with.

  • Follow the instructions found on the web page and you will have a working Aegis project, complete with self tests.

  • From this starting point, create changes (the tkaenc command is good for this, as it gives you a simple GUI) and try modifying the calculator, or adding more programs to the project.

  • The template projects is intended to be generally useful. Many users have simply retained this format and inserted their own projects into it. (Use a change to delete the calculator and its tests.)

3. Second, Copy a Template Project

If this isn't the very first time, you may wish to get more adventurous, and try copying the relevant bits out of a working project. Usually, when sites first try this, the working project will be one of the template projects from the previous section.

  • Create a new project. For this exercise, you probably want a single user project.

  • Create a new change

  • Copy the project config file, and and files referenced by it, such as the new file templates and the build configuration file (Makefile or Howto.cook, depending).

  • Copy the sources of the existing project into the development directory. If you have several levels of directories, reproduce this, too.

  • Remove files which are not primary sources (e.g. the generated C sources of you have yacc input files).

  • Using the “aenf .” command (yes, that's a dot, meaning “the current directory”) you can tell Aegis to add all of the source files in the development directory to the change set.

  • You will probably need to modify your build method to meet Aegis' expectations. Rather than do this immediately, change the build_command in the project config file to read “build_command = "exit 0";” and fix it in the next change set.

  • Now, build, develop end, review and integrate, as found in the User Guide worked example. (Except, of course, there is only one member of staff.)

  • Create a second change, and copy the project configuration file (called aegis.conf by default), and the build configuration file (probably Makefile or Howto.cook) into the change.

  • This would be a good time to read the Dependency Maintenance Tool chapter of the Aegis User Guide, and also Recursive Make Considered Harmful (see the author's web site) if you haven't already.

  • Edit the build configuration, try the aeb command; it will probably fail. Iterate until things build correctly.

  • develop end, review and integrate as normal. Your project is now under Aegis.