RE: Libtool HEAD on Windows.

2008-03-03 Thread Duft Markus
Hi!

Ralf Wildenhues mailto:[EMAIL PROTECTED] wrote:
 * Duft Markus wrote on Mon, Mar 03, 2008 at 09:33:44AM CET:
 
[[...]]
 
 Still waiting for _something_...
 
 Sorry about being completely silent.  Your patch is intrusive in that
 it changes more than should be necessary, it changes code that should
 not be changed.  The ideal is: only libtool.m4 and ltdl.m4 contain
 system specifics, all other code is generic.  Now I know that we're
 far from this ideal, but every step further away is one that should be
 scrutinized.

Then Windows won't work, i think. I really need to add dllimport stuff
(which is ifdef'd out in first place, and which is there allready
partially for cygwin/mingw...) to c/h files. I tried to change as little
as possible anyway allready :(

I could throw away the changes to the loadlibrary loader, since the
dlopen interface which i implemented is used anyway.
I don't know if it would have any side effects on other software if
RTDL_GLOBAL is not defined. If not, then maybe i could remove the
definition for it to avoid the other ifdef.
As for beeing generic: all the locations where there is a switch/case on
the host, i have to insert winnt.

 
 Also, some of the testsuite changes look like they are papering over
 the failure rather than fix the issue.  The template.at changes fall
 into this category.

Hmm Here i had to add libraries to the command line for the linker
to find symbols. If this isn't desired i'll have to xfail or skip the
test, since i cannot link with unresolved symbols on windows.

 
 Last but not least, I don't know if you noticed that Libtool was in
 regression fixes mode up to the 2.2 release (yeah, I know it was an
 ugly long time).  Given limited time, I for one simply ignored
 everything that wasn't fixing a regression or easy to verify as safe.

No, i didn't notice that... 

 
 I might give a detailed review on your patch, but that may be some
 days. 

Thats absolutely no problem, now that i have some status :)

Thanks for the (now) fast answer :)

Cheers, Markus

 
 Cheers,
 Ralf





RE: Libtool HEAD on Windows.

2008-02-25 Thread Duft Markus
Hi!

Duft Markus  wrote:
 Hi!
 [...]
 
 Attached is both a log for configure/build and the complete testsuite,
 and a patch against current HEAD.

Has anybody looked into this yet? I'm afraid this won't apply anymore
when it's finally reviewed.

Cheers, Markus

 
 2008-02-12  Markus Duft [EMAIL PROTECTED]
 
 Implemented support for *-winnt*, which is the parity
 compiler for windows (http://www.sf.net/projects/parity):
 
 * libltdl/config/ltmain.m4sh: recognize winnt as Windows OS,
 specially handle parity compiler (force C++), don't handle
 .exe extensions like on cygwin and mingw, but like on UNIX.
 Disable the use of reloadable objects (not supported).
 * libltdl/libltdl/lt_system.h: Only define R_OK if it's not
 allready defined elsewhere on Windows.
 * libltdl/loaders/dlopen.c: Don't use RTLD_GLOBAL with parity.
 * libltdl/loaders/loadlibrary.c: In case LoadLibrary is used
 instead of dlopen, convert paths to windows-style for the
 Windows API's (dlopen does this otherwise).
 * libltdl/m4/argz.m4: Windows (parity) has no argz support.
 * libltdl/m4/libtool.m4: Added winnt support.
 * libltdl/m4/ltdl.m4: On winnt dlopen opens deplibs.
 * tests/configure-iface.at: Fix output for testsuite.
 * tests/ctor.at: Use dllimport for correct link.
 * tests/destdir.at: Add $EXEEXT to output filenames.
 * tests/duplicate_conv.at: Don't execute the part of the test
 that relies on reloadable objects (not supported).
 * tests/export.at: Need explicit export of uninitialized data,
 use the LIBA_SCOPE define instead of extern.
 * tests/link-order.at: Use dllimport for correct link.
 * tests/link-order2.at: XFAIL on winnt. Windows has no RTL.
 * tests/lt_dladvise.at: Fix output for testsuite. Use
 dllimport for correct link. Don't test undefined symbols.
 * tests/lt_dlexit.at: Use dllimport for correct link.
 * tests/need_lib_prefix.at: Fix output for testsuite.
 * tests/stresstest.at: Need explicit export of uninitialized
 data, use the LIBA_SCOPE define instead of extern. link the
 main-static object only when -static is given.
 * tests/template.at: Add dependent libs to link line. There
 is no support for undefined symbols on winnt.
 * tests/testsuite.at: the *_EXEC_CHECK macros know of $EXEEXT
 * tests/demo/foo.c tests/demo/foo.h tests/depdemo/l1/l1.c
 tests/depdemo/l1/l1.h tests/depdemo/l2/l2.c
 tests/depdemo/l2/l2.h tests/depdemo/l3/l3.c
 tests/depdemo/l3/l3.h tests/depdemo/l4/l4.c
 tests/depdemo/l4/l4.h: Use dllimport for correct link.
 * tests/mdemo/foo1.c tests/mdemo/foo2.c: Initialize global
 data, otherwise dllexport would be required.
 * tests/pdemo/foo.h tests/pdemo/longer_file_name_foo.c: Use
 dllimport for correct link.
 
 I hope that's everything you need, otherwise just tell me.
 
 Cheers, Markus