[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FYI: 277-gary-rename-remaining-troublesome-ltdl-apis.diff
From: |
Ralf Wildenhues |
Subject: |
Re: FYI: 277-gary-rename-remaining-troublesome-ltdl-apis.diff |
Date: |
Wed, 26 Oct 2005 21:58:19 +0200 |
User-agent: |
Mutt/1.5.9i |
Hi Eric,
* Eric Blake wrote on Wed, Oct 26, 2005 at 05:11:57PM CEST:
> CVS head is currently broken on cygwin. It looks like the patch
> to rename lt_dlhandle_next to lt_dlhandle_iterate was incomplete.
Yep. And we see me goofing up once more: loadlibrary.c:vm_open()
really _has_ to iterate over _all_ modules. One could argue this to be
internal use, but we do rely on this now-undocumented detail of
lt_dlhandle_iterate here.
Now that I look at it, there's potential for more subtle breakage in
loadlibrary.c, but this one independent of our recent changes:
| /* Append a `.' to stop Windows from adding an
| implicit `.dll' extension. */
| searchname = MALLOC (char, 2+ LT_STRLEN (filename));
| if (searchname)
| sprintf (searchname, "%s.", filename);
...
| #if defined(__CYGWIN__)
| {
| char wpath[MAX_PATH];
| cygwin_conv_to_full_win32_path (searchname, wpath);
| module = LoadLibrary (wpath);
| }
| #else
| module = LoadLibrary (searchname);
| #endif
Does `cygwin_conv_to_full_win32_path' DTRT the right thing on cygwin
managed mounts? (Where The Right Thing[tm] is here defined as: do what
we expect it to :)
Cheers,
Ralf
> $ make CFLAGS='-g2 -Wall -Werror'
> ...
> make[2]: Entering directory `/home/eblake/libtool'
> depbase=`echo libltdl/loaders/loadlibrary.lo | sed
> 's|[^/]*$|.deps/&|;s|\.lo$||'`; \
> if /bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.
> -I. -DHAVE_CONFIG_H -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl
> -I./libltdl -I./libltdl/libltdl -g2 -Wall -Werror -MT
> libltdl/loaders/loadlibrary.lo -MD -MP -MF "$depbase.Tpo" -c -o
> libltdl/loaders/loadlibrary.lo libltdl/loaders/loadlibrary.c; \
> then mv -f "$depbase.Tpo" "$depbase.Plo"; else rm -f "$depbase.Tpo"; exit 1;
> fi
> libtool: compile: gcc -DHAVE_CONFIG_H -I. -I. -I. -DHAVE_CONFIG_H
> "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. -Ilibltdl -I./libltdl
> -I./libltdl/libltdl -g2 -Wall -Werror -MT libltdl/loaders/loadlibrary.lo -MD
> -MP -MF libltdl/loaders/.deps/loadlibrary.Tpo -c
> libltdl/loaders/loadlibrary.c -DPIC -o libltdl/loaders/.libs/loadlibrary.o
> libltdl/loaders/loadlibrary.c: In function `vm_open':
> libltdl/loaders/loadlibrary.c:164: warning: implicit declaration of function
> `lt_dlhandle_next'
> make[2]: *** [libltdl/loaders/loadlibrary.lo] Error 1