Hallo Ralf!

On 22 Aug 2005, at 21:04, Ralf Wildenhues wrote:
* Gary V. Vaughan wrote on Mon, Aug 22, 2005 at 09:17:50PM CEST:
Ralf Wildenhues wrote:
Another regression: on GNU/Linux, after bootstrap, configure, make:
make[2]: *** No rule to make target `dlopen.la', needed by `libltdl/libltdl.la'. Stop.

I can't reproduce this using either VPATH or in-directory bootstraps
on either Gentoo-2005.0 or Mac OS 10.4.2.  Are you sure you haven't
got .deps files from previous bootstraps lying around?

Yep.  I just tried a fresh CVS checkout + your patch.

How peculiar :-(

I would have expected to see:

make[2]: *** No rule to make target `libltdl/dlopen.la', needed by
`libltdl/libltdl.la'.  Stop.


Well, looking at ltdl.m4, I don't see how this could work:
[ in $top_builddir ]

$ grep DLLOAD Makefile
LT_DLLOADERS =  dlopen.la
noinst_LTLIBRARIES = $(LT_DLLOADERS) $(am__append_1)
libltdl_libltdl_la_DEPENDENCIES = $(LT_DLLOADERS) $(LTLIBOBJS)

For me:

] cd +build
] grep DLLOAD Makefile
LT_DLLOADERS =  libltdl/dlopen.la
noinst_LTLIBRARIES = $(LT_DLLOADERS) $(am__append_1)
libltdl_libltdl_la_DEPENDENCIES = $(LT_DLLOADERS) $(LTLIBOBJS)

$ grep dlopen\\.la Makefile
LT_DLLOADERS =  dlopen.la
LT_DLPREOPEN = -dlpreopen dlopen.la
EXTRA_LTLIBRARIES = libltdl/dlopen.la \
libltdl/dlopen.la: $(libltdl_dlopen_la_OBJECTS) $ (libltdl_dlopen_la_DEPENDENCIES) libltdl/$(am__dirstamp)

] grep dlopen\\.la Makefile
LT_DLLOADERS =  libltdl/dlopen.la
LT_DLPREOPEN = -dlpreopen libltdl/dlopen.la
EXTRA_LTLIBRARIES = libltdl/dlopen.la \
libltdl/dlopen.la: $(libltdl_dlopen_la_OBJECTS) $ (libltdl_dlopen_la_DEPENDENCIES) libltdl/$(am__dirstamp)

Now, LT_DLLOADERS should be `libltdl/dlopen.la' in the toplevel Makefile
but `dlopen.la' in libltdl/Makefile.  Similarly, LT_DLPREOPEN should
contain `-dlpreopen libltdl/dlopen.la' in the former, and `-dlpreopen
dlopen.la' in the latter.

] cd libltdl
] ../../libltd/configure
...
config.status: creating Makefile
...
] grep DLLOAD Makefile
LT_DLLOADERS =  dlopen.la
noinst_LTLIBRARIES = $(LT_DLLOADERS) $(am__append_1)
libltdl_la_DEPENDENCIES = $(LT_DLLOADERS) $(LTLIBOBJS)
] grep dlopen\\.la Makefile
LT_DLLOADERS =  dlopen.la
LT_DLPREOPEN = -dlpreopen dlopen.la
EXTRA_LTLIBRARIES = dlopen.la \
dlopen.la: $(dlopen_la_OBJECTS) $(dlopen_la_DEPENDENCIES)

All seems to be fine here :-(

Please compare your tree with my distcheck generated tarball from:
http://tkd.kicks-ass.net/dist/libtool-2.1a.tar.gz

I don't see any code generating this.

configure.ac:
...
LTDL_INIT([libltdl])
...

libltdl/configure.ac:
...
LTDL_INIT
...

ltdl.m4:
...
# LTDL_INIT([DIRECTORY])
# ----------------------
# Perform all the checks necessary for compilation of the ltdl objects
#  -- including compiler checks and header checks.
AC_DEFUN([LTDL_INIT],
[m4_if([$#], 1, [m4_divert_push([DEFAULTS])dnl
# libltdl will be built in the named DIRECTORY, relative to $top_builddir.
lt_ltdl_dir='$1'
...
# LT_LIB_DLLOAD
# -------------
AC_DEFUN([LT_LIB_DLLOAD],
[m4_pattern_allow([^LT_DLLOADERS$])
LT_DLLOADERS=
AC_SUBST([LT_DLLOADERS])
...
AC_CHECK_LIB([dl], [dlopen],
        [AC_DEFINE([HAVE_LIBDL], [1],
[Define if you have the libdl library or equivalent.])
        LIBADD_DLOPEN="-ldl" libltdl_cv_lib_dl_dlopen="yes"
        LT_DLLOADERS="$LT_DLLOADERS ${lt_ltdl_dir}dlopen.la"],
...

What makes me wonder is how you cannot reproduce this.. are both of
those variables empty for you?  If so, why (not having dlopen.la on
GNU/Linux would be a bug)?

Maybe cvs diff is not generating a complete patch, or it is not applying
to your tree correctly because of the file moves?

Cheers,
    Gary.
--
Gary V. Vaughan ())_. gary@ {lilith.warpmail.net,gnu.org},[EMAIL PROTECTED]
Research Scientist   ( '/   http://www.tkd.kicks-ass.net
GNU Hacker           / )=   http://www.gnu.org/software/{libtool,m4}
Technical Author   `(_~)_   http://sources.redhat.com/autobook



Attachment: PGP.sig
Description: This is a digitally signed message part

Reply via email to