From patchwork Fri Jan 31 03:07:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Kozlyuk X-Patchwork-Id: 65399 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 58B4DA0524; Fri, 31 Jan 2020 04:07:53 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 912661C065; Fri, 31 Jan 2020 04:07:52 +0100 (CET) Received: from mail-lj1-f194.google.com (mail-lj1-f194.google.com [209.85.208.194]) by dpdk.org (Postfix) with ESMTP id B5FAC1C030 for ; Fri, 31 Jan 2020 04:07:51 +0100 (CET) Received: by mail-lj1-f194.google.com with SMTP id o15so58694ljg.6 for ; Thu, 30 Jan 2020 19:07:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=iuZrD1k/CDNT1limuHw5HX5g76sH/+h/w4RiozMEIAI=; b=uYubEw7hT0JtYabBU+jQFlrKTkcly+H5tDJ3TNqWN95e+EQOczKoig3Qw6tXVSpH7V VyyjhYCuAiXfOd/TbKA+gbEdqcaqSlowDns6NXhBPGw61srjqYwneBg4sPYN3t6PTpvo DKAWCQYPrwcT/p8mczXY0i9nFGuK/y++JFdKriGDav5HLb7M0pi+PCYA1MrX6Cswqe00 vAgsDpL8dM5AiRGrXAbxlrq2+rYcrMSonhSnORSXUEd3HXKjF0fDTzwlwxPKOhhvkQ0I NDn4UQiyFbliHkvMfmhq3kGhBQ30zUD8wvksC4QxNBBfU9LsT0vtH/X21utrNuoOpMAY In8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=iuZrD1k/CDNT1limuHw5HX5g76sH/+h/w4RiozMEIAI=; b=MPX0l+k8d9R9/FsQfMfbn4tY/TQuGQkyAuCFs/YH7XKS0mXfroPIOVDxRUDEo0kBWQ KQY0V4AWBrxENbQ/CDMzrQNI7r+EoMHgQS9jh7NMOH3/5/+j5DP5PzGfNkm9AYRQxXJr 9E7MI2gsWuhuyjpC/XtP+2WpER+hRnj8N0JwEbmPUWMHK5CXXvLNYizW3yXjTbgMqaF1 14XO4FMpc2tHV+93jhgewG82StaGCiw2M9WzF3PEp/GRjm+3crch6x5wGx0+T7qQif1D 71qwsVlH36IADBvTWc3F3ZXhubjP9I0BKxaKNnKS7BBG+nm7/PPjQBY2I7FNMJve/uSv iSBQ== X-Gm-Message-State: APjAAAVdhZ8vrmqHRpOhXCdhISUJoBU83zAkU+vj+870YsnDZHpwBmZY sLrcI9+7rd62HkPJSP9Nxh4i41HL9iKXJQ== X-Google-Smtp-Source: APXvYqyz4usgU0ZmRgl+xm+Ql/eAU/v1xiQwp4RU6X9rqZGDs8w2xMmgoyDHXA64kQtXzmzk0wCtsg== X-Received: by 2002:a2e:8eda:: with SMTP id e26mr4770014ljl.65.1580440070919; Thu, 30 Jan 2020 19:07:50 -0800 (PST) Received: from localhost.localdomain (broadband-37-110-65-23.ip.moscow.rt.ru. [37.110.65.23]) by smtp.googlemail.com with ESMTPSA id e12sm3630332lfc.70.2020.01.30.19.07.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Jan 2020 19:07:50 -0800 (PST) From: Dmitry Kozlyuk To: dev@dpdk.org Cc: Dmitry Kozlyuk , Bruce Richardson , Thomas Monjalon , Olivier Matz , Harini Ramakrishnan , Omar Cardona , Pallavi Kadam , Ranjit Menon , John McNamara , Marko Kovacevic Date: Fri, 31 Jan 2020 06:07:38 +0300 Message-Id: <20200131030744.19596-1-dmitry.kozliuk@gmail.com> X-Mailer: git-send-email 2.25.0 MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH 0/6] MinGW-w64 support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch series add support for building DPDK using MinGW-w64. MinGW-w64 provides GNU toolchain and independent platform SDK on Windows. It also supports cross-compilation to Windows from POSIX systems by providing cross tollchains and libraries [0]. It does NOT emulate a full POSIX environment, like Cygwin or MSYS do. There are advantages in using MinGW-w64 in addition to Clang: 1. Cross-compilation out-of-the-box. MinGW-w64 is provides a pthread implementation, GNU getopt, and Windows platform SDK. 2. Easier porting of POSIX applications using DPDK to Windows, because application code can use the same benefits as mentioned above. 3. Having both primary compilers enabled on Windows provides more diagnostics and generally prevents non-portable code. [0]: http://mingw-w64.org Dmitry Kozlyuk (6): eal: introduce portable format attribute eal: use portable format attribute cmdline: use portable format attribute build: MinGW-w64 support for Meson build: add cross-file for MinGW-w64 doc: guide for Windows build using MinGW-w64 config/meson.build | 14 +++++ doc/guides/windows_gsg/build_dpdk.rst | 57 +++++++++++++++++---- lib/librte_cmdline/cmdline.h | 4 +- lib/librte_eal/common/include/rte_common.h | 17 +++++- lib/librte_eal/common/include/rte_debug.h | 2 +- lib/librte_eal/common/include/rte_devargs.h | 2 +- lib/librte_eal/common/include/rte_log.h | 4 +- lib/librte_eal/meson.build | 3 ++ lib/meson.build | 8 ++- meson_mingw.txt | 14 +++++ 10 files changed, 108 insertions(+), 17 deletions(-) create mode 100644 meson_mingw.txt