<br><br><div class="gmail_quote">On Tue, Aug 24, 2010 at 1:05 PM, Howard Hinnant <span dir="ltr"><<a href="mailto:hhinnant@apple.com">hhinnant@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div class="h5">On Aug 24, 2010, at 12:02 PM, Fernando Pelliccioni wrote:<br>
<br>
> On Tue, Aug 24, 2010 at 11:57 AM, Howard Hinnant <<a href="mailto:hhinnant@apple.com">hhinnant@apple.com</a>> wrote:<br>
> On Aug 24, 2010, at 8:03 AM, Fernando Pelliccioni wrote:<br>
><br>
> > Hi,<br>
> ><br>
> > I am trying to compile LibC++ on WinXP (32) using MinGW (GCC 4.6).<br>
> ><br>
> > I've seen some extensions are used, as the "xlocale.h", which makes it difficult to compile in Windows using MinGW. No way to use MSVC.<br>
> ><br>
> > I wonder..., What is the goal of the creators of Clang and LibC++ in terms of portability? Is there any reason why Windows should not be supported? Or just a matter of time, is started by the Unix-Like operating systems?<br>

> ><br>
> > I would like to contribute to the project, to make Clang and LibC++, in the future, the default compiler C++ for almost any platform.<br>
><br>
> I can speak for libc++:  libc++ is meant to be a high quality open source C++ standard library.  The initial implementation has been targeted straight at Apple's platforms, with the notion that it should take advantage of the underlying OS when available and where appropriate (e.g. <xlocale.h>).  One of the reasons for open sourcing this code however is so that others are free to port libc++ to other platforms where they can take advantage of other OS's features.<br>

><br>
> Porting <locale> is going to require significant effort and knowledge of the target OS, unless it is acceptable to the porters to support only a minimum "C" locale.  Such minimal support was not acceptable to me for the Apple platforms.<br>

><br>
> At no time has it been envisioned that every line of code in libc++ shall be portable.  Instead it is envisioned that libc++ will have to be adapted to different OS's to make the most out of each OS.  The goal of any C++ standard library should be to (when necessary) consist of non-portable code so that its clients don't have to write non-portable code.  Naturally though, libc++ code should not be gratuitously non-portable.<br>

><br>
> -Howard<br>
><br>
><br>
> Thanks Howard,<br>
><br>
> You said that libc++ is open for others to implement it on other platforms.<br>
> Did you mean that these other implementations should be separated from libc++?.<br>
> Or these implementations can be included in the libc++ code? (A single library with conditional compilation according to platform).<br>
<br>
</div></div>I meant the latter.  There is already evidence in <__config> (<a href="http://llvm.org/svn/llvm-project/libcxx/trunk/include/__config" target="_blank">http://llvm.org/svn/llvm-project/libcxx/trunk/include/__config</a>) of people contributing to non-Apple platforms.<br>

<div class="im"><br></div></blockquote><div><br>Great !!!<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">
><br>
> I offer my time to try to make libc++ cross-platform.<br>
<br>
</div>That's very generous of you, thanks!<br></blockquote><div><br></div></div><span id="result_box" class="short_text"><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0);" title="">What is the process to become a developer of the project?<br>
<br>Regards,<br>Fernando.<br><br><br></span></span>