home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / bsrc_260.zip / binkley.mak next >
Text File  |  1996-04-07  |  19KB  |  370 lines

  1. #--------------------------------------------------------------------------#
  2. #                                                                          #
  3. #                                                                          #
  4. #      ------------         Bit-Bucket Software, Co.                       #
  5. #      \ 10001101 /         Writers and Distributors of                    #
  6. #       \ 011110 /          Freely Available<tm> Software.                 #
  7. #        \ 1011 /                                                          #
  8. #         ------                                                           #
  9. #                                                                          #
  10. #              (C) Copyright 1987-96, Bit Bucket Software Co.              #
  11. #                                                                          #
  12. #                                                                          #
  13. #                                                                          #
  14. #            Makefile for BinkleyTerm (Microsoft NMAKE version)            #
  15. #                                                                          #
  16. #                                                                          #
  17. #                       BinkleyTerm Licensing Terms                        #
  18. #                                                                          #
  19. #                                                                          #
  20. #               (C) Copyright 1987-96 Bit Bucket Software Co.              #
  21. #    ALL RIGHTS RESERVED. COMMERCIAL DISTRIBUTION AND/OR USE PROHIBITED    #
  22. #          WITHOUT WRITTEN PERMISSION FROM BIT BUCKET SOFTWARE CO.         #
  23. #                                                                          #
  24. # Non-Commercial distribution and/or use is permitted under the following  #
  25. # terms:                                                                   #
  26. #                                                                          #
  27. #                                                                          #
  28. # 1. You may copy and distribute verbatim copies of BinkleyTerm source,    #
  29. # documentation, and executable code as you receive it, in any medium,     #
  30. # provided that you conspicuously and appropriately publish on each copy a #
  31. # valid copyright notice "(C) Copyright 1987-96, Bit Bucket Software Co."; #
  32. # keep intact the notices on all files that refer to this License          #
  33. # Agreement and to the absence of any warranty;  PROVIDE UNMODIFIED COPIES #
  34. # OF THE DOCUMENTATION AS PROVIDED WITH THE PROGRAM; and give any other    #
  35. # recipients of the BinkleyTerm program a copy of this License Agreement   #
  36. # along with the program.  You may charge a distribution fee for the       #
  37. # physical act of transferring a copy, but no more than is necessary to    #
  38. # recover your actual costs incurred in the transfer. Under no             #
  39. # circumstances is BinkleyTerm to be distributed in such a way as to be    #
  40. # construed as "value added" in a sales transaction, such as, but not      #
  41. # limited to, software bundled with a modem or CD-ROM software             #
  42. # collections.                                                             #
  43. #                                                                          #
  44. # 2. You may modify your copy or copies of BinkleyTerm or any portion of   #
  45. # it, and copy and distribute such modifications under the terms of        #
  46. # Paragraph 1 above, provided that you also do the following:              #
  47. #                                                                          #
  48. #     a) cause the modified files to carry prominent notices stating       #
  49. #     that you changed the files and the date of any change;               #
  50. #                                                                          #
  51. #     b) cause the executable code of such modified version to clearly     #
  52. #     identify itself as such in the course of its normal operation;       #
  53. #                                                                          #
  54. #     c) if the modified version is not a "port", but operates in the      #
  55. #     same hardware and/or software environment as the original            #
  56. #     distribution, make the original version equally available,           #
  57. #     clearly identifying same as the original, unmodified version;        #
  58. #                                                                          #
  59. #     d) cause the whole of any work that you distribute or publish,       #
  60. #     that in whole or in part contains or is a derivative of              #
  61. #     BinkleyTerm or any part thereof, to be licensed at no charge to      #
  62. #     all third parties on terms identical to those contained in this      #
  63. #     License Agreement (except that you may choose to grant more          #
  64. #     extensive warranty protection to some or all third parties, at       #
  65. #     your option); and                                                    #
  66. #                                                                          #
  67. #     e) send the complete source code modifications to Bit Bucket         #
  68. #     Software Co. at one of the addresses listed below,  for the          #
  69. #     purpose of evaluation for inclusion in future releases of            #
  70. #     BinkleyTerm.  Should your source code be included in BinkleyTerm,    #
  71. #     Bit Bucket Software Co. retains all rights for redistribution of     #
  72. #     the code as part of BinkleyTerm and all derivative works, with       #
  73. #     appropriate credit given to the author of the modification.          #
  74. #                                                                          #
  75. #     f) You may charge a distribution fee for the physical act of         #
  76. #     transferring a copy, but no more than is necessary to recover        #
  77. #     your actual costs incurred in the transfer, and you may at your      #
  78. #     option offer warranty protection in exchange for a fee.              #
  79. #                                                                          #
  80. # 3. Mere aggregation of another unrelated program with this program and   #
  81. # documentation (or derivative works) on a volume of a storage or          #
  82. # distribution medium does not bring the other program under the scope of  #
  83. # these terms.                                                             #
  84. #                                                                          #
  85. # 4. You may copy and distribute BinkleyTerm and its associated            #
  86. # documentation (or a portion or derivative of it, under Paragraph 2) in   #
  87. # object code or executable form under the terms of Paragraphs 1 and 2     #
  88. # above provided that you also do one of the following:                    #
  89. #                                                                          #
  90. #     a) accompany it with the complete corresponding machine-readable     #
  91. #     source code, which must be distributed under the terms of            #
  92. #     Paragraphs 1 and 2 above; or,                                        #
  93. #                                                                          #
  94. #     b) accompany it with a written offer, valid for at least three       #
  95. #     years, to give any third party free (except for a nominal            #
  96. #     shipping charge) a complete machine-readable copy of the             #
  97. #     corresponding source code, to be distributed under the terms of      #
  98. #     Paragraphs 1 and 2 above; or,                                        #
  99. #                                                                          #
  100. #     c) accompany it with the information you received as to where        #
  101. #     the corresponding source code may be obtained.  (This                #
  102. #     alternative is allowed only for noncommercial distribution and       #
  103. #     only if you received the program in object code or executable        #
  104. #     form alone.)                                                         #
  105. #                                                                          #
  106. # For an executable file, complete source code means all the source code   #
  107. # for all modules it contains; but, as a special exception, it need not    #
  108. # include source code for modules which are standard libraries that        #
  109. # accompany the operating system on which the executable file runs.        #
  110. #                                                                          #
  111. # 5. You may not copy, sublicense, distribute or transfer BinkleyTerm and  #
  112. # its associated documentation  except as expressly provided under this    #
  113. # License Agreement.  Any attempt otherwise to copy, sublicense,           #
  114. # distribute or transfer BinkleyTerm is void and your rights to use the    #
  115. # program under this License agreement shall be automatically terminated.  #
  116. # However, parties who have received computer software programs from you   #
  117. # with this License Agreement will not have their licenses terminated so   #
  118. # long as such parties remain in full compliance, and notify Bit Bucket    #
  119. # Software Co. of their intention to comply with this Agreement.           #
  120. #                                                                          #
  121. # 6. If you wish to incorporate parts of BinkleyTerm into other free       #
  122. # programs whose distribution conditions are different, please contact     #
  123. # Bit Bucket Software Co. at one of the addresses listed below.  We have   #
  124. # not yet worked out a simple rule that can be stated here, but we will    #
  125. # usually permit this.  We will be guided by the two goals of preserving   #
  126. # the free status of all derivatives of our free software (as it pertains  #
  127. # to Non-Commercial use as provided by this Agreement) and of promoting    #
  128. # the sharing and reuse of software.                                       #
  129. #                                                                          #
  130. # 7. For the purposes of this document, "COMMERCIAL USE" is defined as     #
  131. # operation of the software on four or more computers or data lines owned  #
  132. # by the same for-profit organization. Any organization may operate this   #
  133. # software under the terms of this Non-Commercial Agreement if operation   #
  134. # is limited to three or less computers or data lines.                     #
  135. #                                                                          #
  136. #                                                                          #
  137. #                                NO WARRANTY                               #
  138. #                                                                          #
  139. # BECAUSE BINKLEYTERM IS LICENSED FREE OF CHARGE, WE PROVIDE ABSOLUTELY NO #
  140. # WARRANTY.  EXCEPT WHEN OTHERWISE STATED IN WRITING, BIT BUCKET SOFTWARE  #
  141. # CO. AND/OR OTHER PARTIES PROVIDE BINKLEYTERM "AS IS" WITHOUT WARRANTY OF #
  142. # ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,    #
  143. # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR   #
  144. # PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF           #
  145. # BINKLEYTERM, AND THE ACCURACY OF ITS ASSOCIATED DOCUMENTATION, IS WITH   #
  146. # YOU.  SHOULD BINKLEYTERM OR ITS ASSOCIATED DOCUMENTATION PROVE           #
  147. # DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR     #
  148. # CORRECTION.                                                              #
  149. #                                                                          #
  150. # IN NO EVENT WILL BIT BUCKET SOFTWARE CO. BE RESPONSIBLE IN ANY WAY FOR   #
  151. # THE BEHAVIOR OF MODIFIED VERSIONS OF BINKLEYTERM. IN NO EVENT WILL       #
  152. # BIT BUCKET SOFTWARE CO. AND/OR ANY OTHER PARTY WHO MAY MODIFY AND        #
  153. # REDISTRIBUTE BINKLEYTERM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR        #
  154. # DAMAGES, INCLUDING ANY LOST PROFITS, LOST MONIES, OR OTHER SPECIAL,      #
  155. # INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY  #
  156. # TO USE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED #
  157. # INACCURATE OR LOSSES SUSTAINED BY THIRD PARTIES OR A FAILURE OF THE      #
  158. # PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS) BINKLEYTERM, EVEN IF YOU     #
  159. # HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, OR FOR ANY CLAIM   #
  160. # BY ANY OTHER PARTY.                                                      #
  161. #                                                                          #
  162. #                                                                          #
  163. # You can contact Bit Bucket Software Co. at any one of the following      #
  164. # addresses:                                                               #
  165. #                                                                          #
  166. # Bit Bucket Software Co.        FidoNet  1:104/501, 1:343/491             #
  167. # P.O. Box 460398                AlterNet 7:42/1491                        #
  168. # Aurora, CO 80046               Internet f491.n343.z1.fidonet.org         #
  169. #                                                                          #
  170. #                                                                          #
  171. # Please feel free to contact us at any time to share your comments about  #
  172. # our software and/or licensing policies.                                  #
  173. #                                                                          #
  174. # Our thanks to Richard Stallman and the Free Software Foundation, Inc.,   #
  175. # for most of the wording of this License.                                 #
  176. #                                                                          #
  177. #--------------------------------------------------------------------------#
  178.  
  179. #
  180. # Definitions
  181. #
  182.  
  183. PROJ = BINKLEY
  184. PROJFILE = BINKLEY.MAK
  185.  
  186. SRC_DIR  = ..\src
  187. INCL_DIR = ..\include
  188.  
  189. C7DIR = C:\C700
  190. CC  = cl
  191. ASM = masm
  192.  
  193. LINKER = link
  194. LRF  = echo > NUL
  195.  
  196. #
  197. # Default C Compiler flags: 
  198. # Compile only, Large Model,
  199. # Optimize for speed, only one return per function, No stack checking,
  200. # Pack structures, Include CodeView symbols, Maximum Warning Level
  201. #
  202. # Important point: for MSC 4.0, instead of -Oslern, use -Ot
  203. #                  for MSC 5.0,                     use -Os 
  204. #                  for MSC 5.1,                     use -Oxrn
  205. #                  for MSC 6.0a,                    use -Olerg
  206. #
  207. # MSC 8.00
  208. # C Compiler variables:
  209.  
  210. cc = cl
  211.  
  212. !IF "$(DEBUG)" != ""
  213. cdebug = -Zi -Od -Gs
  214. !ELSE
  215. #cdebug = -Zi -Ox
  216. cdebug = -Zi -Olerg -Gs
  217. !ENDIF
  218.  
  219. ccflgs = -c -AL
  220. cclcl = -Zp -I $(INCL_DIR)
  221.  
  222. !IF "$(WARNINGS)" != ""
  223. cwarn = -W4
  224. !ELSE
  225. cwarn = -W3
  226. !ENDIF
  227.  
  228. CFLAGS = $(ccflgs) $(cdebug) $(cwarn) $(cclcl)
  229.  
  230. #
  231. # Object files that MSC (4.0, 5.0 or 5.1) is responsible for generating:
  232. #
  233.  
  234. # First those for the main BinkleyTerm module
  235. #
  236. COBJS = bt.obj   btconfig.obj langload.obj timer.obj    misc.obj     \
  237.     b_help.obj   file_dos.obj dosfuncs.obj keymap.obj   b_today.obj  \
  238.     mdm_proc.obj b_script.obj b_fuser.obj  nodeproc.obj version7.obj \
  239.     b_proto.obj  b_bbs.obj    b_search.obj b_sessio.obj recvbark.obj \
  240.     yoohoo.obj   b_wazoo.obj  b_wzsend.obj ftsc.obj     mailer.obj   \
  241.     sendbark.obj sched.obj    fossil.obj   b_passwo.obj b_frproc.obj \
  242.     zreceive.obj zsend.obj    zmisc.obj    sendsync.obj recvsync.obj \
  243.     data.obj     vfossil.obj  b_termov.obj b_banner.obj b_initva.obj \
  244.     b_sbinit.obj b_flofil.obj mailovly.obj evtparse.obj b_whack.obj  \
  245.     sbuf.obj     b_rspfil.obj b_term.obj   b_faxrcv.obj emsi.obj     \
  246.     xmsend.obj   m7send.obj   bsend.obj    brec.obj     xmrec.obj    \
  247.     m7rec.obj    janus.obj    statetbl.obj outbound.obj squish.obj   \
  248.     mailroot.obj upload.obj   download.obj aglcrc.obj   hydra.obj
  249.  
  250. NOOVLOBJS = b_spwnno.obj
  251. OVLOBJS = b_spwnov.obj
  252.  
  253. INCL_FILES = $(INCL_DIR)\includes.h $(INCL_DIR)\bink.h                   \
  254.              $(INCL_DIR)\defines.h $(INCL_DIR)\com.h                     \
  255.              $(INCL_DIR)\com_dos.h $(INCL_DIR)\xfer.h                    \
  256.              $(INCL_DIR)\msgs.h $(INCL_DIR)\zmodem.h $(INCL_DIR)\keybd.h \
  257.              $(INCL_DIR)\keyfncs.h $(INCL_DIR)\sbuf.h                    \
  258.              $(INCL_DIR)\sched.h $(INCL_DIR)\timer.h                     \
  259.              $(INCL_DIR)\vfossil.h $(INCL_DIR)\externs.h                 \
  260.              $(INCL_DIR)\prototyp.h $(INCL_DIR)\squish.h
  261.  
  262. # Next those for BTCTL, the program that makes a dummy OMMM CTL file
  263. #
  264. COBJ1 = btctl.obj
  265.  
  266. # Then those for BTLNG, Bink's language compiler
  267. COBJ2 = btlng.obj get_lang.obj put_lang.obj
  268.  
  269. #
  270. # Object files that MASM (4.0, 5.0 or 5.1) is responsible for generating
  271. #
  272. MOBJS = spawn.obj bink_asm.obj
  273.  
  274. #
  275. # Dependency list for regular and debug version, and LINK
  276. # command lines
  277. #
  278.  
  279. all:    binkley.lng bt.exe btctl.exe btlng.exe
  280.  
  281. clean :
  282.     !del *.obj
  283.     !del *.pch
  284.     !del *.pbi
  285.     !del *.pbt
  286.     !del *.pcf
  287.     !del *.sym
  288.     !del *.pdb
  289.     !del *.map
  290.     !del *.exe
  291.  
  292. bt.exe: $(COBJS) $(OVLOBJS) $(MOBJS)
  293.     $(LRF) @<<$(PROJ).lrf
  294. /INFO/FAR/PACKC/PACKF/DYNAMIC:300/SEG:160 $(OVLOBJS) + $(COBJS: = +^
  295. ) +
  296. $(MOBJS: = +^
  297. )
  298. $*/STACK:36864
  299. $*/MAP:FULL/LI,,BT
  300. <<
  301.     $(LINKER) @$(PROJ).lrf
  302.  
  303. btbig.exe: $(COBJS) $(NOOVLOBJS) $(MOBJS)
  304.     $(LRF) @<<$(PROJ).lrf
  305. /EXEPACK/SEG:192 $(NOOVLOBJS) + $(COBJS: = +^
  306. ) +
  307. $(MOBJS: = +^
  308. )
  309. $*/STACK:36864
  310. $*/MAP/LI;
  311. <<
  312.     $(LINKER) @$(PROJ).lrf
  313.  
  314. binkley.lng : btlng.exe $(SRC_DIR)\english.txt
  315.     btlng $(SRC_DIR)\english.txt binkley.lng
  316.  
  317. bt-dbg.exe: $(COBJS) $(NOOVLOBJS) $(MOBJS)
  318.     $(LRF) @<<$(PROJ).lrf
  319. /CODEVIEW/NOE/INFO/FAR/DYNAMIC:300/SEG:160 $(NOOVLOBJS) + $(COBJS: = +^
  320. ) +
  321. $(MOBJS: = +^
  322. )
  323. $*/STACK:36864
  324. $*/MAP/LI;
  325. <<
  326.     $(LINKER) @$(PROJ).lrf
  327.  
  328. btctl.exe: $(COBJ1)
  329.     link /EXEPACK $(COBJ1), $*/stack:3000,$*/map/li;
  330.  
  331. btlng.exe: $(COBJ2)
  332.     link /EXEPACK $(COBJ2), $*/stack:3000,$*/map/li;
  333.  
  334. #
  335. # Dependencies for .C files and compiler line to generate 'em.
  336. #
  337. $(COBJS): $(SRC_DIR)\$*.c includes.obj
  338.     $(CC) $(CFLAGS) -Yuincludes.h $(SRC_DIR)\$*.c
  339.  
  340. b_spwnno.obj: $(SRC_DIR)\b_spawn.c includes.obj
  341.     $(CC) $(CFLAGS) -Yuincludes.h  -Fob_spwnno.obj $(SRC_DIR)\b_spawn.c
  342.  
  343. b_spwnov.obj: $(SRC_DIR)\b_spawn.c includes.obj
  344.     $(CC) -DMOVE_OVERLAYS $(CFLAGS) -Yuincludes.h -Fob_spwnov.obj $(SRC_DIR)\b_spawn.c
  345.  
  346. includes.obj: $(INCL_FILES)
  347.     $(CC) $(CFLAGS) -Ycincludes.h $(SRC_DIR)\includes.c
  348.  
  349. $(COBJ1): $(SRC_DIR)\$*.c $(INCL_DIR)\com.h $(INCL_DIR)\xfer.h $(INCL_DIR)\bink.h
  350.     $(CC) $(CFLAGS) $(SRC_DIR)\$*.c
  351.  
  352. $(COBJ2): $(SRC_DIR)\$*.c $(INCL_DIR)\language.h
  353.     $(CC) $(CFLAGS) $(SRC_DIR)\$*.c
  354. #
  355. # Modules with special includes here
  356. #
  357. langload.obj: $(INCL_DIR)\msgs.h
  358.  
  359. #
  360. # Dependencies for .ASM files and compiler line to generate 'em.
  361. #
  362. # Important point: for MASM 4.0, leave out the -Zi switch.
  363. #
  364. # For MASM 4.0, leave out the -Zi switch.
  365. # For TASM 1.0, use /zi instead of -Zi
  366. #
  367.  
  368. $(MOBJS): $(SRC_DIR)\$*.asm
  369.     $(ASM) -Zi -DMODL=LARGE $(SRC_DIR)\$*;
  370.