libtool
[Top][All Lists]
Advanced

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

Re: mulit-language-branch BUG: circular macro dependencies


From: Pavel Roskin
Subject: Re: mulit-language-branch BUG: circular macro dependencies
Date: Wed, 18 Oct 2000 22:51:34 -0400 (EDT)

Hello, Robert!

> I am using the mulit-language-branch of CVS libtool with
> the CVS sources of autoconf and automake.  About a week or two ago

CVS version of autoconf now supports detection of circular dependencies.
The HEAD branch of libtool is affected as well (libltdl/configure.in only)

> somthing changed in one of these packages to make autoconf fail.
> Now autoconf complains about circular dependencies

Autoconf has been improved :-)

> icarus::/icarus/OCC/OCC (112)% autoconf -v

That's strange. For me, only tagdemo/configure.in and libltdl/configure.in
have circular dependencies. The top level is Ok.

> configure.in:16: warning: AC_PROG_CPP was called before AC_PROG_CC
> configure.in:20: AC_REQUIRE: circular dependency of AC_PROG_LIBTOOL
> configure.in:20: AC_PROG_LIBTOOL is required by...
> ./aclocal.m4:1233: _AC_LIBTOOL_CXX is expanded from...
> configure.in:20: _AC_LIBTOOL_CXX is required by...
> ./aclocal.m4:1207: AC_LIBTOOL_CXX is expanded from...
> ./aclocal.m4:495: AC_PROG_LIBTOOL is expanded from...
> configure.in:20: the top level

My understanding is that AC_PROG_LIBTOOL in the ml-branch tries to fool
autoconf and gets caught by the new dependency tracking code.

Concerning libltdl/configure.in, there is indeed a loop:

configure.in:36: AC_LTDL_SYMBOL_USCORE is required by...
./aclocal.m4:1265: AC_LTDL_DLSYM_USCORE is expanded from...
./aclocal.m4:1203: AC_LTDL_SYMBOL_USCORE is expanded from...

which means that AC_LTDL_SYMBOL_USCORE calls AC_LTDL_DLSYM_USCORE which
requires AC_LTDL_SYMBOL_USCORE.

Either AC_LTDL_DLSYM_USCORE should be made private
(_LT_AC_LTDL_DLSYM_USCORE) and the AC_REQUIRE should be dropped, or
AC_LTDL_SYMBOL_USCORE should be split into two parts, and
AC_LTDL_DLSYM_USCORE should require the first part that defines
$ac_cv_sys_symbol_underscore

I don't know how important is it to call AC_LTDL_DLSYM_USCORE
independently, so I cannot choose the best solution.

> and everything else works fine.  When I first saw the dependency
> problems, I tried to find a loop in the dependencies, but I didn't
> see one.  Could someone comment on what happened?

I'm afraid that you are trying to find a problem on the top level that
actully sits in the subdirs.

Regards,
Pavel Roskin




reply via email to

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