PaperJam is a tool for processing PDF documents: re-ordering pages, scaling and rotating them, placing multiple pages on one sheet of paper, adding cropmarks, and many other tricks.
PaperJam was written by Martin Mareš mj@ucw.cz and it can be freely used and distributed under the terms of the GNU GPL (see LICENSE for details).
To compile PaperJam, you need the headers for the libqpdf and libpaper libraries (usually available as libqpdf-dev and libpaper-dev packages).
You may need a2x (found in AsciiDoc) for building manual pages.