
SCARE source code restricts itself to ANSI C89/ISO C90, and is 64-bit clean,
so should build on any platform that offers a suitable 32 or 64-bit compiler.

By default, SCARE builds its simplest incarnation, an interpreter that reads
from and writes to standard input.  If your platform has 'make', you should be
able to build this with

    make scare

If your platform doesn't have 'make', you should be able to build this by
entering the /source subdirectory, moving the files os_glk.c and sx*.{c,h} to
a different directory, unzipping the required Zlib source files, then running

    cc -o scare *.c

For a list of the required Zlib sources that you'll need to extract from the
Zlib zip archive, where you don't have 'make', consult the definitions of
ZSOURCES and ZHEADERS in the SCARE Makefile.

The two files os_ansi.c and os_glk.c are alternative user interfaces for the
core interpreter.  All other source files are either core interpreter C files
themselves (everything called sc*.h and sc*.c), SCARE test code (everything
called sx*.h and sx*.c), or source code from Zlib (everything else).  The
plain 'scare' links with os_ansi, 'glkscare' links with os_glk.

So, to build the Glk version of SCARE, you can use

    make glkscare

To build 'glkscare' you'll need to have a built Glk library installed.  If you
don't, build one and store it somewhere convenient, then edit the Makefile so
that GLKDIR references it.  The default Makefile expects a directory called
../xglk, containing a built Xglk library and associated header files.  You
may also want to vary the setting for GLKARCH in the Makefile if building for
Glk on non-Linux platforms, and GLK if not building for Xglk.

SCARE's self-test is 'sx'.  It runs scripted input against Adrift games, and
compares SCARE's output with expected strings.  The /test subdirectory
holds the test suite, and contains of a mix of real Adrift games and simple
tests, along with associated scripts.  You can use these to verify the your
build, and for regression tests.  Build 'sx' and run SCARE's test suite with

    make check

A note about the include in the Makefile -- it uses the 'sinclude' syntax to
try to include Glk's make inclusion.  'sinclude' is, apparently, a bit more
portable than GNU make's '-include', and GNU make certainly understands it.
However, if your make doesn't understand 'sinclude', just comment out this
line in the Makefile when building non-Glk SCARE.

If you're feeling adventurous, you can also build an IFP plugin for SCARE:

    make scare-1.3.7.so

As well as needing Glk, this requires that you have installed IFP on your
Linux system.  The plugin will run all of the same games.  The amount of
malloc'ing done by the interpreter when running large Adrift games stresses
IFP's garbage collection, so you may notice slight slowness playing such
games through IFP.  The PK Girl is a large Adrift game; however, it is
somewhat atypical -- ones of more normal dimensions (A Party To Murder, and
Unraveling God, both from Comp02) work through IFP without noticeable delay.

