home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
archives
/
ckc190.zip
/
cklmak.cm
< prev
next >
Wrap
Text File
|
1994-10-28
|
4KB
|
123 lines
&begin_parameters
SRCDIR option(-source_dir),pathname,='(current_dir)'
BLDDIR option(-build_dir),pathname,='(current_dir)>build_dir'
COPTS option(-compile_options),string,='-type_checking normal'
BOPTS option(-bind_options),string,=''
KNAME option(-kermit_name),name,length(29),='kermit'
KOPTS option(-kermit_options),string, &+
='STRATUS DYNAMIC DCMDBUF CLSOPN STRATUSX25 MYCURSES'
TOOL switch(-tools),=1
DBG switch(-debug),secret,=0
&end_parameters
& Command macro to produce C-Kermit for VOS. This has been successfully
& tested on VOS 10.5 CISC, and 11.5.1, both RISC and CISC versions, with and
& without X.25 and/or OS TCP/IP support. This command macro rebuilds the
& world every time it is run, there is no "incremental" build of only
& changed modules. This is left as an exercise for the reader.
&if &DBG& &then &echo macro_lines input_lines command_lines
&if &BLDDIR& = &SRCDIR& &then &goto same_dir_error
&if (process_type) = batch &then &goto noterm
&set PLINES (terminal_info pause_lines)
!set_terminal_parameters -pause_lines 0
&label noterm
&set_string mydir (current_dir)
!change_current_dir &BLDDIR&
!add_library_path include &SRCDIR&
!c &COPTS& &SRCDIR&>ckldef
!bind &BOPTS& ckldef
&if (quote (current_dir)) ^= &$SRCDIR& &then !copy_file &SRCDIR&>ckcsym.h
!ckldef ckcsym.h -read &KOPTS&
!c &COPTS& &SRCDIR&>ckwart.c
!bind &BOPTS& ckwart
!ckwart &SRCDIR&>ckcpro.w ckcpro.c
& ckcpro.c gets created in the build dir!
!c &COPTS& ckcpro.c
!delete_file ckcpro.c
!c &COPTS& &SRCDIR&>ckcfn2.c
!c &COPTS& &SRCDIR&>ckcfn3.c
!c &COPTS& &SRCDIR&>ckcfns.c
!c &COPTS& &SRCDIR&>ckcmai.c
!c &COPTS& &SRCDIR&>cklcon.c
!c &COPTS& &SRCDIR&>cklfio.c
!c &COPTS& &SRCDIR&>cklnet.c
!c &COPTS& &SRCDIR&>ckltio.c
!c &COPTS& &SRCDIR&>ckucmd.c
!c &COPTS& &SRCDIR&>ckudia.c
!c &COPTS& &SRCDIR&>ckuscr.c
!c &COPTS& &SRCDIR&>ckuus2.c
!c &COPTS& &SRCDIR&>ckuus3.c
!c &COPTS& &SRCDIR&>ckuus4.c
!c &COPTS& &SRCDIR&>ckuus5.c
!c &COPTS& &SRCDIR&>ckuus6.c
!c &COPTS& &SRCDIR&>ckuus7.c
!c &COPTS& &SRCDIR&>ckuusr.c
!c &COPTS& &SRCDIR&>ckuusx.c
!c &COPTS& &SRCDIR&>ckuusy.c
!c &COPTS& &SRCDIR&>ckuxla.c
&if (index &$KOPTS& MDEBUG) ^= 0
&then &set_string MDOBJ , ckcmdb
&else &set_string MDOBJ
&if &$MDOBJ& ^= '' &then !c &COPTS& &SRCDIR&>ckcmdb.c
&if (index &$KOPTS& TCPSOCKET) ^= 0
&then &set_string TCPOBJ , tcp_runtime, tcp_gethost
&else &set_string TCPOBJ
&attach_input
line_edit -no_backup -no_verbose
i
name: &KNAME&;
size: large;
modules: ckcmai, ckcfns, ckcfn2, ckcfn3, ckcpro, ckudia,
ckuscr, ckltio, cklfio, cklcon, cklnet, ckuusr,
ckuus2, ckuus3, ckuus4, ckuus5, ckuus6, ckuus7,
ckuusx, ckuusy, ckucmd, ckuxla &TCPOBJ& &MDOBJ&;
end;
.
w kermit.bind
q
&detach_input
!bind -control kermit &BOPTS&
&if &TOOL& = 0 &then &goto notools
!c &COPTS& &SRCDIR&>ckbmkb.c
!c &COPTS& &SRCDIR&>ckbunb.c
!c &COPTS& &SRCDIR&>ckltxt.c
!c &COPTS& &SRCDIR&>cklxtr.c
!bind ckbunb &BOPTS&
!bind ckbmkb &BOPTS&
!bind ckltxt &BOPTS&
!bind cklxtr &BOPTS&
&goto build_done
&label notools
& delete the ones needed to build C-Kermit itself
!delete_file ckldef.pm
!delete_file ckwart.pm
&label build_done
!delete_file *.obj -no_ask -brief
!delete_file kermit.bind
&if &$SRCDIR& ^= (quote (current_dir)) &then !delete_file ckcsym.h
&if (process_type) ^= batch
&then !set_terminal_parameters -pause_lines &PLINES&
!change_current_dir &mydir&
&return
&label same_dir_error
display_line (message e$same_object)
&return e$same_object