diff options
Diffstat (limited to 'web/systems/mac/cweb/CWEBChangeFilesForMacOS/ctang-mac.ch')
-rw-r--r-- | web/systems/mac/cweb/CWEBChangeFilesForMacOS/ctang-mac.ch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/web/systems/mac/cweb/CWEBChangeFilesForMacOS/ctang-mac.ch b/web/systems/mac/cweb/CWEBChangeFilesForMacOS/ctang-mac.ch new file mode 100644 index 0000000000..878497bb35 --- /dev/null +++ b/web/systems/mac/cweb/CWEBChangeFilesForMacOS/ctang-mac.ch @@ -0,0 +1,58 @@ +This is the change file for CWEB's CTANGLE 3.6 under MacOS +(Contributed by Markus van Almsick m.van.almsick@cityweb.de, October 2000) + +Changes necessary for compiling with Metrowerks CodeWarrior Pro 5 +Use the stationary for a Std C console + +This change file addresses two issues: +1. The MacOS does not have a command line driven console by default. +We have to insert the ccommand routine. +2. CWEB does not close all the files it uses. We insert a few lines +to assert that files are closed. + + + +@x /* insert MacOS command line dialog */ + argc=ac; argv=av; +@y + argc=ac; argv=av; + argc = ccommand (&argv); /* addition for MacOS */ +@z + + +@x /* close C file are usage */ + printf("\n! No program text was specified."); mark_harmless; +@y + printf("\n! No program text was specified."); + fclose(C_file); /* close main C file */ + mark_harmless; +@z + + +@x /* close C file are usage */ +@<Write all the named output files@>= +@y +@<Write all the named output files@>= +fclose(C_file); /* close main C file */ +@z + + +@x /* don't close main C file twice (see change above) */ + fclose(C_file); + C_file=fopen(output_file_name,"w"); + if (C_file ==0) fatal("! Cannot open output file:",output_file_name); +@y + C_file=fopen(output_file_name,"w"); /* open secondary C file */ + if (C_file == NULL) + fatal("! Cannot open output file:",output_file_name); +@z + + +@x /* close secondary C file */ + while (stack_ptr > stack) get_output(); + flush_buffer(); +@y + while (stack_ptr > stack) get_output(); + flush_buffer(); + fclose(C_file); /* close secondary C file */ +@z
\ No newline at end of file |