libtool-patches
[Top][All Lists]
Advanced

[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




reply via email to

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