Chapter 9. Pool Management using the Graphical User Interface

Table of Contents
9.1. The Structure of Package Pools
9.2. Package Versions
9.3. TPC Selection
9.4. Pool Management Actions

Navigational location:

 [login]--->[start]---> [package management]-\  /-->[program execution]
                 |                           |  |                     
                 |----> [project management]-+->+-->[file view]
                 |                           |  |                     
                 |----> [POOL MANAGEMENT]----/  \-->[directory browser]
                 |                                                 
                 |----> [configuration]
                 |
                 \----> [help]                  pool context needed
       


This chapter describes the pool management facilities of the ComPact GUI. Package pools contain the exported and derived elements of software packages that are needed if the package is used (imported) by another package (maybe from another developer). Package pools may be regarded as caches for the results of build runs, that speed up the building of large systems considerably.

The ComPact Pool Manager is a tool that is primarily intended to control the contents and growth of the package pools, the caches of the ComPact build system. It may be used for fundamentally different purposes that are concerned with the pool structure, though, as it is highly configurable.

The graphical user interface of the pool manager acts on a selection of packages in exactly one package pool at a time. You can select the working pool in the dir1 (5) frame of the pool management page.

After having a look at the overall layout of the pool management page, we will proceed by explaining the structure of package pools in Section 9.1, the syntax and ordering of package versions in Section 9.2, the structure and use of target-platform-configurations in Section 9.3, and finally describe the commands offered by the gui for pool management in Section 9.4. This last chapter also includes a short description of the syntax of selection expressions for pool actions. For a thorough understanding of the concepts and conventions involved, you should also have a look at the pool manager user manual, which describes the command line version of the pool management facilities.

Figure 9-1. GUI Pool Management Page



9.1. The Structure of Package Pools

Each package pool can contain many packages in many different versions compiled for a variety of platforms (or better, target-platform-configurations). The structure used to represent this is purely hierarchical and easy to understand. Let's have a look at a pool containing the packages fileio, graphics, and db in different versions:

  /usr/local/pools/global/fileio/1_4_1      
                                /1_4_2
                                /1_5_0
                        graphics/2_1_0
                                /2_2_1
                                /3_1_0
                                /4_0_0
                              db/1_1_0
                                /2_2_0
 


The pool is located in the directory /usr/local/pools/global and has three sub-directories, whose names correspond to the package names. In every package directory inside the pool, there are sub-directories for each version of the package that is cached in the pool. Please note that the usual dots fo the version numbers have been replaced by underscores to avoid problems with some simple file system implementations.

Let's have a closer look at one of the package versions inside the package pool:

  graphics/2_1_0/inc
                /src
                /doc
                /i386-linux-elf-gcc/debug
                /DEFAULT
                /i386-freebsd-elf-gcc/debug
                                     /DEFAULT
                /PkgDesc
 


Beneath the version directory, you will recognize the familiar structure of a ComPact C or C++ package in your local workspace. There are sub-directories for header files, sources, and documentation, as well as the central package description file PkgDesc. Furthermore, derived files have been built for two target-platform-configurations (TPC), and within each of these TPCs the files have been compiled with options for debugging (files residing in directory debug) and with the default options (files residing in directory DEFAULT).

There is no limit on the number of TPCs for a certain package version, on the number of versions for a certain package, and on the number of packages cached in a certain package pool.