To release ASTERIX we generate an exportable copy of the source code
using the export_source
top level target. We supply this file
plus the mk
script to Starlink who build it on each system.
They check that the install
and deinstall
targets work ok, then they build the binary export
version using export
. It is this machine specific file which is
released, along with a news item and update to SUN/98.
To test a release go through the same process, building ASTERIX on a scratch area. It is essential that you do the following before you start,
PATH
variable before building the package. For security reasons
most people work like this, and its is important that the ASTERIX make
files do not make the assumption that this directory is in the path.
/star/lib:/usr/openwin/lib:/usr/ucblib:/opt/X11R5/lib:/star/shareIt absolutely must not contain anything to with XANADU or FTOOLS when you build ASTERIX, or dire consequences will ensue.
unsetenv AST*If you don't do this then the build system might look for the source code in the SCCS libraries, which of course won't exist.
# Create test directory and tell mk that this is where the exported # source will go % mkdir /scratch/asterix/test_build % setenv EXPORT /scratch/asterix/test_build # Build the release and copy the 'mk' script % cd /star/asterix % mk export_source % cp mk /scratch/asterix/test_build/ # Unpack the source archive % cd /scratch/asterix/test_build/ % zcat asterix.tar | tar xvf - # Build the system % ./mk build >&build.log &Now inspect the log file. Look for the word 'error' using an editor. The only occurance of this word should be in the names of routines, eg.
serror
.
Once this has worked try the install and deinstall phases.
# Set installation directory % setenv INSTALL /scratch/asterix/test_install % ./mk install >&install.log &Again look for errors in the log file. Once installed you should be able to redefine the
aststart
command to run the installed version. You
must try this before you release the system, as this is the mode in which
everyone else in the world uses the system. Once you've tested it, check
the deinstall target in the same way -- this restores the system to the
built state.