Subject: Re: libtool fails w/o c++ compiler
To: Julio M. Merino Vidal <jmmv@menta.net>
From: grant beattie <grant@NetBSD.org>
List: tech-pkg
Date: 11/28/2004 01:10:29
--n/aVsWSeQ4JHkrmm
Content-Type: multipart/mixed; boundary="H8ygTp4AXg6deix2"
Content-Disposition: inline
--H8ygTp4AXg6deix2
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Sat, Nov 27, 2004 at 09:22:25PM +1100, grant beattie wrote:
> > Upon inspection of config.log, I found that cpp couldn't open cc1plus.
> > And, after installing the gcc-g++ package, all worked fine. Which could
> > be the right solution here? Mark the package as c++-dependent? Avoid
> > using c++?
>=20
> I found this was also case on Tru64 where you get a c compiler but no
> c++ compiler in base (though the failure is slightly different, the
> command to extract symbols from libraries fails for me).
try replacing patch-ab with the attached version. it changes where
$CXX gets used, and fixes the "extract symbols" test on osf1 for me.
it should fix other problems that happen when a c++ compiler isn't
found, too.
grant.
--H8ygTp4AXg6deix2
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="libtool.patch-ab"
Content-Transfer-Encoding: quoted-printable
$NetBSD$
--- configure.orig 2004-09-19 22:22:04.000000000 +1000
+++ configure
@@ -322,11 +322,11 @@ else
=20
if test "X$echo" =3D Xecho; then
# We didn't find a better echo, so look for alternatives.
- if test "X`(print -r '\t') 2>/dev/null`" =3D 'X\t' &&
+ if test "X`(print -r - '\t') 2>/dev/null`" =3D 'X\t' &&
echo_testing_string=3D`(print -r "$echo_test_string") 2>/dev/null` =
&&
test "X$echo_testing_string" =3D "X$echo_test_string"; then
# This shell has a builtin print -r that does the trick.
- echo=3D'print -r'
+ echo=3D'print -r -'
elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
test "X$CONFIG_SHELL" !=3D X/bin/ksh; then
# If we have ksh, try running configure again with it.
@@ -4534,6 +4534,10 @@ hpux10.20* | hpux11*)
esac
;;
=20
+interix3*)
+ lt_cv_deplibs_check_method=3D'match_pattern /lib[^/]+(\.so|\.a)$'
+ ;;
+
irix5* | irix6* | nonstopux*)
case $LD in
*-32|*"-32 ") libmagic=3D32-bit;;
@@ -5690,12 +5694,7 @@ fi
=20
done
=20
-
-
-if test -n "$CXX" && ( test "X$CXX" !=3D "Xno" &&
- ( (test "X$CXX" =3D "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" !=3D "Xg++"))) ; then
- ac_ext=3Dcc
+ac_ext=3Dcc
ac_cpp=3D'$CXXCPP $CPPFLAGS'
ac_compile=3D'$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link=3D'$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftes=
t.$ac_ext $LIBS >&5'
@@ -5919,13 +5918,18 @@ See \`config.log' for more details." >&2
{ (exit 1); exit 1; }; }
fi
=20
-ac_ext=3Dcc
-ac_cpp=3D'$CXXCPP $CPPFLAGS'
-ac_compile=3D'$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link=3D'$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftes=
t.$ac_ext $LIBS >&5'
-ac_compiler_gnu=3D$ac_cv_cxx_compiler_gnu
-
-fi
+# these checks don't use c++
+#
+#ac_ext=3Dcc
+#ac_cpp=3D'$CXXCPP $CPPFLAGS'
+#ac_compile=3D'$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+#ac_link=3D'$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS confte=
st.$ac_ext $LIBS >&5'
+#ac_compiler_gnu=3D$ac_cv_cxx_compiler_gnu
+ac_ext=3Dc
+ac_cpp=3D'$CPP $CPPFLAGS'
+ac_compile=3D'$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link=3D'$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$=
ac_ext $LIBS >&5'
+ac_compiler_gnu=3D$ac_cv_c_compiler_gnu
=20
=20
=20
@@ -6021,7 +6025,6 @@ fi
=20
=20
=20
-
# Check for command to grab the raw symbol name followed by C symbol from =
nm.
echo "$as_me:$LINENO: checking command to parse $NM output from $compiler =
object" >&5
echo $ECHO_N "checking command to parse $NM output from $compiler object..=
. $ECHO_C" >&6
@@ -6042,10 +6045,10 @@ sympat=3D'\([_A-Za-z][_A-Za-z0-9]*\)'
symxfrm=3D'\1 \2\3 \3'
=20
# Transform an extracted symbol line into a proper C declaration
-lt_cv_sys_global_symbol_to_cdecl=3D"sed -n -e 's/^. .* \(.*\)$/extern int =
\1;/p'"
+lt_cv_sys_global_symbol_to_cdecl=3D"$SED -n -e 's/^. .* \(.*\)$/extern int=
\1;/p'"
=20
# Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address=3D"sed -n -e 's/^: \([^ ]*\) $/ =
{\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\=
", (lt_ptr) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address=3D"$SED -n -e 's/^: \([^ ]*\) $/=
{\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2=
\", (lt_ptr) \&\2},/p'"
=20
# Define system-specific variables.
case $host_os in
@@ -6101,7 +6104,7 @@ esac
for ac_symprfx in "" "_"; do
=20
# Write the raw and C identifiers.
- lt_cv_sys_global_symbol_pipe=3D"sed -n -e 's/^.*[ ]\($symcode$symcode*\=
)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
+ lt_cv_sys_global_symbol_pipe=3D"$SED -n -e 's/^.*[ ]\($symcode$symcode*=
\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
=20
# Check to see that the pipe works correctly.
pipe_works=3Dno
@@ -6909,9 +6912,11 @@ echo $ECHO_N "checking for $compiler opt
;;
=20
darwin* | rhapsody*)
- # PIC is the default on this platform
+ # PIC is the default on this platform, and static linking of
+ # binaries generally doesn't work
# Common symbols not allowed in MH_DYLIB files
lt_prog_compiler_pic=3D'-fno-common'
+ lt_prog_compiler_static=3D''
;;
=20
msdosdjgpp*)
@@ -6940,6 +6945,11 @@ echo $ECHO_N "checking for $compiler opt
esac
;;
=20
+ interix3*)
+ # Interix 3.0-3.5 -fPIC option generates borked code.
+ # (Instead, shlibs are relocated at runtime.)
+ ;;
+
*)
lt_prog_compiler_pic=3D'-fPIC'
;;
@@ -7325,6 +7335,17 @@ EOF
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl}-=
h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds=3D'sed s,^,_, $export_symbols >$output_objdir/$s=
oname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname =
${wl}--retain-symbols-file $wl$output_objdir/$soname.exp ${wl}--image-base,=
$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
archive_cmds=3D'$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
@@ -7832,6 +7853,21 @@ if test -z "$aix_libpath"; then aix_libp
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl}-=
-image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds=3D'sed s,^,_, $export_symbols >$output_objdir/$s=
oname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname =
${wl}--retain-symbols-file $wl$output_objdir/$soname ${wl}--image-base,$(($=
RANDOM %4096/2*262144+1342177280)) -o $lib'
+ export_dynamic_flag_spec=3D'${wl}-E'
+ hardcode_direct=3Dyes
+ hardcode_libdir_flag_spec=3D'${wl}-h,$libdir'
+ hardcode_shlibpath_var=3Dno
+ ;;
+
irix5* | irix6* | nonstopux*)
if test "$GCC" =3D yes; then
archive_cmds=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl}-sonam=
e ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstr=
ing` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
@@ -8223,6 +8259,7 @@ beos*)
bsdi[45]*)
version_type=3Dlinux
need_version=3Dno
+ need_lib_prefix=3Dno
library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec=3D'${libname}${release}${shared_ext}$major'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig $libdir'
@@ -8337,16 +8374,17 @@ kfreebsd*-gnu)
;;
=20
freebsd*)
+ version_type=3Dlinux
objformat=3D`test -x /usr/bin/objformat && /usr/bin/objformat || echo ao=
ut`
- version_type=3Dfreebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext} $libname${shared_ext}'
+ case $objformat in
+ elf*)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
need_version=3Dno
need_lib_prefix=3Dno
;;
- freebsd-*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix $l=
ibname${shared_ext}$versuffix'
+ *)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${shared_ext}$versuffix2'
need_version=3Dyes
;;
esac
@@ -8422,15 +8460,22 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds=3D'chmod 555 $lib'
;;
=20
+interix3*)
+ version_type=3Dlinux
+ need_lib_prefix=3Dno
+ need_version=3Dno
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
+ dynamic_linker=3D'Interix 3.x ld.so'
+ shlibpath_var=3DLD_LIBRARY_PATH
+ shlibpath_overrides_runpath=3Dyes
+ hardcode_into_libs=3Dyes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=3Dnonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" =3D yes; then
- version_type=3Dlinux
- else
- version_type=3Dirix
- fi ;;
+ *) version_type=3Dirix ;;
esac
need_lib_prefix=3Dno
need_version=3Dno
@@ -8507,11 +8552,11 @@ knetbsd*-gnu)
;;
=20
netbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
dynamic_linker=3D'NetBSD (a.out) ld.so'
else
@@ -8542,10 +8587,10 @@ nto-qnx*)
;;
=20
openbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=3DLD_LIBRARY_PATH
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-=
$host_cpu" =3D "openbsd2.8-powerpc"; then
@@ -10105,9 +10150,7 @@ echo "$as_me: error: tag name \"$tagname
=20
case $tagname in
CXX)
- if test -n "$CXX" && ( test "X$CXX" !=3D "Xno" &&
- ( (test "X$CXX" =3D "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
- (test "X$CXX" !=3D "Xg++"))) ; then
+ if test -n "$CXX" && test "X$CXX" !=3D "Xno"; then
ac_ext=3Dcc
ac_cpp=3D'$CXXCPP $CPPFLAGS'
ac_compile=3D'$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -10817,6 +10860,16 @@ if test -z "$aix_libpath"; then aix_libp
;;
esac
;;
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds_CXX=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl=
}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds_CXX=3D'sed s,^,_, $export_symbols >$output_objdir/=
$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$sonam=
e ${wl}--retain-symbols-file $wl$output_objdir/$soname ${wl}--image-base,$(=
($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ ;;
irix5* | irix6*)
case $cc_basename in
CC)
@@ -10934,14 +10987,29 @@ if test -z "$aix_libpath"; then aix_libp
;;
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+ # a.out is quite broken and goes directly to ld
archive_cmds_CXX=3D'$LD -Bshareable -o $lib $predep_objects $libobj=
s $deplibs $postdep_objects $linker_flags'
wlarc=3D
+ # Determine if we need to override the c++rt0 that is
+ # picked up by analysing output_verbose_link_cmds
+ if test -f ${PREFIX}/lib/c++rt0/c++rt0.o.PIC; then
+ cpprt0_file=3D"${PREFIX}/lib/c++rt0/c++rt0.o.PIC"
+ else
+ cpprt0_file=3D
+ fi
hardcode_libdir_flag_spec_CXX=3D'-R$libdir'
hardcode_direct_CXX=3Dyes
hardcode_shlibpath_var_CXX=3Dno
+ output_verbose_link_cmd=3D'$CC -shared $CFLAGS -v conftest.$objext 2=
>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ elif $CC -dumpspecs | grep -- '-lgcc -lc -lgcc' >/dev/null; then
+ # Workaround some broken pre-1.5 ELF toolchains
+ output_verbose_link_cmd=3D'$CC -shared $CFLAGS -v conftest.$objext 2=
>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
+ else
+ # Modern ELF works sanely as-is
+ archive_cmds_CXX=3D'$CC -shared $libobjs $deplibs $compiler_flags ${=
wl}-soname $wl$soname -o $lib'
+ archive_expsym_cmds_CXX=3D'$CC -shared $libobjs $deplibs $compiler_f=
lags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -=
o $lib'
+ output_verbose_link_cmd=3D'echo'
fi
- # Workaround some broken pre-1.5 toolchains
- output_verbose_link_cmd=3D'$CC -shared $CFLAGS -v conftest.$objext 2>&=
1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
;;
openbsd2*)
# C++ shared libraries are fairly broken
@@ -11324,6 +11392,21 @@ if { (eval echo "$as_me:$LINENO: \"$ac_c
esac
done
=20
+ case "$host_os" in
+ netbsd*)
+ if test -n "$cpprt0_file"; then
+ predep_objects_CXX=3D`eval echo $predep_objects_CXX | sed -e 's:/usr=
/lib/c++rt0.o:$cpprt0_file:'`
+ fi
+ ;;
+ interix3*)
+ # Interix installs completely hosed .la files for C++, so rather than
+ # hack all around it, let's just trust "g++" to DTRT.
+ predep_objects_CXX=3D
+ postdep_objects_CXX=3D
+ postdeps_CXX=3D
+ ;;
+ esac
+
# Clean up.
rm -f a.out a.exe
else
@@ -11371,9 +11454,11 @@ echo $ECHO_N "checking for $compiler opt
lt_prog_compiler_pic_CXX=3D'-DDLL_EXPORT'
;;
darwin* | rhapsody*)
- # PIC is the default on this platform
+ # PIC is the default on this platform, and static linking of
+ # binaries generally doesn't work
# Common symbols not allowed in MH_DYLIB files
lt_prog_compiler_pic_CXX=3D'-fno-common'
+ lt_prog_compiler_static_CXX=3D''
;;
*djgpp*)
# DJGPP does not support shared libraries at all
@@ -11395,6 +11480,10 @@ echo $ECHO_N "checking for $compiler opt
;;
esac
;;
+ interix3*)
+ # Interix 3.0-3.5 -fPIC option generates borked code.
+ # (Instead, shlibs are relocated at runtime.)
+ ;;
*)
lt_prog_compiler_pic_CXX=3D'-fPIC'
;;
@@ -11469,6 +11558,8 @@ echo $ECHO_N "checking for $compiler opt
;;
esac
;;
+ interix3*)
+ ;;
irix5* | irix6* | nonstopux*)
case $cc_basename in
CC)
@@ -11939,6 +12030,7 @@ beos*)
bsdi[45]*)
version_type=3Dlinux
need_version=3Dno
+ need_lib_prefix=3Dno
library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec=3D'${libname}${release}${shared_ext}$major'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig $libdir'
@@ -12053,16 +12145,17 @@ kfreebsd*-gnu)
;;
=20
freebsd*)
+ version_type=3Dlinux
objformat=3D`test -x /usr/bin/objformat && /usr/bin/objformat || echo ao=
ut`
- version_type=3Dfreebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext} $libname${shared_ext}'
+ case $objformat in
+ elf*)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
need_version=3Dno
need_lib_prefix=3Dno
;;
- freebsd-*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix $l=
ibname${shared_ext}$versuffix'
+ *)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${shared_ext}$versuffix2'
need_version=3Dyes
;;
esac
@@ -12138,15 +12231,22 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds=3D'chmod 555 $lib'
;;
=20
+interix3*)
+ version_type=3Dlinux
+ need_lib_prefix=3Dno
+ need_version=3Dno
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
+ dynamic_linker=3D'Interix 3.x ld.so'
+ shlibpath_var=3DLD_LIBRARY_PATH
+ shlibpath_overrides_runpath=3Dyes
+ hardcode_into_libs=3Dyes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=3Dnonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" =3D yes; then
- version_type=3Dlinux
- else
- version_type=3Dirix
- fi ;;
+ *) version_type=3Dirix ;;
esac
need_lib_prefix=3Dno
need_version=3Dno
@@ -12223,11 +12323,11 @@ knetbsd*-gnu)
;;
=20
netbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
dynamic_linker=3D'NetBSD (a.out) ld.so'
else
@@ -12258,10 +12358,10 @@ nto-qnx*)
;;
=20
openbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=3DLD_LIBRARY_PATH
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-=
$host_cpu" =3D "openbsd2.8-powerpc"; then
@@ -13805,9 +13905,11 @@ echo $ECHO_N "checking for $compiler opt
;;
=20
darwin* | rhapsody*)
- # PIC is the default on this platform
+ # PIC is the default on this platform, and static linking of
+ # binaries generally doesn't work
# Common symbols not allowed in MH_DYLIB files
lt_prog_compiler_pic_F77=3D'-fno-common'
+ lt_prog_compiler_static_F77=3D''
;;
=20
msdosdjgpp*)
@@ -13836,6 +13938,11 @@ echo $ECHO_N "checking for $compiler opt
esac
;;
=20
+ interix3*)
+ # Interix 3.0-3.5 -fPIC option generates borked code.
+ # (Instead, shlibs are relocated at runtime.)
+ ;;
+
*)
lt_prog_compiler_pic_F77=3D'-fPIC'
;;
@@ -14221,6 +14328,17 @@ EOF
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds_F77=3D'$CC -shared $libobjs $deplibs $compiler_flags ${=
wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $=
lib'
+ archive_expsym_cmds_F77=3D'sed s,^,_, $export_symbols >$output_objdi=
r/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$son=
ame ${wl}--retain-symbols-file $wl$output_objdir/$soname.exp ${wl}--image-b=
ase,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
archive_cmds_F77=3D'$LD -Bshareable $libobjs $deplibs $linker_flags -o $l=
ib'
@@ -14708,6 +14826,21 @@ if test -z "$aix_libpath"; then aix_libp
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds_F77=3D'$CC -shared $libobjs $deplibs $compiler_flags ${=
wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds_F77=3D'sed s,^,_, $export_symbols >$output_objdi=
r/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$son=
ame ${wl}--retain-symbols-file $wl$output_objdir/$soname ${wl}--image-base,=
$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ export_dynamic_flag_spec_F77=3D'${wl}-E'
+ hardcode_direct_F77=3Dyes
+ hardcode_libdir_flag_spec_F77=3D'${wl}-h,$libdir'
+ hardcode_shlibpath_var_F77=3Dno
+ ;;
+
irix5* | irix6* | nonstopux*)
if test "$GCC" =3D yes; then
archive_cmds_F77=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl}-s=
oname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$ve=
rstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
@@ -15099,6 +15232,7 @@ beos*)
bsdi[45]*)
version_type=3Dlinux
need_version=3Dno
+ need_lib_prefix=3Dno
library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec=3D'${libname}${release}${shared_ext}$major'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig $libdir'
@@ -15213,16 +15347,17 @@ kfreebsd*-gnu)
;;
=20
freebsd*)
+ version_type=3Dlinux
objformat=3D`test -x /usr/bin/objformat && /usr/bin/objformat || echo ao=
ut`
- version_type=3Dfreebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext} $libname${shared_ext}'
+ case $objformat in
+ elf*)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
need_version=3Dno
need_lib_prefix=3Dno
;;
- freebsd-*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix $l=
ibname${shared_ext}$versuffix'
+ *)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${shared_ext}$versuffix2'
need_version=3Dyes
;;
esac
@@ -15298,15 +15433,22 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds=3D'chmod 555 $lib'
;;
=20
+interix3*)
+ version_type=3Dlinux
+ need_lib_prefix=3Dno
+ need_version=3Dno
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
+ dynamic_linker=3D'Interix 3.x ld.so'
+ shlibpath_var=3DLD_LIBRARY_PATH
+ shlibpath_overrides_runpath=3Dyes
+ hardcode_into_libs=3Dyes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=3Dnonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" =3D yes; then
- version_type=3Dlinux
- else
- version_type=3Dirix
- fi ;;
+ *) version_type=3Dirix ;;
esac
need_lib_prefix=3Dno
need_version=3Dno
@@ -15383,11 +15525,11 @@ knetbsd*-gnu)
;;
=20
netbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
dynamic_linker=3D'NetBSD (a.out) ld.so'
else
@@ -15418,10 +15560,10 @@ nto-qnx*)
;;
=20
openbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=3DLD_LIBRARY_PATH
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-=
$host_cpu" =3D "openbsd2.8-powerpc"; then
@@ -16147,9 +16289,11 @@ echo $ECHO_N "checking for $compiler opt
;;
=20
darwin* | rhapsody*)
- # PIC is the default on this platform
+ # PIC is the default on this platform, and static linking of
+ # binaries generally doesn't work
# Common symbols not allowed in MH_DYLIB files
lt_prog_compiler_pic_GCJ=3D'-fno-common'
+ lt_prog_compiler_static_GCJ=3D''
;;
=20
msdosdjgpp*)
@@ -16178,6 +16322,11 @@ echo $ECHO_N "checking for $compiler opt
esac
;;
=20
+ interix3*)
+ # Interix 3.0-3.5 -fPIC option generates borked code.
+ # (Instead, shlibs are relocated at runtime.)
+ ;;
+
*)
lt_prog_compiler_pic_GCJ=3D'-fPIC'
;;
@@ -16563,6 +16712,17 @@ EOF
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds_GCJ=3D'$CC -shared $libobjs $deplibs $compiler_flags ${=
wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $=
lib'
+ archive_expsym_cmds_GCJ=3D'sed s,^,_, $export_symbols >$output_objdi=
r/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$son=
ame ${wl}--retain-symbols-file $wl$output_objdir/$soname.exp ${wl}--image-b=
ase,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
archive_cmds_GCJ=3D'$LD -Bshareable $libobjs $deplibs $linker_flags -o $l=
ib'
@@ -17070,6 +17230,21 @@ if test -z "$aix_libpath"; then aix_libp
fi
;;
=20
+ interix3*)
+ # Oy, what a hack.
+ # Because shlibs are not compiled -fPIC due to broken code, we must
+ # choose an --image-base. Otherwise, 0x10000000 will be chosen for
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds_GCJ=3D'$CC -shared $libobjs $deplibs $compiler_flags ${=
wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds_GCJ=3D'sed s,^,_, $export_symbols >$output_objdi=
r/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$son=
ame ${wl}--retain-symbols-file $wl$output_objdir/$soname ${wl}--image-base,=
$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ export_dynamic_flag_spec_GCJ=3D'${wl}-E'
+ hardcode_direct_GCJ=3Dyes
+ hardcode_libdir_flag_spec_GCJ=3D'${wl}-h,$libdir'
+ hardcode_shlibpath_var_GCJ=3Dno
+ ;;
+
irix5* | irix6* | nonstopux*)
if test "$GCC" =3D yes; then
archive_cmds_GCJ=3D'$CC -shared $libobjs $deplibs $compiler_flags ${wl}-s=
oname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$ve=
rstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
@@ -17461,6 +17636,7 @@ beos*)
bsdi[45]*)
version_type=3Dlinux
need_version=3Dno
+ need_lib_prefix=3Dno
library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec=3D'${libname}${release}${shared_ext}$major'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig $libdir'
@@ -17575,16 +17751,17 @@ kfreebsd*-gnu)
;;
=20
freebsd*)
+ version_type=3Dlinux
objformat=3D`test -x /usr/bin/objformat && /usr/bin/objformat || echo ao=
ut`
- version_type=3Dfreebsd-$objformat
- case $version_type in
- freebsd-elf*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext} $libname${shared_ext}'
+ case $objformat in
+ elf*)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${release}${shared_ext}$major $libname${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
need_version=3Dno
need_lib_prefix=3Dno
;;
- freebsd-*)
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix $l=
ibname${shared_ext}$versuffix'
+ *)
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${=
libname}${shared_ext}$versuffix2'
need_version=3Dyes
;;
esac
@@ -17660,15 +17837,22 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds=3D'chmod 555 $lib'
;;
=20
+interix3*)
+ version_type=3Dlinux
+ need_lib_prefix=3Dno
+ need_version=3Dno
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec=3D'${libname}${release}${shared_ext}$major'
+ dynamic_linker=3D'Interix 3.x ld.so'
+ shlibpath_var=3DLD_LIBRARY_PATH
+ shlibpath_overrides_runpath=3Dyes
+ hardcode_into_libs=3Dyes
+ ;;
+
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=3Dnonstopux ;;
- *)
- if test "$lt_cv_prog_gnu_ld" =3D yes; then
- version_type=3Dlinux
- else
- version_type=3Dirix
- fi ;;
+ *) version_type=3Dirix ;;
esac
need_lib_prefix=3Dno
need_version=3Dno
@@ -17745,11 +17929,11 @@ knetbsd*-gnu)
;;
=20
netbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${li=
bname}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
dynamic_linker=3D'NetBSD (a.out) ld.so'
else
@@ -17780,10 +17964,10 @@ nto-qnx*)
;;
=20
openbsd*)
- version_type=3Dsunos
+ version_type=3Dlinux
need_lib_prefix=3Dno
need_version=3Dno
- library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix'
+ library_names_spec=3D'${libname}${release}${shared_ext}$versuffix ${libn=
ame}${shared_ext}$versuffix2'
finish_cmds=3D'PATH=3D"\$PATH:/sbin" ldconfig -m $libdir'
shlibpath_var=3DLD_LIBRARY_PATH
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-=
$host_cpu" =3D "openbsd2.8-powerpc"; then
--H8ygTp4AXg6deix2--
--n/aVsWSeQ4JHkrmm
Content-Type: application/pgp-signature
Content-Disposition: inline
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (NetBSD)
iD8DBQFBqIrVluYOb9yiFXoRAghqAKCh0Dxul2h5VoBr9A+rzpZm+Xcw7ACeLAMk
Yvq0LewPEZnQ52W/LNdKtIQ=
=bpFH
-----END PGP SIGNATURE-----
--n/aVsWSeQ4JHkrmm--