Skip to content

Embedded web server interface library by S. Lampoudi and D. Beazley

License

Notifications You must be signed in to change notification settings

dspinellis/swill

Repository files navigation

SWILL (Simple Web Interface Link Library)

Version: 0.1 (March 19, 2002)

$Header: /cvs/projects/SWILL/README,v 1.6 2002/03/19 19:51:31 beazley Exp $

Author(s) : David Beazley (beazley@cs.uchicago.edu)
            Sotiria Lampoudi (slampoud@cs.uchicago.edu)

Copyright (C) 1998-2002
University of Chicago

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

See the file COPYING for a complete copy of the LGPL.

Overview
========

SWILL is a programming library that makes it easy to add an embedded
web-server interface to a program. This allows a programmer to provide
remote monitoring and access to long-running programs.  SWILL was
primarily developed to support the needs of scientific software.  However,
it could certainly be used in other settings.  

The guilty parties working on SWILL are:

   Dave Beazley (beazley@cs.uchicago.edu)
   Sotiria Lampoudi (slampoud@cs.uchicago.edu)

Past contributors include:

  Hasan Baran Kovuk, Mike Sliczniak.

Up-to-date SWILL related information can be found at

        http://systems.cs.uchicago.edu/swill

Unix Installation
=================
To build and install SWILL, simply type the following:

     % ./configure
     % make
     % make install

By default SWILL installs itself in /usr/local.  If you need to install SWILL in
a different location or in your home directory, use the --prefix option
to ./configure.  For example:

     % ./configure --prefix=/home/yourname/projects
     % make
     % make install

Note: the directory given to --prefix must be an absolute pathname.
Do *NOT* use the ~ shell-escape to refer to your home directory.

By default, SWILL is built as a static library (libswill.a).  If you
would like to build a shared library instead, type 'make shared'. The
use of shared libraries is a delicate topic and they may not work in
all cases.

Installation with MPI
=====================

To use SWILL in MPI applications, it is necessary to compile with MPI
support enabled. To do that use ./configure --with-mpi=[PATH_TO_MPI]
(PATH_TO_MPI could be something like /usr/local/mpi).

When MPI support is enabled, SWILL builds libraries called libswillmpi.a
and libswillmpi.so respectively.  This allows both non-MPI and MPI 
versions of the libraries to be installed in the same directory.

Note: if you have already built and installed SWILL without MPI support, 
make sure you follow these steps to enable MPI:

     % make clean
     % rm config.cache
     % ./configure --with-mpi=/usr/local/mpi
     % make
     % make install

Documentation
=============
The Doc/ directory contains documentation in HTML format.  The Paper/
directory contains the draft paper we are presenting at the USENIX
Freenix'02 conference.

Examples
========
The Examples directory contains a few examples of using SWILL.  This is still
somewhat incomplete.  However, it might be enough to get started.

Participate!
============
Please report any errors and submit patches (if possible)!  We only
have access to a limited variety of hardware (Linux and Solaris).

If you would like to work on SWILL, send email to swill@cs.uchicago.edu.


About

Embedded web server interface library by S. Lampoudi and D. Beazley

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published