diff --git a/.tmkproject b/.tmkproject index 6d65d2e..132d22f 100644 --- a/.tmkproject +++ b/.tmkproject @@ -1,16 +1,16 @@ -# Configuration Data For 'mkproject' +# Configuration Data For 'tmkproject' # # Copyright (c) 2012, TundraWare Inc., Des Plaines, IL 60018 USA -# All Rights Reserved. For Terms Of Use, See: mkproject-license.txt +# All Rights Reserved. For Terms Of Use, See: tmkproject-license.txt # -# $Id: .tmkproject,v 1.104 2012/06/04 15:43:22 tundra Exp $ +# $Id: .tmkproject,v 1.105 2012/06/05 23:49:10 tundra Exp $ # NOTE: Any strings below that need the "/" in them - # like the website URL - must escape them for -# the 'sed' substitutions to work in mkproject.sh. +# the 'sed' substitutions to work in tmkproject.sh. ##### -# Vendor Specific Branding For 'mkproject' +# Vendor Specific Branding For 'tmkproject' ##### AUTHOR="I.M. N. Author" # Program author's name diff --git a/tmkproject-license.txt b/tmkproject-license.txt index 420ee49..8f2834e 100644 --- a/tmkproject-license.txt +++ b/tmkproject-license.txt @@ -1,21 +1,21 @@ -$Id: tmkproject-license.txt,v 1.101 2012/06/04 19:50:17 tundra Exp $ +$Id: tmkproject-license.txt,v 1.102 2012/06/05 23:49:10 tundra Exp $ -In order to use, study, modify, or copy 'mkproject', you must read +In order to use, study, modify, or copy 'tmkproject', you must read and agree to all the licensing terms below. If you do not agree with or do not understand *ANYTHING* you see in this document, you are NOT -granted a license to use, study, modify, or copy 'mkproject'. By -using, studying, modifying, or copying 'mkproject', you are agreeing -to all the terms of the 'mkproject' LICENSE below in their entirety. +granted a license to use, study, modify, or copy 'tmkproject'. By +using, studying, modifying, or copying 'tmkproject', you are agreeing +to all the terms of the 'tmkproject' LICENSE below in their entirety. - 'mkproject' LICENSE AGREEMENT + 'tmkproject' LICENSE AGREEMENT 1) DEFINITIONS -Throughout this Agreement, the term 'mkproject' is used to mean: +Throughout this Agreement, the term 'tmkproject' is used to mean: -Anything included in the 'mkproject' software distribution package +Anything included in the 'tmkproject' software distribution package from TundraWare Inc. This includes scripts, programs, documentation, license text and all other files provided in that original software distribution package. @@ -23,45 +23,45 @@ Throughout this Agreement the term "User" is used to mean any person who is enagaged in any of the following activities: - a) Uses any files found in the 'mkproject' software distribution + a) Uses any files found in the 'tmkproject' software distribution in any way. - b) Reads the 'mkproject' documentation. + b) Reads the 'tmkproject' documentation. - c) Reads or studies the 'mkproject' program source code or + c) Reads or studies the 'tmkproject' program source code or supporting files. - d) Makes use of any part of the 'mkproject' software distribution + d) Makes use of any part of the 'tmkproject' software distribution for any purpose. - e) Duplicates and/or distributes the 'mkproject' software distribution. + e) Duplicates and/or distributes the 'tmkproject' software distribution. 2) OWNERSHIP -'mkproject' Is Copyright (c) 2012 TundraWare Inc., Des Plaines, IL 60018 USA +'tmkproject' Is Copyright (c) 2012 TundraWare Inc., Des Plaines, IL 60018 USA All Rights Reserved. 3) TERMS Permission is hereby granted to the User for the duplication and use -of 'mkproject' so long as ALL the following conditions are met: +of 'tmkproject' so long as ALL the following conditions are met: - a) There is no license fee for use of 'mkproject' for any reason, + a) There is no license fee for use of 'tmkproject' for any reason, commerical, personal, government, non-profit, or otherwise, so long as you otherwise abide by this licensing agreement. Voluntary donations are accepted and encouraged. Information on how to contribute can be obtained by contacting: - mkproject@tundraware.com + tmkproject@tundraware.com - b) The User of 'mkproject' understands and agrees that this is + b) The User of 'tmkproject' understands and agrees that this is EXPERIMENTAL SOFTWARE which is provided "AS-IS" with no warranties expressed or implied by TundraWare Inc. - c) The User acknowledges 'mkproject' has NOT been tested for: + c) The User acknowledges 'tmkproject' has NOT been tested for: i) Correct operation @@ -73,7 +73,7 @@ cause any breach of system security of such systems, software, and networks. - d) By using 'mkproject' in any way, the User does so at their + d) By using 'tmkproject' in any way, the User does so at their own risk and agrees to hold TundraWare Inc. harmless for any damage, direct or indirect, that this software may or does cause to the User's computational environment, including, but @@ -81,20 +81,20 @@ network, or data. THE USER FURTHER AGREES TO HOLD TundraWare Inc. HARMLESS FOR ANY ECONOMIC DAMAGE OR ANY OTHER ADVERSE CONSEQUENCE, DIRECT OR INDIRECT, CAUSED BY THE USE OF - 'mkproject'. + 'tmkproject'. e) If duplicated and/or distributed, no fee beyond reasonable - duplication charges may be charged for 'mkproject'. No - commercial use of 'mkproject' which involves any + duplication charges may be charged for 'tmkproject'. No + commercial use of 'tmkproject' which involves any remuneration beyond these duplication charges is permitted. - f) Any distributed copies of 'mkproject' must include all the + f) Any distributed copies of 'tmkproject' must include all the originally provided software, documentation, and licensing information in their original distribution format and packaging without any modifications. -By using any part or all of 'mkproject', you are agreeing to be +By using any part or all of 'tmkproject', you are agreeing to be bound by this license. IF YOU DO NOT UNDERSTAND, OR CANNOT ABIDE BY ANY OF THESE CONDITIONS, -DO NOT USE 'mkproject'. +DO NOT USE 'tmkproject'. diff --git a/tmkproject.rst b/tmkproject.rst index f917289..0fc1f73 100644 --- a/tmkproject.rst +++ b/tmkproject.rst @@ -1,7 +1,7 @@ NAME ---- -**mkproject** - Rapid Project Templating +**tmkproject** - Rapid Project Templating SYNOPSIS @@ -9,7 +9,7 @@ :: - mkproject.sh name type cost 'description' + tmkproject.sh name type cost 'description' where, @@ -23,7 +23,7 @@ DESCRIPTION ----------- -``mkproject`` is a way to quickly produce the code and documentation +``tmkproject`` is a way to quickly produce the code and documentation skeletons for a new project and to put these under ``CVS`` version control. It allows you to "brand" them with your own company and copyright information, as well specifying a standard license and @@ -50,14 +50,14 @@ For example, you almost certainly will want to change the licensing terms contained in ``./common/license.txt``. Once you've edited -that file, every project you create with ``mkproject`` will have +that file, every project you create with ``tmkproject`` will have YOUR licensing terms in it. REQUIRED ENVIRONMENT -------------------- -``mkproject`` requires certain tools to be properly installed and +``tmkproject`` 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: @@ -77,36 +77,36 @@ ------------------------ -Each time you run ``mkproject.sh``, it looks in its own directory for -a file called ``.mkprojectrc``. This file contains site-specific +Each time you run ``tmkproject.sh``, it looks in its own directory for +a file called ``.tmkprojectrc``. This file contains site-specific items you may wish to customize. These are things like the vendor name, program author's name, the editor to use, and so on. The information found in this file is applied to each new project you create. -Each user can also maintain their own copy of the ``.mkprojectrc`` -file. By default, after ``mkproject.sh`` reads the "master" copy in +Each user can also maintain their own copy of the ``.tmkprojectrc`` +file. By default, after ``tmkproject.sh`` reads the "master" copy in its own directory, it looks for a copy in the user's home directory. That way, each user can override the site-wide defaults to suit -themselves. You can change where ``mkproject.sh`` looks for the +themselves. You can change where ``tmkproject.sh`` looks for the user's copy by changing the ``USERCONFIGDIR`` variable in the master -copy of ``.mkprojectrc``. +copy of ``.tmkprojectrc``. CREATING A NEW PROJECT ---------------------- -Once you've edited ``.mkprojectrc``, you are ready to create a new +Once you've edited ``.tmkprojectrc``, you are ready to create a new project. Recall that you do this:: - mkproject.sh name type cost 'description` + tmkproject.sh name type cost 'description` This will generate a project under the ``PROJECTSDIR`` directory -defined in ``.mkprojectrc``, and check them in to ``CVS``. +defined in ``.tmkprojectrc``, and check them in to ``CVS``. For example:: - mkproject.sh MyFineProject py $0.98 'A Cheap Program That Does Nothing` + tmkproject.sh MyFineProject py $0.98 'A Cheap Program That Does Nothing` Would create the directory ``${PROJECTSDIR}/MyFineProject``. This directory would contain all the program, documentation, and licensing @@ -122,7 +122,7 @@ MAKE OPTIONS ------------ -Projects created by ``mkproject`` are controlled by a ``makefile`` +Projects created by ``tmkproject`` are controlled by a ``makefile`` that allows you to do everything from produce documentation to package everything for release. The ``makefile`` supports the following major targets:: @@ -151,7 +151,7 @@ You can add new language support pretty trivially: -- Edit ``mkproject.sh`` and add a stanza to the ``case`` statement +- Edit ``tmkproject.sh`` and add a stanza to the ``case`` statement near the top to define the ``INTERPRETER`` and ``LANGUAGE`` variables appropriately for the new language. @@ -161,7 +161,7 @@ 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. + ``tmkproject`` will insert it for you. - In ``common/makefile`` add an ``enscript`` (or other pretty printer program) stanza to pretty print your program code. @@ -170,9 +170,9 @@ ------------------- When writing your own skeleton code and documentation files, there are -a number of tokens you can use which ``mkproject`` will fill in when +a number of tokens you can use which ``tmkproject`` will fill in when it creates a new project. You can see examples of how these are used -in the example skeletons provided with ``mkproject``. +in the example skeletons provided with ``tmkproject``. The major tokens of interst are:: @@ -180,14 +180,14 @@ Token Replaced By ----- ----------- - __AUTHOR__ Program author's name (.mkprojectrc) - __COPYOWNER__ Copyright string (.mkprojectrc) + __AUTHOR__ Program author's name (.tmkprojectrc) + __COPYOWNER__ Copyright string (.tmkprojectrc) __COPYRIGHT__ Full copyright string (internal) __COST__ Cost (command line argument) __DESCRIPTION__ Project description (command line argument) - __EDITOR__ Name of editor (.mkprojectrc) - __EDITARGS__ Editor arguments (.mkprojectrc) - __EMAILSUPPORT__ Email support address (.mkprojectrc) + __EDITOR__ Name of editor (.tmkprojectrc) + __EDITARGS__ Editor arguments (.tmkprojectrc) + __EMAILSUPPORT__ Email support address (.tmkprojectrc) __ID__ CVS version string, ``$Id`` (internal) __INTERPRETER__ "Hash bang" string for the selected language. __LANGUAGE__ Name of the language (internal) @@ -196,8 +196,8 @@ __RESERVED__ "All Rights Reserved ..." string (internal) __TYPE__ Program type (command line argument) __UPDATES__ Reference to the update website (internal) - __VENDORNAME__ Name of the project vendor (.mkprojectrc) - __WEBSITE__ Website where updates can be found (.mkprojectrc) + __VENDORNAME__ Name of the project vendor (.tmkprojectrc) + __WEBSITE__ Website where updates can be found (.tmkprojectrc) You can also define additional substitution tokens of your own by editing the ``tokens`` file provided with the program distribution. @@ -213,7 +213,7 @@ appropriately in both the ``tokens`` file and anywhere a variable is defined that is referenced in a substitution token definition. For example, ``__WEBSITE__`` refers to ``${WEBSITE}`` which actually gets -defined in ``.mkprojectrc``. If you look there, you will see that all +defined in ``.tmkprojectrc``. If you look there, you will see that all the forward slashes have been escaped in anticipation of the fact that we're going to feed the string to ``sed``. @@ -233,9 +233,9 @@ COPYRIGHT AND LICENSING ----------------------- -**mkproject** is Copyright (c) 2012 TundraWare Inc., Des Plaines, IL 60018 USA +**tmkproject** is Copyright (c) 2012 TundraWare Inc., Des Plaines, IL 60018 USA -For terms of use, see the ``mkproject-license.txt`` file in the +For terms of use, see the ``tmkproject-license.txt`` file in the program distribution. @@ -245,7 +245,7 @@ :: Tim Daneliuk - mkproject@tundraware.com + tmkproject@tundraware.com DOCUMENT REVISION INFORMATION @@ -253,11 +253,11 @@ :: - $Id: tmkproject.rst,v 1.116 2012/06/05 23:29:18 tundra Exp $ + $Id: tmkproject.rst,v 1.117 2012/06/05 23:49:10 tundra Exp $ You can find the latest version of this program at: - http://www.tundraware.com/Software/mkproject + http://www.tundraware.com/Software/tmkproject diff --git a/tmkproject.sh b/tmkproject.sh index 27661b7..1940919 100755 --- a/tmkproject.sh +++ b/tmkproject.sh @@ -1,17 +1,17 @@ #!/bin/sh -# mkproject.sh - Create A New Project Skeleton +# tmkproject.sh - Create A New Project Skeleton # # Copyright (c) 2012, TundraWare Inc., Des Plaines, IL 60018 USA -# All Rights Reserved. For Terms Of Use, See: mkproject-license.txt -# $Id: tmkproject.sh,v 1.106 2012/06/05 23:28:07 tundra Exp $ +# All Rights Reserved. For Terms Of Use, See: tmkproject-license.txt +# $Id: tmkproject.sh,v 1.107 2012/06/05 23:49:10 tundra Exp $ -CVSID='$Id: tmkproject.sh,v 1.106 2012/06/05 23:28:07 tundra Exp $' +CVSID='$Id: tmkproject.sh,v 1.107 2012/06/05 23:49:10 tundra Exp $' # Make sure we have a valid command line if [ $# -ne 4 ] then - echo "usage: mkproject.sh name type cost 'Brief Description'" + echo "usage: tmkproject.sh name type cost 'Brief Description'" exit 1 fi @@ -29,11 +29,11 @@ # Readin site-wide configuration -. ${BASE}/.mkprojectrc +. ${BASE}/.tmkprojectrc # Readin the user's configuration if there is one -USERCONFIG=${USERCONFIGDIR}/.mkprojectrc +USERCONFIG=${USERCONFIGDIR}/.tmkprojectrc if [ -e ${USERCONFIG} ] then