[ofiwg] ofiwg item: supporting other OS's
Jason Gunthorpe
jgunthorpe at obsidianresearch.com
Fri Jan 8 13:49:59 PST 2016
On Fri, Jan 08, 2016 at 12:46:35PM -0800, Jeff Hammond wrote:
> Apparently soon you'll be able to use clang as the language
> front end on windows: http://www.theregister.co.uk/2015/10/21/microsoft_promises_clang_for_windows_in_november_visual_c_update/
>
> I shared that link in my email. I guess you stopped reading after the
> first paragraph :-)
No, I just don't render HTML emails in my mailing list reader so I
didn't see your link, I thought you were talking about the new native
windows support within clang.
> Also, clang and gcc will both natively target windows now, and IIRC,
> there is even a way to just build windows DLLs straight from Linux
> with clang, so you can integrate with test infrastructure etc.
> Also, FWIW, RH supplies gcc 4.9 as an option on all their platforms
> now. Supporting a 'system' compiler is a really old fashioned
> idea. Use a good compiler on all platforms.
>
> Sorry, I'm not trying to be rude here, but I cannot help myself to not
> use the following meme. I know Squyres will enjoy it :-)
It has become an old fashioned idea because gcc and clang now nearly
trivially cover a huge swath of cases people care about, and folks
like RH have done the incredible, tedious, work to get new gcc's
running on their old OSs, with the native system libraries.
There will always be botique places that have a hard time keeping
current. But they are special, and it isn't fair to the developers to
let them externalize their costs upwards into the ecosystems.
The low-cost route for botique cases is pretty clear - get the
toolchain patches upstream. Yes that is hard, I sympathize, but not
enough to take patches supporting old systems on my projects :)
The old OFA effort to port the stack to Windows, IMHO, made a big
mess. Ideologically requiring an old-at-the time MSVC compiler
certainly contributed. Use a compiler that makes the port easy.
Jason
More information about the ofiwg
mailing list