libtool
[Top][All Lists]
Advanced

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

XL compiler name in Cell


From: Roger Ferrer Ibáñez
Subject: XL compiler name in Cell
Date: Mon, 01 Dec 2008 14:38:08 +0100
User-agent: Mozilla-Thunderbird 2.0.0.17 (X11/20081018)

Hi,

although XL is currently supported by the latest release of libtool, IBM's Cell toolchain preprends the name of the compiler with 'ppu' (standing for PPU, Power Processing Unit of the CBE Architecture). Compilers are thus called 'ppuxlc', 'ppuxlC' and 'ppuxlf' (the latest one for Fortran). Out of the box libtool does not recognize these compilers as XL and does not pass the proper flags to generate dynamic libraries.

Attached there is a minor patch to support 'ppuxl[cC]' and 'ppuxlf', besides plain 'xl[cC]' and 'xlf'. We initially considered something like '*xl[cC]' and '*xlf' but we think it is a bit crude (and 'spuxlc', which does not support dynamic libraries would be incorrectly guessed as doing so).

On the other hand, I wonder whether there is a way to tell libtool that the found compiler can be handled like another known to libtool, without having to resort on strategically named soft links or shell scripts.

Thanks a lot,

--
Roger Ferrer Ibáñez - address@hidden
--- libtool.m4.orig     2008-11-26 12:58:55.000000000 +0100
+++ libtool.m4  2008-11-26 13:00:10.000000000 +0100
@@ -3726,7 +3726,7 @@
            _LT_TAGVAR(lt_prog_compiler_pic, $1)=
            _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
            ;;
-         xlc* | xlC*)
+         xlc* | xlC* | ppuxlc* | ppuxlC*)
            # IBM XL 8.0 on PPC
            _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
            _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
@@ -4010,7 +4010,7 @@
         # All Alpha code is PIC.
         _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
         ;;
-      xl*)
+      *xl*)
        # IBM XL C 8.0/Fortran 10.1 on PPC
        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
@@ -4387,7 +4387,7 @@
        lf95*)                          # Lahey Fortran 8.1
          _LT_TAGVAR(whole_archive_flag_spec, $1)=
          tmp_sharedflag='--shared' ;;
-       xl[[cC]]*)                      # IBM XL C 8.0 on PPC (deal with xlf 
below)
+       xl[[cC]]* | ppuxl[[cC]]*)                       # IBM XL C 8.0 on PPC 
(deal with xlf below)
          tmp_sharedflag='-qmkshrobj'
          tmp_addflag= ;;
        esac
@@ -4409,7 +4409,7 @@
         fi
 
        case $cc_basename in
-       xlf*)
+       xlf* | ppuxlf*)
          # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
          _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience 
--no-whole-archive'
          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=

reply via email to

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