diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2001-06-04 23:33:12 +0400 |
---|---|---|
committer | Alexandre Oliva <aoliva@redhat.com> | 2001-06-04 23:33:12 +0400 |
commit | 2b5187d78bf28bc9539dc78db51db2489d8a17d8 (patch) | |
tree | 18697d6ebbd1eeefffe728e8cd596fb2586f99b7 /ltcf-c.sh | |
parent | 7c5ebbfd3abc7da97c588348186b589063cf9df8 (diff) |
* ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
with_gcc]: Use `gcc -shared' to build a shared library.
Diffstat (limited to 'ltcf-c.sh')
-rw-r--r-- | ltcf-c.sh | 14 |
1 files changed, 9 insertions, 5 deletions
@@ -513,11 +513,15 @@ else solaris*) no_undefined_flag=' -z defs' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + if test "$with_gcc" = yes; then + archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' + else + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi hardcode_libdir_flag_spec='-R$libdir' hardcode_shlibpath_var=no case $host_os in |