home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / progmisc / nfsrc21.zip / NANFOR.RMK < prev    next >
Text File  |  1992-10-20  |  21KB  |  574 lines

  1. /*
  2.  * File......: NANFOR.RMK
  3.  * Date......: $Date:   20 Oct 1992 01:18:38  $
  4.  * Revision..: $Revision:   1.16  $
  5.  * Log file..: $Logfile:   C:/nanfor/src/nanfor.rmv  $
  6.  * 
  7.  * Modification history:
  8.  * ---------------------
  9.  *
  10.  * $Log:   C:/nanfor/src/nanfor.rmv  $
  11.  * 
  12.  *    Rev 1.16   20 Oct 1992 01:18:38   GLENN
  13.  * Adjusted librarian's path macros.
  14.  * 
  15.  *    Rev 1.15   16 Oct 1992 00:18:42   GLENN
  16.  * Deleted ATPROMPT.PRG.
  17.  * 
  18.  *    Rev 1.14   16 Oct 1992 00:11:16   GLENN
  19.  * Added DBFHANDL.ASM, DBTHANDL.ASM, DISPCNT.ASM, NTXHANDL.ASM, and
  20.  * SETKEYS.ASM.  Removed TMENU.ASM.
  21.  * 
  22.  *    Rev 1.13   13 Oct 1992 20:41:38   GLENN
  23.  * Remove TMENU.*; Ted is revamping his @ prompt/menu to replacement.
  24.  * 
  25.  *    Rev 1.12   03 Oct 1992 02:15:02   GLENN
  26.  * Deleted ORIGIN.ASM and replaced with ORIGIN.C.
  27.  * 
  28.  *    Rev 1.11   03 Oct 1992 02:09:18   GLENN
  29.  * Got rid of reference to fttext.h; Steve Larsen's new mods don't
  30.  * require it.
  31.  * 
  32.  *    Rev 1.10   29 Sep 1992 00:42:14   GLENN
  33.  * Added support for explicit pointers to include files; and documented
  34.  * it.  Reset the "rebuilding environment" to a directory structure not
  35.  * so deeply nested.
  36.  * 
  37.  *    Rev 1.9   28 Sep 1992 23:18:02   GLENN
  38.  * Updated the documentation to reflect the current status of the
  39.  * CompuServe forum.  Removed test driver support (this wouldn't have
  40.  * ever worked anyway).  Reset the default variables for the librarian's
  41.  * environment, as is his sacred right.
  42.  * 
  43.  *    Rev 1.8   22 Aug 1992 16:51:04   GLENN
  44.  * Added PVID.PRG.
  45.  * 
  46.  *    Rev 1.7   01 Jul 1992 02:20:20   GLENN
  47.  * Added SLEEP.PRG.
  48.  * 
  49.  *    Rev 1.6   01 Jul 1992 01:24:10   GLENN
  50.  * Added SETLASTK.ASM.
  51.  * 
  52.  *    Rev 1.5   16 Aug 1991 00:02:38   GLENN
  53.  * MADD.PRG and MONTH.PRG dependency lines were written incorrectly
  54.  * so these objects were being built whether they changed or not.
  55.  * Fixed.
  56.  * 
  57.  *    Rev 1.4   15 Aug 1991 23:09:02   GLENN
  58.  * Forest Belt proofread/edited/cleaned up doc
  59.  *
  60.  *    Rev 1.3   17 Jul 1991 22:50:50   GLENN
  61.  * Added a couple last minute sources
  62.  * 
  63.  *    Rev 1.2   14 Jun 1991 20:28:30   GLENN
  64.  * Moved SHADOW.OBJ from MASM section to TASM section
  65.  * 
  66.  *    Rev 1.1   14 Jun 1991 19:58:38   GLENN
  67.  * Removed NOVCONS.OBJ pending some bug fixes.
  68.  * 
  69.  *    Rev 1.0   14 Jun 1991 18:46:46   GLENN
  70.  * Initial revision.
  71.  *
  72.  */
  73.  
  74.  
  75. /* ----------------------------------------------------------------------
  76.    The Nanforum Toolkit Master Makefile     READ THIS BEFORE USING!!!
  77.    ----------------------------------------------------------------------
  78.   
  79.    This makefile will allow you to use RMAKE, provided with every
  80.    Clipper 5.01 package, to maintain your own copy of the Nanforum
  81.    Toolkit.  It is also an example of one way to use RMAKE on a
  82.    large project.  This is the exact copy used by the Nanforum Toolkit
  83.    librarian.
  84.   
  85.    To use it, you must first understand what it does, and what your
  86.    limitations are.  A discussion of MAKE utlities is beyond the scope
  87.    of this comment; read the Clipper documentation, or the Norton Guide
  88.    file, for more information on RMAKE.
  89.   
  90.    *** Compilers and Assemblers you need
  91.   
  92.    Note that currently, Nanforum Toolkit sources are written in
  93.    Assembly language, Clipper, and C.  Within the realm of assembly
  94.    language, our contributors have submitted code that is designed
  95.    for Borland's Turbo Assembler (TASM) and Microsoft's Macro Assembler
  96.    (MASM).  So, right now, in order to do a perfect re-build of 
  97.    the Nanforum Toolkit, you must have these tools:
  98.   
  99.         Microsoft C (v5.1 or later)
  100.         Microsoft Macro Assembler (v 5.1 or later)
  101.         Borland Turbo Assembler
  102.         Nantucket Clipper v5.01 or later
  103.  
  104.   
  105.    If you know much about assembly language, you can convert MASM
  106.    sources to TASM and vice versa, but that is up to you.
  107.   
  108.    *** Library Utility
  109.   
  110.    In addition, you must have a library utility.  Microsoft supplies
  111.    LIB.EXE with its Compiler products, for example.  LIB will work
  112.    fine with this makefile.  Note that we assume a command line syntax
  113.    for library utilities that works like this:
  114.   
  115.         lib <libname> -+objname
  116.   
  117.    Note the "-+" directive, indicating "replace module."  If your
  118.    library utility does not support this syntax on the command line,
  119.    then you will have to edit the relevant lines in the makefile.
  120.  
  121.    A version of LIB.EXE can be found on CompuServe.  Download S12776.ARC
  122.    from the MSL forum.
  123.   
  124.    *** Assumptions about your environment
  125.   
  126.    NANFOR.RMK makes just a few assumptions about your environment:
  127.   
  128.               Assumption            What to change if we're wrong
  129.               ----------            -----------------------------
  130.   
  131.    Microsoft C is being             Look for the .C source inference
  132.    used                             rule below, and change it to *your*
  133.                                     compiler, making sure your switches
  134.                                     are correct.  Note that some source
  135.                                     may not compile without MSC, so edits
  136.                                     may be required.  Try to use MSC.
  137.                                     This is also where you will change the
  138.                                     makefile to whatever *you* call your
  139.                                     C compiler (CL for Microsoft C 5.1.)
  140.   
  141.    Microsoft Assembler              Look for all occurences of MASM in
  142.    executable is called             this makefile and change them to
  143.    MASM.EXE                         whatever *you* call MASM.
  144.   
  145.    Borland's Turbo Assembler        Look for all occurences of TASM in
  146.    executable is called             this makefile and change them to
  147.    TASM.EXE                         whatever *you* call TASM.
  148.   
  149.    Clipper compiler executable      Look for the .PRG source inference
  150.    is called CLIPPER.EXE            rule below, and change it to whatever
  151.                                     *you* call Clipper.
  152.   
  153.   
  154.    *** Customizing the Makefile
  155.   
  156.    We have tried not to assume anything about your environment except
  157.    what is described above.  To achieve that flexibility, you must
  158.    check and set some macros that can be found just below this
  159.    documentation.  They are:
  160.   
  161.         l         Path to the resulting library (i.e., \nanfor)
  162.         o         Path to where .obj files should be put (i.e., \nanfor\obj)
  163.         s         Path to where the source code is found (i.e., \nanfor\src)
  164.        c5         Path and name of Clipper 5.0 compiler
  165.        c5g        Clipper 5 option line for include files (see below)
  166.        ma         Path to Microsoft Macro Assembler .EXE
  167.        ta         Path to Turbo Assembler .EXE
  168.        mc         Path to Microsoft C 5.1
  169.        mcg        Microsoft C option line for include files (see below)
  170.        ml         Path and name of library utility (i.e., \bin\lib)
  171.   
  172.     Note that directory paths should *not* end in a backslash.
  173.     If you like to keep your .obj and source files in the same
  174.     directory, simply point the paths to the same place.
  175.  
  176.     Be careful not to nest your "rebuilding environment" (see below) 
  177.     to deep; you could end up creating very long command lines that 
  178.     will exceed DOS limits.  
  179.  
  180.     *** How include files are handled
  181.  
  182.     The librarian maintains a few versions of Clipper on his disk
  183.     at any one time, as well as one or two versions of various 
  184.     C compilers.  As time went on, he realized that the SET 
  185.     INCLUDE= and SET LIB= environment variables were somewhat evil.
  186.     For example, toolkit v2.1 is supposed to be built with the 
  187.     exact includes supplied by Computer Associates for 5.01a, but the 
  188.     librarian's INCLUDE envar points to the 5.0 includes.  Resetting
  189.     these variables is easy but if one forgets, there is a potential
  190.     for version confusion.
  191.  
  192.     To eliminate confusion over where the globals are, the following
  193.     was decided:
  194.  
  195.         All include files shall be pointed to explicitly using
  196.         compiler command line options, and if possible, the 
  197.         INCLUDE environment variable shall be ignored.
  198.         
  199.     Clipper 5.x provides the /i option for this, and Microsoft C 
  200.     provides both the /X option and the /I option.  Read your docs
  201.     for details.
  202.  
  203.     This new rule makes it necessary to create two more macros used 
  204.     by this makefile:
  205.  
  206.            c5g    =  a complete command line argument to be 
  207.                      supplied to Clipper 5.x telling it where 
  208.                      the appropriate includes are
  209.  
  210.            mcg    =  a complete command line argument to be 
  211.                      supplied to Microsoft C telling it where the
  212.                      appropriate includes are
  213.  
  214.     Other includes used by the toolkit sources will be in the same
  215.     directory as the main source files.           
  216.          
  217.     *** What happens when you don't have a compiler
  218.   
  219.     If RMAKE can't find the compiler in the directory you specified,
  220.     then the relevant files designed for that compiler will not be
  221.     built, and the resultant objs won't be replaced in your library.
  222.     You will get an error message.
  223.   
  224.     *** Suggestions for setting up a "rebuilding environment"
  225.   
  226.     Should you want to rebuild, the following is suggested:
  227.   
  228.     First, make sure you keep an unmodified NANFOR.LIB, downloaded
  229.     from the forum, in a safe place.  Do not modify it.
  230.   
  231.     Next, create a directory structure like this
  232.   
  233.     \nfbld
  234.         \obj
  235.         \rel
  236.  
  237.   
  238.     Put this makefile and all the source in \nfbld.
  239.   
  240.     Customize the makefile in \nfbld for your environment.
  241.     The default macros below assume you're using this arrangement.
  242.   
  243.     Type RMAKE NANFOR.RMK.  The .obj files should be left in
  244.     \nfbld\obj, and the new NANFOR.LIB should be in \nfbld\rel
  245.   
  246.     Note that as new releases of the library come out, you may have
  247.     a lot of work incorporating additions and modifications.  So,
  248.     plan your rebuilding efforts carefully.
  249.   
  250.     *** Problems, bugs, support
  251.   
  252.     Support for this makefile can be found on CompuServe, in the
  253.     Clipper Forum (GO CLIPPER).  Leave messages in section 5
  254.     "Nanforum Toolkit").  Updates and patches will be posted in 
  255.     Library 5.
  256.  
  257. */
  258.  
  259. //  ------------------------------------------------------------------------
  260. //  path macros for your environment.. BE SURE TO SET THESE! THEY'RE SET FOR
  261. //  THE LIBRARIAN'S MACHINE AND WILL NOT WORK ON YOURS!
  262. //  ------------------------------------------------------------------------
  263.  
  264. l   = \nfbld\rel
  265. o   = \nfbld\obj
  266. s   = \nfbld
  267. c5  = \clip\147\bin\clipper
  268. c5g = /i\clip\147\include
  269. ma  = \omasm
  270. ta  = \utils
  271. mc  = \c700\bin
  272. mcg = /X /I \c700\include /I \clip\147\include
  273. ml  = \c700\bin\lib
  274.  
  275.  
  276. // -----------------------------
  277. // Kill lib response file if any
  278. // -----------------------------
  279.  
  280.  
  281. !iffile $(l)\nanfor.rsp
  282.    #! del $(l)\nanfor.rsp
  283. !endif
  284.  
  285. // ------------------------------------------------------------------
  286. // Note on inference Rule for ASM files:
  287. //
  288. // THE ACTUAL CALL TO THE ASSEMBLER IS DEFINED WITHIN THE 'ASM'
  289. // MACRO WHICH IS DEFINED BEFORE EACH .ASM SECTION AS EITHER
  290. // MASM OR TASM
  291. // -------------------------------------------------------------------
  292.  
  293. .ASM.OBJ:
  294.         $(asm) /mx $(s)\$*,$(o)\$*;
  295.         echo -+$(o)\$* & >> $(l)\nanfor.rsp
  296.  
  297. // inference rule for c files
  298.  
  299. .C.OBJ:
  300.     $(mc)\cl /AL /Gs /FPa /Ox /Zl $(mcg) /c /Fo$(o)\$* $(s)\$*.c
  301.         echo -+$(o)\$* & >> $(l)\nanfor.rsp
  302.  
  303. // ------------------------------
  304. // inference rule for prg files
  305. // ------------------------------
  306.  
  307. .PRG.OBJ:
  308.         $(c5) $(s)\$* /m /l /n /r /w $(c5g) /o$(o)\$*
  309.         echo -+$(o)\$* & >> $(l)\nanfor.rsp
  310.  
  311. // -------------------------------
  312. // inference rule for library
  313. // -------------------------------
  314.  
  315. .RSP.LIB:
  316.         echo ,$(l)\nanfor.lst; >> $(l)\nanfor.rsp
  317.         if not exist $(l)\nanfor.lib $(ml) $(l)\nanfor.lib;
  318.         $(ml) $(l)\NANFOR.LIB @$(l)\nanfor.rsp
  319.  
  320. // -----------------------------------------------------------------
  321. // MASM 5.1
  322. // This section compiles any source files that need MASM 5.1
  323. // -----------------------------------------------------------------
  324.  
  325. // check to see if masm.exe is found
  326.  
  327. !iffile $(ma)\masm.exe
  328.  
  329. asm = $(ma)\masm
  330.  
  331. $(o)\DISPA.OBJ      :  $(s)\DISPA.ASM
  332. $(o)\ENDCAP.OBJ     :  $(s)\ENDCAP.ASM
  333. $(o)\FLOPTST.OBJ    :  $(s)\FLOPTST.ASM
  334. $(o)\FLUSHCAP.OBJ   :  $(s)\FLUSHCAP.ASM
  335. $(o)\HANDCNT.OBJ    :  $(s)\HANDCNT.ASM
  336. $(o)\KSPEED.OBJ     :  $(s)\KSPEED.ASM
  337. $(o)\LOGOUT.OBJ     :  $(s)\LOGOUT.ASM
  338. $(o)\NOVDMP2.OBJ    :  $(s)\NOVDMP2.ASM  $(s)\MINTER.MAC
  339. $(o)\NOVPURGE.OBJ   :  $(s)\NOVPURGE.ASM $(s)\MINTER.MAC
  340. $(o)\NWTTS1.OBJ     :  $(s)\NWTTS1.ASM
  341. $(o)\NWTTS2.OBJ     :  $(s)\NWTTS2.ASM
  342. $(o)\NWTTS3.OBJ     :  $(s)\NWTTS3.ASM
  343. $(o)\NWTTS4.OBJ     :  $(s)\NWTTS4.ASM
  344. $(o)\NWTTS5.OBJ     :  $(s)\NWTTS5.ASM
  345. $(o)\_WHEREIS.OBJ   :  $(s)\_WHEREIS.ASM
  346.  
  347. !else
  348.  
  349.     // if masm.exe file not found
  350.  
  351. !stderr "NFMake Error: MASM.EXE file not found ... .ASM files not processed!"
  352.  
  353. !endif
  354.  
  355. // ------------------------------------------------------------------
  356. // TASM
  357. // This section compiles any source files that need TASM
  358. // -------------------------------------------------------------------
  359.  
  360. // check to see if tasm.exe is found
  361.  
  362. !iffile $(ta)\tasm.exe
  363.  
  364. asm = $(ta)\tasm
  365.  
  366. $(o)\ADAPTER.OBJ    :       $(s)\ADAPTER.ASM
  367. $(o)\AINT86.OBJ     :       $(s)\AINT86.ASM
  368. $(o)\CHDIR.OBJ      :       $(s)\CHDIR.ASM
  369. $(o)\DBFHANDL.OBJ   :       $(s)\DBFHANDL.ASM
  370. $(o)\DBTHANDL.OBJ   :       $(s)\DBTHANDL.ASM
  371. $(o)\DEFAULT.OBJ    :       $(s)\DEFAULT.ASM
  372. $(o)\DIRFUNC.OBJ    :       $(s)\DIRFUNC.ASM
  373. $(o)\DISPCNT.OBJ    :       $(s)\DISPCNT.ASM
  374. $(o)\INP.OBJ        :       $(s)\INP.ASM
  375. $(o)\ISPRINT.OBJ    :       $(s)\ISPRINT.ASM
  376. $(o)\MKDIR.OBJ      :       $(s)\MKDIR.ASM
  377. $(o)\NTXHANDL.OBJ   :       $(s)\NTXHANDL.ASM
  378. $(o)\OUTP.OBJ       :       $(s)\OUTP.ASM
  379. $(o)\PUTKEY.OBJ     :       $(s)\PUTKEY.ASM
  380. $(o)\REBOOT.OBJ     :       $(s)\REBOOT.ASM
  381. $(o)\RESTATT.OBJ    :       $(s)\RESTATT.ASM
  382. $(o)\RMDIR.OBJ      :       $(s)\RMDIR.ASM
  383. $(o)\SAVEATT.OBJ    :       $(s)\SAVEATT.ASM
  384. $(o)\SETKEYS.OBJ    :       $(s)\SETKEYS.ASM
  385. $(o)\SETLASTK.OBJ   :       $(s)\SETLASTK.ASM
  386. $(o)\SHADOW.OBJ     :       $(s)\SHADOW.ASM
  387.  
  388. !else
  389.  
  390.     // if tasm.exe file not found
  391.  
  392. !stderr "NFMake Error: TASM.EXE file not found ... .ASM files not processed!"
  393.  
  394. !endif
  395.  
  396. // ------------------------------------------------------------------
  397. // MICROSOFT C
  398. // This section compiles any source files that need MSC 5.1
  399. // ------------------------------------------------------------------
  400.  
  401. // check to see if cl.exe is found
  402.  
  403. !iffile $(mc)\cl.exe
  404.  
  405. $(o)\ALT.OBJ        :  $(s)\ALT.C
  406. $(o)\CAPLOCK.OBJ    :  $(s)\CAPLOCK.C
  407. $(o)\CINT86.OBJ     :  $(s)\CINT86.C   $(s)\CINT86.H
  408. $(o)\CTRL.OBJ       :  $(s)\CTRL.C
  409. $(o)\DISPC.OBJ      :  $(s)\DISPC.C    $(s)\DISPA.ASM $(s)\DFKEY.H
  410. $(o)\FTTEXT.OBJ     :  $(s)\FTTEXT.C
  411. $(o)\GETENVRN.OBJ   :  $(s)\GETENVRN.C
  412. $(o)\NUMLOCK.OBJ    :  $(s)\NUMLOCK.C
  413. $(o)\ORIGIN.OBJ     :  $(s)\ORIGIN.C
  414. $(o)\PEEK.OBJ       :  $(s)\PEEK.C
  415. $(o)\POKE.OBJ       :  $(s)\POKE.C
  416. $(o)\PROPER.OBJ     :  $(s)\PROPER.C
  417. $(o)\PRTSCR.OBJ     :  $(s)\PRTSCR.C
  418. $(o)\SHIFT.OBJ      :  $(s)\SHIFT.C
  419. $(o)\STOD.OBJ       :  $(s)\STOD.C
  420. $(o)\VIDEO1.OBJ     :  $(s)\VIDEO1.C
  421.  
  422. !else
  423.  
  424.     // if cl.exe file not found
  425.  
  426. !stderr "NFMake Error: CL.EXE file not found ... .C files not processed!"
  427.  
  428. !endif
  429.  
  430. // --------------------------------------------------------------
  431. // CLIPPER 5.01
  432. // This section compiles any source files that need Clipper 5.01
  433. // ---------------------------------------------------------------
  434.  
  435. // check to see if clipper.exe is found
  436.  
  437. !iffile $(c5).exe
  438.  
  439.  
  440.  
  441. $(o)\AADING.OBJ     :  $(s)\AADING.PRG
  442. $(o)\AAVG.OBJ       :  $(s)\AAVG.PRG      $(s)\ASUM.PRG
  443. $(o)\ACCTADJ.OBJ    :  $(s)\ACCTADJ.PRG
  444. $(o)\ACCTMNTH.OBJ   :  $(s)\ACCTMNTH.PRG
  445. $(o)\ACCTQTR.OBJ    :  $(s)\ACCTQTR.PRG
  446. $(o)\ACCTWEEK.OBJ   :  $(s)\ACCTWEEK.PRG
  447. $(o)\ACCTYEAR.OBJ   :  $(s)\ACCTYEAR.PRG
  448. $(o)\ACH2TB.OBJ     :  $(s)\ACH2TB.PRG    $(s)\FT_ACH2T.CH
  449. $(o)\ADESSORT.OBJ   :  $(s)\ADESSORT.PRG
  450. $(o)\AEMAXLEN.OBJ   :  $(s)\AEMAXLEN.PRG
  451. $(o)\AEMINLEN.OBJ   :  $(s)\AEMINLEN.PRG
  452. $(o)\AMEDIAN.OBJ    :  $(s)\AMEDIAN.PRG
  453. $(o)\ANOMATCH.OBJ   :  $(s)\ANOMATCH.PRG
  454. $(o)\ANY2ANY.OBJ    :  $(s)\ANY2ANY.PRG
  455. $(o)\AREDIT.OBJ     :  $(s)\AREDIT.PRG
  456. $(o)\ASUM.OBJ       :  $(s)\ASUM.PRG
  457. $(o)\AT2.OBJ        :  $(s)\AT2.PRG
  458. $(o)\BITCLR.OBJ     :  $(s)\BITCLR.PRG    $(s)\ISBIT.PRG
  459. $(o)\BITSET.OBJ     :  $(s)\BITSET.PRG    $(s)\ISBIT.PRG
  460. $(o)\BLINK.OBJ      :  $(s)\BLINK.PRG
  461. $(o)\BYT2BIT.OBJ    :  $(s)\BYT2BIT.PRG   $(s)\ISBIT.PRG
  462. $(o)\BYT2HEX.OBJ    :  $(s)\BYT2HEX.PRG
  463. $(o)\BYTEAND.OBJ    :  $(s)\BYTEAND.PRG   $(s)\ISBIT.PRG $(s)\BITSET.PRG
  464. $(o)\BYTENEG.OBJ    :  $(s)\BYTENEG.PRG
  465. $(o)\BYTENOT.OBJ    :  $(s)\BYTENOT.PRG   $(s)\ISBIT.PRG $(s)\BITSET.PRG
  466. $(o)\BYTEOR.OBJ     :  $(s)\BYTEOR.PRG    $(s)\ISBIT.PRG $(s)\BITSET.PRG
  467. $(o)\BYTEXOR.OBJ    :  $(s)\BYTEXOR.PRG   $(s)\ISBIT.PRG $(s)\BITSET.PRG
  468. $(o)\CALENDAR.OBJ   :  $(s)\CALENDAR.PRG
  469. $(o)\CLRSEL.OBJ     :  $(s)\CLRSEL.PRG
  470. $(o)\CNTRYSET.OBJ   :  $(s)\CNTRYSET.PRG
  471. $(o)\COM34.OBJ      :  $(s)\COM34.PRG
  472. $(o)\D2E.OBJ        :  $(s)\D2E.PRG
  473. $(o)\DATECNFG.OBJ   :  $(s)\DATECNFG.PRG
  474. $(o)\DAYOFYR.OBJ    :  $(s)\DAYOFYR.PRG
  475. $(o)\DAYTOBOW.OBJ   :  $(s)\DAYTOBOW.PRG
  476. $(o)\DECTOBIN.OBJ   :  $(s)\DECTOBIN.PRG
  477. $(o)\DFILE.OBJ      :  $(s)\DFILE.PRG     $(s)\DISPC.C    $(s)\DISPA.ASM  $(s)\DFKEY.H
  478. $(o)\DIR2DBF.OBJ    :  $(s)\DIR2DBF.PRG                  
  479. $(o)\DISKFUNC.OBJ   :  $(s)\DISKFUNC.PRG 
  480. $(o)\DISPMSG.OBJ    :  $(s)\DISPMSG.PRG   $(s)\SHADOW.ASM
  481. $(o)\DOSVER.OBJ     :  $(s)\DOSVER.PRG
  482. $(o)\E2D.OBJ        :  $(s)\E2D.PRG
  483. $(o)\EASTER.OBJ     :  $(s)\EASTER.PRG
  484. $(o)\ELAPMIL.OBJ    :  $(s)\ELAPMIL.PRG
  485. $(o)\ELAPSED.OBJ    :  $(s)\ELAPSED.PRG
  486. $(o)\ELTIME.OBJ     :  $(s)\ELTIME.PRG
  487. $(o)\EXIST.OBJ      :  $(s)\EXIST.PRG
  488. $(o)\FIELD.OBJ      :  $(s)\FIELD.PRG
  489. $(o)\FINDITH.OBJ    :  $(s)\FINDITH.PRG
  490. $(o)\FIRSTDAY.OBJ   :  $(s)\FIRSTDAY.PRG
  491. $(o)\GCD.OBJ        :  $(s)\GCD.PRG
  492. $(o)\HEX2DEC.OBJ    :  $(s)\HEX2DEC.PRG
  493. $(o)\INVCLR.OBJ     :  $(s)\INVCLR.PRG
  494. $(o)\ISBIT.OBJ      :  $(s)\ISBIT.PRG
  495. $(o)\ISBITON.OBJ    :  $(s)\ISBITON.PRG
  496. $(o)\ISSHARE.OBJ    :  $(s)\ISSHARE.PRG
  497. $(o)\LASTDAY.OBJ    :  $(s)\LASTDAY.PRG
  498. $(o)\LINKED.OBJ     :  $(s)\LINKED.PRG
  499. $(o)\MADD.OBJ       :  $(s)\MADD.PRG
  500. $(o)\MENU1.OBJ      :  $(s)\MENU1.PRG $(s)\SHADOW.ASM
  501. $(o)\MENUTO.OBJ     :  $(s)\MENUTO.PRG
  502. $(o)\METAPH.OBJ     :  $(s)\METAPH.PRG
  503. $(o)\MILTIME.OBJ    :  $(s)\MILTIME.PRG
  504. $(o)\MIN2DHM.OBJ    :  $(s)\MIN2DHM.PRG
  505. $(o)\MONTH.OBJ      :  $(s)\MONTH.PRG
  506. $(o)\MOUSE1.OBJ     :  $(s)\MOUSE1.PRG
  507. $(o)\NETPV.OBJ      :  $(s)\NETPV.PRG
  508. $(o)\NOOCCUR.OBJ    :  $(s)\NOOCCUR.PRG
  509. $(o)\NTOW.OBJ       :  $(s)\NTOW.PRG
  510. $(o)\NWLSTAT.OBJ    :  $(s)\NWLSTAT.PRG
  511. $(o)\NWSEM.OBJ      :  $(s)\NWSEM.PRG
  512. $(o)\NWUID.OBJ      :  $(s)\NWUID.PRG
  513. $(o)\PAGE.OBJ       :  $(s)\PAGE.PRG
  514. $(o)\PCHR.OBJ       :  $(s)\PCHR.PRG
  515. $(o)\PEGS.OBJ       :  $(s)\PEGS.PRG
  516. $(o)\PENDING.OBJ    :  $(s)\PENDING.PRG
  517. $(o)\PICKDAY.OBJ    :  $(s)\PICKDAY.PRG
  518. $(o)\POPADDER.OBJ   :  $(s)\POPADDER.PRG
  519. $(o)\PRTESC.OBJ     :  $(s)\PRTESC.PRG
  520. $(o)\PVID.OBJ       :  $(s)\PVID.PRG
  521. $(o)\QTR.OBJ        :  $(s)\QTR.PRG
  522. $(o)\RAND1.OBJ      :  $(s)\RAND1.PRG
  523. $(o)\RESTSETS.OBJ   :  $(s)\RESTSETS.PRG $(s)\CNTRYSET.PRG
  524. $(o)\ROUND.OBJ      :  $(s)\ROUND.PRG
  525. $(o)\SAVEARR.OBJ    :  $(s)\SAVEARR.PRG
  526. $(o)\SAVESETS.OBJ   :  $(s)\SAVESETS.PRG
  527. $(o)\SCANCODE.OBJ   :  $(s)\SCANCODE.PRG
  528. $(o)\SCREGION.OBJ   :  $(s)\SCREGION.PRG
  529. $(o)\SETDATE.OBJ    :  $(s)\SETDATE.PRG
  530. $(o)\SETTIME.OBJ    :  $(s)\SETTIME.PRG
  531. $(o)\SINKEY.OBJ     :  $(s)\SINKEY.PRG
  532. $(o)\SLEEP.OBJ      :  $(s)\SLEEP.PRG
  533. $(o)\SQZN.OBJ       :  $(s)\SQZN.PRG
  534. $(o)\SYSMEM.OBJ     :  $(s)\SYSMEM.PRG
  535. $(o)\TBWHILE.OBJ    :  $(s)\TBWHILE.PRG
  536. $(o)\TEMPFILE.OBJ   :  $(s)\TEMPFILE.PRG
  537. $(o)\VERTMENU.OBJ   :  $(s)\VERTMENU.PRG
  538. $(o)\VIDCUR.OBJ     :  $(s)\VIDCUR.PRG
  539. $(o)\VIDMODE.OBJ    :  $(s)\VIDMODE.PRG
  540. $(o)\WDA.OBJ        :  $(s)\WDA.PRG
  541. $(o)\WEEK.OBJ       :  $(s)\WEEK.PRG
  542. $(o)\WHEREIS.OBJ    :  $(s)\WHEREIS.PRG
  543. $(o)\WORKDAYS.OBJ   :  $(s)\WORKDAYS.PRG
  544. $(o)\WOY.OBJ        :  $(s)\WOY.PRG
  545. $(o)\XBOX.OBJ       :  $(s)\XBOX.PRG $(s)\SHADOW.ASM
  546. $(o)\YEAR.OBJ       :  $(s)\YEAR.PRG
  547.  
  548. !else
  549.  
  550.     // if clipper.exe file not found
  551.  
  552. !stderr "NFMake Error: CLIPPER.EXE file not found ... .PRG files not processed!"
  553.  
  554. !endif
  555.  
  556.  
  557. //  ┌─────────────────────────────────────────────────────────────┐
  558. //  │ This section invokes the library manager - it must be last! │
  559. //  └─────────────────────────────────────────────────────────────┘
  560. //
  561.  
  562. !iffile $(ml).exe
  563.  
  564. $(l)\NANFOR.LIB         :      $(l)\NANFOR.RSP
  565.  
  566. !else
  567.  
  568. !stderr "NFMake Error: LIB.EXE file not found ... NANFOR.LIB not processed!"
  569.  
  570. !endif
  571.  
  572.  
  573. // end of nanfor.rmk
  574.