Message ID | 20240920125737.1197969-1-bruce.richardson@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8A7574599D; Fri, 20 Sep 2024 14:57:49 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 60641427C9; Fri, 20 Sep 2024 14:57:49 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.17]) by mails.dpdk.org (Postfix) with ESMTP id 9A67E40275 for <dev@dpdk.org>; Fri, 20 Sep 2024 14:57:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1726837068; x=1758373068; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=2CJe0DgWkX+KRs2gLJjPGjghLEUkDfTyfPJPOYBjTPA=; b=fK/0IY3k0RTNbnuqlswJkTsvH8MCgAq5f2NrFa2sCRe3NYCcEcZKuv67 4xrJwuTeaBaMpTsoma6D6zEpZ4aji73nt32iNJy09S8BfP5b7kFLWdIX+ Bz+PHFtVulB+bOoxQftKNNI8a0XZdU41mUV408UCOknCLHVnyWe7CFF8x /trznJnZvoIziDiab3c97chlz7JXJg7bOlE8wG7YrJch+vCRDJBj9iBiT 49LFFhombEihcwqdW+yHcxAb8VcwYxcAz4qExxDfoUI1dyOmyJZrZXiMY CKu3l4GcLiHVBklqrCz4vTK6SbA8bXAQZXS2emHwHM6h5FYLnyeZVq4Rj Q==; X-CSE-ConnectionGUID: oS8gLLWfQL+A5z1nYDxSOw== X-CSE-MsgGUID: L7FBtBbwTBe1+PLSHYKzJg== X-IronPort-AV: E=McAfee;i="6700,10204,11200"; a="25991085" X-IronPort-AV: E=Sophos;i="6.10,244,1719903600"; d="scan'208";a="25991085" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Sep 2024 05:57:47 -0700 X-CSE-ConnectionGUID: M0Vx4t9IR6yqpEcLQiMa9w== X-CSE-MsgGUID: 5ZyTql8gSV+kRitT9WHlew== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,244,1719903600"; d="scan'208";a="71135882" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa008.jf.intel.com with ESMTP; 20 Sep 2024 05:57:46 -0700 From: Bruce Richardson <bruce.richardson@intel.com> To: dev@dpdk.org Cc: mb@smartsharesystems.com, thomas@monjalon.net, david.marchand@redhat.com, Bruce Richardson <bruce.richardson@intel.com> Subject: [PATCH 0/5] Increase minimum meson version Date: Fri, 20 Sep 2024 13:57:32 +0100 Message-ID: <20240920125737.1197969-1-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 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 <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series | Increase minimum meson version | |
Message
Bruce Richardson
Sept. 20, 2024, 12:57 p.m. UTC
This patchset proposed increasing the minimum meson version to 0.57 and makes changes to update our build files appropriately for that change: replacing deprecated functions, removing unnecessary version checks and taking advantage of some new capabilities. Why 0.57? No one particular reason; it's mainly a conservative version bump that doesn't have many impacts, but still gives us the minimum updates we need to replace the deprecated get_cross_properties fn and have a few extra features guaranteed available. Bruce Richardson (5): build: increase minimum meson version to 0.57 build: remove version check on compiler links function build: remove unnecessary version checks build: use version file support from meson build: replace deprecated meson function .ci/linux-setup.sh | 2 +- config/arm/meson.build | 4 ++-- config/meson.build | 8 ++++---- config/riscv/meson.build | 4 ++-- doc/api/meson.build | 2 +- doc/guides/linux_gsg/sys_reqs.rst | 2 +- doc/guides/prog_guide/build-sdk-meson.rst | 2 +- drivers/common/qat/meson.build | 2 +- drivers/crypto/ipsec_mb/meson.build | 2 +- drivers/event/cnxk/meson.build | 2 +- drivers/meson.build | 7 ++----- drivers/net/cnxk/meson.build | 2 +- lib/meson.build | 6 ------ meson.build | 7 ++----- 14 files changed, 20 insertions(+), 32 deletions(-) -- 2.43.0
Comments
On 9/20/2024 1:57 PM, Bruce Richardson wrote: > This patchset proposed increasing the minimum meson version to 0.57 > and makes changes to update our build files appropriately for that > change: replacing deprecated functions, removing unnecessary version > checks and taking advantage of some new capabilities. > > Why 0.57? No one particular reason; it's mainly a conservative version > bump that doesn't have many impacts, but still gives us the minimum > updates we need to replace the deprecated get_cross_properties fn > and have a few extra features guaranteed available. > > Bruce Richardson (5): > build: increase minimum meson version to 0.57 > build: remove version check on compiler links function > build: remove unnecessary version checks > build: use version file support from meson > build: replace deprecated meson function > Tested-by: Ferruh Yigit <ferruh.yigit@amd.com>
Acked-by: Chengwen Feng <fengchengwen@huawei.com> On 2024/9/20 20:57, Bruce Richardson wrote: > This patchset proposed increasing the minimum meson version to 0.57 > and makes changes to update our build files appropriately for that > change: replacing deprecated functions, removing unnecessary version > checks and taking advantage of some new capabilities. > > Why 0.57? No one particular reason; it's mainly a conservative version > bump that doesn't have many impacts, but still gives us the minimum > updates we need to replace the deprecated get_cross_properties fn > and have a few extra features guaranteed available. > > Bruce Richardson (5): > build: increase minimum meson version to 0.57 > build: remove version check on compiler links function > build: remove unnecessary version checks > build: use version file support from meson > build: replace deprecated meson function > > .ci/linux-setup.sh | 2 +- > config/arm/meson.build | 4 ++-- > config/meson.build | 8 ++++---- > config/riscv/meson.build | 4 ++-- > doc/api/meson.build | 2 +- > doc/guides/linux_gsg/sys_reqs.rst | 2 +- > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > drivers/common/qat/meson.build | 2 +- > drivers/crypto/ipsec_mb/meson.build | 2 +- > drivers/event/cnxk/meson.build | 2 +- > drivers/meson.build | 7 ++----- > drivers/net/cnxk/meson.build | 2 +- > lib/meson.build | 6 ------ > meson.build | 7 ++----- > 14 files changed, 20 insertions(+), 32 deletions(-) > > -- > 2.43.0 >
It should be series-ack, Series-acked-by: Chengwen Feng <fengchengwen@huawei.com> On 2024/9/23 9:59, fengchengwen wrote: > Acked-by: Chengwen Feng <fengchengwen@huawei.com> > > On 2024/9/20 20:57, Bruce Richardson wrote: >> This patchset proposed increasing the minimum meson version to 0.57 >> and makes changes to update our build files appropriately for that >> change: replacing deprecated functions, removing unnecessary version >> checks and taking advantage of some new capabilities. >> >> Why 0.57? No one particular reason; it's mainly a conservative version >> bump that doesn't have many impacts, but still gives us the minimum >> updates we need to replace the deprecated get_cross_properties fn >> and have a few extra features guaranteed available. >> >> Bruce Richardson (5): >> build: increase minimum meson version to 0.57 >> build: remove version check on compiler links function >> build: remove unnecessary version checks >> build: use version file support from meson >> build: replace deprecated meson function >> >> .ci/linux-setup.sh | 2 +- >> config/arm/meson.build | 4 ++-- >> config/meson.build | 8 ++++---- >> config/riscv/meson.build | 4 ++-- >> doc/api/meson.build | 2 +- >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- >> drivers/common/qat/meson.build | 2 +- >> drivers/crypto/ipsec_mb/meson.build | 2 +- >> drivers/event/cnxk/meson.build | 2 +- >> drivers/meson.build | 7 ++----- >> drivers/net/cnxk/meson.build | 2 +- >> lib/meson.build | 6 ------ >> meson.build | 7 ++----- >> 14 files changed, 20 insertions(+), 32 deletions(-) >> >> -- >> 2.43.0 >> >
On Fri, Sep 20, 2024 at 01:57:32PM +0100, Bruce Richardson wrote: > This patchset proposed increasing the minimum meson version to 0.57 > and makes changes to update our build files appropriately for that > change: replacing deprecated functions, removing unnecessary version > checks and taking advantage of some new capabilities. > > Why 0.57? No one particular reason; it's mainly a conservative version > bump that doesn't have many impacts, but still gives us the minimum > updates we need to replace the deprecated get_cross_properties fn > and have a few extra features guaranteed available. > > Bruce Richardson (5): > build: increase minimum meson version to 0.57 > build: remove version check on compiler links function > build: remove unnecessary version checks > build: use version file support from meson > build: replace deprecated meson function > > .ci/linux-setup.sh | 2 +- > config/arm/meson.build | 4 ++-- > config/meson.build | 8 ++++---- > config/riscv/meson.build | 4 ++-- > doc/api/meson.build | 2 +- > doc/guides/linux_gsg/sys_reqs.rst | 2 +- > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > drivers/common/qat/meson.build | 2 +- > drivers/crypto/ipsec_mb/meson.build | 2 +- > drivers/event/cnxk/meson.build | 2 +- > drivers/meson.build | 7 ++----- > drivers/net/cnxk/meson.build | 2 +- > lib/meson.build | 6 ------ > meson.build | 7 ++----- > 14 files changed, 20 insertions(+), 32 deletions(-) > > -- Series-acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com>
Hello CI guys, On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson <bruce.richardson@intel.com> wrote: > > This patchset proposed increasing the minimum meson version to 0.57 > and makes changes to update our build files appropriately for that > change: replacing deprecated functions, removing unnecessary version > checks and taking advantage of some new capabilities. > > Why 0.57? No one particular reason; it's mainly a conservative version > bump that doesn't have many impacts, but still gives us the minimum > updates we need to replace the deprecated get_cross_properties fn > and have a few extra features guaranteed available. > > Bruce Richardson (5): > build: increase minimum meson version to 0.57 > build: remove version check on compiler links function > build: remove unnecessary version checks > build: use version file support from meson > build: replace deprecated meson function > > .ci/linux-setup.sh | 2 +- > config/arm/meson.build | 4 ++-- > config/meson.build | 8 ++++---- > config/riscv/meson.build | 4 ++-- > doc/api/meson.build | 2 +- > doc/guides/linux_gsg/sys_reqs.rst | 2 +- > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > drivers/common/qat/meson.build | 2 +- > drivers/crypto/ipsec_mb/meson.build | 2 +- > drivers/event/cnxk/meson.build | 2 +- > drivers/meson.build | 7 ++----- > drivers/net/cnxk/meson.build | 2 +- > lib/meson.build | 6 ------ > meson.build | 7 ++----- > 14 files changed, 20 insertions(+), 32 deletions(-) This series can't be merged until the (UNH and LoongArch) CI are ready for such a change. TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 in the current release. @UNH @Min Zhou How long would it take for all CI to be ready for this change? Important note: if relevant to your CI, testing against LTS branches must still be done with the 0.53.2 version, so no change relying on post 0.53.2 meson feature gets backported.
On Tue, Oct 8, 2024 at 4:28 AM David Marchand <david.marchand@redhat.com> wrote: > > This series can't be merged until the (UNH and LoongArch) CI are ready > for such a change. > > TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 > in the current release. > > @UNH @Min Zhou > How long would it take for all CI to be ready for this change? > > Thanks for the heads up. So, as far as I can tell, this will require an update to the dpdk/.ci/linux-setup.sh script (which I have just submitted) as I think various labs rely on it including the github robot, loongson, Intel (Maybe, I don't know). UNH does not use it much as we opt to meet the meson dependency separately in the dpdk-ci project's container template engine. It will also require updates to the container template engine, which I can get Cody started on tomorrow. > Important note: if relevant to your CI, testing against LTS branches > must still be done with the 0.53.2 version, so no change relying on > post 0.53.2 meson feature gets backported. > Okay, full disclosure I don't think this is something we handled the last time the meson version got bumped in 2022. So, back then we just bumped the meson version for all environments to .53, then did LTS testing for 19.11, 20.11, 21.11 from environments running meson .53. But, I understand how this is an issue and something we should avoid this go around. However, it is not ideal to set the meson version "at runtime" for CI testing based on the repo under test (mainline and next-* want .57, old LTS versions want .53). It would be possible to modify our jenkinsfiles (automation scripts) to check the DPDK version, and run pip commands resetting the meson version accordingly, at the start of each testing job... but I have a couple concerns here with regards to stability/maintenance. Another option, which Adam is suggesting, is to create a dedicated environment which is version locked to .53 (it can just be an ubuntu container image), label it as a meson .53 environment, and add that to the total list of dpdk build environments which are run when we do testing for either 22.11, or 23.11. Then, we could run the rest of the testing from the same container images we use for mainline (that have .57 baked in), and this would not be a problem because we would have that 1 environment doing a dpdk build, which is guaranteed to be on .53. Bruce/David let me know if you can think of any issues with this. This is also very similar to a Community Lab request from a few months ago (which we have an open internal Jira ticket for), which is to add a VM environment which is locked to the minimum supported kernel version for DPDK. But, that's another story... Anyways, in terms of the timeline... the Jenkins script updates are probably the most difficult in that they will require a PR review, dry run tests etc. but it's still fairly trivial. Cody can probably update the meson dependencies on the template engine and submit that to the dpdk-ci project by end of week. So, I would say CI should be ready by next Tuesday, provided the patches which will be incoming to dev and ci mailing lists can be merged. Is this timeline okay?
On Tue, Oct 08, 2024 at 03:49:12PM -0400, Patrick Robb wrote: > On Tue, Oct 8, 2024 at 4:28 AM David Marchand > <[1]david.marchand@redhat.com> wrote: > > This series can't be merged until the (UNH and LoongArch) CI are > ready > for such a change. > TL;DR: the meson minimum version is being changed from 0.53.2 to > 0.57 > in the current release. > @UNH @Min Zhou > How long would it take for all CI to be ready for this change? > > Thanks for the heads up. So, as far as I can tell, this will require an > update to the dpdk/.ci/linux-setup.sh script (which I have just > submitted) as I think various labs rely on it including the github > robot, loongson, Intel (Maybe, I don't know). The update to that linux-setup file is included already in the first patch of the series. No additional updates needed for jobs that rely on it. > UNH does not use it much > as we opt to meet the meson dependency separately in the dpdk-ci > project's container template engine. That's a bit of a pity, since we can't update the meson version automatically as part of the meson update as we do with CIs using the linux-setup script. Is there some other file that can be in the DPDK main repo that can contain this details to regular DPDK patches can update the CI too as part of a meson update? > It will also require updates to the container template engine, which I > can get Cody started on tomorrow. > > Important note: if relevant to your CI, testing against LTS branches > must still be done with the 0.53.2 version, so no change relying on > post 0.53.2 meson feature gets backported. > > Okay, full disclosure I don't think this is something we handled the > last time the meson version got bumped in 2022. So, back then we just > bumped the meson version for all environments to .53, then did LTS > testing for 19.11, 20.11, 21.11 from environments running meson .53. > But, I understand how this is an issue and something we should avoid > this go around. > However, it is not ideal to set the meson version "at runtime" for CI > testing based on the repo under test (mainline and next-* want .57, old > LTS versions want .53). It would be possible to modify our jenkinsfiles > (automation scripts) to check the DPDK version, and run pip commands > resetting the meson version accordingly, at the start of each testing > job... but I have a couple concerns here with regards to > stability/maintenance. I would recommend against using the DPDK version as a guide. However, the meson version is included in the project options in the meson.build file of the code. Could you use "grep meson_version meson.build" in a script to extra the required version info? If it's helpful, we can possibly provide some sort of compatibility guarantee of the format of this line. Regards, /Bruce
Hi David, On Tues, Oct 8, 2024 at 8:28AM, David Marchand wrote: > Hello CI guys, > > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson > <bruce.richardson@intel.com> wrote: >> This patchset proposed increasing the minimum meson version to 0.57 >> and makes changes to update our build files appropriately for that >> change: replacing deprecated functions, removing unnecessary version >> checks and taking advantage of some new capabilities. >> >> Why 0.57? No one particular reason; it's mainly a conservative version >> bump that doesn't have many impacts, but still gives us the minimum >> updates we need to replace the deprecated get_cross_properties fn >> and have a few extra features guaranteed available. >> >> Bruce Richardson (5): >> build: increase minimum meson version to 0.57 >> build: remove version check on compiler links function >> build: remove unnecessary version checks >> build: use version file support from meson >> build: replace deprecated meson function >> >> .ci/linux-setup.sh | 2 +- >> config/arm/meson.build | 4 ++-- >> config/meson.build | 8 ++++---- >> config/riscv/meson.build | 4 ++-- >> doc/api/meson.build | 2 +- >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- >> drivers/common/qat/meson.build | 2 +- >> drivers/crypto/ipsec_mb/meson.build | 2 +- >> drivers/event/cnxk/meson.build | 2 +- >> drivers/meson.build | 7 ++----- >> drivers/net/cnxk/meson.build | 2 +- >> lib/meson.build | 6 ------ >> meson.build | 7 ++----- >> 14 files changed, 20 insertions(+), 32 deletions(-) > This series can't be merged until the (UNH and LoongArch) CI are ready > for such a change. > > TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 > in the current release. > > @UNH @Min Zhou > How long would it take for all CI to be ready for this change? It's OK for Loongson lab. The meson version for DPDK CI in Loongson lab is 0.63.0. > Important note: if relevant to your CI, testing against LTS branches > must still be done with the 0.53.2 version, so no change relying on > post 0.53.2 meson feature gets backported. > >
On Tue, Oct 8, 2024 at 4:04 PM Bruce Richardson <bruce.richardson@intel.com> wrote: > > > UNH does not use it much > > as we opt to meet the meson dependency separately in the dpdk-ci > > project's container template engine. > > That's a bit of a pity, since we can't update the meson version > automatically as part of the meson update as we do with CIs using the > linux-setup script. Is there some other file that can be in the DPDK main > repo that can contain this details to regular DPDK patches can update the > CI too as part of a meson update? > > I think the only way to do that would be to submit a patch alongside for the dpdk ci container template engine: https://git.dpdk.org/tools/dpdk-ci/tree/containers/README.md. But this would not work very well as dpdk-ci is a separate repo from dpdk, so you can't really package the meson update and the ci update in one patchseries. So, I guess based on your comments it seems like the best solution is to remove the meson step from the container template engine (Dockerfiles) and run the linux-setup.sh script right before each testrun, which solves the problem you raise about updating dpdk and CI side by side, and solves the main vs LTS issue. And of course it comes with the benefit of making CI processes more common across labs. I had run through this idea with Adam yesterday and we agreed that it would work but decided it was our second favorite option... but I think with the points you are raising it is clear this is the correct route to take. > > It will also require updates to the container template engine, which I > > can get Cody started on tomorrow. > > > > Important note: if relevant to your CI, testing against LTS branches > > must still be done with the 0.53.2 version, so no change relying on > > post 0.53.2 meson feature gets backported. > > > > Okay, full disclosure I don't think this is something we handled the > > last time the meson version got bumped in 2022. So, back then we just > > bumped the meson version for all environments to .53, then did LTS > > testing for 19.11, 20.11, 21.11 from environments running meson .53. > > But, I understand how this is an issue and something we should avoid > > this go around. > > However, it is not ideal to set the meson version "at runtime" for CI > > testing based on the repo under test (mainline and next-* want .57, > old > > LTS versions want .53). It would be possible to modify our > jenkinsfiles > > (automation scripts) to check the DPDK version, and run pip commands > > resetting the meson version accordingly, at the start of each testing > > job... but I have a couple concerns here with regards to > > stability/maintenance. > > I would recommend against using the DPDK version as a guide. However, the > meson version is included in the project options in the meson.build file of > the code. Could you use "grep meson_version meson.build" in a script to > extra the required version info? If it's helpful, we can possibly provide > some sort of compatibility guarantee of the format of this line. > Thanks this seems like another good option (I did not realize we could get this from meson.build) and something we can fall back on if usage of the linux-setup.sh is problematic in any way. So, we have a different strategy but the timeline should be the same as this is all fairly trivial. Let me know if yall have any concerns. Cheers.
Hi Min Zhou, I think it makes sense for you to set your meson version to the minimum version supported for DPDK (so, .57 now I suppose) instead of .63. The principle that David described above regarding LTS is also true for main. So, for the main and next-* branch testing that Loongson lab does, we want our CI testing to verify that no change relying on post .57 meson features get merged into main. On Tue, Oct 8, 2024 at 9:07 PM zhoumin <zhoumin@loongson.cn> wrote: > Hi David, > > On Tues, Oct 8, 2024 at 8:28AM, David Marchand wrote: > > Hello CI guys, > > > > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson > > <bruce.richardson@intel.com> wrote: > >> This patchset proposed increasing the minimum meson version to 0.57 > >> and makes changes to update our build files appropriately for that > >> change: replacing deprecated functions, removing unnecessary version > >> checks and taking advantage of some new capabilities. > >> > >> Why 0.57? No one particular reason; it's mainly a conservative version > >> bump that doesn't have many impacts, but still gives us the minimum > >> updates we need to replace the deprecated get_cross_properties fn > >> and have a few extra features guaranteed available. > >> > >> Bruce Richardson (5): > >> build: increase minimum meson version to 0.57 > >> build: remove version check on compiler links function > >> build: remove unnecessary version checks > >> build: use version file support from meson > >> build: replace deprecated meson function > >> > >> .ci/linux-setup.sh | 2 +- > >> config/arm/meson.build | 4 ++-- > >> config/meson.build | 8 ++++---- > >> config/riscv/meson.build | 4 ++-- > >> doc/api/meson.build | 2 +- > >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- > >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > >> drivers/common/qat/meson.build | 2 +- > >> drivers/crypto/ipsec_mb/meson.build | 2 +- > >> drivers/event/cnxk/meson.build | 2 +- > >> drivers/meson.build | 7 ++----- > >> drivers/net/cnxk/meson.build | 2 +- > >> lib/meson.build | 6 ------ > >> meson.build | 7 ++----- > >> 14 files changed, 20 insertions(+), 32 deletions(-) > > This series can't be merged until the (UNH and LoongArch) CI are ready > > for such a change. > > > > TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 > > in the current release. > > > > @UNH @Min Zhou > > How long would it take for all CI to be ready for this change? > It's OK for Loongson lab. The meson version for DPDK CI in Loongson lab > is 0.63.0. > > Important note: if relevant to your CI, testing against LTS branches > > must still be done with the 0.53.2 version, so no change relying on > > post 0.53.2 meson feature gets backported. > > > > > >
Hi Patrick Robb, Thank you for your reminding. I have set the meson version to 0.57.0 in Loongson lab. On Wed, Oct 9, 2024 at 2:31PM, Patrick Robb wrote: > Hi Min Zhou, > > I think it makes sense for you to set your meson version to the > minimum version supported for DPDK (so, .57 now I suppose) instead of > .63. The principle that David described above regarding LTS is also > true for main. So, for the main and next-* branch testing that > Loongson lab does, we want our CI testing to verify that no change > relying on post .57 meson features get merged into main. > > On Tue, Oct 8, 2024 at 9:07 PM zhoumin <zhoumin@loongson.cn > <mailto:zhoumin@loongson.cn>> wrote: > > Hi David, > > On Tues, Oct 8, 2024 at 8:28AM, David Marchand wrote: > > Hello CI guys, > > > > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson > > <bruce.richardson@intel.com <mailto:bruce.richardson@intel.com>> > wrote: > >> This patchset proposed increasing the minimum meson version to 0.57 > >> and makes changes to update our build files appropriately for that > >> change: replacing deprecated functions, removing unnecessary > version > >> checks and taking advantage of some new capabilities. > >> > >> Why 0.57? No one particular reason; it's mainly a conservative > version > >> bump that doesn't have many impacts, but still gives us the minimum > >> updates we need to replace the deprecated get_cross_properties fn > >> and have a few extra features guaranteed available. > >> > >> Bruce Richardson (5): > >> build: increase minimum meson version to 0.57 > >> build: remove version check on compiler links function > >> build: remove unnecessary version checks > >> build: use version file support from meson > >> build: replace deprecated meson function > >> > >> .ci/linux-setup.sh | 2 +- > >> config/arm/meson.build | 4 ++-- > >> config/meson.build | 8 ++++---- > >> config/riscv/meson.build | 4 ++-- > >> doc/api/meson.build | 2 +- > >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- > >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > >> drivers/common/qat/meson.build | 2 +- > >> drivers/crypto/ipsec_mb/meson.build | 2 +- > >> drivers/event/cnxk/meson.build | 2 +- > >> drivers/meson.build | 7 ++----- > >> drivers/net/cnxk/meson.build | 2 +- > >> lib/meson.build | 6 ------ > >> meson.build | 7 ++----- > >> 14 files changed, 20 insertions(+), 32 deletions(-) > > This series can't be merged until the (UNH and LoongArch) CI are > ready > > for such a change. > > > > TL;DR: the meson minimum version is being changed from 0.53.2 to > 0.57 > > in the current release. > > > > @UNH @Min Zhou > > How long would it take for all CI to be ready for this change? > It's OK for Loongson lab. The meson version for DPDK CI in > Loongson lab > is 0.63.0. > > Important note: if relevant to your CI, testing against LTS branches > > must still be done with the 0.53.2 version, so no change relying on > > post 0.53.2 meson feature gets backported. > > > > >
UNH will be updated to be running from the linux setup script by the end of the day today, and I'll send another response here. On Sun, Oct 13, 2024 at 9:26 PM zhoumin <zhoumin@loongson.cn> wrote: > Hi Patrick Robb, > > Thank you for your reminding. I have set the meson version to 0.57.0 in > Loongson lab. > On Wed, Oct 9, 2024 at 2:31PM, Patrick Robb wrote: > > Hi Min Zhou, > > I think it makes sense for you to set your meson version to the minimum > version supported for DPDK (so, .57 now I suppose) instead of .63. The > principle that David described above regarding LTS is also true for main. > So, for the main and next-* branch testing that Loongson lab does, we want > our CI testing to verify that no change relying on post .57 meson features > get merged into main. > > On Tue, Oct 8, 2024 at 9:07 PM zhoumin <zhoumin@loongson.cn> wrote: > >> Hi David, >> >> On Tues, Oct 8, 2024 at 8:28AM, David Marchand wrote: >> > Hello CI guys, >> > >> > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson >> > <bruce.richardson@intel.com> wrote: >> >> This patchset proposed increasing the minimum meson version to 0.57 >> >> and makes changes to update our build files appropriately for that >> >> change: replacing deprecated functions, removing unnecessary version >> >> checks and taking advantage of some new capabilities. >> >> >> >> Why 0.57? No one particular reason; it's mainly a conservative version >> >> bump that doesn't have many impacts, but still gives us the minimum >> >> updates we need to replace the deprecated get_cross_properties fn >> >> and have a few extra features guaranteed available. >> >> >> >> Bruce Richardson (5): >> >> build: increase minimum meson version to 0.57 >> >> build: remove version check on compiler links function >> >> build: remove unnecessary version checks >> >> build: use version file support from meson >> >> build: replace deprecated meson function >> >> >> >> .ci/linux-setup.sh | 2 +- >> >> config/arm/meson.build | 4 ++-- >> >> config/meson.build | 8 ++++---- >> >> config/riscv/meson.build | 4 ++-- >> >> doc/api/meson.build | 2 +- >> >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- >> >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- >> >> drivers/common/qat/meson.build | 2 +- >> >> drivers/crypto/ipsec_mb/meson.build | 2 +- >> >> drivers/event/cnxk/meson.build | 2 +- >> >> drivers/meson.build | 7 ++----- >> >> drivers/net/cnxk/meson.build | 2 +- >> >> lib/meson.build | 6 ------ >> >> meson.build | 7 ++----- >> >> 14 files changed, 20 insertions(+), 32 deletions(-) >> > This series can't be merged until the (UNH and LoongArch) CI are ready >> > for such a change. >> > >> > TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 >> > in the current release. >> > >> > @UNH @Min Zhou >> > How long would it take for all CI to be ready for this change? >> It's OK for Loongson lab. The meson version for DPDK CI in Loongson lab >> is 0.63.0. >> > Important note: if relevant to your CI, testing against LTS branches >> > must still be done with the 0.53.2 version, so no change relying on >> > post 0.53.2 meson feature gets backported. >> > >> > >> >>
UNH CI testing is ready for this change. On Wed, Oct 16, 2024 at 9:08 AM Patrick Robb <probb@iol.unh.edu> wrote: > UNH will be updated to be running from the linux setup script by the end > of the day today, and I'll send another response here. > > On Sun, Oct 13, 2024 at 9:26 PM zhoumin <zhoumin@loongson.cn> wrote: > >> Hi Patrick Robb, >> >> Thank you for your reminding. I have set the meson version to 0.57.0 in >> Loongson lab. >> On Wed, Oct 9, 2024 at 2:31PM, Patrick Robb wrote: >> >> Hi Min Zhou, >> >> I think it makes sense for you to set your meson version to the minimum >> version supported for DPDK (so, .57 now I suppose) instead of .63. The >> principle that David described above regarding LTS is also true for main. >> So, for the main and next-* branch testing that Loongson lab does, we want >> our CI testing to verify that no change relying on post .57 meson features >> get merged into main. >> >> On Tue, Oct 8, 2024 at 9:07 PM zhoumin <zhoumin@loongson.cn> wrote: >> >>> Hi David, >>> >>> On Tues, Oct 8, 2024 at 8:28AM, David Marchand wrote: >>> > Hello CI guys, >>> > >>> > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson >>> > <bruce.richardson@intel.com> wrote: >>> >> This patchset proposed increasing the minimum meson version to 0.57 >>> >> and makes changes to update our build files appropriately for that >>> >> change: replacing deprecated functions, removing unnecessary version >>> >> checks and taking advantage of some new capabilities. >>> >> >>> >> Why 0.57? No one particular reason; it's mainly a conservative version >>> >> bump that doesn't have many impacts, but still gives us the minimum >>> >> updates we need to replace the deprecated get_cross_properties fn >>> >> and have a few extra features guaranteed available. >>> >> >>> >> Bruce Richardson (5): >>> >> build: increase minimum meson version to 0.57 >>> >> build: remove version check on compiler links function >>> >> build: remove unnecessary version checks >>> >> build: use version file support from meson >>> >> build: replace deprecated meson function >>> >> >>> >> .ci/linux-setup.sh | 2 +- >>> >> config/arm/meson.build | 4 ++-- >>> >> config/meson.build | 8 ++++---- >>> >> config/riscv/meson.build | 4 ++-- >>> >> doc/api/meson.build | 2 +- >>> >> doc/guides/linux_gsg/sys_reqs.rst | 2 +- >>> >> doc/guides/prog_guide/build-sdk-meson.rst | 2 +- >>> >> drivers/common/qat/meson.build | 2 +- >>> >> drivers/crypto/ipsec_mb/meson.build | 2 +- >>> >> drivers/event/cnxk/meson.build | 2 +- >>> >> drivers/meson.build | 7 ++----- >>> >> drivers/net/cnxk/meson.build | 2 +- >>> >> lib/meson.build | 6 ------ >>> >> meson.build | 7 ++----- >>> >> 14 files changed, 20 insertions(+), 32 deletions(-) >>> > This series can't be merged until the (UNH and LoongArch) CI are ready >>> > for such a change. >>> > >>> > TL;DR: the meson minimum version is being changed from 0.53.2 to 0.57 >>> > in the current release. >>> > >>> > @UNH @Min Zhou >>> > How long would it take for all CI to be ready for this change? >>> It's OK for Loongson lab. The meson version for DPDK CI in Loongson lab >>> is 0.63.0. >>> > Important note: if relevant to your CI, testing against LTS branches >>> > must still be done with the 0.53.2 version, so no change relying on >>> > post 0.53.2 meson feature gets backported. >>> > >>> > >>> >>>
On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson <bruce.richardson@intel.com> wrote: > > This patchset proposed increasing the minimum meson version to 0.57 > and makes changes to update our build files appropriately for that > change: replacing deprecated functions, removing unnecessary version > checks and taking advantage of some new capabilities. > > Why 0.57? No one particular reason; it's mainly a conservative version > bump that doesn't have many impacts, but still gives us the minimum > updates we need to replace the deprecated get_cross_properties fn > and have a few extra features guaranteed available. > > Bruce Richardson (5): > build: increase minimum meson version to 0.57 > build: remove version check on compiler links function > build: remove unnecessary version checks > build: use version file support from meson > build: replace deprecated meson function > > .ci/linux-setup.sh | 2 +- > config/arm/meson.build | 4 ++-- > config/meson.build | 8 ++++---- > config/riscv/meson.build | 4 ++-- > doc/api/meson.build | 2 +- > doc/guides/linux_gsg/sys_reqs.rst | 2 +- > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > drivers/common/qat/meson.build | 2 +- > drivers/crypto/ipsec_mb/meson.build | 2 +- > drivers/event/cnxk/meson.build | 2 +- > drivers/meson.build | 7 ++----- > drivers/net/cnxk/meson.build | 2 +- > lib/meson.build | 6 ------ > meson.build | 7 ++----- > 14 files changed, 20 insertions(+), 32 deletions(-) The series looks good, and CI guys gave me the green light. Series applied, thanks Bruce. There is one remaining TODO in config/meson.build: # MS linker requires special treatment. # TODO: use cc.get_linker_id() with Meson >= 0.54 is_ms_compiler = is_windows and (cc.get_id() == 'msvc') is_ms_linker = is_windows and (cc.get_id() == 'clang' or is_ms_compiler)
On Thu, Oct 17, 2024 at 09:53:18AM +0200, David Marchand wrote: > On Fri, Sep 20, 2024 at 2:57 PM Bruce Richardson > <bruce.richardson@intel.com> wrote: > > > > This patchset proposed increasing the minimum meson version to 0.57 > > and makes changes to update our build files appropriately for that > > change: replacing deprecated functions, removing unnecessary version > > checks and taking advantage of some new capabilities. > > > > Why 0.57? No one particular reason; it's mainly a conservative version > > bump that doesn't have many impacts, but still gives us the minimum > > updates we need to replace the deprecated get_cross_properties fn > > and have a few extra features guaranteed available. > > > > Bruce Richardson (5): > > build: increase minimum meson version to 0.57 > > build: remove version check on compiler links function > > build: remove unnecessary version checks > > build: use version file support from meson > > build: replace deprecated meson function > > > > .ci/linux-setup.sh | 2 +- > > config/arm/meson.build | 4 ++-- > > config/meson.build | 8 ++++---- > > config/riscv/meson.build | 4 ++-- > > doc/api/meson.build | 2 +- > > doc/guides/linux_gsg/sys_reqs.rst | 2 +- > > doc/guides/prog_guide/build-sdk-meson.rst | 2 +- > > drivers/common/qat/meson.build | 2 +- > > drivers/crypto/ipsec_mb/meson.build | 2 +- > > drivers/event/cnxk/meson.build | 2 +- > > drivers/meson.build | 7 ++----- > > drivers/net/cnxk/meson.build | 2 +- > > lib/meson.build | 6 ------ > > meson.build | 7 ++----- > > 14 files changed, 20 insertions(+), 32 deletions(-) > > The series looks good, and CI guys gave me the green light. > Series applied, thanks Bruce. > > > There is one remaining TODO in config/meson.build: > > # MS linker requires special treatment. > # TODO: use cc.get_linker_id() with Meson >= 0.54 > is_ms_compiler = is_windows and (cc.get_id() == 'msvc') > is_ms_linker = is_windows and (cc.get_id() == 'clang' or > is_ms_compiler) > Yep. I'm hoping perhaps one of the windows maintainers/devs could look at this because I see a number of possible linker values for windows listed in the table at [1] and I'm not 100% sure which ones are to be accepted here. /Bruce [1] https://mesonbuild.com/Reference-tables.html#linker-ids