next up previous contents
Next: 4.1.1 Project Configuration Up: 4 Rule Definitions Previous: 4 Rule Definitions

4.1 Project Definition

  Managing projects is very important for the maintenance of large scale software systems. Splitting apart the entire project into sub-projects with clearly defined interfaces between them, is the only way to render successful development, testing, validation, and documentation of software. The administration of projects includes version control, extracting and assembling documentation, testing, and installation. Within VMake the support of project management is governed by project definition rules.

VMake uses the native environment structure of the operating systems it runs on to look up a environment variable VPROJECT for an appropriate software project. For each project or sub-project a project definition file vmake.prj must be given which contains the a set of rules characterizing the project.

Project-Definition The Project-Definition defines a project with dependences to other projects. It must be the first rule in a project definition file vmake.prj.
vmrule1242

The created project can be referenced by the specified symbolicName.

With the key depend dependences on sub-projects are determined. These sub-projects must be already defined and all information about them is directly available within the scope of the project. A dependent sub-project can be either a working project under development or globally installed version of a project used as external resource, respectively.

The key include defines a top level directory where all include files specified by the Include-Target (see Include-Target) are copied.

The key fname defines the name of the project save file for an installed version of the project. The name must be unique for all projects.

The keys major, minor and patchlevel define the version number of the project. The version number is managed by VMake automatically. When VMake generates a tagged release either the major or the minor version number is incremented depending on the release specifications. When a patch is generated the patch number is incremented. For further information on generating a tagged release or patch see Section 6.5.

The string of the key manual is used as title for the manuals created with the facility of TAC to extract reference documentation and to combine the documentation atoms (see Section 6.2.3) to a full manual.

The key cond defines the conditions to build the project (see Section 4.3). Depending on the current configuration or operating system a project might be built or not. Thus, specific projects can be defined and supported which handle operating system or configuration specific tasks.




next up previous contents
Next: 4.1.1 Project Configuration Up: 4 Rule Definitions Previous: 4 Rule Definitions

IUE WWW server
Fri Jan 3 17:00:13 MET 1997