Brooks,
On 10/09/2013 12:23 AM, Brooks Moses wrote:
On 10/07/2013 06:11 AM, Ward Poelmans wrote:
In the check for static/shared libraries, the Intel MPI fortran compiler
is not detected.
Thanks, but a couple of things don't look quite right here....
@@ -4443,7 +4443,7 @@ m4_if([$1], [CXX], [
;;
# icc used to be incompatible with GCC.
# ICC 10 doesn't accept -KPIC any more.
- icc* | ifort*)
+ icc* | ifort* | mpif77* | mpif90* | mpifc* | mpiifort*)
"mpif77" is a commonly-used generic name; there's no assurance this is
the Intel version (unless I'm missing something).
that's correct, checking for mpi* is IMO a bad idea regarding libtool.
In case of MPI and non-GCC Fortran compilers, libtool currently does a
'case `$CC -V 2>&1 | sed 5q` in' and compares against compiler vendor
names to set lt_prog_compiler_ *. This is IMO error-prone and
duplication as the functionality is already there in the 'case
$cc_basename' case statements.
What libtool really needs to know if used with MPI compiler wrappers,
is the cc_basename of the compiler used by the MPI implementation. This
could be implemented by extending _LT_CC_BASENAME. What do you think?
See also:
https://lists.gnu.org/archive/html/libtool/2010-12/msg00031.html
https://lists.gnu.org/archive/html/libtool/2012-09/msg00030.html
Christian
Also, as per the Intel documentation I'm aware of, all of these except
mpiifort* use GCC, not Intel's compilers, as the underlying compiler; do
they actually need the special handling here?
http://software.intel.com/sites/products/documentation/hpc/ics/impi/41/lin/Reference_Manual/Compiler_Commands.htm
It also looks like you're missing mpiicc* from the list here (and
mpiicpc* is also missing; it should be added with icpc* at line 4155).
@@ -4909,7 +4909,7 @@ _LT_EOF
tmp_addflag=' -i_dynamic' ;;
efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
tmp_addflag=' -i_dynamic -nofor_main' ;;
- ifc* | ifort*) # Intel Fortran compiler
+ ifc* | ifort* | mpif77* | mpif90* | mpifc* | mpiifort*) #
Intel Fortran compiler
Likewise here, with regards to mpif77*/mpif90*/mpifc*. Do these
actually need the special handling, and are we sure this will only be
triggered by Intel's mpif77?
Thanks,
- Brooks