OGIP Calibration Memo CAL/SW/93-018

How to Install Callib & Caltool software

Ron Zellar & Ian M George

Code 668,
NASA/GSFC,
Greenbelt,
MD 20771

Last Update: 1993 Sep 20






SUMMARY

This document summarizes how to both install new and update old s/w tasks into the OGIP calibration database subroutine library (callib), and ftools sub- package (caltools).

Intended audience: Caldb s/w managers at NASA/GSFC only.

1  INTRODUCTION

This document gives step-by-step instructions on how to install a new routine in OGIP calibration database subroutine library (callib) and how to install a new task in the ftools/caltools sub-package. Instructions are also given on how to update pre-existining routines and task.

It should be noted that this document is not likely to be of general interest, being intended for the limited number of people responsible for maintaning the OGIP Caldb s/w at NASA/GSFC.

1.1  Helpful Hints

When editing files do not add new lines to the beginning or end of sections. Often the sections have special characters (commas, colons, tabs, etc.) at the beginning or end which help the make/mkpkg utilities to recognize the beginning or end of that section.

For example, the file x_caltools.x contains the following lines:

---
# The caltools package

task 	st2rpsf,
	dmprmf,
	quzcif,
	rsp2rmf,
	rpsfqdp,
	pspcrpsf
          
---

There is a tab character between task and st2rpsf, and no comma after pspcrpsf. In addition, there is a tab on the last line following pspcrpsf. Therefore, it is recommended that new lines are insterted in the middle of sections rather than writing new lines to the end or beginning.

Also, when adding new lines it is recommended that a representative line from the section being edited be examined to see where the non-printable characters are located. This will guide you when you are adding the lines necessary to install your software.

1.2  Overview

Section 2 lists the steps required to install a new, or update a pre-existing, callib subroutine. Then Section 3 lists the procedures for installing or updating a caltools task in the 'developers' area at GSFC. Finally Section 4 discusses the actual building of the IRAF and 'Host Interface' versions of caltools at GSFC.

2  The caldb subroutine library

2.1  Installing a new subroutine

2.1.1  System independent routines

  1. move fortran file into .../callib/src/gen

  2. edit file .../callib/make.com to include the line $for [.gen]filename

  3. edit file .../callib/mkpkg to include the line src/gen/filename

  4. make the host version by using the commands
    cd .../callib
    make

  5. fix any errors

  6. build the IRAF version of ftools (see Section 4.1)

  7. fix any errors

  8. inform Kent of the new make files and the new source code files

2.1.2  System dependent routines

  1. move fortran files into .../callib/src/vms and .../callib/src/unx

  2. edit file .../callib/make.com to include the line $for [.vms]filename

  3. edit file .../callib/mkpkg to include the line src/unx/filename

  4. make the host version by using the commands
    cd .../callib
    make

  5. fix any errors

  6. build the IRAF version of ftools (see Section 4.1)

  7. fix any errors

  8. inform Kent of the new make files and the new source code files

2.2  Updating a pre-existing subroutine

2.2.1  System independent routines

Follow the steps given in Section 2.1.1 ignoring steps 2 and 3.

2.2.2  System independent routines

Follow the steps given in Section 2.1.2 ignoring steps 2 and 3.

3  The caldb ftools/caltools sub-package

3.1  Installing a new task

  1. create the directory .../caltools/src/taskname

  2. move the follwing files into the the directory .../caltools/src/taskname
    1. taskname.f

    2. htaskname.c

    3. taskname.par

    4. Makefile

    5. make.com

    6. mkpkg

  3. move the file taskname.txt to directory .../caltools/help

  4. edit the file .../caltools/host/Makefile
    line beginning all:
    include the taskname in the list of tasks
    add the lines: taskname: cd ../src/{taskname}; make "F77LIBS=$(LIBSYS)"

  5. edit the file .../caltools/host/make.com to include the lines:
    $set def ftools:[caltools.src.taskname]
    $@make

  6. Build the Host version by using the commands:
    cd .../caltools/host
    make taskname

  7. fix any errors

  8. move the file taskname.hlp to the directory .../caltools/doc

  9. edit the file .../caltools/caltools.cl to include the line
    taskname,
    (yes that comma is important !)

  10. edit the file .../caltools/caltools.hd to include the line
    taskname hlp=doc${taskname}.hlp, src=caltools$src/{taskname}/{taskname}.f

  11. edit the file .../caltools/caltools.men to include
    taskname - description of task

  12. edit the file .../caltools/src/mkpkg to include the lines:

  13. edit the file .../caltools/src/x_caltools.x to include
    taskname,
    (yes that comma is important !)

  14. build the IRAF version of ftools (see Section 4.1)

  15. fix any errors

  16. inform Kent of all the files that you have edited or added

3.2  Updating a pre-existing task

  1. move new source code, new parameter file into the .../caltools/src/taskname directory

  2. make the host version of the task by using the commands
    cd .../caltools/host
    make taskname

  3. fix any errors

  4. make the IRAF version of ftools (see Section 4.1)

  5. fix any errors

  6. inform Kent of the new source code, parameter files

4  Building the IRAF & Host versions of ftools

4.1  The IRAF version of ftools

  1. change to the directory /ftools/DEC/develop

  2. execute the command setenv ftools /ftools/DEC/develop/
    (yes that last backslash is important.)

  3. execute the cammand +mkpkg -p ftools+

4.2  The Host Interface version of ftools

  1. change to the directory /ftools/DEC/develop/host

  2. execute the command make




File translated from TEX by TTH, version 3.13.
On 21 Apr 2004, 21:21.