Synopsis - Cross-Reference

File: /README
  1Installation guide
  2==================
  3 
  4Requirements
  5------------
  6
  7Synopsis uses features found in Python 2.2 and up.
  8The build system requires a posix environment with GNU make and GNU
  9autoconf installed.
 10However, it is possible to build Synopsis for a native windows
 11platform, running with the win32 python installation and emulating
 12a MSVC compiler.
 13
 14Configuring
 15-----------
 16
 17* If the sources are checked out from svn, run './autogen.sh' to generate
 18  the configure scripts. This step requires autoconf to be installed.
 19
 20* Run 'python setup.py config' to configure the subprojects.
 21
 22* Be careful to pass the same '--prefix' option you are going to pass
 23  to the 'install' command, if you plan to install synopsis. See
 24  the section about installing for details.
 25
 26* Synopsis provides an alternative Cpp parser based on boost.wave.
 27  It overcomes certain limitations with the old ucpp-based parser, but
 28  incures a dependency on various boost libraries. Thus it's disabled by default.
 29
 30  To build with this new Cpp parser, configure with --with-boost, and
 31  these optional boost-related flags:
 32
 33  --with-boost-prefix=<boost installation prefix>
 34  --with-boost-version=<version> (e.g. 1.35)
 35  --with-boost-lib-suffix=<suffix> (e.g. -gcc41-mt)
 36
 37Building
 38--------
 39
 40* Run 'python setup.py build' to compile everything.
 41  This will place all files that are going to be installed under build/
 42  This step requires GNU make to be installed. If the executable 'make'
 43  is not GNU make, you have to set the 'MAKE' environment variable to
 44  GNU make.
 45
 46  If you do not want to install, but rather try synopsis out from within the
 47  source directory, you may consider 'python setup.py build_ext --inplace'
 48  as an alternative, which will only compile the C/C++ extensions and put
 49  them right into the source tree.
 50
 51  If you have checked out the source code from the repository, you will
 52  find a 'setup.cfg' file containing convenient default parameters during
 53  development. However, if you plan to install synopsis, you have to remove
 54  (or at least rename) this file or else distutils will get confused and
 55  not install extensions.
 56
 57* To build for windows native, just use the appropriate python interpreter
 58  to run the build script. You will need a mingw-compatible version of the
 59  python library (libpythonxx.a), which you have to build first. Instructions
 60  for this are at http://www.python.org/doc/current/inst/index.html.
 61
 62* If you want to use an external garbage collector for the Cxx parser
 63  instead of the built in one, run 
 64  'python setup.py config --with-gc-prefix=/your/gc/prefix'
 65
 66Testing
 67-------
 68
 69* The tests require version 2.2 of qmtest (http://www.qmtest.com),
 70  as well as tidy (http://www.w3.org/People/Raggett/tidy/)
 71
 72* run 'python setup.py test [--suite=<id>]' where the optional
 73  argument --suite specifies a test suite to run. The default
 74  is to run all tests.
 75
 76Building documentation
 77----------------------
 78
 79* 'python setup.py build_doc' will compile printable and html versions of
 80  the Tutorial as well as the Manual, and put them under share/doc/Synopsis
 81
 82* All four targets require xsltproc, and the printable Tutorial requires
 83  additionally fop (from http://xml.apache.org)
 84
 85* If you only want to build the html versions, run 
 86  'python setup.py build_doc --html'
 87
 88* If you only want the Tutorial, run 'python setup.py build_doc --tutorial'
 89
 90* etc.
 91
 92Installing
 93----------
 94
 95* To install synopsis in <prefix>, run 'python setup.py install --prefix=<prefix>'
 96  The default prefix is the one from the python interpreter used during the build.
 97  If you chose a different prefix, make sure to set the PYTHONPATH appropriately
 98  so the package can be found by the python interpreter.
 99
100* If documentation was built before, it will be installed into 
101  <prefix>/share/doc/Synopsis
102
103Packaging
104---------
105
106Source package:
107
108  * 'python setup.py sdist' creates a source package (compressed tarball).
109    For it to include documentation, you need to have run 'python setup.py build_doc'
110    first (see above).
111
112Binary packages:
113
114  * 'python setup.py bdist' creates a binary package (compressed tarball).
115    Other binary packages may be supported, but may involve more complex setups.
116
117  * rpms: An rpm spec file is provided ('synopsis.spec') which is used to generate
118    fedora rpms, and possibly others.
119
120  * windows installer: 'python setup.py bdist_wininst' generates a windows MSI package.
121
122Using Synopsis
123--------------
124
125* Remember to set the PYTHONPATH variable if necessary, as well as
126  LD_LIBRARY_PATH.
127
128* Read the tutorial to learn how to get started using synopsis.
129
130Reporting Bugs
131--------------
132
133Please report bugs to http://synopsis.fresco.org/issues