bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: LT 2.2 series regression


From: Ralf Wildenhues
Subject: Re: LT 2.2 series regression
Date: Sun, 25 May 2008 10:50:15 +0200
User-agent: Mutt/1.5.17+20080114 (2008-01-14)

Hi Jeff,

* Jeff Squyres wrote on Wed, May 21, 2008 at 05:08:57PM CEST:
> The Open MPI project just switched yesterday to using LT 2.2.4, AC 2.62, 
> and AM 1.10.1 for our nightly trunk snapshot tarballs.  Several  
> developers have been using this combo for a while (including me), but  
> using this trio for the nightly tarballs opens it up to a much wider  
> testing audience.

Thanks for the move, that really helps find those system-dependent
regressions we cannot test ourselves.

> We ran into a problem with last night's regression testing with the  
> Fortran Intel compiler suite and shared libraries.
>
> It seems that LT 2.2.x determines that the Intel ifort compiler option  
> for building shared libraries is -KPIC (when it should be -fPIC).  It  
> then tests -KPIC, determines that it doesn't work, and then discards it.  
> Hence, sources built with ifort have *no* PIC option, and therefore you 
> can't build shared libraries for them.  Here's the relevant output from 
> configure (RHEL4U4, x86_64, Intel compiler suite 10.1):

Do you have an idea how many different Intel compiler versions your
users use?  Because commit 319a767ce6d3eb131cc6d4d64809af1859d1a801
was added here:
<http://lists.gnu.org/archive/html/libtool-patches/2008-02/msg00007.html>
and I'm pretty sure that the version I tested then did work with -KPIC
(and I think I tested with a fairly new one).

I have only old version 8 to look at here right now, which states that
-KPIC is supported but deprecated, and that -fPIC is OK.

I've applied the patch below now.  Can you report back how it worked for
you?

Thanks,
Ralf

    Fix ifort settings again.
    
    * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
    Unlike icc and ecc, not all ifort versions understand `-KPIC',
    e.g. version 10.1, so use `-fPIC' instead.
    Report by Jeff Squyres.

diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4
index 6f9ac1b..654f54a 100644
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -3964,11 +3964,16 @@ m4_if([$1], [CXX], [
 
     linux* | k*bsd*-gnu)
       case $cc_basename in
-      icc* | ecc* | ifort*)
+      icc* | ecc*)
        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
         ;;
+      ifort*)
+       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+       _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+        ;;
       pgcc* | pgf77* | pgf90* | pgf95*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
        # which looks to be a dead project)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]