
The distribution consists of the following packages:

	(a)   tcl 7.3 (John Ousterhout: extensible tcl shell)
	(b)*  dbug (Fred Fish: debug library)
	(c)*  xpm3.2g (Arnaud Le Hors: pixmap library)
	(d)*  plotter (Peter Klingebiel et.al.: plotter widget set)
	(e)*  XmGraph (Douglas Young: Motif Graph Widget)
	(f)   src (ours: wafe - user front end using athena widgets)
	(g)   libhtmlw (XMosaic's hypertext widget (HTML))
	(h)   apps (ours: sample application programs)

The packages marked with * are optional.  (a) to (e) are prerequesistes
of (f) which is a prerequesite of (h).  For many application programs
in (h) you will need perl 4, which you can obtain from every good
archive server (such as ftp.uu.net or wuarchive.wustl.edu).

Before you build Wafe and its components, check out which packages
you will need or which packages you can build. In the current state,
you can either build a Xaw Wafe binary or a OSF/Motif Wafe binary
(called mofe). (e) will be only possible when you have OSF/Motif with
include files and libraries installed.

Certain steps below can be omitted in cases where the libraries are 
already installed (eg. a, b, c are unmodified redistributions; 
d, e and g contain fixes and enhancements over the original 
distributions)

HOW TO BUILD WAFE:

	-  choose a directory where you want to build wafe 
	   and its application programs

			csh
			mkdir wafe
			cd wafe
			setenv WAFE `pwd`
			gunzip < ../wafe-0.96.tar.gz | tar -xvf -

           Note: some systems might prefer "xvf" instead of "-xvf"
                 as option of tar. 

	   Steps (a)-(d) can be done in parallel.

	-  building (a): tcl 7.3

			cd $WAFE/tcl7.3
			more README
			./configure

                check the variable TCL_LIBRARY whether it points
                to writable directory

			make
                        make install-libraries

		you might have to delete the declaration of
		open() in tclUnix.h. 


	-  building (b): dbug-library
		
			cd $WAFE/dbug ; make lib& 


	-  building (c): xpm-library
		
			cd $WAFE/xpm-3.2g
			xmkmf
			make Makefiles
			cd lib
			make

	-  building (d): plotter widget
			cd $WAFE/plotter/At

		before issuing xmkmf you might want to modify
		some settings in the Imakefile.

			xmkmf
			make

                The full distribution of the plotter widget set can be
		obtained from

			ftp.wu-wien.ac.at:pub/src/X11/plotter.v60.README
			ftp.wu-wien.ac.at:pub/src/X11/plotter.v60.tar.Z
			ftp.wu-wien.ac.at:pub/src/X11/plotter.v6b.doc.tar.Z
			ftp.wu-wien.ac.at:pub/src/X11/plotter.v6b.afm.tar.Z

                or other sources.

	-  building (e): XmGraph Widget

			cd $WAFE/XmGraph

		You will have to edit the Makefile to fill in
		eg. the location of OSF/Motif include files on your site.

			make libgraph.a

	- building (f): wafe src

			cd $WAFE/src

		Before issuing xmkmf you might want to modify
		some settings in the Imakefile. The distributed
                Imakefile is set up to use the plotter widgets and 
                Xaw3d (Athena Widgets with 3d-effects). The source
                of the tested Xaw3d library can be ftped from 

			ftp.wu-wien.ac.at:pub/src/X11/Xaw3d-0.6A.tar.Z 

                Several patches for Xaw3d can be found in

                        ftp.wu-wien.ac.at:pub/src/X11/wafe/Xaw3d-fixes.tar.gz

                some of these fixes are essential (fixes for the Layout
                widget), some fixes make things prettier (nicer shadows),
                some fixes introduce new functionality (eg. for the
                clock widget).

		If you are building the OSF/Motif version of Wafe (mofe),
		you will have to edit several parameters in the
		Imakefile. You will have to set
			#define MOTIF11
                or 
			#define MOTIF12
                depending on which OSF/Motif version is installed.
                If one of the MOTIF flags are set, ATHENA is 
                automatically unset.

		I have build mofe originally on a DECstation 5000/200,
		where i am using X11R5. Since the OSF/Motif libraries
		provided by DEC are based on X11R4, i have to use
		separate X libraries, as well as separate Plotter Widget
		libraries and so on. That's why there are so many 
		MOTIF flags in the Imakefile.

                Check the variable WAFELIB in the Imakefile, which
                should point to a place where wafe specific libraries
                (bitmaps, scripts etc) whould be placed.

		When you are finished with your setup, issue the following 
		commands:

			xmkmf
			make
			strip wafe
			make install

                If you get an error message during compile that
                Layout.h is not found, the Imakefile is configured
                to use the Layout widget, but the Layout widget is
                not found. Most likely, you do not have Xaw3d
                installed.

                When HTML is specified in the Imakefile, libhtml.a
                (Athena version) or libm-htmlw.a (Motif version) is
                compiled during the this step. 

                As shipped -DMOTIF_EDITRES is turned on, which will
                allow to use the editres protocoll with mofe
                applications. If you compile a MOTIF version with an X
                Toolkit which is older than X11R5 you will have the
                remove this flag.

                The tcl7.3 version included in the Wafe distribution
                is a complete unmodified version from a tcl archive (i
                think i got it from sprite the day it came out). Wafe
                does NOT NEED ANY modifications on tcl. Sure, if you
                have a modified (or patched) version of tcl 7.3 you
                should be able to use it. Some people mentioned to me
                that they have built Wafe together with extended tcl
                (tclX, it was in the times of tcl 6.7).


	- building (h): wafe apps

			cd $WAFE
			gunzip < wafeapps.tar.gz | tar -xvf -
			cd apps

		You can choose whether you prefer a 'local
		installation' (i.e. in your home directory) or
		a global installation (typically in /usr/bin/X11 and
		/usr/lib/X11). if LOCAL is defined in the Imakefile,
		parms.local are used, otherwise parms.global.
		Modify the appropriate parms.xxxxx file. if the
		WAFELIB parameter is modified, the environment
		variable WAFELIB can still be used to use a wafe 
                library on a nonstandard location.

			xmkmf
			make Makefile
			make Makefiles
			make install

		if you can write to the directory, where your man
		pages are installed you might issue

			make install.man
			rehash

		If everything works, you might try to answer the
		questions in
			
			xwafemc -l english

		provided, you have perl on your system. If you have 
		trouble with fonts etc, read the manpage of
		"wafeapp". To see examples in various languages
		check the directory

			$WAFE/apps/lang/

		A postscript version of the documentation 
		(man-pages+handbook) and a copy of our Usenix paper
		can be found in 

			$WAFE/apps/hardcopy/

		you will find additional programs in 

			$WAFE/apps/contrib/

                and small sample scripts for beginners in 
 
			$WAFE/src/tcl/


Good luck!



    DIRECTORY STRUCTURE

            .../wafe
                    README
                    COPYRIGHT
                    INSTALLATION
                    src/
                            genc
                            wafe.c
                            Imakefile
                            wafe.man
                            wafedoc.tex
			    tcl/
				...
                            ...
                    apps/
                            Imakefile
                            wafe.config
                            wafeapp.man
                            hardcopy/
                                    ...
                            mail/
                                    Imakefile
                                    ...
                            mail/
                                    Imakefile
                                    ...
                            news/
                                    Imakefile
                                    ...
                            ftp/
                                    Imakefile
                                    ...
                            monitoring/
                            ...
                    xpm-3.2g/
                            ...
                    tcl-7.3/
                            ...
                    dbug/
                            ...
                    libhtmlw/
                            ...

