====================================
xxdiff: Build Notes and Instructions
====================================

xxdiff is a graphical file and directories comparison and merge tool.

Official home page:
    http://github.com/blais/xxdiff
Original author:
    Martin Blais <blais@furius.ca>

Full documentation is available from the Help menu or web site.
Various integration tools are available under the tools subdirectory
(CVS, ClearCase, etc.)


Building from source
====================

Requirements
------------

- GNU make.  You will need GNU make.  Don't waste your time with other makes,
  many are known not to work (Sun's, as well as OSF1).

- A C++ compiler with a decent STL

- flex >=2.5.31

- bison

- Qt >=4.5

Compiling
---------

Compiling xxdiff::

   cd xxdiff/src
   make -f Makefile.bootstrap # Generate the 'Makefile' file.
   make                       # Build xxdiff


Notes
~~~~~

* For a long time, xxdiff was based on qt3, but was finally ported to
  qt4 in november 2010 by Alexandre Feblot.

* Note: xxdiff used to require the obsolete tmake tool, but has been ported to
  use qmake in may 2006.

* Depending on your platform, you may have to set your QTDIR manually
  (e.g. to /usr/lib/qt4)

* You may have to edit CONFIG to include the option 'thread' or not, depending
  on if you have only the multi-threaded version of qt installed or not
  (libqt-mt).  xxdiff does not specifically need it and can build and run
  without the multi-threaded version of Qt.  Re-run take after making the
  change.


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

::

    su -
    install xxdiff/src/xxdiff /usr/X11R6/bin

You can generate HTML documentation with ``xxdiff --help-html`` if you want.


Packaging
=========

* Source packaging:
  adm/release_src

* Simple binary packaging (all platforms):
  adm/release_bin

* Redhat Linux packaging:
  adm/release_i386_rpm

* Debian Linux packaging:
  See web page for link to current port.

* OpenBSD packaging:
  In the ports tree.

* SGI packaging:
  adm/release_mips_tardist

  Note: to install the SGI package you'll need fw_qt and it's
  prerequisites. Installing from tardist package::

    inst -f xxdiff-<version>.mips.tardist
    > go
