[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
["Nelson H. F. Beebe" <address@hidden>] autoconf-2.50 and Fortran misfea
From: |
Akim Demaille |
Subject: |
["Nelson H. F. Beebe" <address@hidden>] autoconf-2.50 and Fortran misfeature |
Date: |
11 Jun 2001 22:58:28 +0200 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Copyleft) |
Was sent by Nelson, but bounced.
----------------------------------------------------------------------
Date: Sun, 3 Jun 2001 12:06:05 -0600 (MDT)
From: "Nelson H. F. Beebe" <address@hidden>
To: address@hidden
Cc: address@hidden
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: address@hidden -
- Department of Mathematics, 322 INSCC address@hidden address@hidden -
- 155 S 1400 E RM 233 address@hidden -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe -
-------------------------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- ["Nelson H. F. Beebe" <address@hidden>] autoconf-2.50 and Fortran misfeature,
Akim Demaille <=