The Eiffel Sockets Library
by Jeffrey Straszheim and others
copyright 2000

There is HTML documentation in overview.html.

If you have any problems with these instructions please either write
stimuli@shadow.net to contact me directly, or if you would, join the
ESockets user mailing list, which can be found at:

 http://www.shadow.net/~esockets/index.html,

and post your problem there.

To set up:

To start with, ESockets now requires that the GOBO Eiffel libraries be
installed on your system. If you are not yet familiar with GOBO, it is
a collection of general purpose Eiffel libraries (collection classes
mostly) that are portable across different Eiffels. You can get GOBO
at:

 http://www.gobosoft.com/

******** ESockets has been tested with GOBO version 1.5

Also, you will need to compile the native C code. To do so, go into
the esockets/native/ directory and type:

 make

When make finishes there should be a file in that directory called
es_native.a. You will need to include this library file in your
project build environments.

Next you will need to define an environment variable ESOCKETS, and set
it to the root directory of the distribution (the directory that
contains this file). On my system I type:

 export ESOCKETS="/home/devel/esockets/"

Your system might require `set' rather than `export'. You'll probably
want to set that in your profile as well.

============================================================================

SMALL EIFFEL

To compile with the ESockets classes you will need to include the
lib_es, lib_es/se, lib_es/multiplexer_poll, and
lib_es/multiplexer_poll/se directories into your Small Eiffel
loadpath. The needed GOBO classes can be brought in by including
lib_es/loadpath.se in your local loadpath file. This assumes you've
set up GOBO in the standard way, and have set the GOBO environment
variable. See the loadpath.se files in the examples if you have
further questions.

Also, you will need to include the es_native.a file into your compile.
You may find the -case_insensitive and -no_style_warning flags useful.

Example:

compile -case_insensitive -no_style_warning -all_check -o echo_server\
   echo_server make $ESOCKETS/native/es_native.a

{The \ indicates line continuation, but you knew that :) }

It's all pretty simple. Someday we'll have a fancy make system :)

******** ESockets has been tested with SE version -0.77

============================================================================

VISUAL EIFFEL

For Visual Eiffel, ensure that you have installed the GOBO libraries
correctly, as well as setting the ESOCKETS environment variable as
described above. There are example *.esd files in the test and example
directories. These should give you sufficient information as to what
clusters need to be included.

******** ESockets has been tested with Visual Eiffel for Linux version 3.2

============================================================================

ISE

{TODO: ISE instructions}

============================================================================

This is a work in progress and I'm hoping for feedback.

Please send comments, suggestions, critiques, code additions,
bug-reports to the mailing list.

For more information see http://www.shadow.net/~stimuli/esockets/index.html

Thank you

Jeffrey
