NAGWare Fortran Tools - nag_tools

 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
f95 POLISH OPTIONS FILE
f77 POLISH OPTIONS FILE
FILE SELECTION
TOOL SELECTION
TOOL OPTIONS
TOOL PROCESSING
SAVING TOOL OPTIONS
NOTES ON SPECIFIC TOOLS
f95 Call Graph Generator
f95 Code Coverage
f95 Common Block to Module Convertor
f77 Complexity Metrics
f77 and f95 Cross Referencers
f95 Dependency Analyser
f95 Interface Builder
f77 Interface Lister
f77 and f95 Name Changers
f77 Portability Verifier
f77 Profiler
APPLICATION RESOURCES
SEE ALSO

 

NAME

nag_tools - NAGWare Fortran Tools Graphical User Interface

 

SYNOPSIS

nag_tools [options]
nag_po95 [options]
and
nag_po77 [options]

 

DESCRIPTION

nag_tools is the graphical user interface to the NAGWare Fortran Tools, including the f95 and f77 Polish Options Editors.

nag_po95 is the graphical user interface to the NAGWare f95 Tools Polish Options Editor only.

nag_po77 is the graphical user interface to the NAGWare f77 Tools Polish Options Editor only.

These tools are intended to be intuitive and easy to use, however some explanation is provided here to clarify the operation of some features of the tools. On-line help is provided for the individual tools. Windows in these graphical user interfaces are not resizable.

The environment variable ``DISPLAY'' may be used to set the display and screen on which to display the windows. This may be overridden by the -display option. If neither ``DISPLAY'' nor -display is set the default screen on the local host is used.

The environment variable ``LM_LICENSE_FILE'' may be set to point to the FLEXlm license file for the NAGWare Fortran Tools, if this is not in the default place. Please see local documentation for details.

 

OPTIONS

-display display
Display (and screen) on which to display window, e.g. -display machine:0.0

-Qpath pathname
Change the NAGWare Fortran Tools library from the default (usually /usr/local/lib/NAGWare/ftools or /opt/NAGWare/lib/ftools) to pathname.
-guilib pathname
Change the NAGWare Fortran Tools GUI library directory from the default (usually /usr/local/lib/NAGWare/guilib or /opt/NAGWare/lib/guilib) to pathname.

 

f95 POLISH OPTIONS FILE

The polish options file is read from the first item found from the following list:

1. If the environment variable ``NAG_POLOPT95'' or ``NAG_POLOPT90'' has been set, its value is used as the name of the polish options file, e.g. to set this from the C-shell:

setenv NAG_POLOPT95 ~/pol95.opt

2. The file ``./.polish_options''

3. The file ``~/.polish_options''

4. If none of the above is found, built-in defaults are used and the default name for the polish options file in the polish options editor is set to ``.polish_options''.

The default settings may be suitable for most applications.

 

f77 POLISH OPTIONS FILE

The polish options file is read from the first item found from the following list:

1. If the environment variable ``NAG_POLOPT77'' has been set, its value is used as the name of the polish options file, e.g. to set this from the C-shell:

setenv NAG_POLOPT77 ~/pol77.opt

2. The file ``./.polish_options77''

3. The file ``~/.polish_options77''

4. If none of the above is found, built-in defaults are used and the default name for the polish options file in the polish options editor is set to ``.polish_options77''.

The default settings may be suitable for most applications.

 

FILE SELECTION

The input file or files may be selected using the directory browser, which is started by clicking on ``Select file'' from the ``File'' menu, or by clicking on the ``File:'' entry box and entering space separated file names.

In the directory browser, a single file may be selected by double clicking (with the left mouse button). A number of files may be selected by holding down the left mouse button as the mouse is dragged over the range to be selected. Multiple files may also be selected by holding down the control key and clicking on the desired file which toggles that file between selected and de-selected, leaving the rest of the selection unchanged. Alternatively a group of files may be selected by clicking on the first of these, moving to the last and clicking there while holding the shift key down, all files between the first and last are thus selected. When you are satisfied with the selection click on ``OK''.

The selected file name(s) are displayed in the ``File:'' entry box.

