From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1D2334591A; Fri, 6 Sep 2024 09:41:08 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A55A34029E; Fri, 6 Sep 2024 09:41:07 +0200 (CEST) Received: from szxga05-in.huawei.com (szxga05-in.huawei.com [45.249.212.191]) by mails.dpdk.org (Postfix) with ESMTP id 2236140280 for ; Fri, 6 Sep 2024 09:41:05 +0200 (CEST) Received: from mail.maildlp.com (unknown [172.19.163.44]) by szxga05-in.huawei.com (SkyGuard) with ESMTP id 4X0Snh3d86z1j88M; Fri, 6 Sep 2024 15:40:40 +0800 (CST) Received: from dggpeml500024.china.huawei.com (unknown [7.185.36.10]) by mail.maildlp.com (Postfix) with ESMTPS id 167161401F0; Fri, 6 Sep 2024 15:41:03 +0800 (CST) Received: from [10.67.121.161] (10.67.121.161) by dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Fri, 6 Sep 2024 15:41:02 +0800 Subject: Re: [PATCH v1 1/1] usertools: add DPDK build directory setup script To: David Marchand , Anatoly Burakov CC: , Robin Jarry , , References: From: fengchengwen Message-ID: <998a4be4-4235-66fe-7540-ecb6993f893e@huawei.com> Date: Fri, 6 Sep 2024 15:41:02 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 8bit X-Originating-IP: [10.67.121.161] X-ClientProxiedBy: dggems705-chm.china.huawei.com (10.3.19.182) To dggpeml500024.china.huawei.com (7.185.36.10) X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 2024/9/5 15:29, David Marchand wrote: > On Wed, Sep 4, 2024 at 5:17 PM Anatoly Burakov > wrote: >> >> Currently, the only way to set up a build directory for DPDK development >> is through running Meson directly. This has a number of drawbacks. >> >> For one, the default configuration is very "fat", meaning everything gets >> enabled and built (aside from examples, which have to be enabled >> manually), so while Meson is very good at minimizing work needed to rebuild >> DPDK, for any change that affects a lot of components (such as editing an >> EAL header), there's a lot of rebuilding to do. >> >> It is of course possible to reduce the number of components built through >> meson options, but this mechanism isn't perfect, as the user needs to >> remember exact spelling of all the options and components, and currently >> it doesn't handle inter-component dependencies very well (e.g. if net/ice >> is enabled, common/iavf is not automatically enabled, so net/ice can't be >> built unless user also doesn't forget to specify common/iavf). > > There should be an explicit error explaining why the driver is not enabled. > Is it not the case? > > >> >> Enter this script. It relies on Meson's introspection capabilities as well >> as the dependency graphs generated by our build system to display all >> available components, and handle any dependencies for them automatically, >> while also not forcing user to remember any command-line options and lists >> of drivers, and instead relying on interactive TUI to display list of >> available options. It can also produce builds that are as minimal as >> possible (including cutting down libraries being built) by utilizing the >> fact that our dependency graphs report which dependency is mandatory and >> which one is optional. >> >> Because it is not meant to replace native Meson build configuration but >> is rather targeted at users who are not intimately familiar wtih DPDK's >> build system, it is run in interactive mode by default. However, it is >> also possible to run it without interaction, in which case it will pass >> all its parameters to Meson directly, with added benefit of dependency >> tracking and producing minimal builds if desired. >> >> Signed-off-by: Anatoly Burakov > > There is no documentation. > And it is a devtools script and not a usertools, iow, no point in > installing this along a built dpdk. > > I don't see a lot of value in such script. +1 I just run this script, and it provide UI just like Linux kernel "make menuconfig", but I think DPDK is not complicated enough to have to use such menuconfig. > In my opinion, people who really want to tune their dpdk build should > enter the details carefully and understand the implications. > But other than that, I have no strong objection. > >