libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 2.2.6: libltdlcS.c:22: error: 'lt_ptr' undeclared here (not in a


From: Ralf Wildenhues
Subject: Re: 2.2.6: libltdlcS.c:22: error: 'lt_ptr' undeclared here (not in a function)
Date: Thu, 20 Nov 2008 07:14:33 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

[ moving from bug-libtool ]

* Ralf Wildenhues wrote on Mon, Nov 17, 2008 at 10:42:09PM CET:
> * Akim Demaille wrote on Mon, Nov 17, 2008 at 09:38:56PM CET:
> >
> > Actually, grepping inside my original 2.2.6 tarball does find quite a  
> > few lt_ptr (and not only in the changelog).  It appears mainly in  
> > various aclocal.m4, including the main one.
> 
> Confirmed.  Well, that sucks.
> 
> Looks like we should produce a new Libtool tarball soonish, that doesn't
> have these flaws.  :-/

I suppose the bug stems from some removed or renamed macro for which
aclocal still finds calling instances in our code (inside comments or
so), and we've forgotten to put them in lt~obsolete.m4.

I haven't analysed the failure that led to 2.2.6b yet, but I'm pushing
this patch which should help prevent that from happening next time.

Cheers,
Ralf

        Check for bogus aclocal.m4 contents in bootstrap and dist-hook.

        * Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
        contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
        definitions.  These can only come from bogus pull-ins from older
        installed Libtool macro files.
        * bootstrap: Likewise.
        Report by Akim Demaille.

diff --git a/Makefile.am b/Makefile.am
index 8b19ea5..a09ed3d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -433,6 +433,13 @@ dist-hook:
        case $(VERSION) in \
          *[a-z]) cp -p $(srcdir)/README.alpha $(distdir)/README ;; \
        esac; else :; fi
+## Ensure aclocal has not wrongly picked up old macro definitions.
+       for macro in LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL; do \
+         if grep $$macro $(srcdir)/aclocal.m4 $(srcdir)/libltdl/aclocal.m4; 
then \
+           echo "Bogus $$macro macro contents in an aclocal.m4 file." >&2; \
+           exit 1; \
+         else :; fi; \
+       done
 
 
 ## ----------- ##
diff --git a/bootstrap b/bootstrap
index 8ce6ac7..f8b44c1 100755
--- a/bootstrap
+++ b/bootstrap
@@ -183,6 +183,13 @@ rm -f Makefile libltdl/Makefile libtool vcl.tmp
 # to be regenerated at make-time with proper substitutions in place:
 touch $auxdir/ltmain.m4sh
 
+for macro in LT_INIT AC_PROG_LIBTOOL AM_PROG_LIBTOOL; do
+  if grep $macro aclocal.m4 libltdl/aclocal.m4; then
+    echo "Bogus $macro macro contents in an aclocal.m4 file." >&2
+    exit 1
+  else :; fi
+done
+
 # Commit script caveat:
 cat <<EOF
 WARNING: You might want to regenerate \`commit' and \`$auxdir/mailnotify'




reply via email to

[Prev in Thread] Current Thread [Next in Thread]