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 - [EMAIL PROTECTED]
--- 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)=
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool