These instructions are for UNIX-like systems (including Linux, Cygwin
and MSys) only.  If Microsoft Developer Studio projects are
maintained for this package, you can find instructions at

  https://projects.coin-or.org/MSVisualStudio

**********************************************************************
***                         DOWNLOAD                               ***
**********************************************************************

You can obtain the source code for the Smi package in two ways:

1. Obtain the source directly from the COIN-OR subversion repository
   (recommended).  For this you needs the program 'svn' installed on
   your machine, and output of "svn --version" must contain 
   "handles 'https' scheme".

   Assuming that you want to download the code into a subdirectory
   "COIN-Smi", you type

   svn co https://projects.coin-or.org/svn/Smi/trunk Coin-Smi

2. Download the tarball from http://www.coin-or.org/Tarballs/Smi and
   extract it, for example, with

   gunzip Smi_2006Jun07.tgz
   tar xvf Smi_2006Jun07.tar

   (Here "2006Jun07" is of course replaced by the string in the
   tarball you downloaded.)

   More detailed download instructions can be found at

   https://projects.coin-or.org/BuildTools/wiki/user-download

**********************************************************************
***                        CONFIGURATION                           ***
**********************************************************************

Go into the directory that you just downloaded or extracted (e.g.,
Coin-Smi or Smi_2006Jun07).  Then you type

   ./configure

Note that you might have to specify additional options, in case you
don't want to use the default choices that configure makes (e.g.,
compilers).  Please visit

   https://projects.coin-or.org/BuildTools/wiki/user-configure

and the Smi Trac page

   https://projects.coin-or.org/Smi

for more information.

If everything went fine, you will see at the end of the output

   "Main configuration of Smi successful"

**********************************************************************
***                COMPILATION AND INSTALLATION                    ***
**********************************************************************

In the directory where you ran the configure script:

1. Compile the code by typing

   make

2. To test if the code works, you can type

   make test

3. To install the code, you type

   make install

   After this, you will find the executables, libraries and header
   files in the "bin", "lib" and "include" subdirectory, respectively.

More information on the compilation and installation can be found at

   https://projects.coin-or.org/BuildTools/wiki/user-compile

**********************************************************************
***                     USING THE LIBRARIES                        ***
**********************************************************************

Now you can link your own code with the installed libraries.  You can
find examples in the

   Smi/examples/

subdirectory, see also the information at

   https://projects.coin-or.org/BuildTools/wiki/user-examples



==== 8< ======================================================

From here on you find the original installation instructions for the
previous GNU Makefile build system.  Most details have changed, but
for now we keep it here so that possibly missing items might be found
here.

Prerequisites for installation:
- at the moment on (*)nix platforms you must use g++ 2.95.2 or higher.
- must use gnu make
- to make the documentation doxygen must be installed

Targets are put in subdirectories, whose name is derived from the
platform name (as returned by `uname`) and the optimization level
(e.g., Linux-g).

To build Smi library and unitTest
  - First build Osi library. See Osi/INSTALL below the COIN root
    directory.
  - Read and edit the top of Makefile to select
      - whether shared or static library should be built
      - optimization level
      - where the compiled library should be installed
      - which solvers you want to compile in.
  - 'make' to build and install the library.
  - 'make unitTest' to create the unitTest program. It will be placed
    in the target subdirectory.

  - 'make doc' to create the html documentation of the classes in the
    library and place them in doc/html.

To run Cmi unitTest
  - ./TARGET_SUBDIRECTORY/unitTest
    where TARGET_SUBDIRECTORY is the name of the subdirectory
    containing the unitTest executable.
