patchGNU Libtool - Patches: patch #6448, [MSVC 7/7] Add MSVC Support

 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #6448: [MSVC 7/7] Add MSVC Support

Submitter:  Peter Rosin <pekberg>
Submitted:  Tue 04 Mar 2008 10:04:53 AM UTC
   
 
Category:  None Priority:  5 - Normal
Status:  None Privacy:  Public
Assigned to:  None Open/Closed:  Open

Jump to the original submission

Wed 09 Sep 2009 06:31:45 AM UTC, comment #8: 

Ok, I see. So we need a working version of cccl or a replacement. I try to make a deeper look into this issue.

Matthias Pleh <nocide>
Tue 08 Sep 2009 07:01:47 PM UTC, comment #7: 

Hi Matthias!

Ok, I have tried that cccl script, but it still fails miserably to even build libtool. So naturally I have no testsuite results. The failure looks the same (on a cursory look) on master and on the pr-msvc-support branch so I do not appear to have made things worse...

This cccl script is not targeting MSYS (it uses single forward slashes) and can therefore only be used from cygwin. It is also a fact that this cccl script uses cygpath to convert incoming posix paths to windows paths, which libtool is also doing when cccl is detected on cygwin. That looks like a major incompatibilty to me. The provided ccclibtool wrapper isn't improving things for me.

I still need someone to show me a recipe for how to build libtool with (some incarnation of) cccl.

Cheers,
Peter

Peter Rosin <pekberg>
Group Member
Tue 08 Sep 2009 01:53:34 PM UTC, comment #6: 

Peter, you have mentioned, that you wanted to test this path with cccl, but doesn't worked for you. I don't know if this is still an issue but there exists a new patch for cccl mentioned on this site: http://folti.blogs.balabit.com/2009/08/compiling-autoconfmake-using-sources.html
source code can be downloaded from
$ git clone git://git.balabit.hu/folti/cccl.git

I hope this helps to improve the MSVC support, because for now this is a must have to introduce the use of open source libraries in our company!

Cheers,
Matthias


Matthias Pleh <nocide>
Sun 09 Mar 2008 06:29:17 PM UTC, comment #5: 

Thanks! But don't hesitate to report back if you don't have any issues... :-)

Cheers,
Peter

Peter Rosin <pekberg>
Group Member
Sun 09 Mar 2008 05:49:21 PM UTC, comment #4: 

Peter, I've installed that patched libtool system-wide on gentoo/x86_64 laptop on which I'm doing my current gstreamer development, I'll be re-libtool everything with it and will report any issues.

Edward Hervey <bilboed>
Sat 08 Mar 2008 11:19:10 PM UTC, comment #3: 

Thanks very much for the feedback,

I'm glad to hear about the success! Previously there has been requests to test how this patch series behaves on other systems (which are not supposed to be affected). So, you can help by checking for regressions on whatever other systems you have available.

In particular, testing for regressions using the cccl script was requested, but I failed to get cccl to do anything useful in the libtool context. So, any cccl user out there could also help with testing.

I think the lib-as-archiver patches (i.e. 1/7 and 6/7) are the most intrusive in the series and they should perhaps be held back. IIRC, the patches work well with AR=ar as well, so that would not hinder using MSVC as the compiler/linker. You can test that as well, if you like. Leaving out AR=lib should be equivalent to saying AR=ar.

Cheers,
Peter

Peter Rosin <pekberg>
Group Member
Sat 08 Mar 2008 06:09:26 PM UTC, comment #2: 

Hi, I'd like to give my feedback on these 7 patches (applied against trunk svn).

They work amazingly well, I have been compiling gstreamer and dependencies under msys using msvc... and I had to remove all the 'hacks' I previously added to the makefiles to make it compile properly.

Apart from being libtool-ized, they don't require ANY makefile/configure modification to be compiled with msvc under msys (thanks for fixing all the cygwin vs msys issues also).

Awesome work ! I don't know what more is needed to push these patches in, if you need more feedback, logs, etc... please ask.


Edward Hervey <bilboed>
Tue 04 Mar 2008 10:23:47 AM UTC, comment #1: 

I have no problems with this patch series on either mingw, nor
cygwin.

I have not found a functioning cccl to test with. I have tried
both cccl 0.03 as found on sf.net and cccl 0.05 as found on
http://tsunanet.net/~tsuna/cccl

Niether cccl can even build libtool. I have tried to patch
around the first few problems in cccl, but I can't see why
I should fix cccl in order to check if it these patches
break cccl. cccl is seriously broken, or please point me
to a version of cccl that I should use.

(I used cygwin and ../configure CC=cccl CXX=cccl LD=cccl F77=no FC=no GCJ=no)


Annotated testsuite with these patches:

