xenomai.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: Florian Bezdeka <florian.bezdeka@siemens.com>, xenomai@lists.linux.dev
Cc: Clara Kowalsky <clara.kowalsky@siemens.com>
Subject: Re: [PATCH xenomai-images] compat: Fix compat builds, switch to new ISAR API
Date: Sat, 10 Feb 2024 09:53:33 +0100	[thread overview]
Message-ID: <cdedaf70-6aee-4dcf-99bd-4fe285ac4288@siemens.com> (raw)
In-Reply-To: <20240209-flo-fix-compat-testing-v2-v1-1-cf0d7d52f68c@siemens.com>

On 10.02.24 00:09, Florian Bezdeka wrote:
> The last ISAR update introduced a regression, silently switching our
> -compat builds to -native ones.
> 
> Whenever opt-compat.yml was selected it basically had no effect.
> 
> Adjusting to the new API requires us to specify the prefered version of
> xenomai-compat in addition to xenomai. We have compat builds enabled for
> the stable 3.2 series and current next/master. The affected kas option
> files have been updated.
> 
> Signed-off-by: Florian Bezdeka <florian.bezdeka@siemens.com>
> ---
> Hi all,
> 
> it turned out that some CI jobs are not testing what the naming
> suggests. Since the last ISAR update compat jobs were no compat tests 
> any longer as they were silently migrated to native tasks...
> 
> Internal CI run was successful, but still: Review carefully!
> 
> Best regards,
> Florian
> 
> CC: Jan Kiszka <jan.kiszka@siemens.com>
> CC: Clara Kowalsky <clara.kowalsky@siemens.com>
> ---
>  classes/print-revision.bbclass      |  4 ++--
>  opt-compat.yml                      |  3 ++-
>  opt-xenomai-3.2.x.yml               |  3 ++-
>  opt-xenomai-next.yml                |  1 +
>  recipes-core/images/demo-image.bb   | 21 +++++++++++++++------
>  recipes-xenomai/xenomai/xenomai.inc |  4 +---
>  6 files changed, 23 insertions(+), 13 deletions(-)
> 
> diff --git a/classes/print-revision.bbclass b/classes/print-revision.bbclass
> index ca4aa7b..7674129 100644
> --- a/classes/print-revision.bbclass
> +++ b/classes/print-revision.bbclass
> @@ -18,6 +18,6 @@ def get_commit(d):
>  COMMIT="${@get_commit(d)}"
>  
>  dpkg_runbuild:prepend() {
> -    bbplain $(printf "%s-%s: Building revision %.20s\n" \
> -                     ${PN} ${PV} ${COMMIT})
> +    bbplain $(printf "%s-%s: Building revision %.20s for %s\n" \
> +                     ${PN} ${PV} ${COMMIT} ${PACKAGE_ARCH})
>  }
> diff --git a/opt-compat.yml b/opt-compat.yml
> index 734066a..df01da8 100644
> --- a/opt-compat.yml
> +++ b/opt-compat.yml
> @@ -1,7 +1,7 @@
>  #
>  # Xenomai Real-Time System
>  #
> -# Copyright (c) Siemens AG, 2022
> +# Copyright (c) Siemens AG, 2022-2024
>  #
>  # Authors:
>  #  Florian Bezdeka <florian.bezdeka@siemens.com>
> @@ -15,3 +15,4 @@ header:
>  local_conf_header:
>    compat: |
>      ISAR_ENABLE_COMPAT_ARCH = "1"
> +    XENOMAI_PACKAGE_NAME_SUFFIX = "-compat"
> diff --git a/opt-xenomai-3.2.x.yml b/opt-xenomai-3.2.x.yml
> index 401efa2..117161e 100644
> --- a/opt-xenomai-3.2.x.yml
> +++ b/opt-xenomai-3.2.x.yml
> @@ -1,7 +1,7 @@
>  #
>  # Xenomai Real-Time System
>  #
> -# Copyright (c) Siemens AG, 2021
> +# Copyright (c) Siemens AG, 2021-2024
>  #
>  # Authors:
>  #  Jan Kiszka <jan.kiszka@siemens.com>
> @@ -15,3 +15,4 @@ header:
>  local_conf_header:
>    xenomai-3-2-x: |
>      PREFERRED_VERSION_xenomai = "stable-3.2.x"
> +    PREFERRED_VERSION_xenomai-compat = "stable-3.2.x"

This should be applied consistently across the whole tree.

