[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Windows Line Endings
From: |
Gary V. Vaughan |
Subject: |
Re: Windows Line Endings |
Date: |
Sat, 6 Oct 2012 12:58:01 +0700 |
Hi Peter,
On 6 Oct 2012, at 06:20, Peter Rosin <address@hidden> wrote:
> Over to mdemo.at. It fails on MinGW because I do not have
> any installed libltdl in MinGW. Temporarily moving the
> installed Cygwin libltdl out of the lib search path makes
> the test fail on Cygwin as well. So, I believe this is
> a generic failure.
Nice catch! And thanks for the analysis, that allowed me to get to the root
of the problem pretty quickly:
Legacy mdemo{,2} tests tricked their respective builds into reusing the main
project's libltdlc.la, where I tried to retool the replacement Autotest to
do what a user would do and use the project's own ltdl subproject. Only I
didn't remove all of the trickery while rewriting the test :-(
> Without an installed libltdl, I get this
> during configure:
>
> checking where to find libltdl headers... -I$(top_srcdir)/libltdl
> checking where to find libltdl library...
> $(top_build_prefix)libltdl/libltdlc.la
>
> and this when making:
>
> ../../libtool-msvc/tests/mdemo.at:646: $unset LIBTOOL LIBTOOLIZE; $MAKE
> $target
> stderr:
> Makefile:1090: warning: overriding commands for target `libltdl/libltdlc.la'
> Makefile:573: warning: ignoring old commands for target `libltdl/libltdlc.la'
> Makefile:1090: warning: overriding commands for target `libltdl/libltdlc.la'
> Makefile:573: warning: ignoring old commands for target `libltdl/libltdlc.la'
> libtool: link: cannot find the library `libltdl/libltdlc.la' or unhandled
> argument `libltdl/libltdlc.la'
> make[1]: *** [libmlib.la] Error 1
This means LTDL_INIT is finding the ltdl subtree, but I forgot to remove the
Makefile.am trickery to point $(LIBLTDL) back to $(top_srcdir)/libltdl.
> On Cygwin, with the installed libltdl intact, I get this during
> configure:
>
> checking where to find libltdl headers...
> checking where to find libltdl library... -lltdl
>
> (and the test is ok, in so far one can consider using the
> installed libltdl ok...)
And I also forgot to pass --with-included-ltdl to configure :(
> I'm also noting that some time ago, mdemo had this in it's
> Makefile.am:
>
> ## use @LIBLTDL@ because some broken makes do not accept macros in targets
> ## we can only do this because our LIBLTDL does not contain ${top_builddir}
> top_distdir = ../..
> @LIBLTDL@: $(top_distdir)/libtool \
> $(top_distdir)/config.h $(srcdir)/$(top_distdir)/libltdl/ltdl.c \
> $(srcdir)/$(top_distdir)/libltdl/ltdl.h
> (cd $(top_distdir); $(MAKE) `echo $(LIBLTDL) | sed
> 's,.*\.\./libltdl/,libltdl/,g'`)
>
> but somewhere along the way, that comment was removed, probably at
> the same time @LIBLTDL@ was converted into $(LIBLTDL). Anyway,
> mdemo.at has this:
>
> \$(LIBLTDL): ${top_build_prefix}libtool \
> ${top_build_prefix}config.h $top_srcdir/libltdl/ltdl.c \
> $top_srcdir/libltdl/ltdl.h
> cd $top_build_prefix; \$(MAKE) \`echo \$(LIBLTDL) | sed
> 's|.*\.\./\.\./libltdl/|libltdl/|g'\`
>
> But the second line of the removed comment seems crucial and
> as our $(LIBLTDL) is not the expected "libltdl/libltdlc.la",
> Automake is fooled into creating two targets for the same
> file. Or something.
Something. This is the trickery I'm talking about, which needs removing
to let mdemo.at use it's own libltdl.
> Also, the old mdemo had LTDL_CONVENIENCE([../../libltdl]), and the
> new mdemo.at have LT_CONFIG_LTDL_DIR([libltdl]) and
> LTDL_INIT([nonrecursive]), which does not seem entirely equivalent?
Right, because I tried to convert from reusing top-level libltdlc.la to
actually building our own subproject libltdl per-test.
> I don't have enough autofuu to fix this.
I've pushed a patch that fixes all of the above. Pending as-yet-undiscovered
Windows madness, I think that should allow the test to work on your test
environments too.
Cheers,
--
Gary V. Vaughan (gary AT gnu DOT org)
- Windows Line Endings [WAS Re: [SCM] GNU Libtool branch, master, updated. v2.4.2-273-ge24f183], (continued)
- Windows Line Endings [WAS Re: [SCM] GNU Libtool branch, master, updated. v2.4.2-273-ge24f183], Gary V. Vaughan, 2012/10/05
- Re: Windows Line Endings [WAS Re: [SCM] GNU Libtool branch, master, updated. v2.4.2-273-ge24f183], Eric Blake, 2012/10/05
- Re: Windows Line Endings, Gary V. Vaughan, 2012/10/05
- Re: Windows Line Endings, Bob Friesenhahn, 2012/10/05
- Re: Windows Line Endings, Gary V. Vaughan, 2012/10/05
- Re: Windows Line Endings, Charles Wilson, 2012/10/06
- Re: Windows Line Endings [WAS Re: [SCM] GNU Libtool branch, master, updated. v2.4.2-273-ge24f183], Peter Rosin, 2012/10/05
- Re: Windows Line Endings, Peter Rosin, 2012/10/05
- Re: Windows Line Endings, Gary V. Vaughan, 2012/10/06
- Re: Windows Line Endings, Peter Rosin, 2012/10/06
- Re: Windows Line Endings,
Gary V. Vaughan <=
- Re: Windows Line Endings, Peter Rosin, 2012/10/06
- Re: Windows Line Endings, Roumen Petrov, 2012/10/07
- Re: Windows Line Endings, Peter Rosin, 2012/10/08
- Re: Windows Line Endings, Roumen Petrov, 2012/10/08
- Re: Windows Line Endings, Peter Rosin, 2012/10/09
- Re: Windows Line Endings, Roumen Petrov, 2012/10/09
- Re: Windows Line Endings, Bob Friesenhahn, 2012/10/09
- Re: Windows Line Endings, Peter Rosin, 2012/10/10
- Re: Windows Line Endings, Gary V. Vaughan, 2012/10/06
- Re: Windows Line Endings, Gary V. Vaughan, 2012/10/06