Beginnings of a PDF parser in Hammer
====================================
 - Currently needs a custom Hammer branch. You'll need to build against this:
   https://gitlab.special-circumstanc.es/pesco/hammer/tree/pdf
   For detailed build instructions, see README.md in that repository.
 - Help the default Makefile find Hammer
       $ ln -s ../hammer/src hammer         # needed for building pdf, include files
       $ ln -s ../hammer/build/opt/src lib  # needed for running pdf, to locate libhammer.so
 - Notes for 2020-04-27 release:
    The release branch has been tested to build with the 2020-04-27_RELEASE` branch located at https://gitlab.special-circumstanc.es/pesco/hammer/tree/2020-04-27_RELEASE
 - Build:
       $ pushd ../hammer; scons; popd       # build Hammer
       $ make pdf
 - Usage:
       $ export LD_LIBRARY_PATH=./lib       # see Troubleshooting section below to see if this is needed
       $ ldd ./pdf | grep libhammer         # verify that libhammer.so was found
       $ ./pdf <filename>
       # place some test files in the t/ directory...
       $ make test
 - Troubleshooting:
       libhammer.so not found:
           If Hammer is not installed as a system library, ld may fail to locate libhammer.so. The quick fix for this is altering LD_LIBRARY_PATH before running pdf:
           $ export LD_LIBRARY_PATH=./lib
           $ make test
           The second solution is executing "scons install" when building Hammer, which will install it in ld's usual search path:
           $ pushd ../hammer; scons install; popd
           # ... Update ldconfig cache if needed
           $ make pdf
           $ make test
 - Evaluating test results:
 
   For every file in the t/ directory, the pdf parser is executed. On successful parse, a message of the following form is displayed:
   OK: t/<filename>
   In case of a non-fatal parse error, error messages may be displayed, but presence of the "OK" indicates pdf exited successfully. On a failed test run, only parse error messages are displayed.
 - Copyright:
  - pesco 2019,2020
  - pompolic 2020
  - Paul Vines 2020
  - David Bryant (modified lzw-ab code)
  See LICENSE and lzw-ab-license.txt for full copyright and licensing notice.