Azara, v2.7, copyright (C) 1993-2002 Wayne Boucher
	and Department of Biochemistry, University of Cambridge.

Installation procedure for Azara suite of programs.

email address (bugs, etc.): azara@bioc.cam.ac.uk

All the programs are written for Silicon Graphics Indigo-type machines, with the Silicon Grahpics compiler. They may compile with other compilers and run on other (Unix) machines, but they may not. The processing programs have been written with ANSI-type C, and the most likely modifications would be to do with disk access. The viewing programs assume that an X terminal is being used, and have been written with Motif/X11 (but not up to any style guidelines).

The programs have been successfully compiled on Linux boxes and even on Mac OS-X. The non-graphical programs have been successfully ported to Windows platforms (send an email to the address given at the top if interested).

The top-level directory mainly contains other directories. Each program has its own directory which contains (most of) its source code. If you have a release which includes Irix executables and these work on your machine and you are happy with the way they were compiled, then go to step (4). Otherwise compilation will need to be done. If you have a source only release then go to step (2), otherwise go to step (1).

************************************************************

Step (1) Clean up.

Remove all the previously compiled (*.o) files by typing

	make clean

in the top-level directory. Alternatively you can remove both the *.o files and all the executables by typing

	make realclean

************************************************************

Step (2) Edit ENVIRONMENT or makefiles

A file called ENVIRONMENT has been included in the top-level directory. This specifies the various compiler settings. A makefile has been set up in each directory which first includes ENVIRONMENT. This should work for most platforms but the settings specified in ENVIRONMENT can be overridden in the makefiles if required.

The variables in ENVIRONMENT (not all of which are used in each makefile), and some possible settings (use only one!), are below. If a variable is not needed it can either be set to a blank string or that line commented out. The default Irix settings are the first options listed below.

CC (compiler)

	CC = cc		(the standard Silicon Graphics compiler)
	CC = gcc	(the GNU compiler)
(usually cc works even if the compiler is gcc).

CFLAGS (compiler flags)

	CFLAGS = -O	(code optimization)
	CFLAGS = -g	(allows post-mortem debugging)

LFLAGS (linker flags)

	LFLAGS =	(none)
	LFLAGS = -p	(allows profiling of code)

LIB (generic libraries)

	LIB = 		(none)
	LIB = -lmalloc	(memory allocation)

MATH_LIB (math library)

	MATH_LIB = -lm

X11_INCLUDE_DIR (X11 include path)

	X11_INCLUDE_DIR =
	X11_INCLUDE_DIR = -I/usr/X11R6/include
MOTIF_INCLUDE_DIR (MOTIF include path, if different from X11)
	MOTIF_INCLUDE_DIR =
	MOTIF_INCLUDE_DIR = -I/usr/X11R6/include
X11_LIB_DIR (X11 library path)
	X11_LIB_DIR =
	X11_LIB_DIR = -L/usr/X11R6/include
MOTIF_LIB_DIR (MOTIF library path, if different from X11)
	MOTIF_LIB_DIR =
	MOTIF_LIB_DIR = -L/usr/X11R6/include
XPM_FLAG (whether XPM is available and you want to use)
	XPM_FLAG = -DUSE_XPM
	XPM_FLAG =
(used only to dump bitmaps in plot2) XPM_LIB (Xpm library, if used, if not leave blank)
	XPM_LIB = -lXpm
	XPM_LIB =

X11_LIB (X11 libraries)

	X11_LIB = -lX11 -lPW
	X11_LIB = -lX11
	X11_LIB = -lX11 -lXp -lXext
	X11_LIB = -lX11_s -lPW
(non-SGI platforms do not need PW; _s is for shared libraries) MOTIF_LIB (Motif libraries)
	MOTIF_LIB = -lXm -lXt
	MOTIF_LIB = -lXm_s -lXt_s
GL_INCLUDE_DIR (GL include path)
	GL_INCLUDE_DIR =
GL_LIB_DIR (GL library path)
	GL_LIB_DIR =
GL_LIB (GL libraries)
	GL_LIB = -lglut -lGLU -lGL -lXmu -lX11 -lXext
(the GL stuff is only needed for the viewer program)

ENDIAN_FLAG (specifies endian options)

	ENDIAN_FLAG =
	ENDIAN_FLAG = -DWRITE_ENDIAN_PAR
	ENDIAN_FLAG = -DBIG_ENDIAN_DATA
	ENDIAN_FLAG = -DLITTLE_ENDIAN_DATA
(options: WRITE_ENDIAN_PAR if want endianess written to par file BIG_ENDIAN_DATA if want data files to be big endian by default LITTLE_ENDIAN_DATA if want data files to be little endian by default FLIP_SWAP if want input data files to have swap flipped not all of these make sense in combination)

************************************************************

Step (3) Compile code.

To compile all the programs, type

	make
or
	make all

in the top-level directory.

To compile only the non-graphical programs, type

	make nongui

in the top-level directory.

To compile only the non-GL graphical programs, type

	make gui

in the top-level directory.

To compile only the GL programs, type

	make gl

in the top-level directory.

To compile only one program, go into the corresponding directory and type

	make

If all does not go well, then send an email to the address given at the top of this file, or first ask a local expert if one is at hand.

************************************************************

Step (4) Make executables usable.

When compiled, the executables live in their respective directories. Links to these have been made in the bin directory. To make these usable by you either

(i) include the bin directory on your 'path' or (ii) put links to bin or the executables in another directory or (iii) copy the executables into another directory

If you know how to do (i) or (ii) these are recommended. If more than one person is using these programs then (ii) is recommended, with the other directory being one that is already on everyone's path (e.g. maybe /usr/local/bin).

Azara help: INSTALL / W. Boucher / azara@bioc.cam.ac.uk