The config.xml file is an easy file to set and reset values dynamically. 

Where <ROOT> is the root directory of the test harness installation, the
config.xml files needs to exist in this location. A predefined link
to config.xml from <ROOT>/runtest should already exist 
in the test harness directory structure.

To construct the config.xml file in the <ROOT> directory, copy 
config.xml.sample in the <ROOT> directory to config.xml.


Fields you need to set in order for runtest to work properly:

database
--------

Under the database section, these values are necessary so that you can
connect and transact with the database (only the <type> entry is 
prepopulated - make sure the other entries below also get filled in):
    <db>
       <type>mysql</type>
       <server></server>
       <database></database>
       <username></username>
       <passwd></passwd>
    </db>

    type: assumed to be mysql or sqlite, but in theory should work with other
          databases
    server: the server name hosting the database
    database: the database name
    username: name of a user with access to the database
    passwd: the password for the user to access the database

plugins
-------
    Plugins can be used to control a particular tool to a finer degree. An
    example plugin for the pgi compiler is provided in the config.xml.sample
    file.

defaults (for initial testing you probably need to do nothing in this section)
--------
    errorStatusId needs to match the id of the default failure column in the
    error_codes database table (and does for the prepopulated database). 

    statusId needs to match the default success column in the error_codes
    database table (and does for the prepopulated database).

    flags entries should match the types of flags found in the flagdefs
    database table. For more information of flags see the flags_info file.

    compilerMask is used to try and automatically set tool macros for
    make files. For example if the command 'cc' returns a value then
    runtest will set the makefile variable CC to that value unless it
    is set in some other way (such as using the '-compiler COMPILER'option
    on the runtest command line or the compilerid field for a given suite
    is set within the suite database table.o

    errorMask entries are used to filter test output before trying to match
    each output line with the pattern column in the status database table.

    path entries are used to build up a generated path when an environment
    database table entry has the clear field set. 

options
-------

Under "options" you may want to set:

    the homeqa default value. You may initially choose to set this value
    in config.xml to <ROOT> since that is where the preinstalled C correctness
    suite and fortran performance suite are located. If this value is not set,
    you will need to use the -homeqa HOMEQA option on the runtest command line.

    the user default value, which is currently set to qa (and will match the
    prepopulated database value for user). If not set, you will
    need to use -user USER on the runtest command line.

    the tmpdir default value. This temporary directory is where testing will
    be performed by default. A temporary subdirectory is created in this
    location, the makefile is copied to the subdirectory, then make is
    invoked for each test specified via the runtest command. At the end of
    the runtest command this temporary subdirectory is deleted, unless the
    '-keep' option to runtest is used, in which case the temporary 
    subdirectory is created within the directory that runtest is invoked,
    and not deleted. By default, /tmp is already set in the config.xml.sample
    file.

For more information on options to runtest, see runtest_info
