From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6658EA04B6; Mon, 12 Oct 2020 15:06:26 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 326961D6FA; Mon, 12 Oct 2020 15:06:25 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id DD3961D6ED for ; Mon, 12 Oct 2020 15:06:21 +0200 (CEST) IronPort-SDR: sEqomlJ97NbQHvBBIjBjMPHopvurKKP6eQcd9z66317DtwX+c6YiSSw84PcW7Lax0IC9q3WKdD TfEduGr7y8Hg== X-IronPort-AV: E=McAfee;i="6000,8403,9771"; a="145056091" X-IronPort-AV: E=Sophos;i="5.77,366,1596524400"; d="scan'208";a="145056091" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Oct 2020 06:03:56 -0700 IronPort-SDR: OkQEdE6pUUH7+dQhMfoQ/xihJD0ATb3uZDDI2XRmlp3zXvZnmS7lt9FiXoBvQuEijD5ZHXsPqT H+11grl7+vyQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,366,1596524400"; d="scan'208";a="329742004" Received: from unknown (HELO silpixa00400466.ir.intel.com) ([10.237.213.195]) by orsmga002.jf.intel.com with ESMTP; 12 Oct 2020 06:03:54 -0700 From: Conor Walsh To: mdr@ashroe.eu, nhorman@tuxdriver.com, bruce.richardson@intel.com, thomas@monjalon.net, david.marchand@redhat.com Cc: dev@dpdk.org, Conor Walsh Date: Mon, 12 Oct 2020 13:03:44 +0000 Message-Id: <20201012130348.3212-1-conor.walsh@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20201012080829.3446-1-conor.walsh@intel.com> References: <20201012080829.3446-1-conor.walsh@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v6 0/4] devtools: abi breakage checks 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 patchset will help developers discover abi breakages more easily before upstreaming their code. Currently checking that the DPDK ABI has not changed before up-streaming code is not intuitive and the process is time consuming. Currently contributors must use the test-meson-builds.sh tool, alongside some environmental variables to test their changes. Contributors in many cases are either unaware or unable to do this themselves, leading to a potentially serious situation where they are unknowingly up-streaming code that breaks the ABI. These breakages are caught by Travis, but it would be more efficient if they were caught locally before up-streaming. This patchset introduces changes to test-meson-builds.sh, check-abi.sh and adds a new script gen-abi-tarballs.sh. The changes to test-meson-builds.sh include UX changes such as adding command line arguments and allowing the use of relative paths. Reduced the number of abi checks to just two, one for both x86_64 and ARM, the references for these tests can now be prebuilt and downloaded by test-meson-builds.sh, these changes will allow the tests to run much faster. check-abi.sh is updated to use the prebuilt references. gen-abi-tarballs.sh is a new script to generate the prebuilt abi references used by test-meson-builds.sh, these compressed archives can be retrieved from either a local directory or a remote http location. --- v6: Corrected a mistake in the doc patch v5: - Patchset has been completely reworked following feedback - Patchset is now part of test-meson-builds.sh not the meson build system v4: - Reworked both Python scripts to use more native Python functions and modules. - Python scripts are now in line with how other Python scripts in DPDK are structured. v3: - Fix for bug which now allows meson < 0.48.0 to be used - Various coding style changes throughout - Minor bug fixes to the various meson.build files v2: Spelling mistake, corrected spelling of environmental Conor Walsh (4): devtools: add generation of compressed abi dump archives devtools: abi and UX changes for test-meson-builds.sh devtools: change dump file not found to warning in check-abi.sh doc: test-meson-builds.sh doc updates devtools/check-abi.sh | 3 +- devtools/gen-abi-tarballs.sh | 48 ++++++++ devtools/test-meson-builds.sh | 170 ++++++++++++++++++++++------ doc/guides/contributing/patches.rst | 26 +++-- 4 files changed, 201 insertions(+), 46 deletions(-) create mode 100755 devtools/gen-abi-tarballs.sh -- 2.25.1