The directory browser may be used to change directory, by double clicking on a directory name. The ``..'' entry may be used to go to the parent directory of the current directory, or the Previous Directory button can be clicked on. Please note that these are equivalent to changing the working directory. What this means is that, unlike the command line script interface, output files are written in the same directory as the input file. A single backup copy is made, where the output file would overwrite the input file. If the backup exists the user may select whether to retain the existing backup or overwrite it. The f95 Tools options -o, -odir, -oprefix and -osuffix options are not available in the GUI.

 

TOOL SELECTION

A tool may be selected by clicking on the required tool from the ``Tools'' menu, or by choosing the ``Tool Selection Wizard'' and specifying the type of input files you have and the desired output. The relevant tools will then appear highlighted for you to choose from.

 

TOOL OPTIONS

Many of the tools have options which can use used to customize the output. These options can be altered by selecting ``Set tool options'' or ``Set general tool options'' from the ``Options'' menu once a tool has been selected. If there are no appropriate options for the tool you have selected then one or both of these menu entries will be disabled. Settings are retained during a session even if you change tools. To keep the settings between sessions refer to the SAVING TOOL OPTIONS section.

 

TOOL PROCESSING

After selecting a file, the appropriate tool and tool options, the ``Process'' entry in the ``File'' menu becomes active. Clicking on this causes the tool to be invoked on each file in turn. Output in the form of progress messages, information, warnings and errors is displayed in the main GUI window. This is automatically scrolled to reveal the first lines of output from the current tool sequence.

A file viewer which shows the original and transformed code side by side may be selected by clicking on the ``View'' entry in the ``File'' menu. If the results are not exactly what you want then you can revert back to the orginal file by clicking on the ``Revert to original'' button at the bottom of the Viewer.

For f95 tools, include files and module files are expected to exist in the current working directory or in a directory specified in the ``Include and Module Directories'' option. This may be found in the ``General Tools Options'' menu. For f77 tools, include files are expected to exist in the current working directory.

 

SAVING TOOL OPTIONS

From the ``Options'' menu it is possible to save the status of the tool options, nag_chname95 and nag_chname scripts and polish options file names to a file. This file may subsequently be reloaded by clicking on the appropriate menu item. Please note that this file is not loaded automatically.

 

NOTES ON SPECIFIC TOOLS

Most of the tools' operations are intended to be intuitive and easy to use through the menu systems. Where the GUI behaviour differs from the documented behaviour of the command line interface, this is described below.

 

f95 Call Graph Generator

The call graph is displayed in a new window and may be printed or saved to a file.

 

f95 Code Coverage

The Code Coverage tool instruments the source and (if a Fortran 95 compiler is available) produces an executable program which records data on the usage of code segments within the program. Note that the executable must be run from a terminal window. The resulting output may be viewed by choosing the ``Coverage Report Viewer'' from the ``Tools'' menu.

 

f95 Common Block to Module Convertor

If the tool generates a module file, the file viewer displays this first.

 

f77 Complexity Metrics

The metrics report is displayed in a new window, and may be printed or saved to a file.

 

f77 and f95 Cross Referencers

The cross reference table is displayed in a new window and may be printed or saved to a file.

The f95 Cross Referencer -use_class=character options are not implemented in the GUI.

 

f95 Dependency Analyser

The dependency listing is displayed in a new window and may be printed or saved to a file.

 

f95 Interface Builder

If the tool generates a module file, the file viewer displays this first.

 

f77 Interface Lister

The interface list is displayed in a new window, and may be printed or saved to a file.

 

f77 and f95 Name Changers

A GUI front end to the name changer tool is used to enter the name change request commands. After setting the flags type the search and replacement strings into the appropriate entry boxes, terminate each with enter, or click on ``OK'' to accept each command. Each name changer command is constructed and displayed in the main text window.

The whole script may be deleted using the ``Delete All'' button. Individual entries may be selected by clicking on the entry. The flags and strings are displayed and may be edited in the top half of the window and the entry may be deleted using the ``Delete'' button.

When all the change commands have been entered, the ``Process'' button at the bottom of the Name Changer window may be clicked to invoke the tool on the selected files.

The script may be saved, see SAVING TOOL OPTIONS.

The nag_chname95 -allregex and -f77tools options are not implemented in the GUI.

 

f77 Portability Verifier

The final portability report is displayed in a new window and may be printed or saved to a file. Preliminary analysis errors and warnings are displayed in the tool progress window.

 

f77 Profiler

