summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-03-06 11:21:29 +0000
committerAlexandre Oliva <aoliva@redhat.com>2001-03-06 11:21:29 +0000
commitf767619267a81db3298ed9787b0c307c596d3808 (patch)
treefb8e11010a943d254382e7559a9c5a3301cffadf
parent79355b917f2a8b03d881b69bbb42c62b05be7694 (diff)
downloadlibtool-f767619267a81db3298ed9787b0c307c596d3808.tar.gz
* ltconfig.in (can_build_shared) [AIX 4.[01], GCC]: GCC up to
2.96 can't build shared libraries reliably. Disable them.
-rw-r--r--ChangeLog5
-rwxr-xr-xltconfig.in16
2 files changed, 20 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 18b62e73..ab14f63c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,7 @@
-2001-03-06 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
+2001-03-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * ltconfig.in (can_build_shared) [AIX 4.[01], GCC]: GCC up to
+ 2.96 can't build shared libraries reliably. Disable them.
* ltmain.in: When dropping dependencies of a -no-undefined
library, give up on building a shared library.
diff --git a/ltconfig.in b/ltconfig.in
index 45d8fb25..fbf4cb6a 100755
--- a/ltconfig.in
+++ b/ltconfig.in
@@ -1846,6 +1846,22 @@ aix4*)
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
shlibpath_var=LIBPATH
deplibs_check_method=pass_all
+ case $host_os in
+ aix4 | aix4.[01] | aix4.[01].*)
+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+ echo ' yes '
+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
+ :
+ else
+ # With GCC up to 2.95.x, collect2 would create an import file
+ # for dependence libraries. The import file would start with
+ # the line `#! .'. This would cause the generated library to
+ # depend on `.', always an invalid library. This was fixed in
+ # development snapshots of GCC prior to 3.0.
+ can_build_shared=no
+ fi
+ ;;
+ esac
;;
amigaos*)