home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / fchek284.zip / os2port.txt < prev    next >
Text File  |  1996-03-31  |  3KB  |  82 lines

  1. * Sources, as fetched from ftp://ftp.dsm.fordham.edu/pub/ on 29-Mar-96
  2. * applied the patch to bring it up to version 2.8.4 to the sources.
  3. * Changed makefile.
  4. * Added two new symbolic targets, OS2emx and OS2noemx.
  5.   OS2emx generates an executable which relies on the emx.dll runtime
  6.   library to be somewhere in the LIBPATH; OS2noemx generates a
  7.   standalone executable using the IBM linker link386.exe. It is a bit
  8.   bigger. I couldn't play with other C compilers as I don't have any.
  9.   So, both use gcc / emx.
  10.  
  11. * Added things like symbols for obvious extensions:
  12.   OBJ
  13.   EXE
  14.  
  15.   which either need to be out in by hand in the header of the makefile
  16.   or all the other Symbolic targets for real UNIX should get additional
  17.   options like
  18.  
  19.   'OBJ = .o'\
  20.   'EXE = '\
  21.  
  22.   to restore the defaults typical for UNIX.  This is up to you, since
  23.   either will change the distribution. For use with GNU make, I included
  24.   a test for a given object extension, see the makefile. Since not all
  25.   makes can handle this, it is commented out. The makefile.os2 also continues
  26.   to work for non-os2 targets.
  27.  
  28. * added a new implicit rule for compilation to allow any object file
  29.   name and not just the UNIX standard *.o. With these changes, the makefile
  30.   should be easily adapted to other systems using *.obj.
  31.  
  32.  
  33.  
  34. * This 'exe' magic can by the way be avoided
  35.   for the OS2emx target by adding the following lines to the target (they
  36.   are commented out right now):
  37.  
  38. #     echo $(FTNCHEK) created.  Building now $(FTNCHEK).exe:
  39. #     emxbind -bs -w $(FTNCHEK)
  40. #     rm $(FTNCHEK)
  41. #     echo $(FTNCHEK).exe created.
  42.  
  43. This then takes the a.out style output file of gcc and makes it into
  44. an *.exe file. However, I don't know how to do the same for link386,
  45. and it seems cleaner this way, anyway, since it also allows 
  46. other targets to be added, or to use other compilers than gcc under
  47. OS/2, like Borland C++/2 or IBM C-Set++ and so on.
  48.  
  49. On OS/2, the environment variable SHELL may need to be commented out,
  50. depending on the combination of shells (I run tcsh and sh / ksh ports)
  51. and make utilities. On my system gcc is otherwise not found ...
  52.  
  53. To build this, at least mv.exe should be there, and of course, 
  54. gcc / emx should be installed.
  55.  
  56. The ftnchek.def file has been modified again, the line
  57. ; STACKSIZE      0x8000
  58. is commented out and the stack size given on the gcc command line
  59. with -Zstack 64. Otherwise I get a stack overflow.
  60. This may be only neccessary for large environments (my config.sys
  61. is about 18 kB large, and my .tcshrc isn't small either), but anyway.
  62.  
  63. The execuatables are compiled with gcc 2.7.2 / emx09b  + emxfix03
  64. applied, and require emx.dll (version 09b or later) in the LIBPATH.
  65. The other execuatable is standalone.
  66.  
  67. The target ftnchek.1 fails, at least with the version of sed I have
  68. installed. It complains about an unmatched \} or so.  On UNIX it works
  69. fine, so it is probably a sed problem specific to the version I have
  70. here. However, the ftnchek.man page is handled by gnu man just fine,
  71. that means, you can copy it onto ftnchek.1 in your man path.
  72.  
  73. All tested under OS/2 (v. 3.0 or 2.3) Warp only, using gnu make. 
  74. Runs fine. The makefile makefile.os2 has also been tested on unix.
  75.  
  76.  
  77. Stefan A. Deutscher, sad@utk.edu, 31-Mar-1996
  78.  
  79. PS: Maybe updating the man page (to display version 2.8.4) and the
  80.     version information of ftnchek, as it starts (2.8.4 instead of
  81.     2.8) would be nice.
  82.