------------------------------------------------------------------------------
--                                                                          --
--                           POLYORB COMPONENTS                             --
--                                                                          --
--         Copyright (C) 1999-2004 Free Software Foundation, Inc.           --
--                                                                          --
-- PolyORB is free software; you  can  redistribute  it and/or modify it    --
-- under terms of the  GNU General Public License as published by the  Free --
-- Software Foundation;  either version 2,  or (at your option)  any  later --
-- version. PolyORB is distributed  in the hope that it will be  useful,    --
-- but WITHOUT ANY WARRANTY;  without even the implied warranty of MERCHAN- --
-- TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public --
-- License  for more details.  You should have received  a copy of the GNU  --
-- General Public License distributed with PolyORB; see file COPYING. If    --
-- not, write to the Free Software Foundation, 59 Temple Place - Suite 330, --
-- Boston, MA 02111-1307, USA.                                              --
--                                                                          --
-- As a special exception,  if other files  instantiate  generics from this --
-- unit, or you link  this unit with other files  to produce an executable, --
-- this  unit  does not  by itself cause  the resulting  executable  to  be --
-- covered  by the  GNU  General  Public  License.  This exception does not --
-- however invalidate  any other reasons why  the executable file  might be --
-- covered by the  GNU Public License.                                      --
--                                                                          --
--                  PolyORB is maintained by AdaCore.                       --
--                     (email: sales@adacore.com)                           --
--                                                                          --
------------------------------------------------------------------------------

This file details the compilation and installation of PolyORB.

For more details about supported platforms or platform specific
information, please refer to PolyORB User's Guide.

Build requirements
------------------

Ada 95 compiler:
  GNAT Pro 5.02a1 or later
  GCC 4.0.2       or later

Optional: XML/Ada (http://libre.adacore.com/xmlada/) if you want to
build the SOAP protocol personality.

Note: per construction, the macro 'configure' uses to find your GNAT
compiler looks first to the executables 'gnatgcc', then 'adagcc' and
finally to 'gcc' to find out which Ada compiler to use. You should be
very careful with your path and executables if you have multiple GNAT
versions installed. See below explanations on the ADA environment
variable if you need to override the default guess.

Build instructions
------------------

NOTE: Developers building PolyORB from the version control repository
who need to rebuild the configure and Makefile.in files should use the
script support/reconfig for this purpose. This should be done after
each update from the repository. In addition to the requirements
above, they will need autoconf 2.57 or newer, automake 1.6.3 or
newer, and libtool 1.5.8 or newer.

To install PolyORB, execute:

  % ./configure [some options]
  % make              (or gmake if your make is not GNU make)
  % make install      (ditto)

This will install files in standard locations.

If you want to choose another prefix than /usr/local, give configure a
--prefix=whereveryouwant argument.

Note: at this time, you MUST use GNU make to compile this software.

Available options for the 'configure' script include:

  --with-appli-perso="...": application personalities to build
      Available personalities: CORBA, DSA, MOMA
      e.g.   --with-appli-perso="corba moma" to build both the CORBA 
             and MOMA personalities

  --with-proto-perso="...": personalities to build
      Available personalities: GIOP, SOAP, SRP
      e.g.   --with-proto-perso="giop soap" to build both the GIOP 
             and SOAP personalities

  --with-corba-services="...": CORBA COS services to build
      Available services: event, ir, naming, notification, time
      e.g.  --with-corba-services="event naming" to build only
      COS Event and COS Naming.	

  --with-openssl[=ARG]: build SSL support and SSL dependent features,
    including the IIOP/SSLIOP personality

  --help: list all options available

By default, only the CORBA and GIOP personalities are built, no CORBA
Services are built.

  --enable-shared: build shared libraries.

  --enable-debug:  enable debugging information generation and supplementary
                   runtime checks.

The following environment variables can be used to override configure's
guess at what compilers to use:
  CC:  the C compiler
  ADA: the Ada 95 compiler (e.g. gcc, gnatgcc or adagcc)

For example, if you have two versions of GNAT installed and available
in your PATH, and configure picks the wrong one, you can indicate
what compiler should be used with the following syntax:

ADA=/path/to/good/compiler/gcc ./configure [options]

Additional instructions for cross platforms
-------------------------------------------

The RANLIB environment variable must be set to the path of the
cross ranlib prior to running configure with the appropriate --target
option.

Only one PolyORB installation (native or cross) is currently possible
with a given --prefix. If both a native and a cross installation are
needed on the same machine, distinct prefixes must be used.
