home *** CD-ROM | disk | FTP | other *** search
/ Share Gallery 1 / share_gal_1.zip / share_gal_1 / LA / LA024.ZIP / SMAK.EXE / MANUAL.HLP next >
Text File  |  1990-08-16  |  104KB  |  2,632 lines

  1.                         The SUPER MAKE Manual
  2.                         ---------------------
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                            SUPER MAKE(tm)
  11.                           SUPER MAKE EDITOR
  12.                        SUPER MAKE HELP FACILITY
  13.  
  14.  
  15.  
  16.  
  17.                     A Make Utility for Programmers
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.                                   _______
  29.                              ____|__     |               (tm)
  30.                           --|       |    |-------------------
  31.                             |   ____|__  |  Association of
  32.                             |  |       |_|  Shareware
  33.                             |__|   o   |    Professionals
  34.                           -----|   |   |---------------------
  35.                                |___|___|    MEMBER
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.                           All rights reserved
  53.                       Copyright (c) 1990 EmmaSoft
  54. %table1%
  55. *END*
  56.                           Table of Contents:
  57.                           ------------------
  58.  
  59.                  License Agreement and Warranty..... 4
  60.                  On Line Table of Contents.......... 5
  61.                  Printing the Manual................ 5
  62.                  Technical Assistance............... 5
  63.                  Introduction....................... 7
  64.                      What is a Maker?
  65.                      Wherefore SUPER MAKE
  66.                  Chapter 1:  Getting Started........ 9
  67.                      The SUPERFILES variable
  68.                      Path
  69.                      Mouse Stuff
  70.                      Time and Date
  71.                      Setup Information
  72.                      Quick Start
  73.                      Longer Explanation
  74.                  Chapter 2:  Help...................15
  75.                  Chapter 3:  Files and Macros.......17
  76.                      Anatomy of a SUPER MAKE file
  77.                      What S M thinks a Macro Is
  78.                  Chapter 4:  Make Menu..............22
  79.                      Introduction
  80.                      Pick Code Files
  81.                      Choose Default File Name
  82.                      New File (Reset)
  83.                      Edit Old File
  84.                      Resetting Macros
  85.                      Text Editor
  86.                      File Names
  87.                      SUPERMAKE====>
  88.                  Chapter 5:  Setup..................30
  89.                      Colors
  90.                      Files To Make
  91.                      S M Files
  92.                      Name Defaults
  93.                      Defaults
  94.                      Library File Names
  95.                  Chapter 6:  Toolbox................33
  96.                      Info about S M
  97.                      Version
  98.                      Language Definition Editor
  99.                      Manual
  100.                      Edit Help
  101.                      Go To DOS
  102.                  Chapter 7:  Quitting...............36
  103.                  Chapter 8:  Kinds of Files.........37
  104.                  Chapter 9:  Compatible Files.......39
  105.                  Chapter 10: Using The Maker........43
  106. %table2%
  107. *END*
  108.                  Chapter 11: About Shareware........47
  109.                      Distribution
  110.                      ASP
  111.                  Appendix A: Error Messages.........49
  112.                  Appendix B: Sample Files*..........51
  113.                  Appendix C: Program Specs*.........54
  114.                  Appendix D: LJ Landscape Printers..55
  115.                  Appendix E: Registration Form*.....56
  116.                  Index..............................57
  117.  
  118. *Appendix B and C are not available in the on screen manual.
  119.  
  120.  
  121. Trademarks:
  122.  
  123. SUPER MAKE is a trade mark of EmmaSoft
  124. Clear+ is a trademark of CLEAR Software, Inc.
  125. PC-lint is a trademark of Gimpel Software.
  126. MS-DOS, MS, CodeView and Microsoft are registered trademarks of
  127. Microsoft Corporation.
  128. Turbo C is a trademark of Borland International, Inc.
  129. CompuServe is a registered trademark of CompuServe Information Service.
  130.  
  131. SUPER MAKE will run on any IBM XT, AT, 386 or compatible machine using
  132. DOS 3.1 or later, with 640K of memory (it may run with less, but it has 
  133. been tested on machines with 640K.  We assume that between SUPER MAKE and 
  134. your compilers that you will want this much memory), on color and 
  135. monochrome systems.  SUPER MAKE  has been tested with Microsoft C and MASM
  136. as well as the Microsoft LIB and LINK programs.
  137.  
  138. Information on Compiler Support for various brands is in the "readme.sup"
  139. file.  Because this information will be growing as the program develops
  140. it will always be found in "readme.sup."
  141. %table3%
  142. *END*
  143. ■LICENSE AGREEMENT AND WARRANTY:
  144.  
  145. License
  146.  
  147.       1.    You may use the program on a single computer at one
  148.             time.  You may not copy the program and
  149.             accompanying materials except for backup purposes
  150.             or to distribute it as shareware (see Chapter 11).
  151.  
  152.       2.    You may not make copies of the program for sale.
  153.  
  154.       3.    This software is copyrighted, and all rights
  155.             therein are reserved for EmmaSoft.  Registration 
  156.             or purchase of this product does not transfer any
  157.             right, title, or interest in the software except as
  158.             specifically set forth in this agreement.  You are
  159.             hereby notified that the software product is protected
  160.             by United States Copyright Law, and you may be held by
  161.             responsible by EmmaSoft for any infringement of
  162.             such rights or violations to this agreement.
  163.  
  164.       4.    This license is effective until terminated.  You
  165.             may terminate it at any time by destroying the
  166.             program and all copies of it.  It will also
  167.             terminate if you fail to comply with any term or
  168.             condition on this agreement.  You agree upon
  169.             termination to destroy the program together with
  170.             all copies of the program.
  171.  
  172. Warranty
  173.  
  174.       1.    This program is provided "as is" without warranty
  175.             of any kind, either expressed or implied, including
  176.             any warranty of merchantability or fitness for a
  177.             particular purpose.  In no event shall EmmaSoft be
  178.             held liable for any loss of profit, special,
  179.             incidental, consequential, or other similar claims.
  180.  
  181.       2.    EmmaSoft does warrant that the magnetic media on
  182.             which the software is furnished is free of defects
  183.             of materials and workmanship under normal use for
  184.             60 days, provided that EmmaSoft provided your copy
  185.             of the program on such media.  If during this period
  186.             the diskette should become defective it may be returned
  187.             to EmmaSoft for replacement without charge.
  188.  
  189.      Governing law shall be that of New York State.
  190.  
  191.      SUPER MAKE(tm) copyright(c) 1990 EmmaSoft
  192. %contents%
  193.  
  194.                       On Line Table of Contents:
  195.                       --------------------------
  196. Manual: On Line   When viewing this manual on line in the SUPER MAKE 
  197. Editor use hot keys to go to the chapter you want:
  198.  
  199.                              Introduction         alt-i
  200.                  Chapter 1:  Getting Started      alt-g
  201.                  Chapter 2:  Help                 alt-h
  202.                  Chapter 3:  Files and Macros     alt-f
  203.                  Chapter 4:  Make Menu            alt-m
  204.                  Chapter 5:  Setup                alt-s
  205.                  Chapter 6:  Toolbox              alt-s
  206.                  Chapter 7:  Quitting             alt-q
  207.                  Chapter 8:  Kinds of Files       alt-k
  208.                  Chapter 9:  Compatible Files     alt-c
  209.                  Chapter 10: Using the Maker      alt-u
  210.                  Chapter 11: About Shareware      alt-a
  211.                  Appendix A: Error Messages       alt-e
  212. .cp
  213.  
  214.                         Printing the Manual:
  215.                         --------------------
  216.  
  217. Manual: Printing    This manual is provided on your shareware disk 
  218. formatted for SUPER MAKE's help system.  If you want to print the manual 
  219. access the manual from within SUPER MAKE (alt-t, alt-m) and press alt-p 
  220. to print it.  
  221.  
  222. If you want to print the manual to a printer just press Enter if your printer
  223. is attached to lpt1 (the first parallel port).  You may replace lpt1 with
  224. lpt2, com1, or com2 if your printer is hooked up to one of those ports.  To
  225. import the manual into a word processor you must first print it to a file
  226. (you choose the file name in the printing window that pops up when you press
  227. alt-p).
  228.  
  229. The printed manual includes some information that is not shown on the on-
  230. screen version, including in-depth descriptions of the various files.
  231. .cp
  232.  
  233.                         Technical Assistance:
  234.                         ---------------------   
  235.  
  236. SUPER MAKE was written by Dan Veaner.  Dan can be reached at EmmaSoft, or 
  237. CompuServe at 71460,2644.
  238.  
  239. Technical assistance is available ONLY to registered users.  You must have
  240. a valid serial number to receive assistance.  Before calling check the 
  241. manual to make sure you are using SUPER MAKE properly.  If so, try using
  242. a different copy of the program and see if the problem continues.
  243.  
  244. EmmaSoft is opened M-F 9-Noon and 1-5, and sometimes on Saturdays.  When 
  245. you call for assistance have the following information ready (if you get
  246. the answering machine please leave your name, serial number, a number where 
  247. you may be called collect, and some good times to reach you):
  248. .cp
  249.  
  250.       1.  Your valid serial number.  (Type alt-v in the SUPER MAKE 
  251.           Editor to see your serial number.)
  252.  
  253.       2.  Type and make of computer, printer, etc.
  254.  
  255.       3.  Which compiler, linker, etc. you are using.  PLEASE NOTE: 
  256.           EmmaSoft does not support compilers, linkers, and so on.  We
  257.           only support our own product.  If you are having a problem
  258.           with a program SUPER MAKE calls, please call tech support
  259.           at the company that makes that program.
  260.  
  261.       4.  A concise explanation of the problem (what you tried to do,
  262.           what actually happened.  How many times you tried it.  Etc.)
  263. .cp
  264.  
  265. EmmaSoft is very interested in hearing your suggestions for future features
  266. in SUPER MAKE.  Also, if you use a compiler that you would like specifically
  267. supported please let us know (if you could send a sample make file and 
  268. a synopsis of the command line structure it will help).
  269. .cp
  270.  
  271.  
  272. SUPER MAKE is intended to run with any compiler that uses the command format:
  273.  
  274.             compiler_name [command_flags] file_to_be_compiled
  275.  
  276. An example would be the Microsoft C command:
  277.  
  278.                           cl  -c  -AL  myfile.c
  279. *END*
  280. %intro%
  281.  
  282. INTRODUCTION
  283.  
  284. What Is a Make Program?
  285.  
  286. A make program falls into the category of programs that can make life
  287. a lot easier for a programmer.
  288.  
  289. Make programs are used in program development to keep track of how up to
  290. date compiled files are.  By using a maker you can keep all of the 
  291. information you usually pass to your compiler from the command line in a
  292. make file.  Whenever you invoke the maker with that make file it compares
  293. the date and time stamps of a target file and it's dependents (a target
  294. is the file to be made, and the dependent is the file(s) to make the target
  295. from.  For example, if you are making the target myfile.obj its dependent
  296. might be myfile.c if you are writing in C, myfile.asm if you are writing
  297. in assembly language, and so on).  If the target is older than its 
  298. dependents compiler is called to recompile that file.
  299. .cp
  300.  
  301. The advantage to this is that only source code files that have been updated
  302. since the last program build are compiled.  You don't have to remember
  303. which files you have updated and you don't have to recompile them manually.
  304. Also you don't have to sit and wait while the whole program is compiling.
  305. Only those source code files that have been changed are compiled.
  306.  
  307. Makers look for the targets and call your compiler (or linker or librarian)
  308. only if 1) the dependent file has changed since the last compile of the
  309. target or 2) the target doesn't exist.
  310. .cp
  311.  
  312. Wherefore SUPER MAKE?
  313.  
  314. Above we said that makers make a programmer's life easier.  Unfortunately
  315. not all makers do this.  Sometimes learning the syntax of a make file is
  316. like learning a whole new language.
  317.  
  318. SUPER MAKE simplifies all this by providing an editor that generates your
  319. make files for you.  You fill information in (in the Setup manu) about
  320. how your compilers work, what libraries you want to link into your program,
  321. and so on, and the SUPER MAKE Editor (SME) does the rest.
  322.  
  323. In addition there are many advanced features to SUPER MAKE that save you
  324. key strokes; let you manage your source, object and executable files more
  325. easily; and generally help make program development a simpler process.
  326. .cp
  327.  
  328. SUPER MAKE has several special features that make it easy to use for 
  329. program development.
  330.  
  331.     1.    Path management.  SUPER MAKE files contain the full path
  332.           of your source code, so the maker can find your code on
  333.           any supported drive and directory (drives a: through t:
  334.           are recognized if available).
  335.  
  336.           In addition you may set a drive and directory to put your
  337.           object files in, no matter where your source code is.  You
  338.           may also set a directory to keep your executable files or
  339.           libraries in.
  340. .cp
  341.  
  342.     2.    Command line.  SUPER MAKE remembers what project you are 
  343.           working on and what features you are currently working on.
  344.           Most of the time all you have to type to rebuild your
  345.           program is "sm".  You type more information ONLY when you
  346.           change the make file you are working with, and/or when
  347.           you want to change the development parameters.  (For example,
  348.           if you originally called SUPER MAKE to build MYFILE using
  349.           debugging information (as for CodeView) and want to rebuild
  350.           without it you would type "sm -n", saving quite a bit of 
  351.           typing at the command line).  
  352. .cp
  353.  
  354.     3.    SUPER MAKE Editor.  The Editor that comes with SUPER MAKE
  355.           automatically develops make files for SUPER MAKE from a list
  356.           of source files you pick.  This significantly reduces the time
  357.           it takes to create make files, and insures that they will be
  358.           error free.
  359.  
  360.           In addition the SUPER MAKE Editor builds make files for
  361.           Microsoft MAKE and NMAKE, builds Response files for Mic-
  362.           rosoft LINK and LIB, Indirect files for PC-LINT, and List
  363.           files for Clear++.
  364.  
  365.           The SUPER MAKE Editor is a full featured program with many
  366.           features for developing the above files, maintaining its own
  367.           files, and more.
  368. .cp
  369.  
  370. SUPER MAKE is three programs in one.  
  371.  
  372. SM.EXE is the maker.  You must first compose a SUPER MAKE file for
  373. the maker  to use in putting your program together.
  374.  
  375. To compose this file you use SME.EXE, the SUPER MAKE Editor.  This
  376. makes it  easy to build make files that SUPER MAKE can use.  But
  377. the Editor can do much  more:  it will build Microsoft compatible
  378. make files, .res files for LINK and LIB, and files  for Brief and 
  379. Clear+.
  380.  
  381. A third program, SMH.EXE, is a help facility used by SUPER MAKE and
  382. the installation program.  You may also use it as a stand alone program
  383. (see Chapter 2).
  384. *END*
  385. %1%
  386.  
  387. Chapter 1:   GETTING STARTED
  388.  
  389. The SUPERFILES variable:
  390.  
  391. If you did not let INSTALL.EXE do so, the first thing you must do after 
  392. installing the program is to set the SUPERFILES dos environment variable.  
  393. This is very important if SUPER MAKE is to find its own files.  Let's say 
  394. you are keeping your SUPER MAKE files in a directory called \SMFILES on 
  395. drive C:.  At the DOS prompt you should type:
  396.  
  397.                       SET SUPERFILES=C:\SMFILES
  398.  
  399. If you include this command in your autoexec.bat file you will not have
  400. to worry about it each time you want to use SUPER MAKE.  (SUPER MAKE will
  401. not run if this isn't set.)
  402.  
  403. Complete setup instructions can be found in the "readme" file.
  404. .cp
  405.  
  406. Path:
  407.  
  408. You will also want to add the SUPER MAKE directory to your path command.
  409. If your command already looks like this:
  410.  
  411.                       PATH C:\;C:\BIN
  412.  
  413. you will want to add the SUPER MAKE directory to it:
  414.  
  415.                       PATH C:\;C:\BIN;C:\SMFILES
  416.  
  417. IMPORTANT NOTE: It is assumed in these documents that your compilers 
  418. are kept in directories that are included in your PATH command.  If they 
  419. are not SUPER MAKE will not be able to call them.
  420. .cp
  421.  
  422. Mouse Stuff:
  423.  
  424. If you have a Microsoft (or compatible) mouse the SUPER MAKE editor will
  425. sense it (if it is properly installed).  Here is a summary of Mouse 
  426. Commands:
  427.  
  428.     Menus:
  429.  
  430.     Left Button      Pick A Menu Choice
  431.     Right Button     Help
  432.  
  433. An Epsilon symbol appears at the top left of the screen.  To exit a 
  434. menu place the mouse cursor over it and press the left button.
  435.  
  436. Placing the Mouse Cursor over "Quit" and pressing the left button is
  437. like choosing "Quick Quit" (alt-q), avoiding the quit menu.
  438. .cp
  439.  
  440.    Help:
  441.  
  442.    Left Button       Next screen
  443.    Right Button      Previous Screen
  444.  
  445.  
  446.    Macros:
  447.  
  448.    With the mouse cursor in the upper menu window:
  449.  
  450.    Left Button       (Over the Epsilon) Quit Macros
  451.    Right Button      Help
  452.  
  453.    With the mouse cursor below the upper menu window:
  454.  
  455.    Left Button       Next Macro
  456.    Right Button      Previous Macro
  457. .cp
  458.  
  459.    While Picking Code Files:
  460.  
  461.    When choosing a drive or directory put the mouse cursor on your choice
  462.    and press:
  463.  
  464.    Left Button       Chooses Drive or Directory
  465.    Right Button      Help
  466.  
  467.    When Marking files:
  468.  
  469.    Left Button       Marks or unmarks a file
  470.    Right Button      Help
  471.  
  472.    To see another page of directories or files put the mouse cursor over
  473.    the word "Page" in the appropriate window. 
  474.  
  475.    Left button       Next Page 
  476.    Right button      Previous Page
  477. .cp
  478.  
  479. Time and Date:
  480.  
  481. Because makers use your computer's clock to compare the time and date of
  482. files to be compiled it is very important that the current time and date
  483. be set on your machine before using SUPER MAKE.  
  484. .cp
  485.  
  486. Setup Information:
  487.  
  488. You set your program options in the Setup menu of the SUPER MAKE editor.
  489. The values you set up here effect all three programs (SM.EXE, SME.EXE,
  490. SMH.EXE).  In particular, the color settings effect all three.  
  491.  
  492. The maker's (SM.EXE) behavior is particularly effected by three setup 
  493. values.  These are the two path settings for object and executable files, 
  494. and the brand of compiler currently active.  So that you don't have to use
  495. the SUPER MAKE Editor each time you want to check or reset these, you may
  496. call SUPER MAKE with the -q (Quick Set) flag (SM -q <Enter>).
  497. .cp
  498.  
  499. Quick Start:
  500.  
  501. A sample program has been provided for you to experiment with.  To
  502. use it you need a C compiler (an assembler isn't needed, as the .obj
  503. file for the assembly module is included).  If you program in a
  504. language other than C you can easily write a small test program.
  505.  
  506. The test program consists of three modules, SAMPLE.C, SAMPLE1.C, and
  507. SAMPLEA.ASM.  These contain five functions.  (The program is a simple
  508. addition program.  To use it you call the program with two numbers.
  509. The program adds the numbers and reports on whether the exit is good 
  510. or bad (a bad exit is when the program has been called incorrectly.
  511. Example:  SAMPLE 4, 67 <Enter>.
  512.  
  513. The assembly module was written for the small model, so you should
  514. set SUPER MAKE for that model (the default as shipped).
  515. .cp
  516.  
  517. To generate make and other files:
  518.  
  519.       1.  Type: "SME" at the DOS prompt to start the SUPER MAKE Editor.
  520.  
  521.       2.  In SETUP menu (alt-s) mark which types of files to generate
  522.  
  523.       3.  In SETUP menu (alt-s) If using Microsoft maker set default 
  524.             maker and memory model (alt-d) if you haven't already done so.
  525.  
  526.       4.  In MAKE Menu (alt-m) Pick files (alt-p).
  527.           Choose drive and directory, mark files to be included in
  528.             your files.
  529.  
  530. .cp
  531.       5.  In Escaping from the DRIVES menu a window pops up containing 
  532.             your choices.  Highlight the file you want to lend it's name
  533.             to the executable, make, .res and other files, then press 
  534.             Escape.
  535.  
  536.       6.  Set libraries for memory models 1,2 and 3  (alt-l) if you 
  537.             haven't already done so.
  538.  
  539.       7.  Press (alt-s) to SuperMake your files.
  540.  
  541.       8.  Back up through the menus with the Escape key, or press
  542.              (alt-q) to Quick Quit.
  543. .cp
  544.  
  545. To use SUPER MAKE:
  546.  
  547.       1.  Start SUPER MAKE using flags and the SUPER MAKE make file
  548.              name (do not use the extension).
  549.           Example:   sm -1 -d sample
  550.           The above example calls SUPER MAKE to use the small memory 
  551.              model and to compile and link with Debugging information,
  552.              using the SAMPLE.SMF make file.
  553.  
  554.       2.  Each time you modify your source code and you want to re-
  555.             compile using the same parameters just type:  sm
  556. .cp
  557.  
  558. To use the SUPER MAKE Help Facility
  559.  
  560.       1.   For a specific topic type:  smh [topicname]
  561.  
  562.       2.   For this Manual: On Line type:    smh manual
  563.               (Manual: Printing    Once the Table of Contents is on 
  564.               screen press (alt-p) to print out a copy of the manual,
  565.               or highlight the chapter you want to read and press Enter.)
  566.  
  567.       3.   Escape to quit.
  568. .cp
  569.  
  570. Longer explanation:
  571.  
  572. Start the SUPER MAKE Editor with the command:  SME <Enter>
  573.  
  574. To begin with you should set up SUPER MAKE.  (alt-s)
  575.  
  576. First you will want to set the colors if you didn't do so during 
  577. installation.
  578.  
  579. Now go through the rest of the Setup menu to set the files you want to 
  580. make.  When shipped SUPER MAKE is set to make all files it can make, using 
  581. the default file name you choose at the time you pick source code files to 
  582. be included in a program's development.  
  583. .cp
  584.  
  585. The following keys work in most parts of the SUPER MAKE Editor:
  586.  
  587.               Esc        Go back 1 step
  588.               alt-q      Fast Quit to DOS
  589.               alt-v      Show the Version and Serial Number
  590.               alt-b      Toggle Compiler Brand Reminder
  591.               alt-h      Help
  592.               F1         Help
  593.               alt-r      Review Current Settings
  594.               alt-'x'    Where 'x' is the first letter of a menu choice
  595.  
  596. Exit the Setup Menu (Esc) and choose the Make menu (alt-m).  You must set
  597. a few things up here before building a Make file.
  598. .cp
  599.  
  600. First define your macros (alt-d).  Use Page-Up and Page-Down to view each
  601. set of macros.  (If you only use one language and the linker it is OK to
  602. leave the other macro sets defined.)  If you need to change any of the
  603. macros press alt-e to get the editing screens.
  604.  
  605. When that is done pick Library File Names (alt-l).  When shipped these
  606. are set for small, medium and large memory models with no libraries. The
  607. default memory model is small, and the Microsoft maker is set as NMAKE.
  608.  
  609. If you want to link special libraries to your program put the library name
  610. under the appropriate memory model.  If memory models aren't an issue you 
  611. should still list your libraries here if you want to link them.
  612.  
  613. .cp
  614.  
  615. Now pick the source code files you want included in your program (alt-p).
  616. Choose a drive and directory (Page-Up and Page-Down give you more directory
  617. and file choices if applicable), and mark the files.  File marking is done 
  618. using the arrow keys to place the bar over a choice and pressing the + key.
  619. To unmark a choice press the - key.
  620.  
  621. Now press Escape 3 times.  Now you get a window showing the choices you 
  622. made.  Put the bar over the file name that you want all of your files to 
  623. take their names from, and press Escape.  (For example, if you choose a 
  624. file called 'prog.c' your executable will be called 'prog.exe,' your
  625. SUPER MAKE file will be called 'prog.smf,' your Microsoft compatible 
  626. make file will be called 'prog,' and so on.
  627. .cp
  628.  
  629. The last step is to make the files.  Choose SUPERMAKE (alt-s).
  630.  
  631. Now exit the SUPER MAKE Editor and build your program with the following
  632. command syntax:
  633.  
  634.                      sm [flags] [makefilename*]
  635.  
  636. *Do not type the file extension.
  637.  
  638. For example to build prog.exe using the small memory model type:
  639.  
  640.                      sm -1 prog
  641.  
  642. (For the Medium model use -2 and for the Large model use -3.  Numbers are
  643. used here so that you are not tied to these specific models.  They may be
  644. changed in the Library File Names choice in the Make menu).
  645. .cp
  646.  
  647. As you develop your program you only need to use the command 'sm <Enter>'
  648. until you want to change something.  For example, to specially compile
  649. for a debugger such as CodeView, type:
  650.  
  651.                      sm -d
  652.  
  653. To change to the large memory model type:
  654.  
  655.                      sm -3
  656.  
  657. You may use more than one command flag at a time by typing multiple flags.For 
  658. example, to go back to a finished compile using the small model type:
  659.  
  660.                      sm -n -1
  661. .cp
  662.  
  663. Notice you don't have to type the make file name again.  If you want to build
  664. several programs using the same settings you can type:
  665.  
  666.                      sm [newfilename]
  667.  
  668. for each program you want to build.
  669.  
  670. For a full list of command flags see chapter 10.
  671. *END*
  672. %2%
  673.  
  674. Chapter 2:  HELP
  675.  
  676. There are three ways to get help:
  677.  
  678.            You may get help in the SUPER MAKE Editor.
  679.  
  680.            You may get help by using the -h flag in SUPER MAKE
  681.  
  682.            You may use the SUPER MAKE Help Utility
  683.  
  684.  
  685. Once you are in Help, press the down arrow for the next screen, up
  686. arrow for  the previous screen, or the Escape key to leave help.
  687. .cp
  688.  
  689.                        HELP in the Editor:
  690.  
  691. The SUPER MAKE Editor has context sensitive help.  This means that
  692. the  program knows what you need help for, and automatically gives
  693. you help for that task.  Use F1 or alt-h to get help virtually
  694. anywhere in the editor.
  695.  
  696. Manual: On Line, Manual: Printing
  697.  
  698. To view or print the manual choose "Manual" from the toolbox menu.
  699. See "The SUPER MAKE" Help Utility for instructions on using the 
  700. online manual, or printing the manual to a printer or disk.
  701. .cp
  702.  
  703.                        HELP in SUPER MAKE
  704.  
  705. When using SUPER MAKE use the -h flag to get a summary of SUPERMAKE
  706. commands, -hi for information about SUPER MAKE or use the -hf flag to 
  707. view a commented make file sample.
  708. .cp
  709.  
  710.                        The SUPER MAKE Help Utility
  711.  
  712. A separate utility has been included for reading help files.  When 
  713. calling this program you must type one argument.  The argument must be 
  714. either a help topic, or the word 'manual'.
  715.  
  716. For a list of help topics type:
  717.   
  718.                            type super.ndx
  719.  
  720. at the DOS prompt.  When calling the Help Utility do not type the percent
  721. (%) marks.  If a topic is more than one word long you must enclose the topic 
  722. in quotes.
  723.  
  724. To access the manual use the word 'manual' as the argument.
  725. .cp
  726.  
  727. examples:
  728.                   right:   smh files
  729.                   wrong:   smh main menu
  730.                   right:   smh "main menu"
  731.                   right:   smh manual
  732. .cp
  733.  
  734.                          Manual: On Line
  735.  
  736. To use the on-line manual use the arrow keys to place the bar over the 
  737. chapter you want to read, then press Enter.  You may access any chapter 
  738. quickly by pressing alt-'x' (where 'x' is the first letter of the chapter 
  739. or appendix title).
  740.  
  741. For help on using the manual press F1.
  742.  
  743.                          Manual: Printing
  744.  
  745. To print the manual press alt-p.  The Print Window pops up on your screen.  
  746. To print the manual on your printer type lpt1 (the default), lpt2, com1, or 
  747. com2, depending on which port your printer is attached to.
  748. .cp
  749.  
  750. To print the manual to a disk file for printing later or importing into a
  751. word processor type a file name.  You may use any file name except those
  752. reserved for printer ports (lpt1, etc.).  
  753.  
  754. To escape without printing blank the line and press enter.
  755. *END*
  756. %3%
  757.  
  758. Chapter 3:  Make Files and Macros
  759.  
  760. Anatomy of a SUPER MAKE file
  761. ----------------------------
  762.  
  763. SUPER MAKE make files have two sections:  first a listing of macros,
  764. and then the action blocks.  The format for macros is:
  765.  
  766.                MACRONAME = macrovalue
  767.  
  768. For action blocks the format is:
  769.  
  770.                TARGET: DEPENDENT
  771.                     command line
  772.  
  773. There must be NO space between the first and second line of an action block.
  774. .cp
  775.  
  776. Comments don't take any special format except that they must not be on the 
  777. same line as a macro or action block.
  778.  
  779. What SUPER MAKE thinks a macro is:
  780.  
  781. The Action Blocks in a make file have two parts.  The first part (the
  782. target : dependent line) checks to see whether a task should be performed.
  783.  
  784. The second (the command line) performs the task if it needs to be done.
  785. SUPER MAKE's macros are used for the second part.
  786. .cp
  787.  
  788. This command line invokes a compiler, linker, etc., with various flags 
  789. and commands that make it do what you want it to do.  SUPER MAKE breaks 
  790. up this command line into sections that help make it easy to use the 
  791. different options you want.  When the Make file is used the list of 
  792. macros is used to build the command line.  IF A MACRO IS BLANK IT HAS NO
  793. EFFECT.  If there is a command in it the command is passed to the compiler
  794. (or linker or whatever).  See "Setting Macros" below for a description of
  795. the SUPER MAKE macros.  In short it is like putting together a sentence. 
  796. When the words (containing the letters needed) are put together in order 
  797. you get a sentence, as when the macros (containing the commands needed) are
  798. put together you get a command line.
  799. .cp
  800.  
  801. Setting Macros:
  802.  
  803. SUPER MAKE remembers the last macro settings you set up.  There are five
  804. sets of macros that must be set: one set for each of three languages one 
  805. for the linker, and one for the librarian.  
  806. .cp
  807.  
  808. When SUPER MAKE sets up a command line it builds the command out of macros.
  809. Here is the order in which macros are used:
  810.  
  811. Languages 1,2,3                      Linker, Librarian
  812.  
  813. [compile only]                       [debug or nodebug]
  814. [mem model]                          [flags1]
  815. [debug or nodebug]                   [flags2]
  816. [flags1]                             [target extension]*
  817. [flags2]                 filename.[dependent extension]*
  818. [target extension]*
  819. [dependent extension]*
  820.  
  821. Macros marked with an asterisk (*) are mandatory.  If you do not set values
  822. for the optional macros they will have no effect on the command.
  823. .cp
  824.  
  825. Example:  These macros (and the file name cfile) would expand to 
  826. the following command (when using memory model 3):
  827.  
  828. [compiler name]           cl
  829. [compile only]            -c
  830. [mem model1]              -AS
  831. [mem model2]              -AM
  832. [mem model3]              -AL
  833. [nodebug]
  834. [debug]                   -Zi -Od
  835. [flags1]                  -V"My Program"
  836. [flags2]
  837. [target extension]        obj
  838. [dependent extension]     c
  839.  
  840.                  cl -c -AL -V"My Program" cfile.c
  841. .cp
  842.  
  843. SUPER MAKE has five Macro Sets that it may use in a make file.  A
  844. Macro set is only used if it is needed.  For example, if you have defined
  845. your languages as C, Assembly, and Pascal and write a program entirely
  846. made of C modules, only the Macro Set for C will be used (with the Linker
  847. set, or if you are building a library the Library set will replace the
  848. Linker set.
  849. .cp
  850.  
  851. Here is a list of the five Macro Sets and their functions:
  852.  
  853. Lang1   Lang2   Lang3   Linker   Lib     Meaning:
  854. L1CO    L2CO    L3CO    LNCO     LNCO    "Compile Only" flag
  855. L1M1    L2M1    L3M1    LNM1     LNM1    Memory Model 1 flag
  856. L1M2    L2M2    L3M2    LNM2     LNM2    Memory Model 2 flag
  857. L1M3    L2M3    L3M3    LNM3     LNM3    Memory Model 3 flag
  858. L1ND    L2ND    L3ND    LNND     LNND    No Debug Information
  859. L1D     L2D     L3D     LND      LND     Debug Information
  860. L1F1    L2F1    L3F1    LNF1     LNF1    1st Group of Other Flags
  861. L1F2    L2F2    L3F2    LNF2     LNF2    2nd Group of Other Flags
  862.  
  863. TNAMES =  All the files to be included in the final executable file
  864.           or library  (.com, .exe, or .lib)
  865. .cp
  866.  
  867. The formatting is a little different for Microsoft and Borland products.
  868. In the SUPER MAKE make file the command line looks like this:
  869.  
  870.                  cl (L1) sample.c
  871.  
  872. Commands are built as follows:
  873.   
  874.    Microsoft:     cl  L1CO  L1Mx (L1D or L1ND) L1F1 L1F2 sample.c
  875.    Borland:       tcc L1CO  L1Mx (L1D or L1ND) L1F1 sample.c L1F2
  876.  
  877. Using the second general commands flags macro (LxF2) at the end allows 
  878. for Borland's specific command structure.
  879.  
  880. SUPER MAKE always uses Response files for The Microsoft and Borland
  881. Linkers and Librarians.
  882. *END*
  883.  
  884. Below is an example make file (sample.smf) for three source code modules, 
  885. sample.c, sample1.c, and samplea.asm, included with this package.  The 
  886. comments are included right in the file:
  887.  
  888. Here are the two macro sets used by this particular file (we are only
  889. compiling in one language (C), so we use that set of macros and the
  890. linker set of macros.  Chapter 3 explains a macro set.
  891.  
  892. L1CO = -c
  893. L1M1 = -AS
  894. L1M2 = -AM
  895. L1M3 = -AL
  896. L1ND = 
  897. L1D = -Zi -Od
  898. L1F1 = 
  899. L1F2 = 
  900. L2CO = 
  901. L2M1 = 
  902. L2M2 = 
  903. L2M3 = 
  904. L2ND = 
  905. L2D = -Zi
  906. L2F1 = 
  907. L2F2 = 
  908. LNCO = 
  909. LNM1 = 
  910. LNM2 = 
  911. LNM3 = 
  912. LNND = /E
  913. LND = /CO
  914. LNF1 = /NOE
  915. LNF2 = /ST:25000
  916. CPY = SAMPLE.C+SAMPLE1.C+SAMPLEA.ASM
  917. TNAMES = 
  918.         SAMPLE.OBJ&
  919.         SAMPLE1.OBJ&
  920.         SAMPLEA.OBJ
  921.  
  922. As long as notes don't have any of the symbols used in macros or action
  923. blocks in them, they don't need any special symbols or formatting.  Also,
  924. NOTES MUST NOT BE ON THE SAME LINE WITH A MACRO OR ACTION BLOCK.
  925.  
  926. SAMPLE.OBJ:  C:\CODE\SAMPLE.C
  927.          CL $(L1)  C:\CODE\SAMPLE.C
  928.  
  929. SAMPLE1.OBJ:  C:\CODE\SAMPLE1.C
  930.          CL $(L1)  C:\CODE\SAMPLE1.C
  931.  
  932. SAMPLEA.OBJ:  C:\CODE\SAMPLEA.ASM
  933.          MASM $(L2)  C:\CODE\SAMPLEA.ASM ;
  934.  
  935. Notice the semi-colon (;) at the end of the command line in the assembler
  936. action block.  This was placed there by the SUPER MAKE Editor to prevent
  937. the assembler from stopping for responses during a build.  (This is user
  938. definable in the Setup Menu.
  939.  
  940. sample.txt: placebo
  941.          COPY $(CPY) SAMPLE.TXT
  942.  
  943. The above action block deserves special notice for several reasons.  It
  944. is an example of an action block you might put in manually (the SUPER
  945. MAKE Editor does not generate action blocks using DOS commands).
  946.  
  947.        1.  It uses a DOS command on the action line.  SUPER MAKE
  948.        supports these DOS commands (cd, chdir, chkdsk, cls, comp,
  949.        copy, del, dir, diskcomp, diskcopy, fc, find, format, mem,
  950.        mkdir, md, print, ren, remdir, rd, xcopy).
  951.  
  952.        2.  A Placebo has been used for the dependent.  This is any
  953.        word that doesn't represent an actual file.  This allows
  954.        SUPER MAKE to execute the command on the second line of the
  955.        action block.  The first line of an action block MUST ALWAYS
  956.        have a target and a dependent.  The target is the file to be
  957.        created, the dependent is the file(s) it is created from.  You
  958.        may always use a placebo for the dependent.  If you do the 
  959.        command line will ALWAYS be executed, each time you make your
  960.        program.
  961.  
  962.        3.  No path was specified for the dependent.  SUPER MAKE will
  963.        look for the dependent in the current (default) directory.
  964.  
  965.        4.  The target is not an object file, or an .exe, .com, or .bat
  966.        file.  SUPER MAKE generates a message that it doesn't know where
  967.        you want the target file, and that it is putting it in the 
  968.        current (default) directory.
  969.  
  970.        5.  A user defined macro has been used (CPY).  The other way to
  971.        do this would be to put the whole command right on the command
  972.        line.  Example -- copy sample.c+sample1.c sample.txt
  973.        Either method is acceptable.  By the way you can add commands
  974.        directly to the command line on command lines that use macro
  975.        sets such as (L1).  Just type them after the (L) macro.  You can
  976.        also put user defined macros there if you want.  The only limit
  977.        is that the whole command line, including whatever is contained in 
  978.        macros may not exceed 128 characters.
  979.  
  980. sample.txt: c:\code\sample.c c:\code\sample1.c c:\code\samplea.asm
  981.          COPY $(CPY) SAMPLE.TXT
  982.  
  983. Here's the same action block without the placebo.  Notice the multiple 
  984. dependents.  SUPER MAKE can handle up to 18 dependents in an action block
  985. (if there's room for them on a line).
  986.  
  987. SAMPLE.EXE: $(TNAMES)
  988.          LINK $(LN)  @SAMPLE.LNK
  989.  
  990. Action blocks MUST be two lines with no blank lines in between them, as 
  991. shown above.
  992.  
  993. As you can see there is no special format for Notes except that they
  994. must not have the format of a macro or a target/dependent line.  The
  995. only trouble with using a LOT of notes is that it slows down the working 
  996. of SUPER MAKE (although in my tests on an 80386/16 I haven't noticed
  997. any real difference in time.  I have been using this file for testing
  998. and you will agree it is quite verbose!).  So the rules for notes are-
  999.  
  1000.       -Always put notes on their own line in the file.  For
  1001.        clarity's sake skip a line between notes and macros or
  1002.        action blocks.
  1003.       -Never use symbols in notes that are used in macros or
  1004.        action blocks (equal sign, colon, dollar sign, etc).
  1005.       -Be sparing with your notes.
  1006.  
  1007. If your ultimate goal is to create a program the .smf file will link
  1008. with @xxxxxxxx.lnk.  This is a message to SUPER MAKE to use the .res
  1009. file for the memory model you specified (.lrs, .lrm, .lrl).  When 
  1010. compiling a library file the .lbr file is explicitly used in the make
  1011. file and by the maker.
  1012. %4%
  1013.  
  1014. Chapter 4:  Make Menu
  1015.  
  1016. INTRODUCTION
  1017. Once you have set your options you use the Make Menu to make the
  1018. files you want to generate.  SUPER MAKE needs some information
  1019. before it can generate the files.
  1020.  
  1021. Typically you will choose the files you want to include in a Make
  1022. file.  If you have chosen (in Options) not to use the default file
  1023. name (a name you choose from the list of files you pick) you will
  1024. also have to type in file names.
  1025.  
  1026. If you always use the same libraries and compiling or linking
  1027. options you may set the library names and define the macros once. 
  1028. The SUPER MAKE Editor saves your last settings and uses them unless
  1029. you change them.
  1030. .cp
  1031. PICK CODE FILES   (alt-p)
  1032.  
  1033. Use this option to pick up to 75 files to be included in your make
  1034. file.  You may pick files from any drive or directory on your
  1035. computer.  This is done in the Drive, Directory and Files Windows. 
  1036. At any time you may press Escape to go to the last window.
  1037.  
  1038. If you mark a file in a directory and exit the Files Window and
  1039. then for some reason go back to the files window, that file will
  1040. appear unmarked.  Be careful not to mark the same file again, or it
  1041. will be treated as a different file.  This could cause duplicate
  1042. compile commands for that file.
  1043. .cp
  1044.  
  1045. Picking a Drive:
  1046.  
  1047. SUPER MAKE senses what drives you have on your system and lets you
  1048. choose a  drive to work on.  To choose a drive use the arrow keys
  1049. to highlight the drive letter, or type the drive letter.  Then
  1050. press Enter.  SUPER MAKE supports drives a: through t:.
  1051.  
  1052. Picking a Directory:
  1053.  
  1054. Next the program lists all the directories on the drive.  If there
  1055. are more than 20 directories use Page Up or Page Down to see more. 
  1056. Use the up and down arrow keys to highlight the directory you want
  1057. to view, and then press Enter.
  1058. .cp
  1059.  
  1060. Marking Files:
  1061.  
  1062. Use the up and down arrow keys to highlight a file you want to
  1063. mark.  Then use the + and -keys to mark or unmark files you want in
  1064. your Make file.  You may use the escape key to go to the
  1065. Directories window to choose another directory to mark files in.
  1066.  
  1067. You may now use the escape key to exit the directory you are in, and
  1068. go to other directories to continue marking files.  Or you can escape
  1069. again and pick another drive.
  1070.  
  1071. When you escape from the DRIVES window you are presented with a window
  1072. that has all your choices in it.  Put the bar over the file whose name
  1073. you want to use as the default name for your executable file, make files,
  1074. and so on.  Now press Escape and you are ready to generate your files 
  1075. (alt-s).
  1076. .cp
  1077.  
  1078. CHOOSE DEFAULT FILENAME  (alt-c)
  1079.  
  1080. This is not shown on the menu, but it is included for when you are editing
  1081. an old make file.  If you have chosen to delete files from your make 
  1082. file without adding more this is a way to get to the window in which
  1083. you choose the file whose name will be the default name.  Another way to 
  1084. do it is to go into the Pick Drives (alt-p) menu and then Escape.
  1085. You can also use alt-c to see if there are any file names currently on
  1086. the list.  If so, always choose a default if you plan to generate a make
  1087. file from this list.  Nothing will happen if there is nothing on the list.
  1088. The window won't even pop up.
  1089.  
  1090. If you have a mouse place the cursor over the EXE-LIB reminder (It says
  1091. "Building EXE" or "Building LIB") and press the left button to get this
  1092. window.
  1093. .cp
  1094.  
  1095. NEW FILE (RESET)  (alt-n)
  1096.  
  1097. Use this option to blank out old values.  When you Pick Files a list is
  1098. started from which your make file will be generated.  Unless you Reset
  1099. the SUPER MAKE Editor this list remains active, and when you pick more
  1100. files they are added to the existing list, even if you have left the Make 
  1101. menu.
  1102.  
  1103. When starting to build a new make file it is very important that you 
  1104. reset the SUPER MAKE Editor first, or you may have files included from
  1105. a previous make file.
  1106.  
  1107. When you first start the SUPER MAKE Editor it resets itself.
  1108. .cp
  1109.  
  1110. EDIT OLD FILE    (alt-e)
  1111.  
  1112. Using this feature does NOT actually edit a SUPER MAKE file.  What it
  1113. DOES do is read the existing file, retrieve the names of the dependents,
  1114. and give you the opportunity to add or delete files before rebuilding
  1115. the make file.
  1116.  
  1117. If you want to save the original make file you must give the new one 
  1118. another name.
  1119.  
  1120. This will be very useful to some programmers who use SUPER MAKE files
  1121. generated by the SUPER MAKE Editor without adding comments, DOS commands,
  1122. or other special items.  The rule of thumb is:  if you use SUPER MAKE
  1123. files AS IS, this is the way to edit them.  If you manually add commands,
  1124. comments, etc. to your make files use a text editor to edit them manually.
  1125. .cp
  1126.  
  1127. You change an old make file in five steps:
  1128.  
  1129. 1.  Reset the SUPER MAKE Editor  (alt-r).
  1130.  
  1131. 2.  Read the old version of the make file (alt-e).
  1132.  
  1133. 3.  Change the settings of your Macros, Libraries, etc.  If you 
  1134.     always use standard settings or you are using the last settings
  1135.     you set up you may skip this step.    
  1136.  
  1137. 4.  Pick code files (alt-p).  If you are not adding new code files
  1138.     press escape when you get the DRIVES window.  You now get the window
  1139.     that lets you pick the file from which your program, make file, etc.
  1140.     will take its name.  Or use (alt-c) to get the window directly.
  1141.  
  1142. 5.  Make the file (alt-s)
  1143. .cp
  1144.  
  1145. MACROS    (alt-m)
  1146.  
  1147. Before generating make files you should define the make file macros in
  1148. this section.  SUPER MAKE tries to demystify macros by breaking them
  1149. down into easily understandable functions.
  1150.  
  1151. Macros are set for 3 programming languages and the linker or librarian
  1152. for a total of 5 sets of macros.  Each set of macros is shown one screen 
  1153. at a time.  To see the different screens use the Home, End, Page Up, and 
  1154. Page Down keys.
  1155.  
  1156. The SUPER MAKE Editor assumes you are compiling files to end up with a
  1157. specific result, namely an executable file or an object library.  If it
  1158. is set for executable files you will get four macro screens-- one for
  1159. each language and one for the linker.  Similarly, if you are set for
  1160. building Libraries the Linker screen will be replaced by the Library
  1161. screen.  Use alt-l to toggle between these choices.  
  1162. .cp
  1163.  
  1164. Macro Setting Command Summary:
  1165.  
  1166.               Pg Down    Next Screen
  1167.               Pg Up      Last Screen
  1168.               Home       First Screen
  1169.               End        Last Screen
  1170.               Esc        Exit to Make Menu
  1171.               alt-q      Quick Quit to DOS
  1172.               alt-v      Show Version and Serial Number
  1173.               alt-r      Reset this screen according to langx.sm file
  1174.               alt-e      Edit this screen
  1175.               alt-l      Toggle Linker/Lib
  1176.               alt-F1     Toggle Command Help List
  1177. .cp
  1178.  
  1179. While Editing:
  1180.  
  1181.               alt-F1     Toggle Command Help List
  1182.               F1         Help
  1183.  
  1184. Resetting Macros (alt-r):
  1185.  
  1186. When you compose your langx.sm files you may preset macro values (see below).
  1187. If a value is listed SUPER MAKE will import it.  Of course you can always 
  1188. edit these values at any time (alt-e).  Alt-r resets the macros for ONE 
  1189. language, the one you are viewing.  To reset all four sets of macros press
  1190. alt-r on each of the four macro screens.
  1191.  
  1192. This is especially useful when you almost always set macros the same way,
  1193. but have to change a few for a particular program.  When you are done 
  1194. building the files for that program use alt-r to reset your usual macro
  1195. values.
  1196. .cp
  1197.  
  1198. Compiler Definition Files:
  1199.  
  1200. In your SUPER MAKE directory you MUST have five Compiler Definition 
  1201. files, named lang1.sm, lang2.sm, lang3.sm, lib.sm and linker.sm.  SUPER 
  1202. MAKE uses these files to automatically generate some of the macros.  These
  1203. are standard ascii files which you may create in any text editor (for your
  1204. convenience there is a Language Definition File Editor in the Toolbox 
  1205. menu.) that saves files in ASCII format.  However, the files have a 
  1206. specific format, and if you create your own Compiler Definition Files 
  1207. you MUST follow this format (the Language Definition File Editor auto-
  1208. matically uses this format).
  1209.  
  1210. Samples of these files (for MSC, MASM, Microsoft LIB, and LINK, or Turbo C, 
  1211. TASM, and the Borland Linker) are included on your shareware disk.     
  1212. .cp
  1213.  
  1214. The format for the langx.sm files is as follows:
  1215.  
  1216. Line:  What to Type:                             Example:
  1217.  
  1218. 1:     Compiler Command                          CL
  1219. 2:     Target extension (without dot)            OBJ
  1220. 3:     Dependent extension (without dot)         C
  1221. 4:     Compile w/out linking command             -c
  1222. 5:     Mem Model Command 1                       -AS
  1223. 6:     Mem Model Command 2                       -AM
  1224. 7:     Mem Model Command 3                       -AL
  1225. 8:     Debug Setup Commands                      -Zi -Od
  1226. 9-28:  Compiler options and notes                -Zi Makes Code View Info   
  1227.  
  1228. Lines 9-28 will go to a help screen and should not contain more than 40
  1229. characters.  Lines 1-8 should not include more than 25 characters each.
  1230. .cp
  1231.  
  1232. IMPORTANT NOTE:
  1233.  
  1234. Whether you use all of the Language Definition Files or not, you must have 
  1235. all five files in your SUPER MAKE directory.  If you want a blank file (for
  1236. no language, linker or lib) create a file with 8 blank lines and name it
  1237. appropriately.
  1238.  
  1239. For example, SUPER MAKE ships with lang3.sm configured as a blank file.
  1240. .cp
  1241.  
  1242. The format for the linker.sm file is as follows:
  1243.  
  1244. Line:  What to Type:                             Example:
  1245.  
  1246. 1:     Linker Command                            LINK
  1247. 2:     Target extension (without dot)            EXE
  1248. 3:     Dependent extension (without dot)         OBJ
  1249. 4:     Blank line
  1250. 5:     Blank Line
  1251. 6:     Blank Line
  1252. 7:     Blank Line
  1253. 8:     Debug Setup Commands                      -CO
  1254. 9-28:  Linker options and notes                  -E Packs exe files
  1255.  
  1256. Lines 9-28 will go to a help screen and should not contain more than 40
  1257. characters.  Lines 1-8 should not include more than 25 characters each.
  1258. .cp
  1259.  
  1260. The format for the lib.sm files is as follows:
  1261. Line:  What to Type:                             Example:
  1262.  
  1263. 1:     Linker Command                            LIB
  1264. 2:     Target extension (without dot)            LIB
  1265. 3:     Dependent extension (without dot)         OBJ
  1266. 4:     Blank line
  1267. 5:     Blank Line
  1268. 6:     Blank Line
  1269. 7:     Blank Line
  1270. 8:     Blank Line
  1271. 9-28:  Lib options and notes                     /P[num] Set Lib Pg Size
  1272.  
  1273. Lines 9-28 will go to a help screen and should not contain more than 40
  1274. characters.  Lines 1-8 should not include more than 25 characters each.
  1275. .cp
  1276.  
  1277. Before saving these files make sure there are no spaces at the end of each
  1278. line.
  1279.  
  1280. If these files exist SUPER MAKE uses the values contained in them to 
  1281. automatically set up some of your macros, and to create help screens to
  1282. help you set up the remaining macros.  If they do not exist you must set
  1283. up each macro manually.
  1284. .cp
  1285.  
  1286. TEXT EDITOR   (alt-t)
  1287.  
  1288. In the setup section you tell SUPER MAKE where to find your text editor.
  1289. When you choose Text Editor (alt-t) from the MAKE menu a window pops up
  1290. in which you tell the text editor what file to edit.  If a default file
  1291. name has been chosen it will appear here, but if you want to edit a dif-
  1292. ferent file you may type in it's name.  Entering the text editor with no 
  1293. name will start a new file.  
  1294.  
  1295. Make sure your editor can save its text in pure ascii form.  I like
  1296. Tom Kihlken's eedit (The Easiest Editor-- shareware) or PC Magazines's 
  1297. TED.COM (free on PC-MAGNET).
  1298. .cp
  1299.  
  1300. FILE NAMES   (alt-f)
  1301.  
  1302. If you have chosen not to use the default filename for one or more
  1303. of the files the SUPER MAKE Editor can build you must enter their
  1304. names here.  SUPER MAKE will automatically bring up this screen if
  1305. you forget to name files before generating them.
  1306.  
  1307. Names may be up to 8 characters long.  Do NOT type the file
  1308. extensions or a dot anywhere in the name.  For example:
  1309.  
  1310.              cpro           correct
  1311.              cpro.          incorrect
  1312.              cpro.c         incorrect
  1313. .cp
  1314.  
  1315. SUPERMAKE!============>   (alt-s)
  1316.  
  1317. Choosing this option generates the files.  SUPER MAKE only
  1318. generates files you have chosen to make in the 'Files To Make'
  1319. section of the Options menu.
  1320.  
  1321. SUPER MAKE will make each type of file, one at a time.
  1322.  
  1323. If SUPER MAKE can not make a file for some reason an error message
  1324. is generated explaining why the file was not made.  Otherwise you are
  1325. shown a message as each file is made.
  1326. .cp
  1327.  
  1328. EXE/LIB Reminder
  1329.  
  1330. At the bottom of the Make menu is a a note that reminds you whether the
  1331. SUPER MAKE Editor is set to generate Executable Files (programs) or 
  1332. Libraries.  To change the setting choose Macros (alt-m) and press (alt-l).
  1333. Then press (Esc) to return to the Make Menu.
  1334. .cp
  1335.  
  1336. Make Files:
  1337.  
  1338. SUPER MAKE builds its own Make files and Microsoft compatible make files 
  1339. pretty much the same way.  First it defines several macros, and then it
  1340. sets up the relationship between targets and dependent files.
  1341.  
  1342. The format is:
  1343.                MACRONAME = macrovalue
  1344.  
  1345.                TARGET: DEPENDENT
  1346.                    action to take
  1347.  
  1348. Microsoft compatible make files plug in the appropriate macros in the 
  1349. "action to take" section, while SUPER MAKE files list the macro set to 
  1350. use.  SUPER MAKE then picks the appropriate macros, based on how you 
  1351. called the program.
  1352. .cp
  1353.  
  1354. Microsoft compatible make files have no extension.  SUPER MAKE files have 
  1355. the .smf extension.  In either case, when building a file you type the name 
  1356. of the Make file with no extension.
  1357. Examples:
  1358.  
  1359.          Microsoft MAKE.EXE             make filename
  1360.          Microsoft NMAKE.EXE            nmake filename
  1361.          SUPERMAKE                      sm filename
  1362.  
  1363. Wrong:
  1364.  
  1365.          Microsoft MAKE.EXE*            make filename.mak
  1366.          Microsoft NMAKE.EXE*           nmake filename.mak
  1367.          SUPERMAKE                      sm filename.smf
  1368.  
  1369. *Only true when using make files generated by SUPER MAKE Editor.
  1370. .cp
  1371.  
  1372. If you are making Microsoft compatible make files and have indicated that 
  1373. you use either MAKE.EXE or NMAKE.EXE SUPER MAKE also makes a batch file 
  1374. that will automate your compiling for CodeView.
  1375.  
  1376. If you use MAKE.EXE the batch file will be called mxxxxxx.bat (xxxxxx 
  1377. equals the first six letters of your Make file name, or the whole name if 
  1378. it is less than 6 letters long).
  1379.  
  1380. Similarly, if you use NMAKE.EXE your batch file will be called nmxxxxxx.bat.
  1381.  
  1382. For example, if you have a Make file called "prog" and you want to compile
  1383. and Link it for CodeView using NMAKE.EXE you should type:
  1384.  
  1385.                             nmprog <Enter>
  1386. .cp
  1387.  
  1388. Finally there is the issue of pseudo targets.  If you use NMAKE.EXE the 
  1389. SUPER MAKE Editor puts in a pseudo target as the top description block.  
  1390. This insures that your whole program will compile properly.
  1391.  
  1392. See Chapter 9 for more information on file formats, and see Chapter 3
  1393. (in the printed manual only) for a detailed example of a SUPER MAKE make 
  1394. file.
  1395. *END*
  1396.  
  1397. %5%
  1398.  
  1399. Chapter 5: SETUP
  1400.  
  1401. Before you do anything you should set the options you plan to use with
  1402. SUPER MAKE.  All the SUPER MAKE programs use the same options file 
  1403. (super.ini) to configure themselves and perform their tasks.  This file
  1404. is updated each time you set an option in the Setup menu in the SUPER
  1405. MAKE Editor.
  1406.  
  1407. Remember that in most places you can see a review of the options you have
  1408. set by pressing alt-r.
  1409.  
  1410. To get to this menu start the Editor by typing SME at the DOS prompt.  Now
  1411. press alt-s.
  1412. .cp
  1413.  
  1414. COLORS:   (alt-c)
  1415. If you have a color adapter you will want to set the colors.  Use the right
  1416. and left arrow keys to toggle the color choices.  Some sample text will 
  1417. appear to show you what your choices will look like.  To accept a color 
  1418. choice press Enter.
  1419.  
  1420. You are setting the colors for four types of display.  The "Main Screen" 
  1421. refers to the main work area on the screen.  "Help Screen" refers to the
  1422. help colors in the Editor, and for help in SUPER MAKE and the Help Facility.
  1423. "Message Screen" colors are the colors of various short messages the Editor
  1424. places at the top or bottom of your screen.  "Menu Screen" colors are the 
  1425. colors used on all popup menus in the Editor, and in the Manual Table of 
  1426. Contents in the Help Facility.
  1427. .cp
  1428.  
  1429. FILES TO MAKE:  (alt-f)
  1430.  
  1431. The SUPER MAKE Editor can make six kinds of files including SUPER MAKE files,
  1432. Microsoft compatible make files, Linker Response files, Librarian Response 
  1433. files, and files used by PC-Lint and Clear+ to process multiple source code 
  1434. files.  In addition you choose whether or not to make a map file here.
  1435.  
  1436. For each choice choose (Y)es or (N)o.
  1437.  
  1438. Note that SUPER MAKE makes three response files for the linker to allow for
  1439. three memory models.  These have the extensions .lrs, .lrm, and .lrl.  This 
  1440. is necessary for library maintenance.  The .lrs file uses the libraries in 
  1441. the first column of the Library File Names screen (in the Make menu), .lrm 
  1442. uses the center column, and .lrl the third column.  Typically these refer to
  1443. small, medium and large memory models, but you may use any model by setting
  1444. your preferences on the Library Names screen.
  1445. .cp
  1446.  
  1447. The last question asks whether you want to make an executable file or a
  1448. library.  If you want to compile files without linking (or "lib-ing")
  1449. pick "N".
  1450. .cp
  1451.  
  1452. SUPER MAKE FILES:  (alt-s)
  1453.  
  1454. Here you tell SUPER MAKE where to find your text editor, and where to put 
  1455. object and executable files when you are developing a program.  If you leave
  1456. these choices blank SUPER MAKE uses the default directory.  In addition you 
  1457. set some of SUPER MAKE's behavior.
  1458.  
  1459. Use the entire path in these choices.  For example if a text editor called
  1460. editor.exe is in directory \edit on drive c: type:
  1461.                        
  1462.                                c:\edit\editor
  1463.  
  1464. If you do not set this up you will not be able to use "Text Editor" in the
  1465. "Make" Menu, or "Edit Help Files" in the "Toolbox" Menu.
  1466. .cp
  1467.  
  1468. Set the path for your object files and executable files here.  SUPER MAKE 
  1469. reads this file and puts these files where you tell it to.  If you do not
  1470. enter any values here SUPER MAKE will put the files in the directory you
  1471. call it from.
  1472.  
  1473. You also have the opportunity to choose whether you want the SUPER MAKE
  1474. Editor to search all drives and paths or to always search a drive:\path
  1475. of your choosing.  Pick Y if you want all paths searched.  (Choosing No
  1476. reduces the time it takes to search your equipment for files.  You ONLY
  1477. want to do this if you always keep all your source code in one directory.)
  1478. .cp
  1479.  
  1480. Next you choose whether you want the SUPER MAKE Editor to search all files
  1481. in a directory, or just files with the extensions for the languages you use
  1482. (such as .c or .asm).  
  1483.  
  1484. The next field asks for the path you want to search.  If you have chosen
  1485. to search just one path you must fill this field in to make it work.
  1486. Type in a full path for this.  For example:
  1487.  
  1488.                        right:       C:\CODE
  1489.                        wrong:       \CODE
  1490.                        wrong:       C:\CODE\
  1491. .cp
  1492.  
  1493. Finally there are three fields to type in the extensions to search (if you
  1494. have chosen not to search for all files in a directory).  PLEASE NOTE:  
  1495. Each time you exit the Macro area (alt-m in the Make Menu) these extensions 
  1496. are automatically set.  If you want different extensions here you may
  1497. change them manually.  If you search different code extensions from the 
  1498. ones you save your source code to the best choice is to search files with
  1499. all extensions.
  1500.  
  1501. When you first use the SUPER MAKE Editor these extensions will not be set.
  1502. If you want to set them simply go to the Make menu, press alt-m and then
  1503. press Esc.  If you re-enter this area of the Setup Menu you will see the
  1504. extension fields are filled in with whatever values were set on your Macro
  1505. screens.
  1506. .cp
  1507.  
  1508. NAME DEFAULTS:  (alt-n)
  1509. When making a Make file you mark various files to be included in your 
  1510. program's development.  Then you choose one of these to provide a default 
  1511. name for the files you want the SUPER MAKE Editor to generate.  If you want 
  1512. to use this default name for a file pick (Y)es.  If you want to explicitly
  1513. name a file choose (N)o.
  1514. .cp
  1515.  
  1516. DEFAULTS     (alt-d)
  1517.  
  1518. Here you set the product specific commands.  First you set a default memory 
  1519. model.  This is the memory model that will be used when making a Microsoft 
  1520. compatible Make file.  When using languages where the memory model isn't an 
  1521. issue these settings will have no effect.
  1522.  
  1523. Next you must tell SUPER MAKE which Microsoft product you use (if any). 
  1524. Pick 1 for NMAKE.EXE, 2 for MAKE.EXE, or 0 for none.
  1525.  
  1526. Third, tell SUPER MAKE whether you want a semi-colon (;) at the end of
  1527. assembler commands.  If yes, and the dependent file has the extension 
  1528. ".asm" SUPER MAKE adds a semi-colon.  With the Microsoft Assembler this
  1529. acts as a Response file, avoiding stopping the compile to answer prompts.
  1530. If you do not want this to happen you should delete the semi-colons.
  1531. Example:
  1532.                      MASM $(L2) C:\DIR\FILENAME.ASM ;
  1533. .cp
  1534.  
  1535. Finally choose the compiler brand you want supported.  Use the right and
  1536. left arrow keys to toggle your choice.  (See readme.sup for more 
  1537. information.)
  1538. .cp
  1539.  
  1540. LIBRARY FILE NAMES   (alt-l)
  1541.  
  1542. SUPER MAKE supports three memory models at a time.  You define the
  1543. memory model on the top line of each column.  You may then enter
  1544. the library names for that model that you want linked to your
  1545. program.  This is especially useful when you have a collection of
  1546. libraries you link to all your programs.  
  1547.  
  1548. If a column is left blank the macros for that memory model set will
  1549. be left blank.  For example, if the first column contains Small
  1550. Model libraries and the second is blank, making a file calling SUPER
  1551. MAKE with the -1 command line flag will link the small model libraries 
  1552. while using -2 will not link any.
  1553. *END*
  1554. %6%
  1555.  
  1556. Chapter 6:  TOOLBOX
  1557.  
  1558. In this menu you may do a number of things that make it more convenient to
  1559. use SUPER MAKE.
  1560.  
  1561. INFO ABOUT SUPER MAKE:  (alt-i)
  1562.  
  1563. This choice gives you a summary of SUPER MAKE and the SUPER MAKE Editor,
  1564. and of the EmmaSoft Company.
  1565.  
  1566. VERSION:  (alt-v)
  1567.  
  1568. The Version number and your Serial number are displayed on the screen. 
  1569. Press any key to return to the Toolbox menu.
  1570. .cp
  1571.  
  1572. LANGUAGE DEFINITIONS EDITOR (alt-l)
  1573.  
  1574. The Language Definitions editor is divided into two screens.
  1575.  
  1576.         Screen 1 contains the Commands Form.  This contains the eight
  1577.         compiler, linker, librarian commands at the top of a Language 
  1578.         Definition file.
  1579.  
  1580.         Screen 2 has the Helps Form.  There are 20 lines that you may
  1581.         type help information for this language on.  These lines will
  1582.         be the help screens for defining macros.  You may put anything
  1583.         you want on them.
  1584.  
  1585. See chapter 4 of the manual for an in-depth description of a Language
  1586. Definition file.
  1587. .cp
  1588.  
  1589. MANUAL: On Line   (alt-m)
  1590.  
  1591. You may access this manual on the screen.  When you choose this option you
  1592. are presented with a Table of Contents window.  Use the arrow keys to
  1593. choose a chapter to read, or press alt-x where 'x' is the first letter of
  1594. the chapter title.
  1595.  
  1596. To page through the manual press any key for the next page.  Up arrow will
  1597. take you to the previous page.  Press Escape to return to the Table of
  1598. Contents.
  1599.  
  1600. To exit the manual from the Table of Contents press Escape.  Of course help
  1601. is available in the Table of Contents window when you press F1.
  1602. .cp
  1603.  
  1604. Manual: Printing
  1605.  
  1606. You may print the manual using Alt-p.  It is a good idea to print a hard 
  1607. copy of the manual, because the printed version has more information in
  1608. it than the on- line version (including examples of files).
  1609.  
  1610. If you have a mouse place the mouse cursor over the "Alt-p to Print" 
  1611. message and press the left button.
  1612.  
  1613. To print to your printer choose lpt1, lpt2, com1, or com2, depending on
  1614. how your printer is hooked up.  To print to a file type the file name.
  1615. If you use a program to format your manuals you should print the manual
  1616. to a file, then import the file to your program.  This strips out the codes
  1617. used by the help facility to read the manual on line.
  1618. .cp
  1619.  
  1620. EDIT HELP  (alt-e)
  1621. Why Edit Super.hlp?
  1622.  
  1623. There are two reasons you may want to edit SUPER.HLP.
  1624.  
  1625. 1.  Although there is complete help provided as shipped you may want
  1626.     to add to or alter some of the text to suit your preferences.
  1627.     IMPORTANT NOTE:  If you distribute a copy or copies of SUPER MAKE
  1628.     you MUST use the original files INCLUDING the original help files. 
  1629.  
  1630. 2.  The SUPER MAKE Help Facility can be used as a separate utility
  1631.     for anything you want it for.  You could set up several help
  1632.     screens for DOS, for example, and use it from the command line.
  1633.     The command syntax is smh[key_word].  For example, if you had a
  1634.     section called DIR you would type:  "smh DIR".  Remember that
  1635.     you should NOT type the percent signs when calling the Help 
  1636.     Facility, and the keywords ARE case sensitive.
  1637. .cp
  1638.  
  1639. If you change the help file you must follow a certain format.  We can 
  1640. describe it here, but not illustrate it, as an illustration would inter-
  1641. fere with the workings of the online version of the manual (when you print
  1642. out the manual it is read from the online version of the file).  Help 
  1643. files are in ascii format and may be edited with any text editor that saves
  1644. files in pure ascii format.  YOU MUST FOLLOW THESE DIRECTIONS CAREFULLY, or
  1645. the SUPER MAKE editor could crash, with no survivors.  To be on the safe 
  1646. side, make copies of SUPER.HLP and SUPER.NDX before starting.  If things 
  1647. don't work out you can always restore these old files.
  1648.  
  1649. It would be a good idea to print out a page or two of SUPER.HLP before
  1650. trying this, so you can see a working example of how the help file is 
  1651. constructed.
  1652. .cp
  1653.  
  1654. Help Codes:
  1655.  
  1656. A help section starts with a key word or phrase.  This must be less than
  1657. 23 characters long, and has a percent sign at the beginning and end of the
  1658. word or phrase.  Ex:  [percent symbol]My Help[percent symbol].
  1659.  
  1660. Screens in a help are divided by the divider symbol ([dot]cp 
  1661. where [dot] = .)  Ex:     [dot]cp
  1662. Help sections always finish with the word END in capital letters with
  1663. an asterisk (*) at the beginning and end of the word.  
  1664. Ex:  [asterisk]END[asterick]
  1665.  
  1666. Help start, divider, and end codes must start at the beginning of a line.
  1667.  
  1668. You may have a maximum of 250 help subjects in SUPER.HLP.
  1669. .cp
  1670.  
  1671. Help Text Format:
  1672.  
  1673. Help text for SUPER MAKE ***MUST*** follow a certain format in order to 
  1674. avoid causing serious problems.  
  1675.  
  1676. Between two help codes you may type NO MORE THAN 19 lines of help.  As 
  1677. shipped SUPER MAKE's help screens start with a blank line to make the 
  1678. screen more readable.  A blank line is counted as a line.
  1679.  
  1680. Each line may be NO MORE THAN 76 characters wide.
  1681. .cp
  1682.  
  1683. The help functions require two files, SUPER.HLP and SUPER.NDX.  The latter
  1684. is an index that tells SUPER MAKE hoe to read the help file.  IF YOU CHANGE
  1685. OR ADD TO SUPER.HLP YOU MUST GENERATE A NEW INDEX.  This is automatically
  1686. done if you change help ONLY using the "Edit Help" choice in the Toolbox
  1687. menu.  What happens here is that SUPER MAKE calls your text editor and 
  1688. passes it the name of the help file.  When you exit your editor a new index
  1689. is automatically generated.  If you get an error message you should restore
  1690. the old versions of your help files.
  1691.  
  1692. If you follow the above formatting instructions you shouldn't have any 
  1693. problems.  If you must have an altered help screen and you can't get this
  1694. to work you may send your ascii file on a floppy disk to EmmaSoft and
  1695. we will get it to work.  We charge $1 per help topic in your file plus
  1696. $2 return postage for this.  Please include payment with your disk.
  1697. .cp
  1698.  
  1699. GO TO DOS:  (alt-g)
  1700.  
  1701. You may temporarily leave SUPER MAKE to perform some tasks in DOS.  SUPER
  1702. MAKE remains in memory (so you won't be able to use mammoth programs here)
  1703. and when you return all values in SUPER MAKE are intact.
  1704. *END*
  1705. %7%
  1706.  
  1707. Chapter 7:   QUITTING
  1708.  
  1709. The SUPER MAKE Editor can be exited in several ways.  Typically, from the 
  1710. main menu bar you would choose QUIT.  Choose Yes to exit, or No to return 
  1711. to the Editor.
  1712.  
  1713. At most spots in the program you may press alt-q to quit quickly.  None of 
  1714. your work is saved when you choose this option.  Pressing Ctrl-Break has 
  1715. the same effect as alt-q, and works more of the time.  At the main menu bar
  1716. placing the mouse cursor over the word "QUIT" will "quick quit" the program.
  1717.  
  1718. In the Help Facility press Esc to exit the program.  Ctrl-Break will quick
  1719. exit the program while viewing a Help or Manual screen.
  1720. *END*
  1721. %8%
  1722.  
  1723. Chapter 8:  KINDS OF FILES
  1724.  
  1725. SUPER MAKE has several files that it uses.  When you set the SUPERFILES 
  1726. environmental variable in DOS these files should be in the directory
  1727. you set.  You should also include this directory in your PATH.
  1728. .cp
  1729.  
  1730. SM.EXE       The executable file for SUPER MAKE
  1731. SME.EXE      The executable file for the SUPER MAKE Editor
  1732. SMH.EXE      The executable file for the SUPER MAKE Help Facility
  1733.  
  1734. SM.INI       Remembers the last options processed by SUPER MAKE
  1735. SME.INI      Contains all values set up in the SUPER MAKE Editor in the
  1736.              Setup menu.  Information is used by the Editor, Help Facility,
  1737.              and the Maker.
  1738.  
  1739. LANG1.SM     Macro and Help Information for first programming language
  1740. LANG2.SM     Macro and Help Information for second programming language
  1741. LANG3.SM     Macro and Help Information for third programming language
  1742. LINKER.SM    Macro and Help Information for linker
  1743. LASTMACS.SM  Last macro settings used
  1744. .cp
  1745.  
  1746. SUPER.HLP    Help information for all SUPER MAKE Executables
  1747. SUPER.NDX    Help index needed to run Help
  1748. MANUAL.HLP   This manual formatted to be read by the Help Facility
  1749. MANUAL.NDX   Help index needed to run Help
  1750. .cp
  1751.  
  1752. Here are the files that SUPER MAKE generates (xxx refers to the unique file
  1753. name you assign to these files:
  1754.  
  1755. xxxxxxxx.SMF  SUPER MAKE Make file
  1756. xxxxxxxx      Microsoft Make or Nmake Make file
  1757. xxxxxxxx.lrs  1st memory model linker Response file
  1758. xxxxxxxx.lrm  2nd memory model linker Response file
  1759. xxxxxxxx.lrl  3rd memory model linker response file
  1760. xxxxxxxx.lbr  Library Response file
  1761. xxxxxxxx.lnt  PC-Lint Indirect file
  1762. xxxxxxxx.l    Clear+ List file
  1763. nmxxxxxx.bat  Batch file to compile with Debugging Info using NMAKE
  1764.  mxxxxxx.bat  Batch file to compile with Debugging Info using MAKE
  1765. .cp
  1766.  
  1767. These self extracting files are on the distribution disk (or in the
  1768. .zip file used to distribute SUPER MAKE on the bulletin boards).  They
  1769. contain SUPER MAKE, and should NOT end up on your hard drive:
  1770.  
  1771. SMAK.EXE      Contains SUPER MAKE, it's files and Help Facility
  1772. MS.EXE        Contains Microsoft Compatible Language Definition Files
  1773. BOR.EXE       Contains Borland Compatible Language Definition Files
  1774.  
  1775. The following files are contained on your distribution disk (or .zip)
  1776. file and are NOT compressed (ie. they are ready to use as is):
  1777.  
  1778. INSTALL.EXE   Automatic installation program
  1779. README.SUP    Latest update file
  1780. REG.FRM       Registration Form
  1781. SUPER.INF     A summary of SUPER MAKE features
  1782. VENDOR.DOC    Information for shareware distributers
  1783. S.COM         Landscape printer for HP LJII
  1784. SL.COM        Landscape printer with line numbers, etc. for LJII
  1785. *END*
  1786. %9%
  1787.  
  1788. Chapter 9:  COMPATIBLE FILES
  1789.  
  1790. This chapter explains the structure of a SUPER MAKE make file, and provides
  1791. information of other files the SUPER MAKE Editor can generate for other
  1792. programs.
  1793.  
  1794. SUPER MAKE FILES:
  1795.  
  1796. SUPER MAKE make files have the following general structure:
  1797.  
  1798. Standard Macros    MACRONAME = Macrovalue
  1799. TNAMES Macro         TNAMES =
  1800.                            Filename_With_Full_Path&
  1801.                            Next_Filename_With_Full_Path
  1802.  
  1803. Action Block       Target : Dependents
  1804.                            Command_Line
  1805. .cp
  1806.  
  1807. In a SUPER MAKE file the target and dependent must be separated by
  1808. a colon preceded and followed by a space " : ".  This is how SUPER
  1809. make knows it is looking at an action block.  SUPER MAKE then looks 
  1810. for the command line on the next line.  ALL command lines must be 
  1811. preceded by a target : dependent line.  ALL target : dependent lines
  1812. must be followed by a command line.
  1813. .cp
  1814.  
  1815. Standard Macros come in sets of eight.  There is one set of macros for each
  1816. programming language used in building your program, plus one set for the 
  1817. linker or librarian.  Although not all of the macros may be used to build
  1818. your program you should leave them all in the make file.  When you call 
  1819. SUPER MAKE with various command flags it uses different combinations of
  1820. macros from each set.  The macros in each set are:
  1821.  
  1822.               xxCO     Compile Only Flag
  1823.               xxM1     Memory Model 1 Command
  1824.               xxM2     Memory Model 2 Command
  1825.               xxM3     Memory Model 3 Command
  1826.               xxND     Commands for compiling with No Debugging Information
  1827.               xxD      Commands for compiling with Debugging Information
  1828.               xxF1
  1829.               xxF2     Two general purpose macros for any command flags
  1830. .cp
  1831.  
  1832. The TNAMES macro is a list of all the files including the drive and full
  1833. path  that will make up your finished program or library.  Each file name
  1834. is on a line by itself.  All but the last file is followed by an '&' so
  1835. that SUPER MAKE will know there are more files on the list.
  1836.  
  1837. An Action Block consists of two lines that work like an if-then statement.
  1838. The first line is the 'if':  If the target file is older than the de-
  1839. pendent file(s) then execute the command on the second line in this Action
  1840. Block.  The 'then' (second line) part is a compiler, linker, or librarian
  1841. command, including the command flags contained in the macros and the name
  1842. of the file to be compiled (or the linker or librarian .res files which
  1843. contain the list of files and libraries to be linked, or files to be 
  1844. included in a library).
  1845.  
  1846. .cp
  1847.  
  1848. Non SUPER MAKE files:
  1849.  
  1850. Aside from SUPER MAKE files the SUPER MAKE Editor generates a number of 
  1851. files that other programs can use.
  1852.  
  1853. MICROSOFT MAKE AND NMAKE:
  1854.  
  1855. SUPER MAKE makes strong use of make file macros, and this strategy is applied
  1856. to the makefiles for the Microsoft products. 
  1857.  
  1858. At the top of the files is a list of macros, including some blank ones.  
  1859. These won't effect the performance of Make or Nmake, but you should leave 
  1860. them in place, especially the macros called xxND and xxD.  The xxND macro 
  1861. is the compile with no debug information macro.  The xxD macro is the compile 
  1862. with debug information macro.  These are both needed even if they are blank.
  1863. .cp
  1864.  
  1865. Of course you may always add your own macros or place unique compiler flags
  1866. on a command line manually, using an ascii text editor.  You can use the
  1867. macros that the SUPER MAKE editor has created as examples if you are not
  1868. familiar with Microsoft make file macro use.  
  1869.  
  1870. If you are using unique flags for compiling one of your files you may place
  1871. them on the command line for that file.  They can go anywhere that makes
  1872. sense to you, including in between SUPER MAKE macros.
  1873.  
  1874. Example (placing the -NOI flag on the command line):
  1875. SM.obj:  SM.c
  1876.          cl $(L1CO) $(L1M1) $(L1ND) -NOI  $(L1F1) $(L1F2)  SM.c
  1877. .cp
  1878.  
  1879. In an Nmake file there is a pseudo target after the macros.  The effect of
  1880. this is that if you type NMAKE MAKNAME (where MAKNAME is the name of your 
  1881. make file) Nmake will check all modules to see if they need to be updated
  1882. (in other words it will behave like Make).
  1883.  
  1884. Next, in both Nmake and Make files, comes the description blocks.  The first
  1885. line of each is in standard form.  A target followed by a colon and the
  1886. dependents for the target.  The second (command) line is made up almost
  1887. entirely of macros.  To see what the command actually is saying cross 
  1888. reference up to the macros.
  1889.  
  1890. This strategy takes advantage of the abilities of Nmake and Make to change
  1891. the values of a macro when invoking the maker.  When the SUPER MAKE Editor
  1892. makes Microsoft make files it also makes a batch file that uses this 
  1893. capability so you may easily compile with or without debugging information.
  1894. .cp
  1895.  
  1896. The batch files are named after the specific maker and the make file name.
  1897. For example, if you use Nmake, and your file is called code the batch file
  1898. will be called nmcode.bat  (The file will use up to six letters of your make
  1899. file name, preceded with "nm" for Nmake, or "m" for make.  Thus the same 
  1900. for Make would be called "mcode.bat.")
  1901.  
  1902. This batch file changes all the xxND macros to use the xxD macro values
  1903. by calling the maker as follows:
  1904.  
  1905.                    Makername xxND=xxD Makefilename
  1906.  
  1907. You may create your own batch files to change other macro values.
  1908. .cp
  1909.  
  1910. LINKER RESPONSE FILES:
  1911.  
  1912. The SUPER MAKE Editor makes Response files that can be used with Microsoft's
  1913. linker that comes with DOS and many of their programming products.  All
  1914. Make files generated by the SUPER MAKE Editor assume you are using Response
  1915. files, so it is a good idea to generate them if you are generating make 
  1916. files.  Three sets are made: one for each memory model.  The extensions
  1917. of these files are .lrx where "lr" stands for Linker Response and "x" is
  1918. either "s" for small, "m" for medium or "l" for large.  If you have redefined
  1919. the memory model size the .lrs file will contain information for the first
  1920. memory model, .lrm the second, and .lrl the third.
  1921. .cp
  1922.  
  1923. The format is as follows (xxxxxxxx.LRx):  
  1924.  
  1925.         First the names of the object files to be linked.  All but the
  1926.         last one is followed by a '+' sign. 
  1927.  
  1928.         The name of the executable file.
  1929.         The name of the map file (or nul.map if none)
  1930.  
  1931.         Library names.  All but the last one is followed by a "+" sign.
  1932.  
  1933.         The name of the Definitions file (nul.def is provided, since
  1934.         SUPER MAKE is a DOS based program.  You may change this manually
  1935.         in a text editor.  (Does not appear in Borland files)
  1936. .cp
  1937.  
  1938. LIBRARY RESPONSE FILES:
  1939.  
  1940. The SUPER MAKE Editor makes response files (with the extension .lbr) for
  1941. the Microsoft LIB.EXE program.  The format is:
  1942.  
  1943.          The name of the library.
  1944.  
  1945.          Y (Means "Yes, build a new library if it doesn't already exist.")
  1946.  
  1947.          Object files to add (all but the last followed by "&").
  1948.  
  1949.          nul    The list file.
  1950.  
  1951. For Borland's TLIB.EXE the format is:
  1952.  
  1953.          Object files to add (all but the last followed by "&").
  1954. .cp
  1955.  
  1956. PC-lint INDIRECT FILES:
  1957.  
  1958. PC-Lint uses a file containing the names of all the files that make up a
  1959. program you are developing.  If you use PC-Lint with these files instead
  1960. of individual file names the program will process all source modules listed
  1961. in the Indirect File.  These files have the extension .lnt.
  1962. .cp
  1963.  
  1964. CLEAR+ LIST FILES:
  1965.  
  1966. Clear+ list files are similar to PC-Lint Indirect files in their function
  1967. and format.  They use the extension .l.
  1968. *END*
  1969. %10%
  1970.  
  1971. Chapter 10: USING THE MAKER
  1972.  
  1973. COMMAND SUMMARY:
  1974.  
  1975.       -h         View help on SUPER MAKE commands               EACH
  1976.       -hi        View information about SUPER MAKE              EACH
  1977.       -hf        View help on Make File Construction            EACH
  1978.       -1         Use 1st Memory Model                           ONOFF
  1979.       -2         Use 2nd Memory Model                           ONOFF
  1980.       -3         Use 3rd Memory Model                           ONOFF
  1981.       -d         Build program with debugging information       ONOFF
  1982. .cp
  1983.  
  1984.       -n         Build program without debugging information    ONOFF
  1985.       -v         View Current SUPER MAKE settings               ONOFF
  1986.       -o         Turn off Viewing Current SUPER MAKE settings   ONOFF
  1987.       -l         Look Only, but don't make the program          EACH
  1988.       -r         Reset all flags                                EACH
  1989.       -s         Suppress messages                              TOGGLE
  1990.       -i         Ignore errors from compilers, etc.             TOGGLE
  1991.       -e         Erase Object Files                             EACH
  1992.       -t         "Touch" Dependents                             EACH
  1993.       -q         Quick Set EXE & OBJ dirs & Compiler Brand      EACH
  1994. .cp
  1995.  
  1996. EACH:   You must type these flags on the command line each time you want
  1997.         this feature.
  1998.  
  1999. ONOFF:  One flag turns the feature on.  Another changes the flag value.
  2000.  
  2001. TOGGLE: Turn on the first time you specify this toggle.  Next time you
  2002.         type it the feature turns off.
  2003. .cp
  2004.  
  2005. Command Line Format:
  2006.  
  2007.                      sm [flags] [filename]
  2008.  
  2009. sm        The SUPER MAKE Utility
  2010.  
  2011. flags     Tells SUPER MAKE how to configure.  If you want SUPER MAKE to
  2012.           be configured the way it was the last time you used it you may
  2013.           omit the flags.  A flag is ALWAYS preceded by a dash (-) or a 
  2014.           slash (/).  There should always be a space between flags.  
  2015.           Example:  sm -1 -n filename
  2016.  
  2017. filename  The name of the Make file.  If you want to work on the same file
  2018.           you worked on last time you do not have to type it again.  (This
  2019.           can go before, after, or in between flags.)
  2020.  
  2021. Once you have set SUPER MAKE for the Make File and option flags you want to 
  2022. use you only have to type "sm" to build a program.
  2023. .cp
  2024.  
  2025. When entering the Make file name do NOT enter the extension.  All SUPER
  2026. MAKE files have the extension ".smf" (for SUPER MAKE file).  You only
  2027. type the unique file name when running SUPER MAKE.  For example, if your
  2028. make file is called file.smf you might enter the following command when
  2029. starting SUPER MAKE:  "sm -3 -n file".  Typing "sm filename.smf" will 
  2030. cause an error.
  2031.  
  2032. You may type the command flags in upper or lower case.  Example: "-s" is
  2033. the same as "-S".  You may replace the slash with a dash.  Example:  "-s"
  2034. is the same as "/s".
  2035.  
  2036. If you prefer a "clean" screen you may use the "-s" toggle to suppress
  2037. most SUPER MAKE messages.  To get the messages back use "-s" again.  We
  2038. recommend leaving messages on, since you may miss an important error
  2039. message if it is off.
  2040. .cp
  2041.  
  2042. When preparing for a total rebuild of your program you might want to
  2043. delete all your object files so they will be rebuilt with the latest
  2044. version of your include files, or to make sure there is no debugging 
  2045. information in the final program.
  2046.  
  2047. You may erase the object files that SUPER MAKE normally builds from a
  2048. make file by using the -e flag.
  2049.  
  2050. The touch (-t) option changes the date of the dependent(s) to that of
  2051. the target without building the file.  This allows you to update source
  2052. code comments without having to rebuild the program the next time you
  2053. invoke the maker.  (If the maker can't find a file it tells which files
  2054. were not found, and therefore, not "touched".)
  2055. .cp
  2056.  
  2057. Here are some examples (The explanations make more sense if you imagine
  2058. calling SUPER MAKE several times in the order of the examples):
  2059.  
  2060.       sm -r                  resets all flags for a new program
  2061.  
  2062.       sm -3 -d -v filename   sets up SUPER MAKE for the large model,
  2063.                              compiling with debugging information,
  2064.                              viewing the flags at the end of each session,
  2065.                              for a make file called filename.smf, and then
  2066.                              makes the program.
  2067.  
  2068.       sm -l                  shows what SUPER MAKE would do under the
  2069.                              current settings, but doesn't do it
  2070. .cp
  2071.  
  2072.       sm -o -l               Turns off viewing the flags without building
  2073.                              the program
  2074.  
  2075.       sm newfile             Builds a different program using the same
  2076.                              flags that were already set
  2077.  
  2078.       sm -n                  Final build of the program (if you are doing 
  2079.                              these examples in order you are now building
  2080.                              the file "newfile") using no debug information
  2081.                              command flags.
  2082.  
  2083. When calling SUPER MAKE you can type as many command flags as you want, but
  2084. only one file name.  You may call them in any order.  
  2085.  
  2086. Thus, "sm newfile -3 -o" is the same as "sm -o -3 newfile".  You may even 
  2087. mix them up.  For example: "sm -1 filename -n".
  2088. .cp
  2089.  
  2090. If you use the "View Current SUPER MAKE commands" (-v) option you will be
  2091. presented with a chart showing the current command flag settings.  Line 1
  2092. show abbreviations of the flag name.  Below that is a number which is the
  2093. actual setting.  On the third line is the current Make file name (assuming 
  2094. you entered a file name) with the .smf extension added.     If you have set
  2095. directories for object or executable files (in SME) these are also listed.
  2096.  
  2097. HP ME DB SM IR                               TO EO LO VF R
  2098. 0  2  2  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  1  
  2099. file.smf
  2100. .cp
  2101.  
  2102. Here is a summary of the flags (flags without the abbrieviation above them
  2103. are unused, but reserved for future versions of SUPER MAKE):
  2104.  
  2105. HP    Help                      Always shows 0
  2106. ME    Current Memory Model      1 for 1st, 2 for 2nd, 3 for 3rd (User set in
  2107.                                 SUPER MAKE Editor)
  2108. DB    Debug/Nodebug             1-Use Debug Information (User set in xxD 
  2109.                                 macros)
  2110.                                 2-Use No Debug Information (User set in xxND
  2111.                                 macros)
  2112. SM    Suppress Messages         1-Messages on 2-Messages off
  2113. IR    Ignore Return Codes       0-Stop on Error 1-Ignore errors 
  2114. .cp
  2115.  
  2116. TO    Touch Dependents          Always shows 0.
  2117. EO    Erase Object Files        Always shows 0.
  2118. LO    Look Only                 Always shows 0.
  2119. VF    View Flags                1-On 2-Off  If you can see the chart this 
  2120.                                 flag is on.
  2121. R     Reset                     Always shows 0.
  2122. .cp
  2123.  
  2124. Path Control:
  2125.  
  2126. SUPER MAKE looks for executable files where you have listed them in the
  2127. make file.  You always use the full path for dependents in a SUPER MAKE 
  2128. make file.
  2129.  
  2130. If you have set a directory to put OBJECT files in (SUPER MAKE EDITOR, 
  2131. Setup menu, alt-s) SUPER MAKE goes to that directory before calling
  2132. compilers.  If not it stays in the directory you called it from.
  2133.  
  2134. If you set a directory in which to place executable files, SUPER MAKE 
  2135. uses DOS commands to do it.  First it uses COPY to put a copy of the 
  2136. file where it needs to end up (generating a "1 File Copied" message), 
  2137. then the DEL command to get rid of the original (now extra) executable 
  2138. file.  If this directory is not set executable files will go into the
  2139. same directory as object files.
  2140. *END*
  2141. %11%
  2142.  
  2143. Chapter 11:  ABOUT SHAREWARE
  2144.  
  2145. Shareware distribution gives users a chance to try software
  2146. before buying it. If you try a Shareware program and continue
  2147. using it, you are expected to register.  This allows you to try the
  2148. program before you buy it.  When you register your copy of SUPER
  2149. MAKE you will receive the latest version on a disk and a
  2150. printed version of this manual.  You will also be assigned a serial
  2151. number which entitles you to technical support.
  2152. .cp
  2153.  
  2154. Copyright laws apply to both Shareware and commercial software,
  2155. and the copyright holder retains all rights, with a few specific
  2156. exceptions as stated below. Shareware authors are accomplished
  2157. programmers, just like commercial authors, and the programs are
  2158. of comparable quality. (In both cases, there are good programs
  2159. and bad ones!) The main difference is in the method of
  2160. distribution. The author specifically grants the right to copy
  2161. and distribute the software, either to all and sundry or to a
  2162. specific group. For example, EmmaSoft requires written
  2163. permission before a commercial disk vendor may copy their
  2164. Shareware.  (See vendor.doc for more information.)
  2165. .cp
  2166.  
  2167. Shareware is a distribution method, not a type of software. You
  2168. should find software that suits your needs and pocketbook,
  2169. whether it's conventional commercial software or Shareware (Many 
  2170. shareware programs ARE commercial in that a registration fee is
  2171. required after a trial period.  For SUPER MAKE this period is 30
  2172. days).  The Shareware system makes fitting your needs easier, because 
  2173. you can try before you buy. And because the overhead is low, prices 
  2174. are low also. Shareware has the ultimate money-back guarantee -- 
  2175. if you don't use the product, you don't pay for it.
  2176. .cp
  2177.  
  2178. Distribution of SUPER MAKE:
  2179.  
  2180. EmmaSoft retains all rights to SUPER MAKE.  You may distribute SUPER
  2181. MAKE provided you comply with the following conditions:
  2182.  
  2183.     1.  No files may be changed.  All text and settings must be as shipped
  2184.         originally from EmmaSoft.  The original .zip file (SUPER.ZIP) must 
  2185.         be used to do this.  When unzipped it has a message confirming the
  2186.         authenticity of the files.  This both insures that they are, indeed, 
  2187.         the original files, and protects against viruses.
  2188.  
  2189.         If you received SUPER MAKE on a distribution disk you must make
  2190.         exact copies of all files on the disk.  You may then distribute
  2191.         SUPER MAKE on another disk (containing all the files).  You MUST NOT
  2192.         compress the files yourself.  If you received a compressed version
  2193.         that does not display the message, "Authentic Files Verified", 
  2194.         followed by a number and "EmmaSoft Co." it is NOT supported by
  2195.         EmmaSoft.  Contact EmmaSoft immediately for a good copy.
  2196. .cp
  2197.  
  2198.     2.  Professional Distributors of shareware (and other programs) MUST
  2199.         contact EmmaSoft before distributing SUPER MAKE.  In catalogs there
  2200.         MUST be a line in the program description describing the registration
  2201.         fee, and somewhere in the catalog there must be a satisfactory 
  2202.         explanation of the shareware concept, including the facts that all
  2203.         rights to this copyrighted program are retained by EmmaSoft, that
  2204.         it is NOT a public domain program, and that registration fee is
  2205.         required if the program is used beyond the trial period.
  2206. .cp
  2207.  
  2208. ASP:
  2209.  
  2210. The Association of Shareware Professionals (ASP) was formed to educate
  2211. shareware authors, distributers and the public about shareware, to set
  2212. standards for shareware, and to allow its members to share resources and
  2213. information.  Programs written by ASP members are as diverse as 
  2214. conventional commercial programs, but share certain standards.  Some
  2215. of the ASP requirements include that the programs are copyrighted (not
  2216. public domain), that they be fully functional (not partially functional
  2217. "come ons"), and that it may be copied (subject to copying restrictions)
  2218. so that users may try the software for a trial period before a registration
  2219. fee is required.  
  2220.  
  2221. The ASP generally congregates on the shareware forum on CompuServe.  For
  2222. more information "go shareware".
  2223. .cp
  2224.  
  2225. This program is produced by a member of the Association of Shareware
  2226. Professionals .  ASP wants to make sure that the shareware principle works 
  2227. for you. If you are unable to resolve a shareware-related problem with
  2228. an ASP member by contacting the member directly, ASP may be able to help. 
  2229. The ASP Ombudsman can help you resolve a dispute or problem with an ASP 
  2230. member, but does not provide technical support for members' products. Please 
  2231. write to the ASP Ombudsman at P.O. Box 5786, Bellevue, WA 98006 or send 
  2232. a Compuserve message via easyplex to ASP Ombudsman 70007,3536
  2233. *END*
  2234. %A%
  2235.  
  2236. APPENDIX A:  Error Messages
  2237.  
  2238. SUPER MAKE generates a number of error messages when an error is
  2239. generated,  or a condition occurs where you should know about
  2240. something that has  happened or not happened.  Here is a summary of
  2241. the messages and what they  mean:
  2242.  
  2243. ERRORS:
  2244.  
  2245. SM100: Unknown error.
  2246. SM101: Environment Problem.
  2247. SM102: Can't find command.com.
  2248. SM103: Invalid command.com.
  2249. SM104: Not enough memory.
  2250. .cp
  2251.  
  2252. SM105: Help system needs a topic to run.
  2253. SM125: Can't find file to open.
  2254. SM126: Lost count of compiler files.
  2255. SM127: Can't find text editor.  Check Path setting in Setup.
  2256. SM128: Can't find SUPER MAKE files.  
  2257.        Make sure you have set the SUPERFILES environment variable.
  2258. SM129: Can't find SUPER MAKE Help Facility.  Check Path setting in Setup.
  2259. SM130: Can't find SUPER MAKE initialization file.
  2260. SM131: SUPERFILES Environment not set.
  2261. .cp
  2262.  
  2263. MAKER ERRORS:
  2264.  
  2265. SM170: No Make File Specified.
  2266. SM171: Can't open (filename).  Try entering drive and path.  
  2267.        Example: sm c:\\sm\\filename
  2268. SM172: Don't know where to put (file).
  2269.        Putting target in (obj file directory if defined, 
  2270.                           default directory, otherwise).
  2271. SM174: Compiler Error.  SUPER MAKE Stopping.
  2272. SM175: Can't find file:  [filename].
  2273. SM176: Building [filename].
  2274. SM177: Can't Change File Date.
  2275. SM178: Can't Generate Help Index.
  2276. SM179: Can't save initialization file.
  2277. .cp
  2278.  
  2279. WARNINGS AND MESSAGES:
  2280.  
  2281. SM401: No files with .C or .H extensions.  File not made.
  2282. SM402: Can't Make PC-Lint File Name.  File Not Made.
  2283. SM403: Can't Make Clear+ File Name.  File Not Made.
  2284. SM404: Can't Make Link Res File Name.  File Not Made.
  2285. SM405: Can't open Link Res File.  File Not Made.
  2286. SM406: Can't Open Clear+ File.  File Not Made.
  2287. SM407: Can't Open PC-Lint File.  File Not Made.
  2288. SM408: Internal Error Making File Name.  File Not Made.
  2289. SM409: Can't Make Executable File Name.  File Not Made.
  2290. SM410: Can't Make Map File Name.  File Not Made.
  2291. SM411: Can't Open Macro File.  Can't construct MS Make File.
  2292. .cp
  2293.  
  2294. SM412: Can't Make Microsoft Make File Name.  File Not Made.
  2295. SM413: Can't Open Microsoft Make File.  Can't Save The File.
  2296. SM414: Can't Open Microsoft Debug Batch File.  Can't Make The File.
  2297. SM415: Can't Make Lib Res File Name.  File Not Made.
  2298. SM416: Can't open Lib Res File.  File Not Made.
  2299. SM417: Can't Make SUPER MAKE Make File Name.  File Not Made.
  2300. SM418: Can't Open Macro File.  Can't construct SUPER MAKE Make File.
  2301. SM419: Can't Open SUPER MAKE Make File.  Can't Save The File.
  2302. SM420: Index Generated Successfully.
  2303. SM421: Creating Help Index.
  2304. SM422: Object files Erased.
  2305. SM423: Dependents Touched.  File Dates Changed.
  2306. *END*
  2307.  
  2308. %b%
  2309. APPENDIX B:  Sample Files
  2310.  
  2311. *END*
  2312.  
  2313. 1.  SUPER MAKE make file to make SAMPLE.EXE:
  2314.  
  2315.  
  2316. TNAMES =               }
  2317.         SAMPLE.OBJ&    }   TNAMES Macro shows the files it takes
  2318.         SAMPLE1.OBJ    }   to build your finished program (or library)
  2319.  
  2320.  
  2321. SAMPLE.OBJ:  C:\DUMP\SAMPLE.C           }  Action Block to build
  2322.          CL $(L1)  C:\DUMP\SAMPLE.C     }  SAMPLE.OBJ
  2323.  
  2324. SAMPLE1.OBJ:  C:\DUMP\SAMPLE1.C         }  Action Block to build
  2325.          CL $(L1)  C:\DUMP\SAMPLE1.C    }  SAMPLE1.OBJ
  2326.  
  2327. SAMPLE.EXE: $(TNAMES)                       }  Action Block to build
  2328.          LINK $(LN) /ST:15000  @SAMPLE.LNK  }  executable file
  2329.  
  2330. (We put the stack command right on the command line for this example.  
  2331. That is OK to do on any command line that has unique commands.  See
  2332. Chapter 3 for a detailed example.)
  2333.  
  2334. 2.  Microsoft make file to make SAMPLE.EXE:
  2335.  
  2336. L1CO = -c              }
  2337. L1M1 = -AS             }
  2338. L1M2 = -AM             }
  2339. L1M3 = -AL             }    Macro Set 1  (this example shows
  2340. L1ND =                 }                  commands for MS C)
  2341. L1D = -Zi -Od          }    
  2342. L1F1 =                 }    It is OK to add your own macros
  2343. L1F2 =                 }
  2344.  
  2345. LNCO =                 }
  2346. LNM1 =                 }
  2347. LNM2 =                 }
  2348. LNM3 =                 }    Macro Set 2  (this example shows
  2349. LNND = /E              }                  commands for MS LINK)
  2350. LND = /CO              }
  2351. LNF1 = /NOE            }    It is OK to add your own macros
  2352. LNF2 =                 }
  2353.  
  2354. TNAMES = SAMPLE.OBJ SAMPLE1.OBJ  } Multiple dependents for executable file
  2355.  
  2356.                    }  Pseudo Target for NMAKE files.  Does not appear on
  2357. ALL: *.EXE         }  MAKE files.  This tells NMAKE to build your whole
  2358.                    }  program.  If you use NMAKE but don't want this 
  2359.                    }  in your make file choose MAKE as your default
  2360.                    }  Microsoft maker
  2361.  
  2362. SAMPLE.OBJ:  SAMPLE.C                                               } Action
  2363.          CL $(L1CO) $(L1M3) -W4 $(L1ND) $(L1F1) $(L1F2)  SAMPLE.C  } Block
  2364.  
  2365. SAMPLE1.OBJ:  SAMPLE1.C                                        }  Action Block
  2366.          CL $(L1CO) $(L1M3) $(L1ND) $(L1F1) $(L1F2)  SAMPLE1.C }
  2367.  
  2368. SAMPLE.EXE: $(TNAMES)                                          } Action Block
  2369.          LINK $(LNND) $(LNF1) $(LNF2)  @SAMPLE.LRL             } Action Block
  2370.  
  2371. Notice the -W4 command in the first action block.  This is special to the
  2372. one file, and may be included on the command line as shown.
  2373.  
  2374. 3.  Microsoft batch file to make SAMPLE.EXE with CodeView Information:
  2375.  
  2376.  
  2377. make L1Nd=$(L1D) L2ND=$(L2D) L3ND=$(L2D) LNND=$(LND) SAMPLE
  2378.  
  2379. For each of the four possible macro sets this batch file calls a Microsoft
  2380. maker (for NMAKE the first command will be nmake), first giving the "Compile
  2381. With No Debugging Information" macro the values of the "Compile With 
  2382. Debugging Information" macro.  If a set of macros doesn't exist in your
  2383. make file this batch file won't have any adverse effect on the execution
  2384. of your maker.
  2385.  
  2386. 4.  Linker .res files:
  2387.  
  2388.  
  2389. SAMPLE+     }   Object files to link
  2390. SAMPLE1     }
  2391.  
  2392. SAMPLE      }   Name of Executable File
  2393.  
  2394. SAMPLE      }   Name of map file (nul.map if no file)
  2395.  
  2396. MYLIB1+     }   Libraries to link
  2397. MYLIB2      }
  2398.  
  2399. nul.def     }   Name of .def file  (Always nul.def for DOS programs)
  2400.             }   Not used in Borland files
  2401.  
  2402.  
  2403. 5.  Librarian .res files
  2404.  
  2405.  
  2406. SAMPLE.lib     }   Name of Library  (MS only)
  2407. Y              }   Make new library if it doesn't exist  (MS only)
  2408. SAMPLE&        }   Object files to add to library  (MS and Borland)
  2409. SAMPLE1        }
  2410.  
  2411. nul            }  List file  (MS only)
  2412.  
  2413.  
  2414. 6.  PC-lint Indirect files:
  2415.  
  2416. SAMPLE.C       }  List of .c files to include in the linting process
  2417. SAMPLE1.C      }
  2418.  
  2419. 7.  Clear+ List files:
  2420.  
  2421. SAMPLE.C       }  List of .c files to include when analyzing
  2422. SAMPLE1.C      }  your program.
  2423. %c%
  2424. APPENDIX C:  Program Specs
  2425.  
  2426. *END*
  2427.  
  2428.   SUPER MAKE will work on IBM or true compatible XT, AT, 80386, 80486, 
  2429.   with a hard disk and color or monochrome system.  There is no special 
  2430.   printer coding, so SUPER MAKE should work on any printer.  However, 
  2431.   it has been TESTED on an HP LJII and a STAR SG-10.  If you try to 
  2432.   print the manual to your printer and it doesn't work, print it to a 
  2433.   file, then use the DOS PRINT command to print out the manual.
  2434.  
  2435.   SUPER MAKE works with ANY compiler with the following command line format:
  2436.  
  2437.                Command [command flags] Source_File
  2438.  
  2439.   SUPER MAKE works with linkers and librarians with the above format PLUS
  2440.   Microsoft compatible Response files.  If you manually create response
  2441.   files, or manually delete the Response file command in the make file,
  2442.   replacing it with the proper commands for your librarian or linker,
  2443.   SUPER MAKE should call your librarian or linker properly.
  2444.  
  2445.    PROGRAM LIMITS:
  2446.  
  2447.     3          Languages supported at a time
  2448.     3          Memory Models supported at a time
  2449.    70          Maximum Action Blocks
  2450.    18          Maximum Dependents in one Action Block
  2451.   128 Chars    Maximum Length of Command Line (Including expanded macros)
  2452.   330 Lines    Maximum length of Make File (Including comments - 
  2453.                about 5 1/2 pages)
  2454.    20          Disk Drives
  2455.   100          Directories per Drive
  2456.     -          Number of files per directory is limited by available 
  2457.                memory
  2458.  
  2459.  
  2460.   See the file "readme.sup" for information on other supported compilers, 
  2461.   linkers, etc. and their formats.  The file "super.inf" has all the 
  2462.   latest specs for this version of SUPER MAKE.
  2463.   
  2464. %d%
  2465. APPENDIX D:  LJ Landscape Printers
  2466. *END*
  2467.  
  2468. Two printing utilities for the HP LJII (and compatibles) are included
  2469. with SUPER MAKE.  These are handy if your source code is wider than 80 
  2470. characters.
  2471.  
  2472. S.COM just prints whatever file you want to print, with no frills.
  2473.  
  2474. SL.COM prints the file name, page number and time and date at the top
  2475. of each page, and prints a line number before each line.
  2476.  
  2477. They run the same way:
  2478.  
  2479.                        progname file_to_read [-i]
  2480.  
  2481. Progname is either S or SL.
  2482.  
  2483. File_to_read is the full name of the file you want printed, including
  2484. the extension.
  2485.  
  2486. -i is an optional flag to see how many pages the file will take up
  2487. without actually printing the file.  ("i" stands for "information.")
  2488.  
  2489. Examples:
  2490.  
  2491.   s myfile.c       prints myfile.c
  2492.   sl myfile.c      prints myfile.c with line numbers and page headings
  2493.   sl myfile.c -i   tells how many pages it will take to print myfile.c
  2494.  
  2495. %e%
  2496. APPENDIX E:  Registration form
  2497. *END*
  2498. If you use SUPER MAKE beyond the 30 day trial period you must register
  2499. your copy.  When you register you will recieve the latest version of
  2500. SUPER MAKE on disk (with the registration reminders removed from the
  2501. programs), and a printout of the manual.  You will also recieve 
  2502. notifications of updates, and discounted upgrades.  You will also
  2503. recieve a serial number (to display press alt-v) with will entitle 
  2504. you to technical support.
  2505.  
  2506. Distribution disks (registration NOT included) are $6 (plus S&L: $2
  2507. for the first disk, .50 for each additional disk).
  2508.  
  2509. Registration costs $55 (plus S&L: 2.50 for the first copy, .50 for
  2510. each additional copy).  If you order a registered copy the $55 
  2511. includes the disk and a printed manual(avoiding the distribution disk
  2512. cost altogether).  This is for one copy on one computer.  Call for
  2513. site license information.
  2514.  
  2515. New York residents MUST include sales tax (Mario insists!).
  2516.  
  2517. HELP MAKE THE SHAREWARE CONCEPT WORK BY REGISTERING.
  2518.  
  2519. I would also like to hear your suggestions for new features in future
  2520. upgrades.  The policy at EmmaSoft is to consider all suggestions, and
  2521. incorporate as many of them as are deemed feasible and appropriate.
  2522.  
  2523.                  Name:__________________________
  2524.        Street Address:__________________________
  2525.                       __________________________
  2526.           City/ST/Zip:__________________________
  2527.  
  2528.             Disk Size:________
  2529.               Payment: check___  MC___ VISA___
  2530.             MC/VISA #:__________________________
  2531.               Expires:__________________________
  2532.  
  2533.  
  2534.         No. of Distribution Disks:______  Cost:_____________
  2535.          No. of Registered Copies:______  Cost:_____________
  2536.  
  2537.                                       Subtotal:_____________
  2538.                         NY Tax (if applicable):_____________
  2539.                                 Total Enclosed:_____________
  2540.  
  2541.  
  2542. Send this to:         EmmaSoft
  2543.                       PO Box 238
  2544.                       Lansing, NY 14882-0238
  2545.  
  2546. Or register with MC or VISA by phone:    (607)533-4685
  2547. All funds must be in U.S. funds and drawn on a U.S. Bank.
  2548. %Index%
  2549. INDEX:
  2550.  
  2551. *END*
  2552. Action Block  17, 20, 21, 39, 51, 52, 54
  2553. ASP  3, 48
  2554. Batch  28, 37, 40, 41, 50, 52
  2555. Borland  3, 19, 25, 37, 41, 42, 52
  2556. Clear+  3, 8, 30, 37, 42, 49, 53
  2557. Colors  2, 12, 30
  2558. Command Flags  14, 39, 40, 44, 45
  2559. Command Line  6-8, 17, 19-21, 32, 34, 39, 40, 43, 51, 52, 54
  2560. Command Summary  24, 43
  2561. Commands  9, 15, 17, 19-22, 24-26, 32, 33, 39, 43, 45, 46, 51, 54
  2562. Comments  17, 19, 24, 44, 54
  2563. Compiler  3, 6, 7, 11, 12, 17, 25, 32, 33, 39, 40, 43, 49, 54
  2564. Compressed  38, 47
  2565. Copyright  1, 4, 47
  2566. Date  2, 7, 10, 44, 49, 55
  2567. Default  2, 11-13, 16, 20, 22, 23, 27, 31, 32, 49, 51
  2568. Delete  23, 32, 44, 54
  2569. Dependent  7, 17, 20, 21, 25, 26, 28, 32, 39, 44
  2570. Directory  7-11, 13, 20, 22, 23, 25, 26, 31, 37, 45, 46, 49, 54
  2571. Distribution  3, 37, 47, 56
  2572. DOS  2, 3, 9, 11, 12, 15, 20, 24, 30, 34, 35, 37, 41, 46, 52, 54
  2573. Drive  7-11, 13, 22, 23, 31, 37, 39, 49, 54
  2574. Edit  2, 23-25, 27, 31, 34, 35
  2575. Edit Help  2, 31, 34, 35
  2576. EmmaSoft  1-57
  2577. Environment  9, 49
  2578. Epsilon  9, 10
  2579. Erase Object Files  43, 45
  2580. Error  3, 5, 8, 27, 35, 44, 45, 49
  2581. Files  2, 3, 5, 7-13, 15-19, 22-28, 30-35, 37, 39-47, 49-54
  2582. Files To Make  2, 27, 30
  2583. Help  1, 2, 5-10, 12, 15-17, 25, 26, 30, 31, 33-37, 43, 45, 48-50, 56
  2584. Install  9, 38
  2585. INSTALL.EXE  9, 38
  2586. Language Definition Files  26, 37
  2587. Language Definitions Editor  33
  2588. Lib  3, 8, 18, 23, 25-27, 30, 41, 50, 52
  2589. Librarian  7, 17, 18, 24, 30, 33, 39, 40, 52, 54
  2590. License  2, 4, 56
  2591. Link  3, 7, 8, 12, 13, 21, 25, 26, 28, 32, 49, 51, 52
  2592. Linker  6, 7, 12, 17-19, 24-26, 30, 33, 37, 39-41, 52, 54
  2593. Macro  2, 10, 13, 17-21, 24, 25, 27, 28, 31, 37, 39-41, 50-52
  2594. Macro Set  18, 19, 28, 51
  2595. Make File  2, 6-8, 11-15, 17-19, 21-24, 28, 32, 37, 39-41, 43-45, 49-52, 54
  2596. Make Menu  2, 5, 11-13, 22, 24, 27, 30, 31
  2597. Maker  2, 5, 7, 8, 10, 11, 13, 21, 37, 40, 41, 43, 44, 49, 51, 52
  2598. Manual: On line  5, 12, 15, 16, 33
  2599. Manual: Printing  5, 12, 15, 16, 33
  2600. Memory Model  11, 13, 18, 21, 32, 37, 39, 41, 43, 45
  2601. Microsoft  3, 6, 8, 9, 11, 13, 19, 25, 28, 30, 32, 37, 40, 41, 50-52, 54
  2602. Mouse  2, 9, 10, 23, 34, 36
  2603. PC-lint  3, 8, 30, 37, 42, 49, 52
  2604. Placebo  20, 21
  2605. Printing  2, 5, 12, 15, 16, 33, 55
  2606. Quick Quit  9, 11, 24, 36
  2607. Quit  9-12, 24, 36
  2608. Registration  3, 4, 38, 47, 48, 56
  2609. Reset  2, 11, 23-25, 43, 45
  2610. Response File  32, 37, 54
  2611. Review Current Settings  12
  2612. S.COM  38, 55
  2613. Sample Files  3, 51
  2614. Self Extracting Files  37
  2615. Serial Number  5, 6, 12, 24, 33, 47, 56
  2616. Setup  2, 5, 7, 9-12, 20, 25-27, 30, 31, 37, 45, 49
  2617. Shareware  1, 3-5, 25, 27, 38, 47, 48, 56
  2618. SL.COM  38, 55
  2619. SM.EXE  8, 10, 37
  2620. SME.EXE  8, 10, 37
  2621. SMH.EXE  8, 10, 37
  2622. SUPERFILES  2, 9, 37, 49
  2623. Target  7, 17, 20, 21, 25, 26, 28, 39, 40, 44, 49, 51
  2624. Technical Assistance  2, 5
  2625. Text Editor  2, 24, 25, 27, 31, 34, 35, 40, 41, 49
  2626. Toolbox  2, 5, 15, 25, 31, 33, 35
  2627. Touch  43-45
  2628. Trademarks  3
  2629. Version  2, 5, 12, 24, 33, 34, 44, 47, 54, 56
  2630. View  12, 15, 22, 25, 43, 45
  2631. Warranty  2, 4
  2632.