home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / gmd_os2.zip / gmdtkos2.me < prev    next >
Text File  |  1993-07-26  |  5KB  |  147 lines

  1.                                                         Böblingen 26.07.93
  2.  
  3. This is a port of the powerful compiler toolbox Cocktail written by
  4. Josef Grosch et al. It consists of following files:
  5.  
  6.         gmdtkos2.me  - this file
  7.         gmdtkos2.zip - the executables, libraries, header files and
  8.                        table files of the tools
  9.         mtcos2.zip   - the executables, libraries, header files and
  10.                        table files of the Modula to C translator
  11.         man.zip      - man pages in nroff and ASCII format
  12.         diffsos2.zip - diffs from original distribution files, available
  13.                        from ftp.karlsruhe.gmd.de in pub/cocktail
  14.         emxrt.zip    - emx 0.8g runtime package
  15.                        (the whole compiler package is available from
  16.                         ftp.uni-stuttgart.de [129.69.1.12]:
  17.                                         /soft/os2/emx-0.8g
  18.                         ftp-os2.nmsu.edu  [128.123.35.151]:
  19.                                         /os2/2_x/unix/gnu/emx08g
  20.                         src.doc.ic.ac.uk     [146.169.2.1]:
  21.                                         /pub/packages/os2/2_x/unix/gnu/emx08g
  22.                         ftp.informatik.tu-muenchen.de [131.159.0.198]:
  23.                                         /pub/comp/os/os2/devtools/emx+gcc
  24.                        )
  25.  
  26. For documentation get the files from the original distribution.
  27.  
  28. I'm using it (rex, lalr, cg, rpp, puma) right now for a semester workout.
  29. This is also the reason why I ported it to OS/2. Actually it wasn't much
  30. of a port as you can see from the few diffs in diffsos2.zip. The work
  31. mainly consisted of changing all TABLES to little endian and writing
  32. command or rexx scripts replacing the Unix shell scripts.
  33.  
  34. The whole toolbox was compiled using the emx 0.8g compiler
  35. in native mode (.o object files). The makefiles for the libraries
  36. create both .a and .lib files. The makefiles for the tools create
  37. standalone (no need for emx???.dlls) versions when OMF is defined
  38. on the commandline.
  39.  
  40. To properly use the tools you will need some support programs:
  41.  
  42. cg      - cpp, cmp, rm and mv
  43. ell     - none
  44. estra   - none
  45. lalr    - none
  46. mpp     - none
  47. puma    - cpp, cmp, rm and mv
  48. r2l     - none
  49. rex     - none
  50. rpp     - none
  51.  
  52. They are:
  53.  
  54. cpp     - C Preprocessor included in emx 0.8g package
  55. cmp     - file compare included in the GNU diff 2.x package
  56. rm      - file remove included in the GNU file utilities
  57. mv      - file move included in the GNU file utilities
  58.  
  59. Most of them are available on many OS/2 ftp-sites (I get them from
  60.       ftp.informatik.tu-muenchen.de [131.159.0.198]:
  61.                                     /pub/comp/os/os2/devtools/emx+gcc
  62. ).
  63.  
  64. Installation
  65. ------------
  66.  
  67. Unzip the files in the root directory of any drive you want (Since this
  68. toolbox is for OS/2, a drive formated with HPFS is required --
  69. is there another file system under OS/2). This will create
  70. the following directory tree
  71.  
  72. gmdtkos2.zip:
  73.         emx\bin
  74.         emx\include\reuse
  75.         emx\lib\cg
  76.         emx\lib\ell
  77.         emx\lib\estra
  78.         emx\lib\lalr
  79.         emx\lib\mpp
  80.         emx\lib\puma
  81.         emx\lib\r2l
  82.         emx\lib\rex
  83.         emx\lib\rpp
  84.  
  85. mtcos2.zip:
  86.         emx\bin
  87.         emx\lib\makemake
  88.         emx\lib\mtc
  89.         emx\mtc-include
  90.  
  91. emxrt.zip:                      Caution: Use your own, if it is newer
  92.         emx\doc
  93.         emx\book
  94.         emx\bin
  95.         emx\dll
  96.  
  97. I used this structure because it is the one the emx-gcc compiler comes with.
  98. The reason for each tool staying in a separate subdirectory, is that the table
  99. files have identical names. To tell the cmd-files in the bin-directory
  100. where to look for the tools you must set the environment variable
  101.  
  102.         set GMDLIB=drive:\emx\lib
  103.  
  104. This means you can place the command files in any other directory
  105. in the path, and the tool-subdirectories in any directory, which
  106. the environment variable GMDLIB points to.
  107.  
  108.  
  109. Difficulties with OS/2
  110. ----------------------
  111.  
  112. 1. The header file 'Time.h' in \emx\include\reuse clashes with the standard
  113.    header file 'time.h', because the OS/2 HPFS file system is not
  114.    casesensitiv. I rename 'Time.h' to solve the problem.
  115.  
  116. 2. The tools are using binary file IO, because in UNIX there is no CR/LF
  117.    but only a LF introducing a new line in a text file. This leads to an
  118.    warning by the scanner created by REX. Inserting the rule
  119.  
  120.           \r \n                   :- { yyEol( 0 ); }
  121.  
  122.    at the end of the scanner specification solves this problem.
  123.  
  124. 3. Not known so far. If you encounter any problems worth mentioning here,
  125.    don't hesitate to mail me a discription and solution to the problem.
  126.  
  127.  
  128. Disclaimer
  129. ----------
  130.  
  131. The tools, I use, work fine so far. But I don't take responsibilty for any
  132. harm created with these tools.
  133.  
  134.  
  135. Contact
  136. -------
  137.  
  138. Question considering the tools in gerneral:
  139.  
  140.         Josef Grosch <grosch@karlsruhe.gmd.de>
  141.  
  142.  
  143. Question considering the OS/2 port:
  144.  
  145.         Eduard Kappel <kappel@odysseus.informatik.uni-stuttgart.de>
  146.  
  147.