home *** CD-ROM | disk | FTP | other *** search
/ RISC DISC 1 / RISC_DISC_1.iso / pd_share / code / projman / !ProjMan / !Help < prev    next >
Encoding:
Text File  |  1994-10-05  |  9.2 KB  |  209 lines

  1. =================================================================
  2. |                                                               |
  3. |    !Projman : A project manager for RISC OS   Version 0.15    |
  4. |                                                               |
  5. |         by Andrew McMurry                                     |
  6. |                                                               |
  7. =================================================================
  8.  
  9. Copyright Andrew McMurry 1994
  10.  
  11. This software may be copied freely in this state. This notice must remain
  12. on the copied version. Any additions must be documented, and identified
  13. as such.
  14.  
  15. I don't object to people uploading this software onto public-domain
  16. archives, BUT WOULD ANYONE WHO DOES THIS PLEASE TELL ME. If I am told then
  17. I can send the maintainer new versions as they come out.
  18.  
  19. Users of this software do so at their own risk. I hereby disclaim any
  20. liabilty of any kind due to the use or misuse of this software.
  21.  
  22. PLEASE REPORT ALL BUGS, COMMENTS, CRITISISM TO:
  23.  
  24.     Andrew McMurry, Balliol College, Oxford OX1 3BJ.
  25.  
  26.     internet:  a.mcmurry1@physics.oxford.ac.uk
  27.  
  28. 1) INTRODUCTION:
  29. ----------------
  30. !Projman is a replacement, and hopefully an improvement on !Make,
  31. the project manager that comes with the Acorn DDE package. It currently
  32. supports the DDE tools for compiling, assembling and linking the source
  33. code. It will support other environments, eg the RISC OS version
  34. of GCC.
  35.  
  36. !Projman uses one file type for its own use. Filetype 1AC "Project" is
  37. used to store information about which source files are used to make the
  38. target. IT IS ONLY A TEMPORARY FILETYPE. IT IS ***NOT*** REGISTERED WITH
  39. ACORN. Please inform me of any filetype clashes.
  40.  
  41. 2) USING !PROJMAN:
  42. ------------------
  43.  
  44. Options
  45. -------
  46. To get the Options window, choose Options... from the main menu. You can
  47. choose between project appearing as icons or windows. You can also choose
  48. the action that will occur when clicking on a Project Icon with select
  49. or adjust. See below for more details on their effects. Save will save
  50. the options to disc as permanent. Cancel will revert to previous options.
  51. OK sets the current options to the ones given in the window.
  52.  
  53. Creating a New Project
  54. ----------------------
  55. Clicking Select on the !ProjMan icon will open the 'New Project' window.
  56. There is a project title icon and 3 file icons, each with a name icon.
  57. You should also choose an environment. initially there are just DDE and
  58. GCC environments but more can be created, see later.
  59. The file icons can be dragged to a filer window to create a new project.
  60. The application icon will create an application with a !Project file in it.
  61. A new directory also will contain a !Project file.
  62. New application projects start with one target called !RunImage.
  63. New directory projects and straight projects do not contain any Targets.
  64.  
  65. Opening Projects
  66. ----------------
  67. New projects are automatically opened. To open another project double
  68. click on it or drag it, or a directory/application containing a !Project
  69. file to the !ProjMan icon. An open project has either an icon with the
  70. project title underneath on the icon bar, or a 'project' window titled
  71. with the project title. The 'project' window has 4 buttons on it. The
  72. actions on these can also be obtained by clicking menu on the window,
  73. or on the icon. The menu also has a close option which does the same as
  74. closing the Project window. The Project is AUTOMATICALLY SAVED when closed.
  75. This will become an option in a later version.
  76.  
  77. Save saves the project. Open will open a target window for the main target.
  78. Make makes the whole project (ie all targets). Run WILL make the whole
  79. project and run it if there are no errors.
  80.  
  81. Menu:
  82.     File ->
  83.         Info ->        Project Information Window.
  84.         Save        Save Project.
  85.         Revert        Revert to version on disc.
  86.     Rename ->        Rename the project
  87.     Make            Makes all targets
  88.     Target ->        Open Main Target
  89.         New Target    Creates new target
  90.         ...        Open a target
  91.     Close            Close Project
  92.  
  93. The Target Window
  94. -----------------
  95. The Target window is titled with the current target name. Filnames starting
  96. with . are relative to the directory containing the project file. The up
  97. and down arrows change the current target. Make makes the current Target.
  98. In the Pane which occupies the lower part of the window all the source files
  99. used to make the Target are listed, together with the tool used to make each
  100. of them and the object file produced. Source files can be selected using
  101. select and adjust in the normal way. Double clicking on a source file will
  102. open the source information window. To add source files to the list, drag a
  103. text file into the window. The Debug option will set the debugging flags for
  104. making the current target. The libraries menu sets the libraries to be
  105. included. Ones to be included are ticked.
  106.  
  107. Menu:
  108.     Info ->                Target information window.
  109.     Selection ->
  110.         Clear                   Clear the selection
  111.         Make            Make a single source file
  112.         Touch            Set time and date stamp for selection
  113.         Debug            Toggle Debug flag for selection
  114.         Remove            Remove selection
  115.     Select All            Select all source files
  116.     Options ->            Set options for the target
  117.     Use Via File            Create and use a via file (DDE only)
  118.     Rename ->            Rename Target
  119.     Remove                Remove Target
  120.  
  121. Making
  122. ------
  123. Choosing Make from anywhere will search for source files that have been
  124. changed since the last make (by comparing date stamps on the files).
  125. If no changed files are found then an 'Up to date' message is produced.
  126. Otherwise a 'Making' window will open. This window tells which target and
  127. file are currently being made. The tool for making the file runs in the
  128. background. A 'Make Task' will appear in the task manager's 'Tasks' window.
  129. The tool can be paused or aborted from the buttons on the 'Making' window.
  130. Any compiler errors or warnings are sent to an editor using Throwback.
  131. If a tool fails then the output of the tool is displayed in a 'report'
  132. window. All output produced by tools during a make is logged to the MakeLog
  133. file. MakeObey and !Depend files are also created during the make, but
  134. deleted afterwards.
  135.  
  136. The DDE tools and GCC produce !Depend files if asked, which contain all the
  137. dependencies of the source file (ie #includes in C, GET's in assembly).
  138. !ProjMan does ask, and stores these dependencies with the source file
  139. list. It checks if any of these dependencies have been changed when
  140. making, and remakes the source file if they have. It works just like !Make.
  141.  
  142. Tools and Environments
  143. ----------------------
  144. For each environment there is a subdirectory in the !ProjMan.Env directory.
  145. Each environment directory should contain a Tools file. It can also include
  146. a Templates file. To add a new environment just create a new subdirectory
  147. with a tools file in it. ProjMan will notice next time it is run.
  148.  
  149. The tools file should contain a set of records like the following example:
  150.  
  151. tool    cc
  152. from    c
  153. to    o
  154. line    cc -c {d-g} {x} -Depend !Depend -Throwback -o {o} -Ic: {s}
  155. opts    {2-I } {3-f} {5-D } {6-U } {11-w} {7-zM} {8-P} {9-list} {10-pcc}
  156.  
  157. One of these is needed for each tool. The fields that can be used are:
  158.  
  159. tool    this is required as the first field and gives the tool name
  160. from    required, the prefix of source files translated
  161. to    required, the prefix of object files produced
  162. line    required, the command to use, see later
  163. opts    optional, translation from options window to string
  164. noopts    optional, there is no options window
  165. defo    optional, default options string
  166. mem    optional, amount of memory to allocate for tool
  167. noname    optional, do not display the name in the target window
  168.  
  169. The first record should be the details for the linker.
  170. There should follow a set of records like the following example:
  171.  
  172. lib    CLib
  173. file    C:o.Stubs
  174.  
  175. One of these is needed for each library. The order is important. A library
  176. which depends on routines in another library should come earlier in the
  177. list. The fields are:
  178.  
  179. lib    this is required as the first field and gives the library name
  180. file    required, the filename of the library
  181. dbug    optional, filename of an alternative library to be used when
  182.     the debug flag is set.
  183.  
  184. After the libraries an 'end' is required. See the DDE and GCC tools files
  185. for more examples.
  186. The command line for the tool is just plain text, except for the control
  187. sequences which are contained in { }:
  188.  
  189. d***    The *** is included on the command line if the debug flag is set.
  190. v***    The *** is included if via files are being used (link only)
  191. x    This expands to the options string
  192. o    This expands to the object filename
  193. s    This expands to the source filename
  194.  
  195. If you wish you can create an options window template in the environment
  196. Templates file. It should have the same name as the tool.
  197. The options translation string is similar to the command line. The control
  198. sequences this time are started by numbers. The number is a icon number
  199. in the options window. The icon should have a button type of either
  200. 11(Select/drag) or 15(Writable). The number is followed by a string.
  201. If the icon is of type 11 then the control sequence expands to that string
  202. if the icon is selected and nothing if it isn't. If the icon is of type 15
  203. then the string is included and followed by the text contents of the icon
  204. (must be an indirected icon) only if the text has non-zero length.
  205.  
  206. If anyone is having problems creating tools files and associated Templates
  207. please send me your files and I will try and fix them or ProjMan depending
  208. where the problem lies.
  209.