Newer
Older
tmkproject / tmkproject.rst
@tundra tundra on 1 Jun 2012 2 KB Initial revision
NAME
----

**mkproject** - Rapid Project Templating


SYNOPSIS
--------

mkproject.sh  name type cost 'Brief Description'


DESCRIPTION
-----------

Long description


REQUIRED ENVIRONMENT
--------------------

``mkproject`` requires certain tools to be properly installed and
configured in order to operate properly.  The majority of these have
to do with producing documentation in various output formats from a
Restructured Text source document:

- ``CVS``
- ``python 2.x``
- ``docutils``
-  ``TeX/LaTex`` (full implementaiton with utils)
- ``enscript``
- ``flip``

You also need a modern version of ``make``, like the one
from the GNU projects.  Old BSD type ``make`` utilities
will not work.


GETTING STARTED
---------------

Before using ``mkproject`` you have to customize it for your
site-specific information.  You do this by editing the ``.mkprojectrc``
file.

Once you've done this, using ``mkproject`` is pretty simply::

  mkproject.sh type name copyright_date cost `Brief Description`

Where::

   FILL THIS IN!!!!!

This will generate a project under the ``PROJECTSDIR`` directory
(defined in ``.mkproject``) and check them in to ``CVS``.


MAKE OPTIONS
------------

Projectes created by ``mkproject`` are controlled by
a ``makefile`` that supports a number of features:

    FILL THIS IN!!!!!!


HOW TO ADD A NEW LANGUAGE
-------------------------

You can add new language support pretty trivially:

- Edit ``mkproject.sh`` and add a stanza to the ``case`` statement
  near the top to define the ``INTERPERTER`` and ``LANGUAGE``
  variables appropriately to the new language.

- Create a new directory named after the language type - usually
  the suffix used to name source files in that language.  Under
  this directory, place any files or templates you want as defaults
  for every project of that type.  At a minimum, you *must* include
  a file named ``program.typesuffix``.  This should be your default
  skeleton code for that language.  Do *not* include the initial
  header block - ``mkproject`` will insert it for you.

- In ``common/makefile`` add an ``enscript`` (or other pretty printer
  program) stanza to pretty print your program code.

OTHER
-----

You must have a reasonably current version of the shell interpreter installed.


BUGS AND MISFEATURES
--------------------

None known as of this release.


COPYRIGHT AND LICENSING
-----------------------

**mkproject** is Copyright (c) 2012 TundraWare Inc., Des Plaines, IL 60018 USA

For terms of use, see the ``mkproject-license.txt`` file in the
program distribution.

If you install **mkproject** on a FreeBSD system using the 'ports'
mechanism, you will also find this file in::

  /usr/local/share/doc/mkproject


AUTHOR
------

::

   Tim Daneliuk
   mkproject@tundraware.com


DOCUMENT REVISION INFORMATION
-----------------------------

::

  $Id: tmkproject.rst,v 1.1 2012/06/01 20:56:06 tundra Exp $

You can find the latest version of this program at:

  http://www.tundraware.com/Software/mkproject