> diff --git a/opt-xenomai-next.yml b/opt-xenomai-next.yml
> index fd2fbab..132a329 100644
> --- a/opt-xenomai-next.yml
> +++ b/opt-xenomai-next.yml
> @@ -15,3 +15,4 @@ header:
>  local_conf_header:
>    xenomai-latest: |
>      PREFERRED_VERSION_xenomai = "next"
> +    PREFERRED_VERSION_xenomai-compat = "next"
> diff --git a/recipes-core/images/demo-image.bb b/recipes-core/images/demo-image.bb
> index e19a038..7bb834c 100644
> --- a/recipes-core/images/demo-image.bb
> +++ b/recipes-core/images/demo-image.bb
> @@ -1,7 +1,7 @@
>  #
>  # Xenomai Real-Time System
>  #
> -# Copyright (c) Siemens AG, 2018
> +# Copyright (c) Siemens AG, 2018-2024
>  #
>  # Authors:
>  #  Jan Kiszka <jan.kiszka@siemens.com>
> @@ -27,9 +27,20 @@ def has_testsuite_package(d):
>  
>  def get_testsuite_package_names(d):
>      if not has_testsuite_package(d):
> -        return ""
> +        return []
>  
> -    return "xenomai-testsuite xenomai-testsuite-dbgsym"
> +    return ["xenomai-testsuite", "xenomai-testsuite-dbgsym"]
> +
> +def get_package_names(d):
> +    pkgs = ["xenomai-runtime", "xenomai-runtime-dbgsym", "libxenomai1-dbgsym"]
> +    pkgs = pkgs + get_testsuite_package_names(d)
> +    pkg_suffix = d.getVar("XENOMAI_PACKAGE_NAME_SUFFIX")

... d.getVar(...) or ""

> +
> +    if pkg_suffix:

... avoids this test.

> +        for i in range(len(pkgs)):
> +            pkgs[i] = pkgs[i] + pkg_suffix
> +
> +    return " ".join(pkgs)

" ".join([p + pkg_suffix for p in pkgs])

>  
>  # Install gdb only for older stable releases. Enables gdb tests and avoids a
>  # arch missmatch for compat builds on newer releases.
> @@ -41,9 +52,7 @@ IMAGE_PREINSTALL += " \
>      iw wireless-tools wpasupplicant dbus \
>      lsb-release"
>  
> -IMAGE_INSTALL:append:xenomai3 = " xenomai-runtime xenomai-runtime-dbgsym"
> -IMAGE_INSTALL:append:xenomai3 = " ${@get_testsuite_package_names(d)}"
> -IMAGE_INSTALL:append:xenomai3 = " libxenomai1-dbgsym"
> +IMAGE_INSTALL:append:xenomai3 = " ${@get_package_names(d)}"
>  IMAGE_INSTALL:append:xenomai4 = " libevl"
>  
>  IMAGE_INSTALL += "customizations sshd-regen-keys expand-on-first-boot"
> diff --git a/recipes-xenomai/xenomai/xenomai.inc b/recipes-xenomai/xenomai/xenomai.inc
> index 95b2875..efb92ad 100644
> --- a/recipes-xenomai/xenomai/xenomai.inc
> +++ b/recipes-xenomai/xenomai/xenomai.inc
> @@ -1,7 +1,7 @@
>  #
>  # Xenomai Real-Time System
>  #
> -# Copyright (c) Siemens AG, 2018-2023
> +# Copyright (c) Siemens AG, 2018-2024
>  #
>  # Authors:
>  #  Jan Kiszka <jan.kiszka@siemens.com>
> @@ -21,8 +21,6 @@ PROVIDES += "libxenomai1"
>  PROVIDES += "libxenomai-dev"
>  PROVIDES += "libxenomai1-dbgsym"
>  
> -PACKAGE_ARCH:compat-arch = "${COMPAT_DISTRO_ARCH}"
> -
>  do_prepare_build() {
>      # Xenomai currently does not maintain its changelog, plus we want the
>      # actual package version in there.
> 
> ---
> base-commit: 9c7bfa8f1af0faa68d19778d0e0a559f407e27df
> change-id: 20240209-flo-fix-compat-testing-v2-1a1157b6982a
> 
> Best regards,

Thanks for catching and fixing this!

Jan

-- 
Siemens AG, Technology
Linux Expert Center


      reply	other threads:[~2024-02-10  8:53 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-09 23:09 [PATCH xenomai-images] compat: Fix compat builds, switch to new ISAR API Florian Bezdeka
2024-02-10  8:53 ` Jan Kiszka [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cdedaf70-6aee-4dcf-99bd-4fe285ac4288@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=clara.kowalsky@siemens.com \
    --cc=florian.bezdeka@siemens.com \
    --cc=xenomai@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).