Was sent by Nelson, but bounced. ---------------------------------------------------------------------- Date: Sun, 3 Jun 2001 12:06:05 -0600 (MDT) From: "Nelson H. F. Beebe" <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: autoconf-2.50 and Fortran misfeature This is not a bug report, but rather, a report of a misfeature in autoconf-2.50 that also existed in previous versions. I have worked on more than a score of different UNIX platforms over the last twenty+ years, and with the sole exception of the now-defunct Ardent, all of their make implementations use(d) FC for the Fortran compiler, and FFLAGS for its flags. Ardent used F77 and F77FLAGS. The new autoconf-2.50 release uses F77, rather than FC, and that is simply wrong. That it hasn't surfaced before is simply a reflection of the uncommon need to use autoconfiguration with Fortran software, and also the decreasing (:^)) use of that langauge. Nevertheless, I am one who does. Fortran 90 and 95 compilers can handle Fortran 77 source just fine, so there is no need to make the configure variable reflect a particular version of the ISO Standard. We certainly don't have CCKR, C89, and C99: we just use CC. While one can certainly write in Makefile.in FC = @F77@ this is confusing to users who must be told that they should write env F77=f95 ./configure but make FC=f95 elsewhere. I believe that the correct approach to this problem would be simply to apply "sed -e s/F77/FC/g" on the autoconf source tree, and release it as autoconf-2.51. I'll be very happy then to change all my configure.in and Makefile.in files in my Fortran packages to accommodate this change! Alternatively, for `backward compatibility', make FC and F77 equivalent. This would entail checking for the definition of either on startup, and then setting both variables to the same value. However, I don't believe this is the correct approach, because it simply prolongs a mistake that should never have been made in the first place. For reference, here are simple test files: % cat configure.in AC_INIT(Makefile.in) AC_PROG_F77 AC_OUTPUT(Makefile) % cat Makefile.in F77 = @F77@ FC = @FC@ % autoconf % ./configure % cat Makefile F77 = g77 FC = @FC@ I volunteer to serve as a tester of any such change to autoconf [although I'll be out of town, and computerless, most of June and August this year.] ------------------------------------------------------------------------------- - Nelson H. F. Beebe Tel: +1 801 581 5254 - - Center for Scientific Computing FAX: +1 801 585 1640, +1 801 581 4148 - - University of Utah Internet e-mail: [EMAIL PROTECTED] - - Department of Mathematics, 322 INSCC [EMAIL PROTECTED] [EMAIL PROTECTED] - - 155 S 1400 E RM 233 [EMAIL PROTECTED] - - Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe - -------------------------------------------------------------------------------