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 1D39545DB7; Wed, 27 Nov 2024 16:01:42 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0A2AA4060C; Wed, 27 Nov 2024 16:01:42 +0100 (CET) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.10]) by mails.dpdk.org (Postfix) with ESMTP id A96C34025D for ; Wed, 27 Nov 2024 16:01:40 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1732719701; x=1764255701; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=5zEOG6YAJPR2PF/AfF2DGcFn7f6NsVLRwOvJOcd3Hcw=; b=dbyeI0JU9ShN+uN9q0lBq9b9mNTTqBmVNvkCPoTBe6r5+dV95y4jrvUp e27ItvF9webwR5MIpO4ywmSK99xww15knqJ+SxXsfDVQYTTOyfhkoZbpV uZTG6b1yO+l+ssDG/ftlRfDTcee+/mhpb69GxMuVadgznwuF2UJst5Gxu y+a/poefGKhE/K4SKRul9kf2ZaocnfxQO1tgPpVlPN1MBpeCIaUAiK8+V vc1on0+n41CSGTLnUGeJ8lmlk/B1uh30UWzT8tOBs25hkvRxCSjm5FzeY OSfJOkQa8FvkQVloHrYEpVw24gS0iKYMGnXgPKE7drRsogecjc7p70maJ w==; X-CSE-ConnectionGUID: sMBKlS8ORqiNs68oNq+tRQ== X-CSE-MsgGUID: BlUkvJsCRPWZstXMHP+z0w== X-IronPort-AV: E=McAfee;i="6700,10204,11269"; a="44315698" X-IronPort-AV: E=Sophos;i="6.12,189,1728975600"; d="scan'208";a="44315698" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Nov 2024 07:01:40 -0800 X-CSE-ConnectionGUID: 8I7T3ZNcQHOfzuMr8m2WOQ== X-CSE-MsgGUID: yRkmbE11RMe2zMO4fmr2PQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,189,1728975600"; d="scan'208";a="91848482" Received: from silpixa00401119.ir.intel.com ([10.55.129.167]) by orviesa010.jf.intel.com with ESMTP; 27 Nov 2024 07:01:39 -0800 From: Anatoly Burakov To: dev@dpdk.org Subject: [PATCH v3 0/1] Add DPDK build directory configuration script Date: Wed, 27 Nov 2024 15:01:36 +0000 Message-ID: X-Mailer: git-send-email 2.43.5 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 Note: this patch depends upon Bruce's v5 patchset: https://patches.dpdk.org/project/dpdk/list/?series=34055 This patch is based on initial script for VSCode configuration: https://patches.dpdk.org/project/dpdk/patch/6a6b20c037cffcc5f68a341c4b4e4f21990ae991.1721997016.git.anatoly.burakov@intel.com/ This is a TUI frontend for Meson. It is by no means meant to be used as a replacement for using Meson proper, it is merely a shortcut for those who constantly deal with creating new Meson build directories but don't want to type out all components each time. It relies on dependency graphs from the above Bruce's patchset (v3 introduced support for optional dependencies, which this script requires) to work. It'll create a Meson build directory in the background, enabling all options, and then use both dependency graph and meson introspection to figure out what can be built, and what dependencies it has. With this script it is possible to produce very minimal builds - the script is not only able to track dependencies between components to enable them, but it can also (with a command line switch) specify which libraries we want to enable (omitting those not required by currently selected components). This can be useful for users who frequently reconfigure their tree with e.g. debug/release, shared/static etc. builds while keeping the reconfiguration time fairly small. We used to have a "setup.sh" script to "set up" DPDK. This is not that, but it's a good start. Anatoly Burakov (1): devtools: add DPDK build directory setup script devtools/dpdk-setup.py | 784 ++++++++++++++++++++++++++++ doc/guides/linux_gsg/build_dpdk.rst | 26 + 2 files changed, 810 insertions(+) create mode 100755 devtools/dpdk-setup.py -- 2.43.5