Pike by Fredrik Hübinette 1994-2001

Permission to copy, modify, and distribute this source for any legal
purpose granted as long as my name is still attached to it.  More
specifically, the GPL, LGPL and MPL licenses apply to this software.

New releases can be found on ftp://pike.ida.liu.se/pub/pike/
Report bugs at http://community.roxen.com/crunch/
There is also a mailing list, to subscribe to it mail:
pike-request@roxen.com


HOW TO BUILD PIKE

If you are building Pike from the CVS, read README-CVS instead.

The top-level makefile (in this directory, not the src directory) has
all the magic you need to build Pike. Just type 'make'.

You will need gnu m4, bison and a C compiler. You probably also want
to use GNU make and libz.

If that doesn't work, refer to README-CVS, in particular the sections
on additional DEPENDENCIES, on CONFIGURE OPTIONS AND BUILD VARIABLES,
on MANUAL BUILDING and, if needed, IF IT DOESN'T WORK.


THREADS SUPPORT

Getting threads support might be hairy on some platforms, most
platforms have threads support but quite a few have problems running
external processes (through create_process).  By default threads
support is disabled on platforms where threading is known not to work
100% properly.

IRIX: Starting many processes causes a resource error which sometimes
      causes a complete hang and 100% cpu usage.

FreeBSD 3.x: Symptoms are similar to IRIX, but the problem has
      something to do with signal handling. (And as you may know,
      process handling uses signals on UNIX...)

Linux: Not all linux variations have 100% working threads, in fact
      most libc5 systems do not work very well with threads.  Threads
      support is enabled by default on Linux, but we recommend running
      'make verify' after compilation.  This will (hopefully) tell you
      if your threads are not working.


BUGS

If you find a bug in the interpreter, the first thing to do is to make
sure the interpreter is compiled with PIKE_DEBUG defined.  If not,
recompile with PIKE_DEBUG and see if you get another error.  When
you've done this, please report the bug to us at
http://community.roxen.com/crunch/ and include as much as you can
muster of the following:

  o The version of the driver. (Try pike --version or look in
    src/version.h)
  o What kind of system hardware/software you use (OS, compiler, etc.)
  o The piece of code that crashes or bugs, preferably in a very
    small Pike-script with the bug isolated.  Please send a complete
    running example of something that makes the interpreter bug.
  o A description of what it is that bugs and when.
  o If you know how, then also give us a backtrace and dump of vital
    variables at the point of crash.
  o Or, if you found the error and corrected it, just send us the
    bugfix along with a description of what you did and why.
