Nonogram Library
================


Unix Installation
~~~~~~~~~~~~~~~~~

To install this package on a Unix system, create a configuration file
for 'make' called nonolib-env.mk, ensuring that this file can be
located when you run 'make'.

Put into nonolib-env.mk configuration details such as:

* PREFIX - where you want to install the headers and libraries;

* CC, CFLAGS - compiler and options to ensure an ISO compiler, and any
configuration macros (e.g. nonogram_LOGLEVEL),

and ensure that RANLIB, AR and INSTALL are the names of the commands
equivalent to 'ranlib', 'ar' and 'install' on your system.

This approach aims to separate local installation details from the
distribution, since the file nonolib-env.mk can be kept out of the
unpacked distribution, which can be replaced without fear of
overwriting previous installation parameters.

For example:

INSTALL=install
PREFIX=/usr/local
RANLIB=ranlib
AR=ar
CFLAGS += -std=c99 -Wall -pedantic-errors -Dnonogram_LOGLEVEL=2

Targets for 'make'
~~~~~~~~~~~~~~~~~~

A variety of targets can be specified for building with 'make':

% make

Make the library "libnonogram.a".

% make install

Make and install the library and header file.

% make tidy

Remove files that really shouldn't be there, e.g. emacs auto-save files
and core.

% make clean

Remove intermediate files (*.o) and files that really shouldn't be
there.

% make blank

Remove generated files that weren't in the distribution.


Compilation Options
~~~~~~~~~~~~~~~~~~~

nonogram_LOGLEVEL - an integer controlling compilation of logging
code. A value of x means only compile code for levels less than
x-1. Default is 1.

nonogram_MAXRULES - space for rules assumed when loading in puzzles
with no maxrule specification (defaults to 60). This isn't actually
used.

Testing
~~~~~~~

Install a package that uses the library, and - test it! :-P
