improved aix support

This commit is contained in:
Gary V. Vaughan 1999-01-15 12:31:10 +00:00
parent 1b42249d43
commit b5a58b449a
5 changed files with 62 additions and 10 deletions

View File

@ -1,3 +1,16 @@
1999-01-15 Gary V. Vaughan <gvaughan@oranda.demon.co.uk>
From Andrey Slepuhin <pooh@msu.ru>
* libtoolize.in (cd $pkgdatadir): Make sure we return the the
working directory when this is done.
From Andrey Slepuhin <pooh@msu.ru>
* ltconfig.in (aix): Use shared library support correctly on
aix4*, and tweak the config for aix3.
* NEWS: added aix3 and aix4 to list of hosts with improved
support.
* THANKS: added Andrey Slepuhin <pooh@msu.ru>.
1999-01-15 Thomas Tanner <tanner@gmx.de>
* Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
@ -34,6 +47,7 @@
1999-01-14 Gary V. Vaughan <garyv@oranda.demon.co.uk>
* THANKS: added Mark Elbrecht.
* ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
separator characters for the build host, to support DJGPP
environment.

2
NEWS
View File

@ -3,7 +3,7 @@ NEWS - list of user-visible changes between releases of GNU Libtool
New in 1.2e: CVS version:
* Support -R for specifying run-time path of programs and library dependencies
* Support for BeOS
* Improved support for Win32, SysV 4.3, BSD/OS 4.x and NetBSD
* Improved support for Win32, aix3, aix4, SysV 4.3, BSD/OS 4.x and NetBSD
* Various bugfixes
New in 1.2c: CVS version; 1.2d: 1998-12-16, Libtool team:

2
THANKS
View File

@ -9,6 +9,7 @@ time and energy in helping to track down bugs, port to new systems,
and generally assist in the libtool maintainership process:
Akim Demaille <demaille@inf.enst.fr>
Andrey Slepuhin <pooh@msu.ru>
Bruno Haible <haible@ilog.fr>
Carl D. Roth <roth@cse.ucsc.edu>
Charles S. Kerr <cskerr@delenn.jccbi.gov>
@ -25,6 +26,7 @@ Joseph Beckenbach III <jrb3@best.com>
Karl Berry <kb@cs.umb.edu>
Kenneth Albanowski <kjahds@kjahds.com>
Marc J. Fraioli <fraioli@dg-rtp.dg.com>
Mark Elbrecht <snowball3@usa.net>
Mark Kettenis <kettenis@phys.uva.nl>
Mimi Burbank <mimi@scri.fsu.edu>
Oliver Guntermann <og@informatik.uni-hannover.de>

View File

@ -140,7 +140,7 @@ if test ! -f configure.in; then
fi
if cd $pkgdatadir && ls; then :
if (cd $pkgdatadir && ls); then :
else
echo "$progname: cannot list files in \`$pkgdatadir'" 1>&2
exit 1

View File

@ -590,9 +590,18 @@ if test "$with_gcc" = yes; then
link_static_flag='-static'
case "$host_os" in
aix3* | aix4* | beos* | irix5* | irix6* | osf3* | osf4*)
beos* | irix5* | irix6* | osf3* | osf4*)
# PIC is the default for these OSes.
;;
aix*)
# Below there is a dirty hack to force normal static linking with -ldl
# The problem is because libdl dynamically linked with both libc and
# libC (AIX C++ library), which obviously doesn't included in libraries
# list by gcc. This cause undefined symbols with -static flags.
# This hack allows C programs to be linked with "-static -ldl", but
# we not sure about C++ programs.
link_static_flag="$link_static_flag -Wl,-lC"
;;
cygwin32* | mingw32* | os2*)
# We can build DLLs from non-PIC.
;;
@ -1120,13 +1129,24 @@ else
;;
aix4*)
allow_undefined_flag=unsupported
archive_cmds='$NM $libobjs | $global_symbol_pipe | sed '\''s/.* //'\' | sort | uniq' > $lib.exp else cat $export_symbols > $lib.exp~
$CC -o $objdir/$soname $libobjs $deplibs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry~$AR cru $lib $objdir/$soname'
archive_sym_cmds='$CC -o $objdir/$soname $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bM:SRE ${wl}-bnoentry~$AR cru $lib $objdir/$soname'
allow_undefined_flag=
if test "$with_gcc" = yes; then
# collect2 in egcs and probably latest gcc has full support for
# -shared flag, so we feel much better.
archive_cmds='$CC -shared $thread_safe_flags -o $objdir/$soname $libobjs $deplibs'
else
archive_cmds='$NM $libobjs | $global_symbol_pipe | sed '\''s/.* //'\' | sort | uniq' > $lib.exp else cat $export_symbols > $lib.exp~
$CC -o $objdir/$soname $libobjs $deplibs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry'
archive_sym_cmds='$CC -o $objdir/$soname $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bM:SRE ${wl}-bnoentry'
fi
hardcode_direct=yes
hardcode_minus_L=yes
;;
# Though LIBPATH variable hardcodes shlibpath into executable,
# it doesn't affect searching for -l* libraries; this confuses
# tests in mdemo.
hardcode_shlibpath_var=unsupported
hardcode_libdir_flag_spec='-L$libdir'
;;
amigaos*)
archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
@ -1585,7 +1605,7 @@ deplibs_check_method='none'
# Notes: regexs are run through expr.
echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
case "$host_os" in
aix3* | aix4*)
aix3*)
version_type=linux
library_names_spec='${libname}${release}.so$versuffix $libname.a'
shlibpath_var=LIBPATH
@ -1594,6 +1614,18 @@ aix3* | aix4*)
soname_spec='${libname}${release}.so$major'
;;
aix4*)
version_type=linux
# AIX has no versioning support, so currently we can not hardcode correct
# soname into executable. Probably we can add versioning support to
# collect2, so additional links can be useful in future.
# We preserve .a as extension for shared libraries though AIX4.2
# and later linker supports .so
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
shlibpath_var=LIBPATH
deplibs_check_method=pass_all
;;
amigaos*)
library_names_spec='$libname.ixlibrary $libname.a'
# Create ${libname}_ixlibrary.a entries in /sys/libs.
@ -1805,13 +1837,17 @@ test "$can_build_shared" = "no" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
case "$host_os" in
aix*)
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
archive_cmds="$archive_cmds~\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
aix4*)
test "$enable_shared" = yes && enable_static=no
;;
esac
echo "$ac_t$enable_shared" 1>&6