From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <thomas@monjalon.net>
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id 9CBFB1B398
 for <dev@dpdk.org>; Thu,  3 Jan 2019 18:32:50 +0100 (CET)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
 by mailout.nyi.internal (Postfix) with ESMTP id D90E8217DD;
 Thu,  3 Jan 2019 12:32:48 -0500 (EST)
Received: from mailfrontend1 ([10.202.2.162])
 by compute1.internal (MEProxy); Thu, 03 Jan 2019 12:32:48 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=
 from:to:cc:subject:date:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding:content-type; s=mesmtp;
 bh=Msg38QoC4o95eP0u+XvUpVCyEc0+CFqd6Frm4sKPAPY=; b=pzlaDNHRK348
 V/Xm359HvYgRiMp4G4DSstwWUfmE65vXgHshBgu79sx/5bnLjj26eff4614n3Gaj
 EQSuNJEl5wNfci+O4/g8sCar5I2yBnLP/7TCAtT6EWX0oro5DnNt0JQlfeez8j0a
 b6qazfiZkLHjVaGmhHO13jfcf+ruc1Y=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-transfer-encoding:content-type
 :date:from:in-reply-to:message-id:mime-version:references
 :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender
 :x-sasl-enc; s=fm1; bh=Msg38QoC4o95eP0u+XvUpVCyEc0+CFqd6Frm4sKPA
 PY=; b=iX7NPs0gOve6zzgyMVKYJS/uE4+SGy3swMLNlrrH941Z1o1T7RBctkldR
 BSXKNFY8oJxQtWwsJ6Bn19weuhnPjkhhacHjyUoNZhkBOXcK0dIQx3Y+6cxi2BuL
 VHbVD4d7immLPtmW1CPHH97fGL+YF3YD7mTaANr3fGOk1YPLwMGi2VmcWvZMO3FB
 bdsqJ7X3dflKBNLPodfnTNJcNCo5RlnWhmLrogSZG1JKriDG7MFsklEHlsRXCsST
 xoo2LTh5hVS3V+dtc5Po2LK0kj/roPy8snSHH53P1sCb91rUhtMp6zgFQJgnMB+Y
 WLFHRCmKaHtC+i5nYRtixJTo1cdFA==
X-ME-Sender: <xms:QEcuXG2WQ9rqFHz-g6KsZsBlXLC1zB4opjQ1HykB1zOh2CytG0qEug>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedtledrudelgdegvdculddtuddrgedtkedrtddtmd
 cutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfhuthen
 uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
 cujfgurhephffvufffkfgjfhgggfgtsehtufertddttddvnecuhfhrohhmpefvhhhomhgr
 shcuofhonhhjrghlohhnuceothhhohhmrghssehmohhnjhgrlhhonhdrnhgvtheqnecukf
 hppeejjedrudefgedrvddtfedrudekgeenucfrrghrrghmpehmrghilhhfrhhomhepthhh
 ohhmrghssehmohhnjhgrlhhonhdrnhgvthenucevlhhushhtvghrufhiiigvpedt
X-ME-Proxy: <xmx:QEcuXID_k24SF61zFOU2__aFx-Ujk5_gzO0GyXjlsJsyckrUqyxTqQ>
 <xmx:QEcuXK88O8pAh7n_PEnP1J389EWDlkhIMtPmyW5j3JqCsj_7a59IRQ>
 <xmx:QEcuXLWA9WcT-BJGJMkqqC6IjFMBIkaK4TR9iiVZ9ZUgMcu46FJbZw>
 <xmx:QEcuXCmQXUZvSErx4j-35CNYJSro6Xf8ACjGOjx9MrJD4g9og2Uyvw>
Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184])
 by mail.messagingengine.com (Postfix) with ESMTPA id C8CC9E464E;
 Thu,  3 Jan 2019 12:32:46 -0500 (EST)
From: Thomas Monjalon <thomas@monjalon.net>
To: Jason Messer <jmesser@microsoft.com>
Cc: Stephen Hemminger <stephen@networkplumber.org>,
 Harini Ramakrishnan <Harini.Ramakrishnan@microsoft.com>,
 Omar Cardona <ocardona@microsoft.com>, 'Ranjit Menon' <ranjit.menon@intel.com>,
 'Mattias =?ISO-8859-1?Q?R=F6nnblom=27?= <mattias.ronnblom@ericsson.com>,
 'Jeff Shaw' <jeffrey.b.shaw@intel.com>, "dev@dpdk.org" <dev@dpdk.org>,
 Jeffrey Tippet <Jeffrey.Tippet@microsoft.com>, "Deval,
 Manasi" <manasi.deval@intel.com>
Date: Thu, 03 Jan 2019 18:32:45 +0100
Message-ID: <10666701.GC44MuPZhG@xps>
In-Reply-To: <SN4PR2101MB0877FD5D0E1B5081A98A366BB48D0@SN4PR2101MB0877.namprd21.prod.outlook.com>
References: <7824863.MkUOD0j12R@xps>
 <005401d4a32e$2f20f860$8d62e920$@networkplumber.org>
 <SN4PR2101MB0877FD5D0E1B5081A98A366BB48D0@SN4PR2101MB0877.namprd21.prod.outlook.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7Bit
Content-Type: text/plain; charset="us-ascii"
Subject: Re: [dpdk-dev] Compiler for Windows
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Thu, 03 Jan 2019 17:32:50 -0000

Hi Jason,

We need to get facts in order to do a good decision.
Please, let's give detailed feedback for each option.

03/01/2019 18:10, Jason Messer:
> +Jeffrey, Manasi
> 
> We will get the most traction from the Windows developer community
> if we use msvc. The only thing preventing that last time was
> GNU extensions used in DPDK source which were not ISO C standards
> compliant.

I think the main issue is that MSVC is not C99 compliant.

> We were also experimenting with Clang/LLVM running natively on Windows
> host but ran into a bunch of issues (maybe others made further progress?).

Chromium is built with clang on Windows, so I wonder what prevents us
to use it?

> GCC using Windows Subsystem for Linux (WSL) would be an interesting
> option and could be a secondary option for MSVC for Windows developers.

I thought GCC on WSL would build a Linux binary?
Can we build a Windows native binary with it?

What about mingw-w64? Is there any drawback?


> From: Stephen Hemminger <stephen@networkplumber.org> 
> > What about Gcc under the WSL thing (ie Linux emulation in Windows).
> > Much better than Cygwin type stuff.
> > 
> > From: Thomas Monjalon <thomas@monjalon.net>
> > > Hi,
> > > 
> > > We need to gather inputs about the pros/cons of the C compilers
> > > available for Windows.
> > > 
> > > Interesting criterias could be:
> > > 	- ease of use
> > > 	- availability
> > > 	- standards compliance
> > > 	- performance
> > > 
> > > When the comparison will be complete, we should publish it in the doc/
> > > directory, while porting DPDK to Windows.
> > > 
> > > I start with few data:
> > > 
> > > * gcc|clang on cygwin
> > > 
> > > 	- not native
> > > 
> > > * gcc/mingw
> > > 
> > > * gcc/mingw-w64
> > > 
> > > * clang/mingw-w64
> > > 
> > > * clang --target=x86_64-windows-msvc
> > > 
> > > * icc
> > > 
> > > 	- not freely available
> > > 
> > > * msvc
> > > 
> > > 	- native
> > > 	- specific command line
> > > 	- not C99