X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=ltcf-cxx.sh;h=e264452dd6f853de31b4a0b64c05cf0ed48d12d1;hb=e77b861868bd1268e5d52f238c70292427c53f28;hp=2ecd53e5758b9325ecfbb5c86c26e9b5dbb8eb93;hpb=fbccfde769917f6a98ae42eb3736989159c2b218;p=pf3gnuchains%2Fgcc-fork.git diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh index 2ecd53e5758..e264452dd6f 100644 --- a/ltcf-cxx.sh +++ b/ltcf-cxx.sh @@ -22,7 +22,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -128,6 +128,7 @@ case $host_os in hardcode_direct=yes hardcode_libdir_separator=':' link_all_deplibs=yes + file_list_spec='${wl}-f,' # When large executables or shared objects are built, AIX ld can # have problems creating the table of contents. If linking a library # or program results in "error TOC overflow" add -mminimal-toc to @@ -254,7 +255,8 @@ case $host_os in ;; esac output_verbose_link_cmd='echo' - archive_cmds='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring' + + archive_cmds='$CXX -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring' module_cmds='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags' # Don't fix this by using the ld -exported_symbols_list flag, @@ -264,7 +266,6 @@ case $host_os in hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported - whole_archive_flag_spec='-all_load $convenience' link_all_deplibs=yes ;; @@ -289,7 +290,7 @@ case $host_os in # C++ shared libraries reported to be fairly broken before switch to ELF ld_shlibs=no ;; - freebsd*) + freebsd* | kfreebsd*-gnu) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions ld_shlibs=yes @@ -449,7 +450,7 @@ case $host_os in ;; esac ;; - netbsd*) + netbsd* | knetbsd*-gnu) # NetBSD uses g++ - do we need to do anything? ;; osf3*) @@ -697,6 +698,9 @@ case $host_os in ;; esac ;; + tpf*) + ld_shlibs=yes + ;; unixware*) # FIXME: insert proper C++ library support ld_shlibs=no @@ -804,7 +808,7 @@ else ;; esac ;; - freebsd*) + freebsd* | kfreebsd*-gnu) # FreeBSD uses GNU C++ ;; gnu*)