Completed integration of documentation into charm cvs tree.
authorMilind Bhandarkar <milind@cs.uiuc.edu>
Thu, 31 Aug 2000 22:02:37 +0000 (22:02 +0000)
committerMilind Bhandarkar <milind@cs.uiuc.edu>
Thu, 31 Aug 2000 22:02:37 +0000 (22:02 +0000)
Added appropriate targets for super-install for making different types
(ps, pdf, html) of documentation.

18 files changed:
SUPER_INSTALL
doc/charm++/Makefile
doc/ck/Makefile
doc/cldb/Makefile
doc/converse/Makefile
doc/convext/Makefile
doc/f90charm/Makefile [new file with mode: 0644]
doc/f90charm/manual.tex [moved from doc/f90charm/f90charm-HOWTO with 84% similarity]
doc/install/Makefile
doc/libraries/Makefile
src/libs/Makefile
src/libs/ck-libs/Makefile
src/libs/ck-libs/barrier/Makefile
src/libs/conv-libs/Makefile
src/libs/conv-libs/master-slave/Makefile
src/libs/conv-libs/packlib/Makefile
src/libs/other/Makefile
src/scripts/Makefile

index 7fcbe7bde81b0e861ec9fca9ff8c1cd288353be9..5e6fc8f82f19e3cbe8b5e1c169f9402e30df271c 100755 (executable)
@@ -5,6 +5,7 @@ syntax() {
   echo 'Usage: SUPER-INSTALL <target> <version> [charmc-options ...]'
   echo ''
   echo 'targets: converse, charm++ libs ampi IDL tsm sm pvm sdag'
+  echo 'targets: doc ps-doc pdf-doc html-doc'
   echo ''
   echo 'versions: ' 
   echo `( cd src ; ls -1 | egrep -v '(^Common)|(^CVS)|(^QuickThreads)|(^ccs-client)' )`
index 57b669c9c901753d16fb72a042ba45d4b430ee6e..369bac787b28a473bf0fd3b504b115234d8830fe 100644 (file)
@@ -1,47 +1,36 @@
-TEXFILES= groups.tex ack.tex nodegroups.tex sdag.tex arrays.tex idl.tex seqobjs.tex inhertmplt.tex othercalls.tex intro.tex syntaxchange.tex chares.tex keywords.tex manual.tex messages.tex quiesce.tex further.tex readonly.tex modules.tex overview.tex comprundebug.tex
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
-ps: $(TEXFILES)
+all: ps pdf html
+
+ps:
        make clean
        touch index.tex
        latex manual.tex
-       bibtex manual
-       makeindex -o index.tex manual.idx
        latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/charm++.ps
 
-html: $(TEXFILES)
+html:
        make clean
+       touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/charm++
+       /bin/cp -R manual $(HDIR)/charm++
 
-pdf: $(TEXFILES)
+pdf:
        make clean
        touch index.tex
        pdflatex manual.tex
-       bibtex manual
-       makeindex -o index.tex manual.idx
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        pdflatex manual.tex
-       pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/charm++5.0v2.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/charm++5.0v2.ps
-       gzip /expand1/groupMosaic/distrib/charm++5.0v2.ps
-       chmod 664 /expand1/groupMosaic/distrib/charm++5.0v2.ps.gz
-       rm -f /expand1/groupMosaic/distrib/charm++5.0v2.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/charm++5.0v2.pdf
-       chmod 664 /expand1/groupMosaic/distrib/charm++5.0v2.pdf
-       rm -f /expand1/groupMosaic/html-manuals/charm++5.0v2/*
-       cp manual/* /expand1/groupMosaic/html-manuals/charm++5.0v2/
-       chmod 664 /expand1/groupMosaic/html-manuals/charm++5.0v2/*
-       chmod 775 /expand1/groupMosaic/html-manuals/charm++5.0v2
-
-all: ps pdf html install
+       /bin/cp manual.pdf $(PDFDIR)/charm++.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl
-
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
index ad2dedfb4219136815db3afa909315d7baec5766..f766a45103662eea65c9e16c539c8af84c829f36 100644 (file)
@@ -1,40 +1,36 @@
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
-TEXFILES=manual.tex ack.tex
+all: ps pdf html
 
 ps:
        make clean
+       touch index.tex
        latex manual.tex
        latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/ck.ps
 
 html:
        make clean
+       touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/ck
+       /bin/cp -R manual $(HDIR)/ck
 
 pdf:
        make clean
+       touch index.tex
        pdflatex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/kernel.manual.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/kernel.manual.ps
-       gzip /expand1/groupMosaic/distrib/kernel.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/kernel.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/kernel.manual.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/kernel.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/kernel.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/kernel.manual/*
-       cp manual/* /expand1/groupMosaic/html-manuals/kernel.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/kernel.manual/*
-
-all: ps pdf html install
+       /bin/cp manual.pdf $(PDFDIR)/ck.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl
-
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
index 817847a7963251abe00d94780095bc05e0b74ee5..0691f780eeb9cc20b9cc65d49ac365d45dcca32c 100644 (file)
@@ -1,34 +1,36 @@
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
+
+all: ps pdf html
+
 ps:
        make clean
+       touch index.tex
+       latex HowToLB.tex
+       latex HowToLB.tex
+       if [ -f HowToLB.idx ] ; then makeindex -o index.tex HowToLB.idx ; fi
        latex HowToLB.tex
        dvips -o HowToLB.ps HowToLB.dvi
+       /bin/cp HowToLB.ps $(PSDIR)/cldb.ps
 
 html:
        make clean
+       touch index.tex
        latex HowToLB.tex
        latex2html -local_icons HowToLB.tex
+       /bin/rm -rf $(HDIR)/cldb
+       /bin/cp -R HowToLB $(HDIR)/cldb
 
 pdf:
        make clean
+       touch index.tex
        pdflatex HowToLB.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/cldb.manual.ps.gz
-       cp HowToLB.ps /expand1/groupMosaic/distrib/cldb.manual.ps
-       gzip /expand1/groupMosaic/distrib/cldb.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/cldb.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/cldb.manual.pdf
-       cp HowToLB.pdf /expand1/groupMosaic/distrib/cldb.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/cldb.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/cldb.manual/*
-       cp HowToLB/* /expand1/groupMosaic/html-manuals/cldb.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/cldb.manual/*
-
-all: ps pdf html install
+       if [ -f HowToLB.idx ] ; then makeindex -o index.tex HowToLB.idx ; fi
+       pdflatex HowToLB.tex
+       /bin/cp HowToLB.pdf $(PDFDIR)/cldb.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl HowToLB.out
-
-veryclean: clean
-       rm -rf *.ps *.pdf HowToLB/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf HowToLB
index 1b00628ca1acd547606d039948a5389a1bfc9073..06337f8a4ad370e2e11f44fe88cbee4a72c12055 100644 (file)
-############################################################################
-# RCS INFORMATION:
-#
-#      $RCSfile$
-#      $Author$        $Locker$                $State$
-#      $Revision$      $Date$
-#
-############################################################################
-# DESCRIPTION:
-#
-############################################################################
-# REVISION HISTORY:
-#
-# $Log$
-# Revision 1.16  2000-06-22 22:38:00  milind
-# Minor fixes.
-#
-# Revision 1.15  2000/06/22 22:12:56  milind
-# made proper clean.
-#
-# Revision 1.14  2000/06/22 22:08:15  milind
-# Added a cleanup stage before each make.
-#
-# Revision 1.13  2000/06/22 15:59:44  milind
-# Removed libtemplate, as it has been overtaken by libraries manual.
-#
-# Revision 1.12  2000/06/22 14:31:02  milind
-# Made compatible with pdflatex as well.
-#
-# Revision 1.11  1999/07/27 21:04:39  jmwrght1
-# Filled in some of the CCS functions.  Changed Makefile and manual.tex to
-# generate the index.
-#
-# Revision 1.10  1999/07/15 23:24:06  jmwrght1
-# Added the chapter on CCS to the Converse manual.  At this point, it is
-# basically copied verbatim from the html file in the tech notes function.
-# I need to fix some of the tex code (still learning this stuff) and elaborate
-# on the explanations of various things.
-#
-# Revision 1.9  1996/11/18 16:55:50  milind
-# Made changes to the scheduler section to reflect the semantics of
-# CsdScheduler(0). Also, changed the Makefile to have targets ps, html,
-# install and all.
-#
-# Revision 1.8  1996/06/14 21:38:25  jyelon
-# This thing doesn't work at all.  Restructured.
-#
-# Revision 1.7  1995/11/15 18:01:22  brunner
-# Added cpvmacros.tex to Makefile so make co works.
-#
-# Revision 1.6  1995/11/01  22:04:21  milind
-# Added automatic generation of index.
-#
-# Revision 1.5  1995/10/30  16:06:49  milind
-# Added one more latex stage to remove undefined references.
-#
-# Revision 1.4  1995/10/10  21:40:41  jyelon
-# *** empty log message ***
-#
-# Revision 1.3  1995/09/21  21:42:21  milind
-# Added latex2html
-#
-# Revision 1.2  1995/09/21  15:37:33  milind
-# Added other tex files
-#
-# Revision 1.2  1995/09/21  15:37:33  milind
-# Added other tex files
-#
-# Revision 1.1  1995/09/20  16:34:32  brunner
-# Initial revision
-#
-#
-############################################################################
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
-TEXFILES=cmi.tex cpm.tex cpvmacros.tex index.tex ldb.tex manual.tex\
-msgmgr.tex queue.tex scheduler.tex simulator.tex threads.tex\
-thsync.tex ccs.tex
+all: ps pdf html
 
 ps:
        make clean
        touch index.tex
        latex manual.tex
        latex manual.tex
-       makeindex -o index.tex manual.idx
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/converse.ps
 
 html:
        make clean
        touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/converse
+       /bin/cp -R manual $(HDIR)/converse
 
 pdf:
        make clean
        touch index.tex
        pdflatex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        pdflatex manual.tex
-       makeindex -o index.tex manual.idx
-       pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/converse.manual.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/converse.manual.ps
-       gzip /expand1/groupMosaic/distrib/converse.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/converse.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/converse.manual.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/converse.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/converse.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/converse.manual/*
-       cp manual/* /expand1/groupMosaic/html-manuals/converse.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/converse.manual/*
-
-all: ps html pdf install
-
-clean: 
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc *~ index.tex manual.out
+       /bin/cp manual.pdf $(PDFDIR)/converse.pdf
 
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
+clean:
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
index f1d021c854a598599b72e8f13a02ebbf6779ca0e..1bfeedd19cc2635e7280c1f6d69d68c62a900bc0 100644 (file)
@@ -1,89 +1,36 @@
-############################################################################
-# RCS INFORMATION:
-#
-#      $RCSfile$
-#      $Author$        $Locker$                $State$
-#      $Revision$      $Date$
-#
-############################################################################
-# DESCRIPTION:
-#
-# This is a makefile.  It is used when you type ``make''.
-#
-############################################################################
-# REVISION HISTORY:
-#
-# $Log$
-# Revision 1.8  2000-06-22 22:38:03  milind
-# Minor fixes.
-#
-# Revision 1.7  2000/06/22 22:21:07  milind
-# Added table of contents to the PDF file, and also cleaned up the clean
-# target.
-#
-# Revision 1.6  2000/06/22 14:39:33  milind
-# Made compatible with pdflatex as well.
-#
-# Revision 1.5  2000/02/24 07:06:29  milind
-# Added new Crn functionality descriptions. And added an index to the
-# manual.
-#
-# Revision 1.4  2000/02/20 17:36:52  milind
-# Added -local_icons option to latex2html.
-#
-# Revision 1.3  1997/08/18 18:25:55  jyelon
-# *** empty log message ***
-#
-# Revision 1.2  1997/07/26 16:04:45  jyelon
-# Added stuff.
-#
-#
-############################################################################
-
-TEXFILES=cmi.tex cpm.tex cpvmacros.tex index.tex ldb.tex manual.tex\
-msgmgr.tex queue.tex scheduler.tex simulator.tex threads.tex\
-thsync.tex pthreads.tex
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
+all: ps pdf html
 
 ps:
        make clean
        touch index.tex
        latex manual.tex
-       makeindex -o index.tex manual.idx
        latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/convext.ps
 
 html:
        make clean
        touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/convext
+       /bin/cp -R manual $(HDIR)/convext
 
 pdf:
        make clean
        touch index.tex
-       latex manual.tex
-       makeindex -o index.tex manual.idx
        pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/convext.manual.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/convext.manual.ps
-       gzip /expand1/groupMosaic/distrib/convext.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/convext.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/convext.manual.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/convext.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/convext.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/convext.manual/*
-       cp manual/* /expand1/groupMosaic/html-manuals/convext.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/convext.manual/*
-
-all: ps html pdf install
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
+       pdflatex manual.tex
+       /bin/cp manual.pdf $(PDFDIR)/convext.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl manual.out
-
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
diff --git a/doc/f90charm/Makefile b/doc/f90charm/Makefile
new file mode 100644 (file)
index 0000000..ce2df86
--- /dev/null
@@ -0,0 +1,36 @@
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
+
+all: ps pdf html
+
+ps:
+       make clean
+       touch index.tex
+       latex manual.tex
+       latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
+       latex manual.tex
+       dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/f90charm.ps
+
+html:
+       make clean
+       touch index.tex
+       latex manual.tex
+       latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/f90charm
+       /bin/cp -R manual $(HDIR)/f90charm
+
+pdf:
+       make clean
+       touch index.tex
+       pdflatex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
+       pdflatex manual.tex
+       /bin/cp manual.pdf $(PDFDIR)/f90charm.pdf
+
+clean:
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
similarity index 84%
rename from doc/f90charm/f90charm-HOWTO
rename to doc/f90charm/manual.tex
index 305c1c9e45c04cd413c8c7ca2299e89953db9701..0688797bca46b2762e05135a606a9209e1fd59b9 100644 (file)
@@ -1,13 +1,36 @@
-================================================================
-                      Fortran90 on Charm HOWTO
-================================================================
+\documentclass[11pt]{article}
+
+\newif\ifpdf
+\ifx\pdfoutput\undefined
+  \pdffalse
+\else
+  \pdfoutput=1
+  \pdftrue
+\fi
+
+\ifpdf
+  \pdfcompresslevel=9
+  \usepackage[pdftex,colorlinks=true,plainpages=false]{hyperref}
+\else
+\fi
+
+\pagestyle{headings}
+
+\title{Fortran90 Bindings for Charm++}
+\author{Jayant Desouza}
+
+\begin{document}
+
+\maketitle
 
 To interface Fortran90 to Charm and thus obtain a parallel version of
 your program you need to do the following things:
-1. Write your F90 program with some constraints
-2. Write a Charm Interface file (extension .ci)
-3. Compile and Link with Charm's Fortran library
-4. Run it !
+\begin{enumerate}
+\item Write your F90 program with some constraints
+\item Write a Charm Interface file (extension .ci)
+\item Compile and Link with Charm's Fortran library
+\item Run it !
+\end{enumerate}
 
 This is best explained with an example: the hello program.  It is a
 simple ring program.  When executed, an array of several parallel
@@ -18,10 +41,12 @@ chares are saying hello. :) The Fortran main() subroutine starts off
 the events.  And the SayHi() subroutine does the say-hello and
 forward.
 
-================ 1.1 ================
+\section{Writing F90 Program}
 To start, you need to create a Fortran Module to represent a chare,
 e.g. <ChareName>Mod.
 
+\begin{verbatim}
+
       ## Just replace Hello throughout with your chare's name. ##
       ## and add your chare's personal data below where indicated ##
       ## Everything else remains the same ##
@@ -38,10 +63,12 @@ e.g. <ChareName>Mod.
       END TYPE
 
       END MODULE
+\end{verbatim}
 
 In the Fortran file you must write an allocate funtion for this chare
-with the name: <ChareName>_allocate
+with the name: <ChareName>\_allocate
 
+\begin{verbatim}
       ## Just replace Hello throughout with your chare's name. ##
       ## Everything else remains the same ##
       SUBROUTINE Hello_allocate(objPtr, aid)
@@ -52,22 +79,24 @@ with the name: <ChareName>_allocate
       allocate(objPtr%obj)
       objPtr%aid = aid;
       END SUBROUTINE
+\end{verbatim}
 
 If you have written code for a chare array "Hello", as above, you will
 have the following subroutine available to you:
 
-  <ChareName>_CkNew(integer n, integer*8 aid)
+  \verb+<ChareName>\_CkNew(integer n, integer*8 aid)+
      This function creates a chare array at runtime
      where n is the number of items in the array, and
            aid is the array ID which is returned to you.
 
 We will see an example of using this function below.
 
-================ 1.2 ================
+\section{Writing Charm++ Interface File}
+
 Now that you have the chare, you need to write one or more ENTRY
 POINTs for it.  This is nothing but a Fortran subroutine that uses the
 above module.
-
+\begin{verbatim}
       ## p1, p2, etc represent user parameters
       ## the "objPtr, myIndex" stuff is required in every Entry Point.
       ## CkExit() must be called by the chare to terminate.
@@ -85,22 +114,23 @@ above module.
       else 
           call CkExit()
       endif
-
+\end{verbatim}
 Once you have written code for an Entry Point, you now have available
 to you the following subroutine:
-
+\begin{verbatim}
    SendTo_<ChareName>_<SubroutineName>(integer*8 aid, integer myIndex,
                           other parameters ....)
      where aid is the target chare array ID
            myIndex is the specific within the array
                    we wish to send a message to
            other parameters are the parameters in the above function.
+\end{verbatim}
 
-================ 1.3 ================
+\section{Compile and Link}
 You must have a Fortran main() subroutine where execution starts.
 Typically this main function will create a chare array and send a
 message to one of its members to get the computation started.
-
+\begin{verbatim}
       SUBROUTINE main()
       USE HelloMod
       integer i
@@ -113,15 +143,15 @@ message to one of its members to get the computation started.
       call SendTo_Hello_SayHi(aid, 0, 1);
 
       END
-
-================ 2 ================
+\end{verbatim}
+\section{Writing Charm++ Interface File}
 Now we move on to Step 2, the Charm Interface file.  This file must
 have a different name from the Fortran file, and must have an
 extension of .ci, e.g. if the above Fortran file is hellof.f90, this
 file could be called hello.ci.  Basically, its purpose is to tell
 Charm what you've done in the Fortran file, since Charm cannot read
 Fortran as of now.
-
+\begin{verbatim}
       ## Just replace Hello throughout with your chare's name. ##
       ## and add your chare's entry points below where indicated ##
       ## Everything else remains the same ##
@@ -143,18 +173,19 @@ Fortran as of now.
 
         };              
       };
-
+\end{verbatim}
 If the function has more parameters: e.g. A Fortran function FF(int,
 int, long) in module H, would be described in the .ci file as:
+\begin{verbatim}
   message MarshalParams { int, int, long };
   array H {
     entry H();
     entry void FF(MarshalParams *);
   }
+\end{verbatim}
 As mentioned above, the message must have a unique name.
 
-================ 3 ================
-
+\section{Compile and Link}
 Lastly, you need to compile and link the Fortran program with the
 Charm program as follows: (Let's say you have written hellof.f90, and
 hello.ci)
@@ -177,7 +208,7 @@ hello.ci)
     will link hellof.o, helloHelper.o and Charm's Fortran library
     to create your executable program 'hello'
 
-================ 4 ================
+\section{Run Program}
 
 Finally, to run the program, make sure you have a nodelist file called
 "nodelist" and containing, for example,
@@ -190,4 +221,4 @@ and then type
 ./conv-host +p2 hello
 
 which will run 'hello' on two virtual processors.
-
+\end{document}
index 6a1c38cc268c6c4e2624f2fe0ecbe6149e448ce0..57bd4a42e87324bc2b4fe4e592b8ea9a54b97c94 100644 (file)
@@ -1,86 +1,36 @@
-############################################################################
-# RCS INFORMATION:
-#
-#      $RCSfile$
-#      $Author$        $Locker$                $State$
-#      $Revision$      $Date$
-#
-############################################################################
-# DESCRIPTION:
-#
-############################################################################
-# REVISION HISTORY:
-#
-# $Log$
-# Revision 1.9  2000-06-22 22:38:05  milind
-# Minor fixes.
-#
-# Revision 1.8  2000/06/22 22:21:08  milind
-# Added table of contents to the PDF file, and also cleaned up the clean
-# target.
-#
-# Revision 1.7  2000/06/22 15:04:53  milind
-# Made compatible with pdflatex as well.
-#
-# Revision 1.6  1999/07/09 18:18:39  milind
-# Updated for new release 5.0.
-#
-# Revision 1.5  1997/08/18 18:37:34  jyelon
-# *** empty log message ***
-#
-# Revision 1.4  1996/11/14 18:41:13  milind
-# Modified to reflect the changes made to the nodesfile format.
-# Also, changed the Makefile to install into proper directories.
-#
-# Revision 1.3  1995/11/16 19:05:03  milind
-# *** empty log message ***
-#
-# Revision 1.2  1995/10/31  22:33:53  milind
-# Changed to reflect the new structure of the manual.
-#
-# Revision 1.1  1995/09/20  16:26:49  brunner
-# Initial revision
-#
-# Revision 1.2  1995/09/20  16:19:51  brunner
-#
-############################################################################
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
-TEXFILES=manual.tex install.tex compile.tex run.tex
+all: ps pdf html
 
 ps:
        make clean
+       touch index.tex
        latex manual.tex
        latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/install.ps
 
 html:
        make clean
+       touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/install
+       /bin/cp -R manual $(HDIR)/install
 
 pdf:
        make clean
+       touch index.tex
        pdflatex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/install.manual.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/install.manual.ps
-       gzip /expand1/groupMosaic/distrib/install.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/install.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/install.manual.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/install.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/install.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/install.manual/*
-       cp manual/* /expand1/groupMosaic/html-manuals/install.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/install.manual/*
-
-all: ps pdf html install
+       /bin/cp manual.pdf $(PDFDIR)/install.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl
-
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
index a528432e07f437b5fd71fb06ca3d0cda1c7536a7..28441884e0e9a9e7552947de4c04a190e76e5618 100644 (file)
@@ -1,46 +1,36 @@
-TEXFILES=manual.tex intro.tex irecv.tex
+PSDIR=../../../doc/ps
+PDFDIR=../../../doc/pdf
+HDIR=../../../doc/html
 
-ps: $(TEXFILES)
+all: ps pdf html
+
+ps:
        make clean
        touch index.tex
        latex manual.tex
-       bibtex manual
-       makeindex -o index.tex manual.idx
        latex manual.tex
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        latex manual.tex
        dvips -o manual.ps manual.dvi
+       /bin/cp manual.ps $(PSDIR)/libraries.ps
 
-html: $(TEXFILES)
+html:
        make clean
+       touch index.tex
        latex manual.tex
        latex2html -local_icons manual.tex
+       /bin/rm -rf $(HDIR)/libraries
+       /bin/cp -R manual $(HDIR)/libraries
 
-pdf: $(TEXFILES)
+pdf:
        make clean
        touch index.tex
        pdflatex manual.tex
-       bibtex manual
-       makeindex -o index.tex manual.idx
+       if [ -f manual.idx ] ; then makeindex -o index.tex manual.idx ; fi
        pdflatex manual.tex
-       pdflatex manual.tex
-
-install:
-       rm -f /expand1/groupMosaic/distrib/libraries.manual.ps.gz
-       cp manual.ps /expand1/groupMosaic/distrib/libraries.manual.ps
-       gzip /expand1/groupMosaic/distrib/libraries.manual.ps
-       chmod 664 /expand1/groupMosaic/distrib/libraries.manual.ps.gz
-       rm -f /expand1/groupMosaic/distrib/libraries.manual.pdf
-       cp manual.pdf /expand1/groupMosaic/distrib/libraries.manual.pdf
-       chmod 664 /expand1/groupMosaic/distrib/libraries.manual.pdf
-       rm -f /expand1/groupMosaic/html-manuals/libraries.manual/*
-       cp manual/* /expand1/groupMosaic/html-manuals/libraries.manual/
-       chmod 664 /expand1/groupMosaic/html-manuals/libraries.manual/*
-
-all: ps pdf html install
+       /bin/cp manual.pdf $(PDFDIR)/libraries.pdf
 
 clean:
-       rm -f *.ilg *.aux *.log *.dvi *.idx *.toc index.tex *.blg *.bbl
-
-veryclean: clean
-       rm -rf *.ps *.pdf manual/
-
+       /bin/rm -f *.ps *.pdf *.ilg *.aux *.log *.dvi *.idx *.toc 
+       /bin/rm -f index.tex *.blg *.bbl
+       /bin/rm -rf manual
index 62a83babccb664a7db7edcefe6b043427c4759ee..b6a73c12aa3f4afc8774889d80fce56b2cd856db 100644 (file)
@@ -10,3 +10,8 @@ charmlibs:
 
 otherlibs:
        cd other; make all OPTS='$(OPTS)'
+
+clean:
+       cd conv-libs; make clean
+       cd ck-libs; make clean
+       cd other; make clean
index 439559a0e13b5ef1e7e2bc585e6a5fae482ec737..51b5160c623d989d381f4e290c470fd0183350ac 100644 (file)
@@ -4,3 +4,9 @@ all:
        cd barrier; make all OPTS='$(OPTS)'
        cd irecv; make all OPTS='$(OPTS)'
        cd fem; make all OPTS='$(OPTS)'
+
+clean:
+       cd barrier; make clean
+       cd irecv; make clean
+       cd fem; make clean
+
index 5605379060c5b2bbe0ff9cf292b47695e441e788..cc0ce441049870d2c5d67d7773b6ce6f5f263652 100644 (file)
@@ -18,3 +18,5 @@ $(CDIR)/include/Barrier.decl.h: Barrier.decl.h
 $(CDIR)/include/barrier.h: barrier.h
        /bin/cp barrier.h $(CDIR)/include
 
+clean:
+       rm -f *.decl.h *.def.h *.o libbarrier.a
index 10b5b1e1fa177e28294542a7810f67a63e71ca3f..ab7faebc688011d261a396d087c4b8ca93e09375 100644 (file)
@@ -7,3 +7,9 @@ all:
        cd metis; make all OPTS='$(OPTS)'
        cd ddt; make all OPTS='$(OPTS)'
 
+clean:
+       cd master-slave; make clean
+       cd commlib; make clean
+       cd packlib; make clean
+       cd metis; make clean
+       cd ddt; make clean
index 300fdc7a99adf4535fb4b88e333e6d9e61a23eb0..87558f4fb6e962fec204580e75a50d5c30e1dcc9 100644 (file)
@@ -9,3 +9,6 @@ libcms.a: cms.o
 
 cms.o: cms.c
        $(CHARMC) -c cms.c
+
+clean:
+       rm -f *.o libcms.a
index ec32b361bc1ee0b25140db7e1d8f6b32fb90d293..a3cba5c99d530cc30cfcc549575357d6bc5093b6 100644 (file)
@@ -16,3 +16,6 @@ packc.o: packc.C PackLib.h
 
 packf77.o: packf77.C PackLib.h
        $(CHARMC) -c packf77.C
+
+clean:
+       rm -f *.o libpacklib.a 
index 1939e44ee3146c20564489f65fc44f02018a84f7..55be721400ea5cfc08bdfaa51e6bbfdc322431f3 100644 (file)
@@ -2,3 +2,6 @@ CHARMC=../../../bin/charmc $(OPTS)
 
 all:
        @echo 'Nothing to do here right now'
+
+clean:
+       @echo 'Nothing to do here right now'
index 342bb3724acf2ab19cdb81e2237824d8e21a3cad..628c64bb04d12922a33d5bb9ff284a5de2c3d585 100644 (file)
@@ -8,6 +8,7 @@
 #     * ITC++ Translator
 #     * Charm++ IDL Translator
 #     * Languages
+#     * Documentation
 # 
 # This Makefile is common to all machines.  This works because the charmc
 # is smart enough to "conceal" the differences between machines.  charmc
@@ -23,7 +24,7 @@
 
 SHELL=/bin/sh
 
-all: charm++ libs ampi IDL tsm sm pvm sdag
+all: charm++ libs ampi IDL tsm sm pvm sdag doc
 
 charm++: converse libck.a charmxi
 
@@ -62,6 +63,18 @@ test-all: all
 test-converse: converse
        cd ../pgms ; make test-converse  OPTS='$(OPTS)'
 
+ps-doc: basics
+       cd doc ; make ps
+
+pdf-doc: basics
+       cd doc ; make pdf
+
+html-doc: basics
+       cd doc ; make html
+
+doc: basics
+       cd doc ; make all
+
 CHARMC=../bin/charmc $(CHARMOPTS) $(OPTS)
 
 SEQCHARMC=../bin/charmc -seq $(CHARMOPTS)
@@ -109,6 +122,7 @@ dirs+sources:
        rm -rf ../bin ; mkdir ../bin
        rm -rf ../lib ; mkdir ../lib
        rm -rf ../pgms
+       rm -rf ../doc ; mkdir ../doc
        ../../src/Common/scripts/gatherflat ../../src/Common/scripts .
        ./gatherflat ../../src/Common/conv-core        .
        ./gatherflat ../../src/Common/conv-ldb         .
@@ -128,6 +142,7 @@ dirs+sources:
        ./gatherflat ../../src/Common.`cat .gdir`      .
        ./gatherflat ../../src/`cat .vdir`             .
        ./gathertree ../../pgms ../pgms
+       ./gathertree ../../doc doc
        rm -f .vdir .gdir
        touch dirs+sources
 
@@ -991,6 +1006,8 @@ clean:
        rm -f core *.o
        rm -f core #*#
        rm -f core *~
+       ( cd doc; make clean )
+       (cd libs; make clean )
 
 veryclean:
        rm -rf ../bin
@@ -998,6 +1015,7 @@ veryclean:
        rm -rf ../src
        rm -rf ../pgms
        rm -rf ../include
+       rm -rf ../doc
        mv Makefile .Makefile
        rm -rf [a-z]* [A-Z]*
        mv .Makefile Makefile