INSTALL

This file is contains installation instructions for the
STEP Class Library.

These installation requires that you have the following software
available:

- C and C++ compilers    (only gcc has been tested recently)
- bison, byacc, or yacc  (only bison has been tested recently)
- flex or lex            (only flex has been tested recently)
- CMake
- mingw                  (only on Windows)

--------------------
Installation
--------------------

* Known to work on Linux, OSX, and Windows

* Build system uses CMake now: configure, Makefile, and all
  autotools files have been removed, as has mkProbe.

* To build:
  cd scl
  mkdir build
  cd build
  cmake ..
  make

* Build options (append to the 'cmake ..' line):
  -DBUILD_SCHEMAS="path/to/schema.exp;path/to/schema2.exp"
    - this generates c++ for the schema, and compiles it into a
      library. Also works with directories, as long as each dir only
      has one express file.
    - multiple files/directories are separated by semicolons
    - this also builds a 'p21read' program, which reads one step file
      and writes another. It may change whitespace or remove comments;
      otherwise, the input and output files should be identical. If
      they are not identical, either the file does not match the
      schema, or SCL generated incorrect source code.
  -DBUILD_SCHEMAS=ALL
    - Added to make use of ctest easier. If BUILD_SCHEMAS == ALL,
      then CMake adds each *.exp file found in data/.
  -DCMAKE_BUILD_TYPE=Release
    - this causes binaries to be built without debugging information
    - without this, cmake defaults to a Debug build
