unix
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
PC-IRAF HSI -- September 2001 The old (1985) README for the Unix HSI is preserved unchanged below. We are not going to attempt to include updated, comprehensive documentation here now, but a few pointers follow. See the Unix/IRAF or PC-IRAF system manager's guide for more complete documentation. o The PC-IRAF HSI currently uses F2C for Fortran (SPP) to C translation. Although F2C is available as an option on many platforms, we integrate it into the HSI to avoid versioning problems and to avoid an external dependency. The version of F2C used is maintained in /local/src/f2c on Lepus. The README in that directory contains instructions for building f2c for a platform. Once the runtime files have been generated they are copied to the HBIN for the target platform. =============================================================================== UNIX (a.k.a. host$) -- IRAF/UNIX System Interface (13Dec85 Dct) These directories contain those portions of the IRAF software which are machine or host operating system dependent. The major directories are as follows: boot bootstrap utilities (mkpkg, xc, etc.) hlib host library (config files, header files, etc.) os the UNIX/IRAF kernel (LIBOS.A) gdev ZFIOGD device driver (i/o to binary graphics devices) A graph of the IRAF/UNIX system interface directories is shown below. ------------------------------------------------------------------------------- Thu Jan 16 16:37:52 MST 1986 |-bootlib------- |-generic------- |-mkpkg--------- |-rmbin--------- |-rtar---------- | | |-ratlibc------- |-boot----------| |-ratlibf------- | |-spp-----------|-rpp-----------|-ratlibr------- | | | |-rppfor-------- | | | |-rpprat-------- | | |-xpp----------- | |-vfn----------- | |-wtar---------- | | |-unix----------| |-xyacc---------|-debug--------- | |-gdev----------|-iism70-------- | | |-hlib----------|-libc---------- | |-os------------|-doc----------- |-net----------- SYSTEM GENERATION PROCEDURE The bootstrap utilities must be built before the remainder of the IRAF system can be built. The procedure for building the system from scratch given a text-only distribution is outlined below. Those sites fortunate to receive a binary distribution can skip all this, and proceed to editing the device tables and other runtime files. [1] Edit the config files in HLIB. The major files are iraf.h, config.h, mach.h, libc/iraf.h, libc/libc.h, and libc/knames.h. All files should be reviewed. [2] If the zsvjmp assembler file will not work on your machine, add a new section in this file. To code ZSVJMP on a UNIX system, it may help to write a small C program which calls longjmp and setjmp and use "gcc -S" to create a template. Write a modified version which is callable from Fortran and has the indicated calling sequence. [3] The directory OS contains the IRAF kernel for 4.2BSD UNIX. This will have to be modified somewhat if a different version of UNIX is in use. Manual pages are given in os/doc and the package is described in the "System Interface Reference Manual", which any IRAF implementor should already have. As of this writing the documentation is partially out of date. [4] Edit the pathnames in the file ./hlib/libc/iraf.h. Make a symbolic link /usr/include/iraf.h which points to this file (alternatively, copy the file to /usr/include). Edit the pathnames in ./hlib/irafuser.csh. Add references to your CSHELL .login and .cshrc files to pick up the environment definitions and aliases in this file (alternatively, add the appropriate SET/EXPORT environment definitions to your Bourne shell login file, and make symbolic links pointing to the aliased commands in some public directory). [5] Use source or login to pick up the environment defs and aliases. You are now ready to compile the bootstrap utilities: % sh -x mkpkg.sh >& spool & This command should compile the libraries LIBOS.A and LIBBOOT.A and install them in hlib, then compile and install all the bootstrap utilities. Once this sequence has been successfully completed you should be able to compile the machine independent part of IRAF by the following sequence of commands: % cd $iraf % mkpkg >& spool & Generation of the full system will take many hours.