
  Installation and building instructions for the Colorer-take5 library.


  1. Requirements

    a. ANSI C++ compiler.
       By default, build files includes support for
       BCC5.5, VC6/VC7, Cygwin, Linux/Unix GCC, MacOS GCC compilers,
       used to build library binaries from source codes.
       Generally, this is the main and sole requirement.

    b. Doxygen - documentation system for C++ sources (http://www.doxygen.org).
       Used to extract documentation from source files.

    c. Apache ANT tool (http://ant.apache.org), version 1.5.1 or later.
       Used to automate build process, describes tasks for documentation generation,
       compilation, xml transformations and redistributable archives creation.

    d. Sun JDK 1.4.1 or later.
    e. XML and XSLT processors (included in JDK 1.4.1 distribution).
       Required by ANT and used for compilation of the Eclipse plugin,
       generation of javadoc documentation and HRC codes.
    f. FOP package, used to generate library documentation in PDF format.
    g. Eclipse platform jar files to build EclipseColorer plugin.
    i. Perl binaries to build some of the HRC sources.

    NOTE: You can build Colorer Library binaries without JDK and ANT, using
          makefiles directly. In this case you have to manually collect all
          the files, required for proper library working.


  2. Building

    a. To build all variants of library distribution you have to
       simply call ``ant all'' in the colorer's root directory.
       This should call ANT build scripts and generate ZIP files
       with full library distribution, compact forms of the
       FAR Manager plugin and the Eclipse plugin.

    b. Generally, before running ANT you have to configure build process
       to achieve proper generation and compilation. All configuration
       is placed in global 'build.properties' file. You can edit this
       file directly, or create 'build.user.properties' file with
       some properties, redefined there.

    c. First of all, you'll have to choose your platform for compilation of
       the native C++ libraries. You can do this with 'platform' property.

    d. Next, you need to fix all the paths, placed in this file. In particular
       you must have:
          d.1. Some XSD files (MathML, DocBook, XHTML).
               http://www.w3.org/Math/XMLSchema/
               http://www.oasis-open.org/committees/docbook/xmlschema/1.0b1/
               http://www.w3.org/TR/xhtml1-schema/
               By default, these files are linked to their online versions.
          d.2. Doxygen documentation generation tool (doxygen.exe on win32).
               http://www.doxygen.org/
          d.3  Norman's Walsh DocBook XSL Transformations.
               http://docbook.sf.net/
          d.4. Apache FOP processor.
               http://xml.apache.org/fop/
       If some of these resources are unavailable, you can tell colorer
       to ignore appropriate tasks, setting 'fail-on-bad-paths' into 'false'.
       In this case some of the build tasks would be ignored.
       
    e. When building Eclipse plugin, you need to specify
       'eclipse.dir' property, pointing to your eclipse installation
       directory. Also, when building plugin's native part, you must
       have JAVA_HOME environment variable pointing to your JDK installation.

    f. You can use the next targets with ANT:

       ``ant library''         - Full library distribution.
       ``ant library-linux''   - Library unix package version.
       ``ant eclipseplugin''   - Eclipse IDE plugin.
       ``ant farplugin''       - FAR Manager plugin.
       ``ant hrcupdate''       - Builds zip with current HRC for
                                 separate distribution.

       Test builds:

       ``ant this.colorer''    - Builds binary executables and installs
                                 them into the current working copy.
       ``ant this.far''        - Builds far manager executables and installs
                                 them into the FAR Manager folder.
       ``ant this.eclipse''    - Builds EclipseColorer package and installs
                                 it into the Eclipse folder.


  3. Installation

    After build is finished, you'll get ready-to-use versions of Colorer-take5
    library:
      - FarColorer     - Extracted into the 'FAR/plugins' folder,
      - EclipseColorer - Extracted into the 'eclipse/plugins' folder,
      - Full Library   - Used as it is,
      - Linux package  - ready to compile and install linux/unix version.


  Igor Russkih
    irusskih at gmail dot com
