Getting Started Documentation Glish Learn More Programming Contact Us
Version 1.9 Build 1556
News FAQ
Search Home


next up previous contents index
Next: Code management Up: Code distribution Previous: inhold

Subsections



sneeze

AIPS++ system rebuild utility.

Synopsis

sneeze [-e extlist] [-l] [-m mode] [-s seconds] targets

Description

sneeze is a part of the AIPS++ code distribution system. It is invoked by inhale (p[*])) to rebuild the AIPS++ system areas including object libraries, executables, and documentation. It can rebuild serially the systems for several aips_exts (see aipsinit (p[*])).

Before rebuilding the system, sneeze invokes ax_master with the -system option to delete unwanted files and directories from the system areas. On cumulative updates it invokes ax_master in cumulative mode and this deletes all static object libraries and class template repositories in addition to applying all deletions recorded in ax_master's action list. sneeze also invokes 'gmake -C $AIPSCODE cleansys' (§1.2) on cumulative updates to further clean up the system areas.

At the end of a cumulative update sneeze invokes 'gmake -f $AIPSARCH/makedefs diagnostics' to report the installed versions of third-party utilities essential for AIPS++ such as gmake (p[*]), and also to print the current values of all makedefs (p[*]) variables.

For a base installation (-m base), after the rebuild is complete and if not contra-indicated by the sneeze.base.$ARCH.preserve resource, sneeze preserves a copy of the system in $AIPSROOT/base-MM/..., where MM is the major version number of the new base release, and then invokes 'gmake -C $AIPSROOT/base-$NEWMAJOR/code/install aipsroot' to remake the root level directory.

sneeze maintains the LOGFILE file in $AIPSARCH which records the version, time of completion, and gmake (p[*]) targets of the last rebuild (see avers (p[*])).

Options

-e extlist
Serially rebuild the systems corresponding to each aips_ext in the blank-, or colon-separated list. If no -e option is given sneeze just rebuilds the host's default architecture as specified in aipshosts (p[*]). An ``_'' in the extlist signals no extension.

If there are any more aips_exts to be built after sneeze has finished the current one then it reinvokes itself with the -e option specifying an extlist from which the current aips_ext has been removed.

-l
Log mode - if specified then the output of sneeze will be logged to a file specified by the sneeze.$HOST.$AIPSEXT.logfile resource and mailed to the addresses specified by the sneeze.$HOST.$AIPSEXT.logmail resource. If these are not defined the log is sent to $AIPSARCH/sneeze.log and the mail to aips2-inhale@nrao.edu.

-m mode
Mode of the rebuild, incremental (default), cumulative, or base.

-s seconds
Interval in seconds to sleep before commencing build. This option is used to prevent concurrent builds from configuring glish at the same time.

If no targets are specified (makefiles (p[*])) sneeze remakes allsys.

Resources

sneeze always ignores $HOME/.aipsrc (see getrc (p[*])).

General resources.

The following resources used by sneeze should be defined in $AIPSROOT/.aipsrc.

See also the inhale.sneeze.hosts resource used by inhale (p[*]) to control how sneeze is invoked.

Notes

Diagnostics

Status return values
0: success
1: initialization error

Examples

sneeze is used by inhale (p[*]) and should not normally be invoked manually. inhale (p[*]) invokes it asynchronously on remote hosts with the -l option using .rshexec (p[*])), then executes it synchronously on the local host without the -l option.

See also

The unix manual page for mail(1).
AIPS++ variable names (§1.2).
affirm (p[*]), get the Boolean value of a set of arguments.
aipshosts (p[*]), AIPS++ hosts database.
avers (p[*]), AIPS++ version report utility.
ax (p[*]), AIPS++ code deletion utility.
getrc (p[*]), query AIPS++ resource database.
inhale (p[*]), AIPS++ code import utility.
makefiles (p[*]), GNU makefiles used to rebuild AIPS++.

Author

Original: 1993/09/13 by Mark Calabretta, ATNF.


next up previous contents index
Next: Code management Up: Code distribution Previous: inhold   Contents   Index
Please send questions or comments about AIPS++ to aips2-request@nrao.edu.
Copyright © 1995-2000 Associated Universities Inc., Washington, D.C.

Return to AIPS++ Home Page
2006-10-15