On 2019-01-08 13:51, Morten Brørup wrote:
From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Bruce Richardson
I think for windows we probably want to start with the MS compiler
first,
since from my understanding it's probably the default go-to compiler
for
developers on windows, and look at alternatives from there.

/Bruce

Having developed quite a bit in Windows myself (about a decade ago), I tend to 
agree with Bruce here. However, I would add that it depends on who we are 
targeting:

If we are targeting typical Windows developers (of all levels of experience), 
it's my impression that Microsoft's compiler IDE, Visual Studio (or Visual 
Studio Code), is their tool of choice, and anything else would introduce a 
learning curve. (This is probably more true for junior developers than senior 
developers, who often have worked in a range of different development 
environments.)


Visual Studio supports clang, and regardless, maximizing the *convenience* for a few Windows developers shouldn't really be a priority. Let's be real; Windows is very likely to remain a minor player in the domain of operating systems for network processing.

Just to be clear, I'm not saying we should sabotage a Windows port. What I am voting against, is to allow a Windows port to sabotage the DPDK source code, and prevent the use of useful compiler features, messing up the code in the process.

As for junior developers, if they are going to program in DPDK, installing a compiler is such a minor part of the learning curve ahead, they won't notice the tiny bit of extra climb.

If we are targeting developers who want to make their applications compatible across 
multiple operating systems, any compiler would probably work just fine - and in this 
case, the real question is about making the "make" environment as 
cross-platform compatible as possible.

The discussion has been about compilers, not any build system or tools.

Maybe you can get inspiration by looking at other cross-platform projects... 
Google Chrome, Mozilla Firefox, Wireshark, etc.


As mentioned in this thread already, Chromium relies on clang.

Reply via email to