spot/wrap/python/cgi-bin
Alexandre Duret-Lutz 72ae820b0c Add SVG output and language containment options to the cgi script.
* wrap/python/cgi-bin/ltl2tgba.in (new): Mark new options as new.
(svg_output, reduce_langcout): Add these new options.
(render_dot): Support svg_output.
2010-02-02 16:58:14 +01:00
..
.cvsignore Rename wrap/python/cgi/ as wrap/python/cgi-bin/. 2010-01-29 15:48:56 +01:00
.gitignore Rename wrap/python/cgi/ as wrap/python/cgi-bin/. 2010-01-29 15:48:56 +01:00
ltl2tgba.in Add SVG output and language containment options to the cgi script. 2010-02-02 16:58:14 +01:00
Makefile.am Make it possible to use the cgi script without installing a web 2010-01-30 14:15:03 +01:00
README Make it possible to use the cgi script without installing a web 2010-01-30 14:15:03 +01:00

ltl2tgba.py is a CGI script that translate user-supplied LTL formulae
to Transition-based Generalized Büchi Automata.

There are two ways to use the script: using a web server such as
Apache, or standalone.

In both cases you should ensure that the command `dot', from the
GraphViz package, is in the PATH.



Standalone usage
================

Simply run the script from this directory.  This will create a
directory called spotimg/ in the current directory (this will hold the
generated pictures) and start an HTTP server on port 8000.  Point your
browser to http://localhost:8000/ltl2tgba.py and you should be OK.

After you have killed the server process (e.g. with Control-C),
you may want to erase the spotimg/ directory.

Installing on a real web server
===============================

1) Install Spot first (run `make install' from the top-level).

   The CGI scripts uses the Python bindings and assume they
   have been installed.  Near the top of the script, you
   should see a call to sys.path.insert(), with the expected
   location of the Python bindings for spot.  This path was
   configured from ./configure's arguments and you should not
   have to fiddle with it.  I'm mentionning it just in case.

2) Copy ltl2tgba.py to some place were CGI execution is allowed.
   Depending on your HTTP server's configuration, you may have
   to rename the script as ltl2tgba.cgi or something else, so
   that the server accepts to run it.

   Apache users in trouble should look at the following options
   before digging the Apache manual deeper.  These can go
   in a .htaccess file (if allowed).

      # Treat *.py files as CGI scripts
      AddHandle cgi-script .py

      # Allow CGI execution in some directory.
      Options +ExecCGI

3) In the directory where you have installed ltl2tgba.py,
   create a subdirectory called spotimg/.  This is where
   the script will output its images and other temporary
   files.  (If you want to change this name, see the imgdir
   variable at the top of the script.)

   This directory must be writable by the Unix user that
   will run the script when the HTTP server processes the
   request.

   ltl2tgba purges old files (>15min) from this directory
   each time it runs.