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 B12BDA04B6; Mon, 12 Oct 2020 10:08:55 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 92A211D620; Mon, 12 Oct 2020 10:08:54 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 1A2C91D619 for ; Mon, 12 Oct 2020 10:08:52 +0200 (CEST) IronPort-SDR: 3wjcG3v9YnG7qkC/SVlF74ruAQpWASUXcHVBhrRp1RNjBbeJzH5ERZ49SDTGFSqN0t1QgBbZeI TAYdjHahDiSQ== X-IronPort-AV: E=McAfee;i="6000,8403,9771"; a="162239012" X-IronPort-AV: E=Sophos;i="5.77,366,1596524400"; d="scan'208";a="162239012" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Oct 2020 01:08:51 -0700 IronPort-SDR: Sb84BprYz5qCqXeKpLeUkt9smCL00u3upv+QxAzq3jYmlY38Lsb8J1i9YkbKq0opwQqoS51vOr l49HbwSr6aQA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,366,1596524400"; d="scan'208";a="317841896" Received: from unknown (HELO silpixa00400466.ir.intel.com) ([10.237.213.195]) by orsmga006.jf.intel.com with ESMTP; 12 Oct 2020 01:08:49 -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 08:08:25 +0000 Message-Id: <20201012080829.3446-1-conor.walsh@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200918121137.1370883-1-conor.walsh@intel.com> References: <20200918121137.1370883-1-conor.walsh@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v5 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. --- 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 | 43 +++++-- 4 files changed, 220 insertions(+), 44 deletions(-) create mode 100755 devtools/gen-abi-tarballs.sh -- 2.25.1