Build shared libraries correctly w/ gnu binutils.
This commit is contained in:
parent
66c97d0d6a
commit
9bcc9db685
File diff suppressed because it is too large
Load Diff
@ -1,16 +1,34 @@
|
||||
--- ltconfig.orig Sun Aug 6 01:46:51 2000
|
||||
+++ ltconfig Tue Feb 20 16:46:33 2001
|
||||
@@ -1105,6 +1105,9 @@ cygwin* | mingw*)
|
||||
$OpenBSD: patch-ltconfig,v 1.3 2001/09/29 05:23:22 pvalchev Exp $
|
||||
--- ltconfig.orig Fri Mar 16 04:24:49 2001
|
||||
+++ ltconfig Fri Sep 28 22:40:13 2001
|
||||
@@ -501,7 +501,14 @@ fi
|
||||
|
||||
if test -n "$RANLIB"; then
|
||||
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
|
||||
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
|
||||
+ case "$host_os" in
|
||||
+ openbsd*)
|
||||
+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
|
||||
+ ;;
|
||||
+ *)
|
||||
+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
|
||||
+ ;;
|
||||
+ esac
|
||||
fi
|
||||
|
||||
# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin.
|
||||
@@ -1105,7 +1112,9 @@ cygwin* | mingw*)
|
||||
with_gnu_ld=no
|
||||
fi
|
||||
;;
|
||||
-
|
||||
+openbsd*)
|
||||
+ with_gnu_ld=no
|
||||
+ ;;
|
||||
|
||||
esac
|
||||
|
||||
@@ -1396,10 +1399,21 @@ else
|
||||
ld_shlibs=yes
|
||||
@@ -1396,10 +1405,21 @@ else
|
||||
;;
|
||||
|
||||
openbsd*)
|
||||
@ -20,32 +38,44 @@
|
||||
hardcode_shlibpath_var=no
|
||||
+ case "$host_os" in
|
||||
+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
|
||||
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
|
||||
+ hardcode_libdir_flag_spec='-R$libdir'
|
||||
+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
|
||||
+ hardcode_libdir_flag_spec='-R$libdir'
|
||||
+ ;;
|
||||
+ *)
|
||||
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linkopts'
|
||||
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
|
||||
+ if [ "`/usr/bin/file /usr/lib/libc.so.* | grep ELF`" != "" ]; then
|
||||
+ export_dynamic_flag_spec='${wl}-E'
|
||||
+ fi
|
||||
+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linkopts'
|
||||
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
|
||||
+ if test "`echo __ELF__ | $CC -E - | grep __ELF__`" = "" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
||||
+ export_dynamic_flag_spec='${wl}-E'
|
||||
+ fi
|
||||
+ ;;
|
||||
+ esac
|
||||
;;
|
||||
|
||||
os2*)
|
||||
@@ -1997,13 +2011,10 @@ netbsd*)
|
||||
@@ -1997,9 +2017,23 @@ netbsd*)
|
||||
|
||||
openbsd*)
|
||||
version_type=sunos
|
||||
- if test "$with_gnu_ld" = yes; then
|
||||
- need_lib_prefix=no
|
||||
- need_version=no
|
||||
- fi
|
||||
+ need_lib_prefix=no
|
||||
+ need_version=no
|
||||
+ file_magic_cmd=/usr/bin/file
|
||||
+ file_magic_test_file=`echo /usr/lib/libc.so.*`
|
||||
+ if test "`echo __ELF__ | $CC -E - | grep __ELF__`" = "" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
||||
+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
|
||||
+ case "$host_os" in
|
||||
+ openbsd2.[89] | openbsd2.[89].*)
|
||||
+ shlibpath_overrides_runpath=no
|
||||
+ ;;
|
||||
+ *)
|
||||
+ shlibpath_overrides_runpath=yes
|
||||
+ ;;
|
||||
+ esac
|
||||
+ else
|
||||
+ deplibs_check_method='file_magic OpenBSD.* shared library'
|
||||
+ shlibpath_overrides_runpath=yes
|
||||
fi
|
||||
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
|
||||
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
|
||||
shlibpath_var=LD_LIBRARY_PATH
|
||||
+ deplibs_check_method='pass_all'
|
||||
;;
|
||||
|
||||
os2*)
|
||||
|
Loading…
Reference in New Issue
Block a user