* aclocal.m4 (KRB5_AC_GCC_ATTRS): On AIX 4, mark the destructor attribute as
authorKen Raeburn <raeburn@mit.edu>
Sun, 30 May 2004 20:06:15 +0000 (20:06 +0000)
committerKen Raeburn <raeburn@mit.edu>
Sun, 30 May 2004 20:06:15 +0000 (20:06 +0000)
always not working, until we can construct a good test for the order of
destructors in the multiple shared library case.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16378 dc483132-0cff-0310-8789-dd5450dbe970

src/ChangeLog
src/aclocal.m4

index 6cf887706055f64e1dc391b85e432f649615429d..632676843ddf45ba6496dc00de419951bb25d6c3 100644 (file)
@@ -1,3 +1,10 @@
+2004-05-30  Ken Raeburn  <raeburn@mit.edu>
+
+       * aclocal.m4 (KRB5_AC_GCC_ATTRS): On AIX 4, mark the destructor
+       attribute as always not working, until we can construct a good
+       test for the order of destructors in the multiple shared library
+       case.
+
 2004-05-04  Ken Raeburn  <raeburn@mit.edu>
 
        * configure.in: Generate a makefile in util/support.  Include
index 61cb2ef9f9db1921be2dba013ac7ab1b3ca80fc1..51664026fa4d4b993fa7d0979d2d872dee642e4c 100644 (file)
@@ -1602,6 +1602,19 @@ void foo2() { unlink("conftest.2"); }
 int main () { return 0; }],
 [test -r conftest.1 || a=yes
 test -r conftest.2 || b=yes], , AC_MSG_ERROR(Cannot test for constructor/destructor support when cross compiling))
+case $krb5_cv_host in
+*-*-aix4.*)
+       # Under AIX 4.3.3, at least, shared library destructor functions
+       # appear to get executed in reverse link order (right to left),
+       # so that a library's destructor function may run after that of
+       # libraries it depends on, and may still have to access in the
+       # destructor.
+       #
+       # That counts as "not working", for me, but it's a much more
+       # complicated test case to set up.
+       b=no
+       ;;
+esac
 krb5_cv_attr_constructor_destructor="$a,$b"
 ])
 # Okay, krb5_cv_... should be set now.