All configuration management of HEAdas will be handled by the HEASARC, including such things as Makefiles and configure scripts. Code revision control will be handled via a central CVS repository resident on HEASARC servers. Developers of mission-specific software will only have write access in the relevant portions of the repository but will have read access to the entire package so that they can check-out as much of it as they wish for local testing. However, a limited number of HEASARC programmers will have global write access to enable necessary configuration modifications. CVS includes automatic email notification of new check-ins so that developers will be informed of any changes to their portion of the repository as they occur.
The directory structure for any given subpackage will be reasonably flexible so that mission software developers can arrange things to suit their own needs and/or preferences. Certain constraints may, however, be required to accomodate the overall HEAdas build paradigm.
Full, top-down builds are started from the headas/BUILD_DIR directory using the typical steps of ./configure followed by make and then finally make install. Internally, however, builds will be managed by hmake, exactly as in the current FTOOLS package. This utility is designed to also make it easy to build all or part of the distribution on any supported platform without having to make modifications by hand specifying the location and/or names of necessary flags and libraries. That is, once a full build and install have been performed, a developer may simply checkout a copy of a particular tool and build it via the command hmake. Before using hmake (assuming a cshell environment) one simply needs to source the file $HEADAS/BUILD_DIR/hdevinit.csh, where $HEADAS is the environment variable which points to the location of the relevant HEAdas installation, eg, /usr/local/src/headas/i686-pc-linux-gnu. Similarly, to set oneself up to use installed HEAdas tasks one would source $HEADAS/headas-init.csh. Note that Bourne shell/bash variants are also provided for people who prefer those shell environments. These are identical except that the file suffixes are .sh instead of .csh and they would, of course, be invoked according to the usual shell syntax.
NOTE: For the time being the hmake utility from a HEASoft installation is NOT interchangable with the one from a HEAdas installation. This is currently being revised and ultimately it will not matter which version comes first in one's search path. Until then, caveat developer...