From: Gary V. Vaughan Date: Mon, 19 Apr 2004 12:53:36 +0000 (+0000) Subject: * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and X-Git-Tag: release-1-5-8~19 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cbb86286396dd236095021ca9429fce90762a17f;p=thirdparty%2Flibtool.git * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and newer adds predep_objects and postdep_objects itself, so don't duplicate them in $archive_cmds and $archive_expsym_cmds. * NEWS: Updated. Reported by Roberto Bagnare --- diff --git a/ChangeLog b/ChangeLog index 69f425afc..f462485bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2004-04-19 Gary V. Vaughan + + * m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and + newer adds predep_objects and postdep_objects itself, so don't + duplicate them in $archive_cmds and $archive_expsym_cmds. + * NEWS: Updated. + Reported by Roberto Bagnare + 2004-04-14 Alexandre Duret-Lutz * bootstrap: Delete acinclude.m4. diff --git a/NEWS b/NEWS index 3e2a61665..48172fd0b 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,7 @@ NEWS - list of user-visible changes between releases of GNU Libtool New in 1.5.7a: 2004-??-??; CVS version 1.5.7a, Libtool team: +* Support for Intel C++ version 8.0. * Bug Fixes. New in 1.5.6: 2004-04-11; CVS version 1.5.5a, Libtool team: diff --git a/libtool.m4 b/libtool.m4 index 16f90d7b2..8f889b9b8 100644 --- a/libtool.m4 +++ b/libtool.m4 @@ -1,5 +1,5 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004 ## Free Software Foundation, Inc. ## Originally by Gordon Matzigkeit , 1996 ## @@ -3145,9 +3145,22 @@ case $host_os in icpc) # Intel C++ with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. Only 8.0 (and newer?) + # support the --version argument, so we use that to distinguish them: + lt_icpc_version=`icpc --version 2>/dev/null` + case $lt_icpc_version in + [[0-9.]]*) # Version 8.0 or newer + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # No output from 7.1 and older + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no - _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'