[patch] libcxx win32 support

G M gmisocpp at gmail.com
Tue Aug 27 17:56:02 PDT 2013


Nico

If you want to revert some of your change to effect what you are
suggesting, I've no problem with that and I did say that as well as point
out that most of my patch would be not needed if you wanted to do that. I
was just providing you a way should you not want to do that and continue in
whatever direction you were going. Go ahead and make any changes you like.
I could see some value either way so didn't want to try to dictate that.

There is a small part in my patch relating to CHAR_BIT etc. that is new and
necessary (I think) to support recent additions by marshall/howard as
libcxx itself hasn't been idle while the topic we are discussing has been
in play, but I can make those changes again after you revert/change
whatever of your original patch that you see fit now knowing what you know.
Same goes for my few "drive by fix" macro to function changes I made.

I'm sympathetic to getting you going on mingw, but reluctant to get into
the whole mingw build process because as I've also said already I'm simply
not experienced enough with it to be advising on it, It'd be like telling
you how to setup clang but directing you around the official site. The
website I already linked has all the info and people that should be able to
help you there.

I personally found the official process I am directing you to terse and
difficult such that in the end I just hacked mine together myself by luck
as much as judgement as such I'd prefer not to propagate it as I see
it largely as misinformation since it also reflects my inexperience with
things as much as the site and besides you might fair better going that
route and we can both learn something.

But also my on going interest in it just isn't here, partly because of what
I've just said and because it lacks mainstream support from this forum. I'm
actively in the process of trying to stop using it and Windows itself for
that matter and go Linux or apple. I want no dependency whatsoever on msvc
and therefore mingw. I'm just trying to restore things to a state somewhat
like they were before your change simply because I know it had an affect on
it. So getting tied up with this is a distraction I didn't want to have,
especially without more info.

As I mentioned before, regarding your linker error issues, depending on
what they actually are, undefined, or multiply defined symbols, and what
you are actually trying to link, linking errors should probably be expected
depending on what you already know to work / not work.

I often have to link with the option to ignore multiply-defined symbols
Even the "official" llvm/libcxx/mingw test case blurb does it! See:
http://libcxx.llvm.org/results.Windows.html

The link lines mentioned there may still be of use to you or it may also
just be wrong. It's quite dated. Again, the official mingw people might
shed light on that's why I come back to that. But FWIW I'm linking much
like the link in the test results page, though the actual test
result passes themselves are a lot better now than those shown.

But really I'm happy for you to revert/change whatever you want from your
previous commits now you know the situation and/or cherry pick out what you
want from my changes that get's you to a clean compile.

So hopefully you can see why I keep saying the linking issues may or
may not be relevant. They may signify things are no more broken than they
were previously. Reid may also be able to comment on that.

But it's also why I also keep saying that if you insist on (as you seem to)
in not telling me what your actual linking errors are nor what you actually
use to build, I don't see how I can help you? We're just going around in
circles.

Given the changes your making it would be useful if you could build in more
scenarios and I am sympathetic to helping you do that. It'd also be useful
since I'm not likely to be supporting or using my particular scenario
myself going forward, So that's another reason to get more information out
there on topic, subject to the caveats I've mentioned about it kind of
being misinformation,

But if you want some more help from me to get setup as you have asked for,
you have to tell me what OS system and tools you are building with and what
linker errors you actually see. Generally being a bit more informative in
this regard would be a help. From that, I may be able to see if my simple
batch jobs I use will help you..

BTW, which C library are you talking about for integrating with clang? Is
there are link to info on this you can share?

Thanks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130828/04457f85/attachment.html>


More information about the cfe-commits mailing list