!short: Recompiling the source code '------------------------------------------------------------------------------ ^bThe Nanforum Toolkit Master Makefile This makefile will allow you to use RMAKE, provided with every Clipper 5.0 package, to maintain your own copy of the Nanforum Toolkit. It is also a good example of how to use RMAKE on a large project. This is the exact copy used by the Nanforum Toolkit librarian. To use it, you must first understand what it does, and what your limitations are. A discussion of MAKE utlities is beyond the scope of this comment; read the Clipper documentation, or the Norton Guide file, for more information on RMAKE. ^b*** Compilers and Assemblers you need Note that currently, Nanforum Toolkit sources are written in Assembly language, Clipper, and C. Within the realm of assembly language, our contributors have submitted code that is designed for Borland's Turbo Assembler (TASM) and Microsoft's Macro Assembler (MASM). So, right now, in order to do a perfect re-build of the Nanforum Toolkit, you must have these tools: Microsoft C (v5.1 or later) Microsoft Macro Assembler (v 5.1 or later) Borland Turbo Assembler Nantucket Clipper v5.0 or later If you know much about assembly language, you can convert MASM sources to TASM and vice versa, but that is up to you. ^b*** Library Utility In addition, you must have a library utility. Microsoft supplies LIB.EXE with its Compiler products, for example. LIB will work fine with this makefile. Note that we assume a command line syntax for library utilities that works like this: lib -+ objname Note the "-+" directive, indicating "replace module." If your library utility does not support this syntax on the command line, then you will have to edit the relevant lines in the makefile. ^b*** Assumptions about your environment NFMAKE.RMK makes just a few assumptions about your environment: Assumption What to change if we're wrong ---------- ----------------------------- Relevant environment Either edit the makefile to variables for each compiler/ set the envars, or setup your assembler are already autoexec.bat to set them on bootup. set (i.e., LIB=, INCLUDE=) See your compiler doc. Microsoft C is being Look for the .C source inference used rule below, and change it to your compiler, making sure your switches are correct. Note that some source may not compile without MSC, so edits may be required. Try to use MSC. Microsoft Assembler Look for all occurences of MASM in executable is called this makefile and change them to MASM.EXE whatever *you* call MASM. Clipper compiler executable Look for all occurences of "Clipper" in is called CLIPPER.EXE this makefile and change them to whatever *you* call Clipper. Microsoft C executable is Look for all occurences of "CL" in this called CL.EXE makefile and change them to whatever *you* call CL. ^b*** Customizing the Makefile We have tried not to assume anything about your environment except what is described above. To achieve that flexibility, you must check and set some macros that can be found just below this documentation. They are: l Path to the resulting library (i.e., \nanfor\lib) o Path to where .obj files should be put s Path to where the source code is found c5 Path to Clipper 5.0 compiler .EXE ma Path to Microsoft Macro Assembler .EXE ta Path to Turbo Assembler .EXE mc Path to Microsoft C 5.1 ml Path and name of library utility (i.e., \bin\lib) Note that directory paths should *not* end in a backslash. If you like to keep your .obj and source files in the same directory, simply point the paths to the same place. ^b*** What happens when you don't have a compiler If RMAKE can't find the compiler in the directory you specified, then the relevant files designed for that compiler will not be built, and the resultant objs won't be replaced in your library. You will get an error message. ^b*** Suggestions for setting up a "rebuilding environment" Should you want to rebuild, the following is suggested: First, make sure you keep an unmodified NANFOR.LIB, downloaded from the forum, in a safe place. Do not modify it. Next, create a directory structure like this \nanfor \obj \src Put this makefile in \nanfor, and all source code into \nanfor\src. Customize the makefile in \nanfor for your environment. The default macros below assume you're using this arrangement. Type RMAKE NFMAKE.RMK. The .obj files should be left in \nanfor\obj, and the new NANFOR.LIB should be in \nanfor. Note that as new releases of the library come out, you may have a lot of work incorporating additions and modifications. So, plan your rebuilding efforts carefully. ^b*** Problems, bugs, support Support for this makefile can be found on CompuServe, in the Nantucket Forum (NANFORUM). Leave messages in section 5 ("User Lib"). Updates and patches will be posted in Library 7. !seealso: "Recompiling the Norton Guide" '------------------------------------------------------------------------------ !short: Recompiling the Norton Guide '------------------------------------------------------------------------------ *** instructions on how to rebuild the NG go here *** !seealso: "Recompiling the source code" '------------------------------------------------------------------------------