home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / ckc190.zip / cklmak.cm < prev    next >
Text File  |  1994-10-28  |  4KB  |  123 lines

  1. &begin_parameters
  2.  SRCDIR option(-source_dir),pathname,='(current_dir)'
  3.  BLDDIR option(-build_dir),pathname,='(current_dir)>build_dir'
  4.  COPTS  option(-compile_options),string,='-type_checking normal'
  5.  BOPTS  option(-bind_options),string,=''
  6.  KNAME  option(-kermit_name),name,length(29),='kermit'
  7.  KOPTS  option(-kermit_options),string, &+
  8.     ='STRATUS DYNAMIC DCMDBUF CLSOPN STRATUSX25 MYCURSES'
  9.  TOOL   switch(-tools),=1
  10.  DBG    switch(-debug),secret,=0
  11. &end_parameters
  12.  
  13. & Command macro to produce C-Kermit for VOS.  This has been successfully
  14. & tested on VOS 10.5 CISC, and 11.5.1, both RISC and CISC versions, with and
  15. & without X.25 and/or OS TCP/IP support.  This command macro rebuilds the
  16. & world every time it is run, there is no "incremental" build of only
  17. & changed modules.  This is left as an exercise for the reader.
  18.  
  19. &if &DBG& &then &echo macro_lines input_lines command_lines
  20.  
  21. &if &BLDDIR& = &SRCDIR& &then &goto same_dir_error
  22. &if (process_type) = batch &then &goto noterm
  23. &set PLINES (terminal_info pause_lines)
  24. !set_terminal_parameters -pause_lines 0
  25.  
  26. &label noterm
  27.  
  28. &set_string mydir (current_dir)
  29. !change_current_dir &BLDDIR&
  30.  
  31. !add_library_path include &SRCDIR&
  32. !c &COPTS& &SRCDIR&>ckldef
  33. !bind &BOPTS& ckldef
  34. &if (quote (current_dir)) ^= &$SRCDIR& &then !copy_file &SRCDIR&>ckcsym.h
  35. !ckldef ckcsym.h -read &KOPTS&
  36. !c &COPTS& &SRCDIR&>ckwart.c
  37. !bind &BOPTS& ckwart
  38. !ckwart &SRCDIR&>ckcpro.w ckcpro.c
  39. & ckcpro.c gets created in the build dir!
  40. !c &COPTS& ckcpro.c
  41. !delete_file ckcpro.c
  42. !c &COPTS& &SRCDIR&>ckcfn2.c
  43. !c &COPTS& &SRCDIR&>ckcfn3.c
  44. !c &COPTS& &SRCDIR&>ckcfns.c
  45. !c &COPTS& &SRCDIR&>ckcmai.c
  46. !c &COPTS& &SRCDIR&>cklcon.c
  47. !c &COPTS& &SRCDIR&>cklfio.c
  48. !c &COPTS& &SRCDIR&>cklnet.c
  49. !c &COPTS& &SRCDIR&>ckltio.c
  50. !c &COPTS& &SRCDIR&>ckucmd.c
  51. !c &COPTS& &SRCDIR&>ckudia.c
  52. !c &COPTS& &SRCDIR&>ckuscr.c
  53. !c &COPTS& &SRCDIR&>ckuus2.c
  54. !c &COPTS& &SRCDIR&>ckuus3.c
  55. !c &COPTS& &SRCDIR&>ckuus4.c
  56. !c &COPTS& &SRCDIR&>ckuus5.c
  57. !c &COPTS& &SRCDIR&>ckuus6.c
  58. !c &COPTS& &SRCDIR&>ckuus7.c
  59. !c &COPTS& &SRCDIR&>ckuusr.c
  60. !c &COPTS& &SRCDIR&>ckuusx.c
  61. !c &COPTS& &SRCDIR&>ckuusy.c
  62. !c &COPTS& &SRCDIR&>ckuxla.c
  63.  
  64. &if (index &$KOPTS& MDEBUG) ^= 0
  65.   &then &set_string MDOBJ , ckcmdb
  66.   &else &set_string MDOBJ
  67.  
  68. &if &$MDOBJ& ^= '' &then !c &COPTS& &SRCDIR&>ckcmdb.c
  69.  
  70. &if (index &$KOPTS& TCPSOCKET) ^= 0
  71.   &then &set_string TCPOBJ , tcp_runtime, tcp_gethost
  72.   &else &set_string TCPOBJ
  73.  
  74. &attach_input
  75. line_edit -no_backup -no_verbose
  76. i
  77. name:     &KNAME&;
  78. size:     large;
  79. modules:  ckcmai, ckcfns, ckcfn2, ckcfn3, ckcpro, ckudia,
  80.           ckuscr, ckltio, cklfio, cklcon, cklnet, ckuusr,
  81.           ckuus2, ckuus3, ckuus4, ckuus5, ckuus6, ckuus7,
  82.           ckuusx, ckuusy, ckucmd, ckuxla &TCPOBJ& &MDOBJ&;
  83. end;
  84. .
  85. w kermit.bind
  86. q
  87. &detach_input
  88.  
  89. !bind -control kermit &BOPTS&
  90.  
  91. &if &TOOL& = 0 &then &goto notools
  92.  
  93. !c &COPTS& &SRCDIR&>ckbmkb.c
  94. !c &COPTS& &SRCDIR&>ckbunb.c
  95. !c &COPTS& &SRCDIR&>ckltxt.c
  96. !c &COPTS& &SRCDIR&>cklxtr.c
  97. !bind ckbunb &BOPTS&
  98. !bind ckbmkb &BOPTS&
  99. !bind ckltxt &BOPTS&
  100. !bind cklxtr &BOPTS&
  101. &goto build_done
  102.  
  103. &label notools
  104.  
  105. & delete the ones needed to build C-Kermit itself
  106.  
  107. !delete_file ckldef.pm
  108. !delete_file ckwart.pm
  109.  
  110. &label build_done
  111. !delete_file *.obj -no_ask -brief
  112. !delete_file kermit.bind
  113. &if &$SRCDIR& ^= (quote (current_dir)) &then !delete_file ckcsym.h
  114. &if (process_type) ^= batch
  115.   &then !set_terminal_parameters -pause_lines &PLINES&
  116.  
  117. !change_current_dir &mydir&
  118. &return
  119.  
  120. &label same_dir_error
  121. display_line (message e$same_object)
  122. &return e$same_object
  123.