WebMake is a simple web site management system, allowing an entire site to be
created from a set of text and markup files and one WebMake file.
It requires no dynamic scripting capabilities on the server; WebMake sites can
be deployed to a plain old FTP site without any problems.
It allows the separation of responsibilities between the content editors, the
HTML page designers, and the site architect; only the site architect needs to
edit the WebMake file itself, or know perl or WebMake code.
A multi-level website can be generated entirely from 1 or more WebMake files
containing content, links to content files, perl code (if needed), and output
instructions. Since the file-to-page mapping no longer applies, and since
elements of pages can be loaded from different files, this means that standard
file access permissions can be used to restrict editing by role.
Text can be edited as standard HTML, converted from plain text (using the
included Text::EtText module), or converted from any other format by adding a
conversion method to the WebMake::FormatConvert module.
Since URLs can be referred to symbolically, pages can be moved around and URLs
changed by changing just one line. All references to that URL will then change
automatically.
Content items and output URLs can be generated, altered, or read in dynamically
using perl code. Perl code can even be used to generate other perl code to
generate content/output URLs/etc., recursively.
The WebMake file to read and generate output from. If this option is not
supplied, the default behaviour is to search the current directory and its
parents for a file ending in .wmk.
Run more quickly, but take more risks. Normally, dynamic content, such as Perl
sections, sitemaps, or navigation links, are always considered to be in need of
rebuilding, as mapping their dependencies is often very difficult or
impossible. This switch forces them to be ignored for dependency-tracking
purposes, and so an output file that depends on them will not be rebuilt unless
a normal content item on that page changes.
List output files that would be generated to build this site, one per line.
When you're using CVS to replicate a site, this comes in handy, as you know
you can safely overwrite changes in these files when doing a cvs update.