This tool provides a similar function to the f95 Code Coverage tool, but works only for Fortran 77 code. The executable program produced (assuming a suitable fortran compiler is specified) must be run from a terminal window to output the code usage table. To view the cumulative history information, select the History Report Generator from the ``Tools'' menu.

 

APPLICATION RESOURCES

The following X resources may be included, for example, in your .Xresources file. The size of the splitwin_font resource should be chosen to give legible text and still allow side by side display of the two files in the file viewer. The size of the window specified by the initialgeometry resource will be overridden to ensure all widgets are displayed.


nag_tools

    nag_tools*activeForeground: Blue
       The foreground colour of most widgets, when the
       cursor is over them.

    nag_tools*activeBackground: Gold
       The backgound colour of most widgets, when the
       cursor is over them.

    nag_tools*Entry.background: LightBlue
       The background colour of most entry widgets.

    nag_tools*Text.font: 8x13
       The default text font.

    nag_tools*splitwin_font: -misc-*-medium-*-*-*-*-120-*-*-*-60-*-*
       The font used in the file viewer.

    nag_tools*hyperfont: -Adobe-Helvetica-Medium-R-Normal--*-140-*
       The font for the help system hypertext buttons.

    nag_tools*hyperforeground: IndianRed
       The foreground colour for for the help system 
       hypertext buttons.

    nag_tools*hyperbackground: Lightblue
       The background colour for for the help system 
       hypertext buttons.

    nag_tools*title_background: Lightblue
       The background colour for for the help system 
       section titles.

    nag_tools*progress_background: Yellow
       The background used in "Processing: <file>" messages.

    nag_tools*error_background: Red
       The background used to highlight "Error:" messages in
       tool output.

    nag_tools*exit_foreground: Red
       The foreground colour of active ``Exit'' buttons.

    nag_tools*initialgeometry: +70+32
       The position of the initial window.

nag_po95

    nag_po95*activeForeground: Blue
      The foreground colour of most widgets, when the
      cursor is over them.
    
    nag_po95*activeBackground: Gold
      The backgound colour of most widgets, when the
      cursor is over them.
    
    nag_po95*Entry.background: LightBlue
      The background colour of most entry widgets.
    
    nag_po95*Text.font: 8x13
      The default text font.
    
    nag_po95*hyperfont: -Adobe-Helvetica-Medium-R-Normal--*-140-*
      The font for the help system hypertext buttons.
    
    nag_po95*hyperforeground: IndianRed
      The foreground colour for for the help system 
      hypertext buttons.
    
    nag_po95*hyperbackground: Lightblue
      The background colour for for the help system 
      hypertext buttons.
    
    nag_po95*title_background: Lightblue
      The background colour for for the help system 
      section titles.
    
    nag_po95*exit_foreground: Red
      The foreground colour of active ``Exit'' buttons.
    
    nag_po95*initialgeometry: +150+32
      The position of the initial window.

nag_po77

    nag_po77*activeForeground: Blue
      The foreground colour of most widgets, when the
      cursor is over them.
    
    nag_po77*activeBackground: Gold
      The backgound colour of most widgets, when the
      cursor is over them.
    
    nag_po77*Entry.background: LightBlue
      The background colour of most entry widgets.
    
    nag_po77*Text.font: 8x13
      The default text font.
    
    nag_po77*hyperfont: -Adobe-Helvetica-Medium-R-Normal--*-140-*
      The font for the help system hypertext buttons.
    
    nag_po77*hyperforeground: IndianRed
      The foreground colour for for the help system 
      hypertext buttons.
    
    nag_po77*hyperbackground: Lightblue
      The background colour for for the help system 
      hypertext buttons.
    
    nag_po77*title_background: Lightblue
      The background colour for for the help system 
      section titles.
    
    nag_po77*exit_foreground: Red
      The foreground colour of active ``Exit'' buttons.
    
    nag_po77*initialgeometry: +150+32
      The position of the initial window.

 

SEE ALSO

nag_chname95, nag_cbm95, nag_coverage95, nag_decs95, nag_depend95, nag_fcalls95, nag_mkintf95, nag_polish95, nag_prest95, nag_ustan95, nag_xref95, nag_polopt95, nag_modules95, nag_apt, nag_chname, nag_decs, nag_lvi, nag_polish, nag_profile, nag_history, nag_struct, nag_pfort, nag_fxref, nag_libdoc, nag_metrics.

Copyright, Numerical Algorithms Group, Oxford, 1997-2001