THE SUN/IRAF NETWORK DISTRIBUTION This directory and its subdirectories contains the Sun/IRAF distribution, for all Sun-3s and Sun-4s (including sparcstations) running SunOS-4. The V2.9 binary distribution was compiled under SunOS 4.0.3. The Sun386i is a substantially different system and hence has its own distribution; this is in the directory v29/S386 (../S386). README This file. as.sos4.gen AS.SOS4.GEN (all sources) ib.sos4.f68 IB.SOS4.F68 (core system, f68881 binaries) ib.sos4.fpa IB.SOS4.FPA (core system, ffpa binaries) ib.sos4.spc IB.SOS4.SPC (core system, sparc binaries) nb.sos4.f68 NB.SOS4.F68 (NOAO packages, f68881 binaries) nb.sos4.fpa NB.SOS4.FPA (NOAO packages, ffpa binaries) nb.sos4.spc NB.SOS4.SPC (NOAO packages, sparc binaries) sos4.patch1.Z May 5 patch to SOS4. Install this only if you got SOS4 from the archive before May 5. Installation instructions are given below. sos4.patch2.Z July 10 IMFORT patch. sos4.patch3.Z V2.9.1 BUG FIX UPGRADE PATCH (supercedes all earlier patches). (sos4.patch4.Z) This patch was never made publically available hence does not appear in the archive. sos4.patch5.Z V2.9.3 BUG FIX UPGRADE PATCH. Requres that patch3 already be installed. gterm.man.Z GTERM manual page source gterm.ps.Z GTERM manual page, Postscript output imtool.man.Z IMTOOL manual page source imtool.ps.Z IMTOOL manual page, Postscript output suniraf.ms.Z Sun/IRAF installation guide source suniraf.ps.Z Sun/IRAF installation guide, Postscript output sunsmg.ms.Z Sun/IRAF Site Manager's Guide source sunsmg.ps.Z Sun/IRAF Site Manager's Guide, Postscript zzmake Build utility (not part of distribution) To install Sun/IRAF you will need to transfer the AS.SOS4.GEN file plus the binaries for whatever systems you want to run IRAF on. For example, to install IRAF on a Sun-4 or a sparcstation, you will need AS.SOS4.GEN and the sparc binaries for the core system and NOAO packages, files IB.SOS4.SPC and NB.SOS4.SPC. REGISTERING YOUR SITE While the network archive makes it easier to get IRAF, it also makes it harder for us to track IRAF usage by the community. We need this information, e.g., to help obtain funding to continue to develop and support IRAF for the community. PLEASE REGISTER YOUR SITE IF YOU USE IRAF! This takes only a moment; all you need do is fill out the form in the v29/REGISTER file and mail it to iraf-requests@noao.edu. As an added benefit you will get on the IRAF mailing list, and will receive the IRAF Newsletter and other IRAF mail. TRANSFERRING THE FILES Each distribution file is stored in a subdirectory containing the compressed and split distribution file, a CHECKSUMS file, and a FILES.Z file. The distribution file is a UNIX TAR file containing one or more directory trees from the IRAF system. To facilitate transfers over unreliable network connections, the distribution file is split into a number of smaller (512 Kb) files. The files can be transferred as follows. These examples are for the SunOS version of FTP. o If you did not start up FTP as "ftp -i", exit and restart it with the "-i" switch. This is necessary to be able to do bulk transfers without having to answer annoying and unnecessary yes or no queries for each individual file. o On the local system, create a subdirectory for each distribution file you want to transfer, e.g., ftp> !mkdir as.sos4.gen o Set the current directory on both the local and remote systems. ftp> cd as.sos4.gen ftp> lcd as.sos4.gen o Transfer all the files in the distribution file directory. A binary transfer is required for the compressed tar files, and will work for the text files as well since both systems are UNIX. ftp> binary ftp> mget * If problems are encountered, use the CHECKSUMS file to verify that any subfiles already transferred are correct. Delete any partially transferred subfiles and restart the transfer (by subfile we mean the 512 Kb files with extensions .00, .01, .02 etc. files making up the distribution file). Both BSD (Sun) and SYS5 checksums are given. The SunOS command "sum" will compute the checksum of a file. Once all the files have been transferred the subfiles can be concatenated and uncompressed to reconstruct the original distribution TAR file, e.g.: % cat as.* | uncompress | tar -tvf - would list the contents of the distribution file. Such a listing is provided in the file FILES.Z in each distribution file directory. An easy way to look at a compressed text file such as FILES.Z is with "zcat": % zcat FILES.Z | page INSTALLING SUN/IRAF Complete instructions for installing and configuring Sun/IRAF are given in the Sun/IRAF Installation Guide and Sun/IRAF Site Manager's Guide, compressed Postscript versions of which are given in the files suniraf.ps.Z and sunsmg.ps.Z. On most BSD networks containing a Postscript printer, a hardcopy version of the manual can be obtained with a command such as % zcat suniraf.ps.Z | lpr [-P] where is the name of the local printer device you want the manual to be printed on. Troff source for the manuals is also provided for sites that do not have ready access to a Postscript printer. Installation is as described in the manuals except that, since you will be installing a network distribution, you install from the compressed and split disk version of the distribution file instead of from tape. For example, to restore AS.SOS4.GEN to the remote directory $iraf, while logged in as user "iraf": % whoami iraf % cd SOS4/as.sos4.gen % cat as.* | uncompress | (cd $iraf; tar -xpf -) This example assumes that "iraf" is defined in your unix environment (if not, just type in the pathname of the iraf root directory instead). As a variation, suppose the distribution files are stored on the local system "alex" in directory /tmp2/SOS4 and you want to install iraf in the root directory /usr/iraf on the remote system "fred": % cd /tmp2/SOS4/as.sos4.gen % cat as.* | uncompress | rsh fred "cd /usr/iraf; tar -xpf -" Or, if you are logged in on fred instead: % cd /usr/iraf % rsh -n alex "cat /tmp2/SOS4/as.sos4.gen/as.*" |\ uncompress | tar -xpf - (The -n argument allows you to suspend the rsh without having the job stop waiting for terminal input). Note that, even if the two systems are connected by NFS, it is always safer, faster, and more efficient to use rsh instead of NFS for file transfers such as these. The BIN directories are restored in much the same fashion, e.g., % cd /usr/iraf % rm bin.sparc; mkdir bin.sparc % cd bin.sparc % (cd /tmp2/SOS4/ib.sos4.spc; cat ib.*) | uncompress | tar -xpf - % cd /usr/iraf/noao % rm bin.sparc; mkdir bin.sparc % cd bin.sparc % (cd /tmp2/SOS4/nb.sos4.spc; cat nb.*) | uncompress | tar -xpf - If multiple architecture support is desired you need only create additional sets of BIN directories, e.g., bin.68881, bin.ffpa, and so on. Note that the system as shipped will contain existing symbolic links with these names which should be deleted (you can use a symbolic link to store the BIN directory on another disk if space is tight). DO NOT delete the "bin.generic" directory, or modify the symbolic links "iraf$bin" and "iraf$noao/bin" to point to anything other than bin.generic. Please read the installation guide for more complete instructions regarding the installation. There is more to installing and configuring IRAF than just restoring the files to disk as discussed in these examples. PATCH 1 (May 5) - SunOS 4.1, STSDAS support If you got the SOS4 distribution from the archive after May 5 you can ignore this patch. If you got SOS4 before May 5, you need to install the patch to: o Run Sun/IRAF V2.9 on SunOS 4.1 (the pre-May5 version of SOS4 will not run on SunOS 4.1, which we did not have at NOAO until after the initial distribution had already been made). o Compile STSDAS. The patch contains a bug fix which is needed to compile and install STSDAS. To install the patch, retrieve the file sos4.patch1.Z from the archive, then when logged in as "iraf": % cd $iraf % zcat sos4.patch1.Z | tar -xpvf - It is harmless to install the patch when it has already been installed. In order to run on SunOS 4.1, if you obtained SOS4 from the archive prior to May 5, you must also reinstall the binaries from the archive (otherwise you will see a "cannot map the iraf shared library" error message at process startup, when running under SunOS 4.1). There is no reason to update the binaries unless you need to run on SunOS 4.1. PATCH 2 (July 10) IMFORT patch This patch fixes a bug in imfort which would prevent it from being able to access images not in the current directory. The patch replaces only the compiled imfort library (libimfort.a). The patch is applied as for patch1 above (i.e., unpack with tar at the iraf root). PATCH 3 (Sept. 6) V2.9.1 UPGRADE patch This patch supercedes all earlier V2.9 patches; sites installing the patch do not need to have installed the earlier patches, although it is harmless if one has done so. Sites doing a complete installation of IRAF V2.9 from the archive after September 6 do NOT need to install this patch, as the version of IRAF in the network archive has been replaced by V2.9.1 with the patches already installed. The V2.9.1 patch includes the following bug fixes or enhancements to V2.9: o Support for the beta test release of PROS has been added. This involved minor changes to the system interfaces QPOE, MWCS, and PLIO. Any site wishing to run PROS should first upgrade to V2.9.1. o On Sun/IRAF systems only, the iraf magtape driver has been hacked to add support for Exabyte tape drives. The following combinations of SunOS systems and host drivers are supported by this patch: - Sun-3, Sun-4 running 4.0.3 with the Sun SCSI tape (ST) driver. - Sun-3 running 4.0.3 with the Ciprico Rimfire (RT) driver. - Sun-3 running 4.1 with the Sun SCSI tape (ST) driver. It is possible that a Sun-4 under this combination will work as well, although this was not tested. Exabyte on a sparcstation is not currently supported, due to serious bugs in the Sun SCSI driver on this system. 1/4inch cartridge tape drives are not supported. 1/2inch reel tape on the Sun SCSI driver is not supported under 4.0.3, although there is a chance it may work under 4.1. 1/2inch reel tape on a non-SCSI driver is supported in all versions of IRAF. [NOTE - IRAF version 2.10 will include support for all of the above, plus DAT drives.] The Exabyte is interfaced in IRAF as is any other tape device (you will need to make a new logical device entry in dev$devices). You can do anything with the Exabyte that you can with 1/2 inch reel tape, except truncate the tape and overwrite an exiting file, as the Sun drivers permit files to be written only at BOT or EOT with this device. You can randomly position to and read any file on the tape. Tape records are variable size as for 1/2 inch reel tape (and unlike cartridge tapes, which have a fixed block size of 512 bytes). Beware that although the i/o transfer rate is not bad, tape positioning operations execute VERY slowly on the Exabyte. If you need to interrupt a tape operation you may have to wait up to a minute for the task to respond to the interrupt. Seeking to EOT to add a file to an existing tape containing many files can take up to an hour or longer. o MTIO and the DATAIO package underwent some revisions, partially motivated by the addition of Exabyte support. The maximum tape blocksize is increased to 65535 bytes and the maximum FITS blocking factor is increased to 22 (anything over 10 is not standard FITS tape, however, and may not be readable on other systems). o A bug in the IMDKERN graphics kernel (graphics overlays on image displays) which could cause the kernel to crash on a segmentation violation has been fixed. (Bug #137) o Support has been added to Sun/IRAF for the new Sun compilers, in particular the Fortran 1.3 compiler. This appears to work, however our experience with this compiler to this point is minimal. (Bug #134) o A bug in IMFORT which could prevent access to images not in the current directory has been fixed. (Bug #128) o A bug in ONEDSPEC.CALIBRATE involving an error of one pixel in the wavelength scale for extinction correction has been fixed. (Bug #129) o The entire ARTDATA package (first introduced in V2.9) has been replaced by a newer version. o Support for output to the null image (as in imcopy image dev$null) has been added to the OIF image kernel. To install V2.9.1 for the first time one merely follows the instructions for installing V2.9 given above (V2.9.1 replaces the old V2.9 distribution files). To install the V2.9.1 patch into an existing V2.9 system: 1) Unpack the file sos4.patch3.Z at the iraf root: % login iraf % cd $iraf % zcat sos4.patch3.Z | tar -xpvf - 2) Edit the file $iraf/unix/hlib/zzsetenv.def and change the "V2.9" in "set version" to "V2.9.1". 3) Do a full update of each IRAF core system and NOAO package BIN (bin.sparc, bin.f68881, etc.) from the distribution files in the archive, as you did in the initial installation. By "full update" we mean delete the contents of the old BIN directory and replace by the contents of the appropriate IB or NB distribution file from the archive. You must update the BINs to upgrade to V2.9.1. Since the update includes a new version of the ARTDATA package it is recommended that each user do an "unlearn artdata" after logging into the V2.9.1 CL. PATCH 5 (18Sep91) V2.9.3 UPGRADE PATCH This patch is intended for installation in V2.9.1 systems only (note that V2.9.2 was never publically exported, hence the jump to V2.9.3). The full distribution files will remain at V2.9.1 until V2.10 IRAF is released, so the only way to obtain a V2.9.3 system is to apply patch5 to a V2.9.1 system. This patch was released to support the V1.1 release of the PROS package from SAO. The major changes were as follows. o Full support for SunOS V1.3 Fortran compiler. o The magtape driver has been updated to work with most Sun SCSI tape devices under SunOS 4.1. Be warned that the magtape interface is still not reliable on Sun systems (due to bugs in the Sun SCSI tape driver, which differs slightly on every Sun system). Be sure to list out and verify any tapes written to SCSI tape drives on the Sun (typically, Exabyte and HP 9 track cartridge drives). o The maximum number of nodes in the dev$hosts file has been increased to 128. o A serious bug in the HELP code that could cause a segmentation violation when many external packages were defined has been fixed. o A problem with pattern matching and image header keywords has been fixed. This fixes problems reported in HEDIT/HSELECT. Most of the other changes were PROS related, and affect mainly people doing software development with QPOE or MWCS. o The "fuzzy boundary" bug that affected time filters is fixed. There is a new zzdebug task for independently verifying that time filtering is working. Use it if you suspect a problem. o A couple of new routines were added to QPOE to get the current filter term for an event attribute as an ascii list, or as a binary range list. o The size of the buffers used to compile filter expressions was increased to accomodate very large time filters. o Any iraf task which makes an image can now make .pl images (PLIO mask images). The .pl format is our first machine independent image format. Any nonnegative 28 bit integer image can be stored in .pl format, with image compression if the data permits. o A new image kernel PLF was added for .pl images (actually, it is not a complete kernel, but close). Mask images now have normal image headers. o The default filter and default mask facility was completely redone and should now be much more useful - the default filter and/or mask, if defined, acts as if it is part of the data and is combined with the user supplied filter to produce the final event stream. Filters may now be specified independently for different event lists if a file contains multiple event lists (e.g., if you were using QPIO to store temporal or aspect data in a pseudo-event list, you certainly wouldn't want it to be filtered). Various levels of switches are provided to turn the default filters on and off. o There were some miscellaneous bug fixes, e.g., evidently pl_stencil hasn't worked for some time, and qp_expand would strip the quotes from quoted string tokens in macro defines. The out of file descriptors bug occurring when qpio_open was called many times was fixed. The bitmask expression syntax was generalized so that expressions like !%n can be used. o A new builtin macro $DFN was added. This is replaced during macro expansion by the filename of the current datafile, allowing generic macros to reference the datafile in which they are used. o There is a new zzdebug task TESTPOE, useful for making small test QPOE files (without any real data). o Fixed bugs affecting QPOE coordinate selection [key=(xoff,yoff)], qp_renamef, and the qp_gnfn package. o A problem with mio_setrange has been fixed. o The source for the routine mw_gsystem has been added to MWCS. This was in the interface specification but was missing in earlier versions of the interface. o A bug in qpex_modfilter was fixed which could cause problems with very large filter expressions (filters larger than 1024 characters). This patch includes the necessary Sun-4 (sparc), and Sun-3 (f68881 and ffpa) binaries, hence can be installed in one step. To install the patch, verify that you have a V2.9.1 system, ensure that no users are currently running IRAF, and proceed as follows: (login as iraf) % whoami iraf % cd $iraf % zcat sos4.patch5.Z | tar -xpf - % cd unix/hlib % su # ./install Then, still in HLIB, edit the "motd" and "zzsetenv.def" files and change the IRAF version name to V2.9.3EXPORT in the obvious places. Note that patch releases never modify any site dependent files, which is why you have to modify these files by hand. If your IRAF installation does not require any of the sparc, f68881, or ffpa architectures, you may want to delete the unneeded executables in the bin.sparc, bin.f68881 or bin.ffpa directories after installing the patch.