[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Combining GNU C++ and Intel Fortran
From: |
Noah Misch |
Subject: |
Re: Combining GNU C++ and Intel Fortran |
Date: |
Sat, 25 Jun 2005 11:26:11 -0700 |
User-agent: |
Mutt/1.5.5.1i |
On Fri, Jun 24, 2005 at 08:30:51AM +0200, Arjen Markus wrote:
> Noah Misch wrote:
> > > Noah Misch wrote:
> > > > Yes; redefine FCLIBS.
> > I suggest defining it before you call any Fortran-related macros.
> > Nonetheless,
> > the choice of position does not matter to the macros currently in Autoconf.
> >
>
> Interesting. Is there documentation about the cooperation and possible
> conflicts
> between the predefined macros?
Note that FCLIBS is a shell variable, not a macro. The Autoconf manual realizes
some of the documentation you describe, but I doubt the treatment is complete.
Autoconf macro calls, like `AC_PROG_FC', in `configure.ac' expand to some text,
typically shell commands, in `configure'. Many of these groups of commands can
set certain shell variables; the documentation for the macro usually names them.
For example, AC_PROG_CC can set CC and CFLAGS.
If a variable holds the name by which to call a tool or the flags to pass to
every invocation of that tool, Autoconf macros (should) only modify if it is
unset or empty. The GNU Coding Standards inspire[1] this behavior. FCLIBS
receives the same treatment. Autoconf macros do unconditionally overwrite some
variables, usually ones you would not see in the absence of Autoconf, like
`interpval' and `GETLOADAVG_LIBS'.
You can always change a shell variable after the commands that set it run. When
the commands respect an existing value, as they do for FCLIBS, I recommend
setting the value before you call macros that use or (would) set it. That way,
any use _of_ the variable in those macros will take your value.
> > _AC_FC_LIBRARY_LDFLAGS in lib/autoconf/fortran.m4 is the macro that deals
> > with
> > FCLIBS.
>
> Okay, thank you for this information. I looked at this file (for
> autoconf 2.59)
> and saw that the Intel fortran compiler is called "ifc". The official
> name
> for it nowadays is "ifort".
CVS Autoconf is aware of that.
[1] http://www.gnu.org/prep/standards/html_node/Command-Variables.html