#-------------------------------------------------------------
#  building CLHEP
#-------------------------------------------------------------

You may build CLHEP as a complete package, starting from this 
top level directory, or you may build any package separately.

#-------------------------------------------------------------
#  platform specific issues
#-------------------------------------------------------------

This package requires autoconf 2.59 or later and automake 1.9.1 or later.
If you bootstrap, you will probably have to build these yourself.  
See "building autotools" below.

The new libtool no longer properly supports shared libraries for gcc 2.95.2.
If you build CLHEP with gcc 2.95.2, you must configure --disable-shared.

To build for Solaris CC, configure with CXX=CC CC=cc and use gmake.

On MacOSX, you need to define MACOSX_DEPLOYMENT_TARGET appropriately.  
For instance, set MACOSX_DEPLOYMENT_TARGET to "10.4" if you 
have MacOS 10.4 installed on your system. 

#-------------------------------------------------------------
# about linking
#-------------------------------------------------------------

CLHEP builds libraries for each package in addition to a single CLHEP library.
This alllows you to link with only the necessary parts of CLHEP.
We provide a "clheplib" script which gives the list of libraries to link, 
in the correct order.  The script can be embedded in a makefile.

   clheplib           - provides link list of ALL CLHEP libraries
   clheplib <package> - provides link list of ONLY those libraries 
                        needed to use <package>

#-------------------------------------------------------------
#  installing from a source code tar ball
#-------------------------------------------------------------

Unwind the source code tar ball in some relevant directory.
Autoconf and automake will aready have been run.  
Determine where the files will be installed.
Create a build directory that is NOT in the source code directory tree.

cd <build_directory>
<source_code_direcotry>/configure --prefix=<install_dir>
   (Note that files will be installed under /usr/local if you do not 
    specify a prefix.)
make
   (Build temporary copies of libraries and executables.)
make check
   (Run the tests.)
make install
   (Copy libraries, headers, executables, etc. to relevant 
    subdirectories under <install_dir>.)

#-------------------------------------------------------------
#  configure options
#-------------------------------------------------------------

A variety of options can be given to configure.  Below is a list 
of the options that you are likely to find most useful.

  --help                  provides a partial list of options
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [default is /usr/local]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [default is the same as PREFIX]
  --disable-shared        build only static libraries
  --disable-static        build only shared libraries   
  --enable-exceptions     use the CLHEP/Exceptions package
  --disable-exceptions    DO NOT use the CLHEP/Exceptions package
                          [--disable-exceptions is the default] 
 
#-------------------------------------------------------------
# building documents
#-------------------------------------------------------------

Documents are neither built nor installed automatically.  
Use the following commands to build and install documents:

   make docs
   make install-docs

#-------------------------------------------------------------
# building from cvs
#-------------------------------------------------------------

You will need current versions of automake, autoconf, and libtool.
See building autotools below.

cvs co CLHEP OR cvs co CLHEP/package

cd CLHEP[/package]
./bootstrap

Now continue with directions as if you unpacked a source code tarball.

#-------------------------------------------------------------
# building autotools
#-------------------------------------------------------------

If you do not have at least autoconf 2.59 and automake 1.9.1, you will 
need to build autoconf, automake, and libtool.  On some platforms, 
you may also need to build m4 and texinfo.

Download the relevant tarballs from gnu.org 
(http://www.gnu.org/software/autoconf/, http://www.gnu.org/software/automake/,
and http://www.gnu.org/software/libtool/)
Untar them in a common source code tree.
Decide whether you want to install them in /usr/local or your own
install directory.  If you use your own install directory, use

        --prefix=<install_dir> 

with configure.

For each autotool package:

     <source_code_dir>/configure [--prefix=<install_dir>]
     make
     make install

Make sure that <install_dir>/bin is at the front of your path.

#-------------------------------------------------------------
