void manual()
{
    list yo;
    int idx;
    string yodl;

    md("tmp/manual");

    chdir("documentation/manual");

    yo = makelist("*.yo") + makelist("*/*.yo");

    for (idx = sizeof(yo); idx--; )
    {
        yodl = element(idx, yo);
        if (yodl newer "manual-stamp")
        {
            run("yodl2html -l 3 bisonc++.yo");
            run("touch manual-stamp");
            run("mv *.html ../../tmp/manual");
        }            
    }
    exit(0);
}
