home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / archives / 3819 < prev    next >
Encoding:
Text File  |  1992-12-21  |  6.7 KB  |  230 lines

  1. Path: sparky!uunet!enterpoop.mit.edu!snorkelwacker.mit.edu!stanford.edu!agate!usenet
  2. From: rich@Rice.edu (Richard Murphey)
  3. Newsgroups: comp.archives
  4. Subject: [comp.unix.bsd] [386bsd] f2c and fsplit available
  5. Followup-To: comp.unix.bsd
  6. Date: 20 Dec 1992 20:57:16 GMT
  7. Organization: Department of Electrical and Computer Engineering, Rice
  8. Lines: 211
  9. Sender: adam@soda
  10. Approved: adam@soda
  11. Distribution: world
  12. Message-ID: <1h2mncINN71o@agate.berkeley.edu>
  13. References: <RICH.92Nov28234039@omicron.Rice.edu>
  14. Reply-To: Rich@rice.edu
  15. NNTP-Posting-Host: soda.berkeley.edu
  16. X-Original-Newsgroups: comp.unix.bsd
  17. X-Original-Date: Sun, 29 Nov 1992 05:40:39 GMT
  18.  
  19. Archive-name: auto/comp.unix.bsd/386bsd-f2c-and-fsplit-available
  20.  
  21.  
  22. I've put ports of the fortran to C translator f2c-3.2.90, fsplit and
  23. getopt (which is required by the f77 script) on nova.cc.purdue.edu
  24. (128.210.7.22) in /pub/386bsd/submissions and ref.tfs.com
  25. (140.145.254.251) in /usr/packages and perhaps soon on
  26. rachel.ibmpcug.co.uk.  The files are:
  27.  
  28. f2c-3.2.90-bin.tar.Z
  29. f2c-3.2.90-src.tar.Z
  30. fsplit-bin.tar.Z
  31. fsplit-src.tar.Z
  32. getopt-bin.tar.Z
  33. getopt-src.tar.Z
  34.  
  35. You need getopt in order to use f77.  With both you can use existing
  36. makefiles for fortran code, link fortran and C, etc.  fsplit separates
  37. fortran subroutines into separate files, which facilitates creating
  38. libraries.
  39.  
  40. Terry Lambert posted a version of f2c last weekend, but it was based
  41. on an earlier version of f2c {and all my attempts to contact him about
  42. failed}.
  43.  
  44. Below is a copy of the README contained in f2c-3.2.90-bin.tar.Z. It
  45. describes some farily steps for installating f77 and contains a small
  46. set of patches.  Rich
  47.  
  48.  
  49. ~~~~~~~~~~~~~~~~
  50. This is a port of f2c-3.2.90 to 386bsd.  It is avaiailable from
  51. nova.cc.purdue.edu (128.210.7.22) in /pub/386bsd/submissions and
  52. ref.tfs.com (140.145.254.251) in /usr/packages.  f2c-3.2.90-bin.tar.Z
  53. is the ready-to-install executables and libraries and
  54. f2c-3.2.90-src.tar.Z is the patched sources.
  55.  
  56. The patches are below and you can get the original sources from which
  57. this port was derived by anonymous ftp from prep.ai.mit.edu
  58. (18.71.0.38) in the directory /pub/gnu.  The file is f2c-3.2.90.tar.Z.
  59.  
  60. This supercedes the sources currently available by ftp on
  61. research.att.com in the netlib account and contains many bug fixes.
  62.  
  63. In order to use the f77 script you will also need getopt.  Getopt
  64. sources and 386bsd executables are available by anon ftp from
  65. ref.tfs.com (140.145.254.251) in /usr/packages.  There is a port of
  66. fsplit there as well.
  67.  
  68. To install it, cd to /usr/local and:
  69.     tar xzf f2c-3.2.90.bin.Z
  70.  
  71. this will create:
  72.  
  73. README.f2c  (this file)
  74. man/cat1/f2c.0
  75. lib/libF77.a
  76. lib/libI77.a
  77. include/f2c.h
  78. bin/f77
  79. bin/f2c
  80.  
  81. The only changes that are needed in order to install it somewhere
  82. besides /usr/local are the values of variables in the f77 script.
  83.  
  84. To install it elsewhere, you need to edit the f77 script to specify
  85. the directory containing f2c.h header file, and the directory
  86. containing the libF77.a and libI77.a libraries:
  87.  
  88.     CC=${CC_f2c:-'cc -I/usr/whereever/include' -L/usr/whereever/lib}
  89.  
  90. And you need to speciy the location of the f2c executable in f77:
  91.  
  92.     F2C=${F2C:-/usr/whereever/f2c}
  93.  
  94. Below are the paches for the sources and makefile in
  95. /pub/gnu/f2c-3.2.90.tar.Z on prep.ai.mit.edu (18.71.0.38).
  96.  
  97. Rich Murphey  Rich@rice.edu
  98.  
  99.  
  100. diff -rc ../t/f2c-3.2.90/libF77/makefile ./libF77/makefile
  101. *** ../t/f2c-3.2.90/libF77/makefile    Wed Feb 28 13:53:08 1990
  102. --- ./libF77/makefile    Sun Sep 13 13:35:59 1992
  103. ***************
  104. *** 1,7 ****
  105.   .SUFFIXES: .c .o
  106.   # compile, then strip unnecessary symbols
  107.   .c.o:
  108. !     cc -O -c -DSkip_f2c_Undefs $*.c
  109.       ld -r -x $*.o
  110.       mv a.out $*.o
  111.   
  112. --- 1,7 ----
  113.   .SUFFIXES: .c .o
  114.   # compile, then strip unnecessary symbols
  115.   .c.o:
  116. !     cc -O -c -DSkip_f2c_Undefs -DIEEE_drem $*.c
  117.       ld -r -x $*.o
  118.       mv a.out $*.o
  119.   
  120. diff -rc ../t/f2c-3.2.90/libI77/err.c ./libI77/err.c
  121. *** ../t/f2c-3.2.90/libI77/err.c    Wed Feb 28 13:53:30 1990
  122. --- ./libI77/err.c    Sun Sep 13 13:41:33 1992
  123. ***************
  124. *** 2,7 ****
  125. --- 2,8 ----
  126.   #include "sys/stat.h"
  127.   #include "f2c.h"
  128.   #include "fio.h"
  129. + #include "local.h"
  130.   
  131.   extern FILE *fdopen();
  132.   
  133. diff -rc ../t/f2c-3.2.90/libI77/local.h ./libI77/local.h
  134. *** ../t/f2c-3.2.90/libI77/local.h    Sun Sep 13 13:39:54 1992
  135. --- ./libI77/local.h    Sun Sep 13 13:39:25 1992
  136. ***************
  137. *** 0 ****
  138. --- 1,6 ----
  139. + /* Use 
  140. +    -DNON_ANSI_RW_MODES in libI77/makefile and
  141. +    -DIEEE_drem in libF77/makefile.  Rich */
  142. + #define _base    _bf._base
  143. + #define _flag    _flags
  144. + #define _ptr    _p
  145. diff -rc ../t/f2c-3.2.90/libI77/makefile ./libI77/makefile
  146. *** ../t/f2c-3.2.90/libI77/makefile    Wed Feb 28 13:53:29 1990
  147. --- ./libI77/makefile    Sun Sep 13 13:39:30 1992
  148. ***************
  149. *** 1,6 ****
  150.   .SUFFIXES: .c .o
  151.   
  152. ! CFLAGS = -DSkip_f2c_Undefs -O
  153.   
  154.   # compile, then strip unnecessary symbols
  155.   .c.o:
  156. --- 1,6 ----
  157.   .SUFFIXES: .c .o
  158.   
  159. ! CFLAGS = -DSkip_f2c_Undefs -O -DNON_ANSI_RW_MODES
  160.   
  161.   # compile, then strip unnecessary symbols
  162.   .c.o:
  163. diff -rc ../t/f2c-3.2.90/libI77/wrtfmt.c ./libI77/wrtfmt.c
  164. *** ../t/f2c-3.2.90/libI77/wrtfmt.c    Wed Feb 28 13:53:35 1990
  165. --- ./libI77/wrtfmt.c    Sun Sep 13 13:41:14 1992
  166. ***************
  167. *** 1,6 ****
  168. --- 1,7 ----
  169.   #include "f2c.h"
  170.   #include "fio.h"
  171.   #include "fmt.h"
  172. + #include "local.h"
  173.   extern int cursor;
  174.   extern char *icvt(), *ecvt();
  175.   int hiwater;
  176. diff -rc ../t/f2c-3.2.90/libI77/wsfe.c ./libI77/wsfe.c
  177. *** ../t/f2c-3.2.90/libI77/wsfe.c    Wed Feb 28 13:53:35 1990
  178. --- ./libI77/wsfe.c    Sun Sep 13 13:41:04 1992
  179. ***************
  180. *** 2,7 ****
  181. --- 2,8 ----
  182.   #include "f2c.h"
  183.   #include "fio.h"
  184.   #include "fmt.h"
  185. + #include "local.h"
  186.   extern int x_putc(),w_ed(),w_ned();
  187.   extern int xw_end(),xw_rev(),x_wSL();
  188.   extern int hiwater;
  189. *** ../t/f2c-3.2.90/fc    Wed Feb 28 13:53:36 1990
  190. --- ./fc    Sun Sep 13 13:54:02 1992
  191. ***************
  192. *** 1,5 ****
  193.   #!/bin/sh
  194. ! PATH=/v/bin:/bin:/usr/bin
  195.   # f77-style shell script to compile and load fortran, C, and assembly codes
  196.   
  197.   #    usage:    f77 [-O] [-o absfile] [-c] files [-l library]
  198. --- 1,5 ----
  199.   #!/bin/sh
  200. ! PATH=/usr/site/f2c-3.2.90/bin:/bin:/usr/bin
  201.   # f77-style shell script to compile and load fortran, C, and assembly codes
  202.   
  203.   #    usage:    f77 [-O] [-o absfile] [-c] files [-l library]
  204. ***************
  205. *** 29,39 ****
  206.   
  207.   s=/tmp/stderr_$$
  208.   t=/tmp/f77_$$.o
  209. ! CC=${CC_f2c:-'/v/bin/lcc double=8,4,1'}
  210. ! EFL=${EFL:-/v/bin/efl}
  211.   EFLFLAGS=${EFLFLAGS:-'system=portable deltastno=10'}
  212. ! F2C=${F2C:-/v/bin/f2c}
  213. ! F2CFLAGS=${F2CFLAGS:='-ARw8 -T/usr/tmp'}
  214.   rc=0
  215.   trap "rm -f $s $t; exit \$rc" 0
  216.   lib=/lib/num/lib.lo
  217. --- 29,39 ----
  218.   
  219.   s=/tmp/stderr_$$
  220.   t=/tmp/f77_$$.o
  221. ! CC=${CC_f2c:-'/usr/bin/cc -I/usr/site/f2c-3.2.90/include'}
  222. ! EFL=${EFL:-/usr/bin/efl}
  223.   EFLFLAGS=${EFLFLAGS:-'system=portable deltastno=10'}
  224. ! F2C=${F2C:-/usr/site/f2c-3.2.90/bin/f2c}
  225. ! F2CFLAGS=${F2CFLAGS:='-ARw8 -T/tmp'}
  226.   rc=0
  227.   trap "rm -f $s $t; exit \$rc" 0
  228.   lib=/lib/num/lib.lo
  229.  
  230.