On MSYS and MSVC 12.00.8804 (MSVC 6) with:
../configure CC=cl CFLAGS=-MD CXX=cl CXXFLAGS=-MD LD=link NM="dumpbin -symbols" AR=lib STRIP=: RANLIB=: F77=no FC=no

The problems with the exported variables can be solved with the
right amount of declspecs. I will not work on the other problems
until basic MSVC support is commited.

PASS: tests/link.test
PASS: tests/link-2.test
PASS: tests/nomode.test
PASS: tests/objectlist.test
PASS: tests/quote.test
PASS: tests/sh.test
PASS: tests/suffix.test
SKIP: tests/tagtrace.test
PASS: tests/cdemo-static.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-static.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-inst.test
PASS: tests/demo-unst.test
PASS: tests/depdemo-static.test
PASS: tests/depdemo-make.test
PASS: tests/depdemo-exec.test
PASS: tests/depdemo-inst.test
PASS: tests/depdemo-unst.test
PASS: tests/mdemo-static.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/cdemo-conf.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-conf.test
FAIL: tests/demo-make.test (exported variable, remove it fixes it)
SKIP: tests/demo-exec.test
SKIP: tests/demo-inst.test
SKIP: tests/demo-unst.test
FAIL: tests/demo-deplibs.test (assumes oldlibs are named lib???.a)
PASS: tests/depdemo-conf.test
FAIL: tests/depdemo-make.test (exported variables, remove them fixes it)
SKIP: tests/depdemo-exec.test
SKIP: tests/depdemo-inst.test
SKIP: tests/depdemo-unst.test
PASS: tests/mdemo-conf.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/mdemo-dryrun.test
PASS: tests/mdemo2-conf.test
PASS: tests/mdemo2-make.test
PASS: tests/mdemo2-exec.test
PASS: tests/pdemo-conf.test
FAIL: tests/pdemo-make.test (link can't create reloadable object files (-r))
SKIP: tests/pdemo-exec.test
SKIP: tests/pdemo-inst.test
PASS: tests/demo-nofast.test
FAIL: tests/demo-make.test (exported variable, remove it fixes it)
SKIP: tests/demo-exec.test
SKIP: tests/demo-inst.test
SKIP: tests/demo-unst.test
PASS: tests/depdemo-nofast.test
FAIL: tests/depdemo-make.test (exported variables, remove them fixes it)
SKIP: tests/depdemo-exec.test
SKIP: tests/depdemo-inst.test
SKIP: tests/depdemo-unst.test
PASS: tests/demo-pic.test
FAIL: tests/demo-make.test (exported variable, remove it fixes it)
SKIP: tests/demo-exec.test
PASS: tests/demo-nopic.test
FAIL: tests/demo-make.test (exported variable, remove it fixes it)
SKIP: tests/demo-exec.test
PASS: tests/cdemo-shared.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-shared.test
FAIL: tests/demo-make.test (exported variable, remove it fixes it...)
SKIP: tests/demo-exec.test
SKIP: tests/demo-inst.test
SKIP: tests/demo-hardcode.test (...but fails here, using $CC w/o going through libtool)
SKIP: tests/demo-relink.test
SKIP: tests/demo-noinst-link.test
SKIP: tests/demo-unst.test
PASS: tests/depdemo-shared.test
FAIL: tests/depdemo-make.test (exported variables, remove them fixes it)
SKIP: tests/depdemo-exec.test
SKIP: tests/depdemo-inst.test
SKIP: tests/depdemo-relink.test
SKIP: tests/depdemo-unst.test
PASS: tests/mdemo-shared.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/cdemo-undef.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/tagdemo-static.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-conf.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-shared.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-undef.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
====================================
10 of 79 tests failed
(27 tests were not run)
Please report to -email is unavailable-
====================================

Peter Rosin <pekberg>
Group Member
Tue 04 Mar 2008 10:04:53 AM UTC, original submission:  

Add MSVC support. Some of this stuff would probably benefit
cccl, but I don't know what...
This patch is against Libtool 2.2

  • libltdl/m4/libtool.m4: Add support for Microsoft Visual C.
  • NEWS: Add note of the above.


Peter Rosin <pekberg>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #18111:  msvc.patch added by bjeverts (12KiB - text/plain - Attaching a version of the patch forward ported to 2.2.6a)
file #15176:  msvc.patch added by pekberg (12KiB - text/plain)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by nocide (Posted a comment)
  • -email is unavailable- added by bjeverts
  • -email is unavailable- added by bjeverts (Updated the item)
  • -email is unavailable- added by bilboed (Posted a comment)
  • -email is unavailable- added by pekberg (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2009-05-07 bjeverts Carbon-Copy- Added bjeverts
    2009-05-07 bjeverts Attached File- Added msvc.patch, #18111
    2008-03-04 pekberg Attached File- Added msvc.patch, #15176

    Back to the top

    Powered by Savane 3.14-8eb0.
    Corresponding source code