<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 8, 2016 at 1:49 PM, Jason Gunthorpe <span dir="ltr"><<a href="mailto:jgunthorpe@obsidianresearch.com" target="_blank">jgunthorpe@obsidianresearch.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On Fri, Jan 08, 2016 at 12:46:35PM -0800, Jeff Hammond wrote:<br>
>      Apparently soon you'll be able to use clang as the language<br>
>      front end on windows:  <a href="http://www.theregister.co.uk/2015/10/21/microsoft_promises_clang_for_windows_in_november_visual_c_update/" rel="noreferrer" target="_blank">http://www.theregister.co.uk/2015/10/21/microsoft_promises_clang_for_windows_in_november_visual_c_update/</a><br>
><br>
>    I shared that link in my email.  I guess you stopped reading after the<br>
>    first paragraph :-)<br>
<br>
</span>No, I just don't render HTML emails in my mailing list reader so I<br>
didn't see your link, I thought you were talking about the new native<br>
windows support within clang.<span class=""><br></span></blockquote><div><br></div><div>Use a good mailing list reader on all platforms ;-)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">
>      Also, clang and gcc will both natively target windows now, and IIRC,<br>
>      there is even a way to just build windows DLLs straight from Linux<br>
>      with clang, so you can integrate with test infrastructure etc.<br>
>      Also, FWIW, RH supplies gcc 4.9 as an option on all their platforms<br>
>      now. Supporting a 'system' compiler is a really old fashioned<br>
>      idea. Use a good compiler on all platforms.<br>
><br>
>    Sorry, I'm not trying to be rude here, but I cannot help myself to not<br>
>    use the following meme. I know Squyres will enjoy it :-)<br>
<br>
</span>It has become an old fashioned idea because gcc and clang now nearly<br>
trivially cover a huge swath of cases people care about, and folks<br>
like RH have done the incredible, tedious, work to get new gcc's<br>
running on their old OSs, with the native system libraries.<br>
<br></blockquote><div>It's not a huge swath of cases.  It is a very large number of instances of a very small number of cases.  I suspect that your huge swatch of cases boils down to {Linux,BSD} x {x86(_64),ppc{32,64,64le},arm{32,64}}.  I guess there might be a mips or a sparc in there, but what you are really saying here is that you think two instantiations of POSIX represent the entirety of computing.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
There will always be boutique places that have a hard time keeping<br>
current. But they are special, and it isn't fair to the developers to<br>
let them externalize their costs upwards into the ecosystems.<br></blockquote><div><br></div><div>You're right.  libfabric should use as many features from C11 as possible and expect everyone whose machine doesn't have GCC 5.3 and Clang 3.8 on it to build their C compiler toolchain from source.  Let's make life miserable on everyone running Debian stable, CentOS 6.x, etc.  Let's punish these folks for having something better to do than upgrade their OS every Monday.</div><div><br></div><div>Additionally, all those supercomputer folks that were invited to contribute to the design of OFI back in 2014 (or was it 2013?), let's make sure to thank them for their time by waving an 18-inch foam middle finger in their face because they might not have the ability to install an unsupported compiler.</div><div><br></div><div>Heck, why not insist that everyone who wants to run libfabric run Gentoo!  Only losers let someone else build their OS for them...</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The low-cost route for botique cases is pretty clear - get the<br>
toolchain patches upstream. Yes that is hard, I sympathize, but not<br>
enough to take patches supporting old systems on my projects :)<br></blockquote><div> </div><div>The GCC community refused to accept the Blue Gene/P patches upstream.  The reason had nothing to do with the code, but some silliness related to a publicly available processor manual.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The old OFA effort to port the stack to Windows, IMHO, made a big<br>
mess. Ideologically requiring an old-at-the time MSVC compiler<br>
certainly contributed. Use a compiler that makes the port easy.<span class=""><font color="#888888"><br></font></span></blockquote><div><br></div><div>Why not just say "use an operating system that makes the port easy"?  It's completely ridiculous to argue that OS portability matters but compiler portability doesn't.  Be intellectually consistent and oppose the Windows port or stop discussing this issue altogether.</div><div><br></div><div>Jeff</div><div><br></div></div><div><br></div>-- <br><div class="gmail_signature">Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a></div>
</div></div>