Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra
@ 2026-09-14  7:52 Thomas Petazzoni via buildroot
  2026-09-15 17:11 ` Julien Olivain via buildroot
  2026-09-25 14:44 ` Raphaël Mélotte via buildroot
  0 siblings, 2 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-09-14  7:52 UTC (permalink / raw)
  To: buildroot; +Cc: Thomas Petazzoni

There's recently been autobuilder failures on
toolchain-external-bootlin, but I wasn't getting notified in the daily
autobuilder e-mail for those failures, which sounded odd as DEVELOPERS
contains:

N:      Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[...]
F:      toolchain/

And indeed, testing:

$ ./utils/get-developers -p toolchain-external-bootlin

returned nothing.

Turns out that the regexp FIND_INFRA_IN_PATCH and FIND_INFRA_IN_MK
used to find the package infrastructure, and ultimately decide if a
given .mk file contains a package, was a bit too strict:

"^\+\$\(eval \$\((host-)?([^-]*)-package\)\)$"

This would only allow packages named <something>-package or
host-<something>-package, but the <something> should not contain any
dash ("-"). So this works fine for cmake-package,
host-autotools-package, but not for toolchain-external-package where
<something> is toolchain-external and it contains a dash.

We fix this by relaxing the regexp a bit and allowing any character in
<something>. Consider the rest of the regexp that expects $(eval
$(<host>-<something>-package)), it seems highly unlikely to match
anything else but the line we're interested in.

With this fix:

$ ./utils/get-developers -p toolchain-external-bootlin
Giulio Benetti <giulio.benetti@benettiengineering.com>
Romain Naour <romain.naour@gmail.com>
Thomas Petazzoni <thomas.petazzoni@bootlin.com>

This issue has existed since the toolchain-external-package
infrastructure had been added.

Fixes: 1c99d70e5210f9d7b475736e0360ed63d16584f2 ("toolchain-external: introduce toolchain-external-package")
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 utils/getdeveloperlib.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/utils/getdeveloperlib.py b/utils/getdeveloperlib.py
index b5e7b89e72..4321df8bfe 100644
--- a/utils/getdeveloperlib.py
+++ b/utils/getdeveloperlib.py
@@ -12,7 +12,7 @@ brpath = os.path.normpath(os.path.join(os.path.dirname(__file__), ".."))
 # Patch parsing functions
 #
 
-FIND_INFRA_IN_PATCH = re.compile(r"^\+\$\(eval \$\((host-)?([^-]*)-package\)\)$")
+FIND_INFRA_IN_PATCH = re.compile(r"^\+\$\(eval \$\((host-)?(.*)-package\)\)$")
 
 
 def analyze_patch(patch):
@@ -35,7 +35,7 @@ def analyze_patch(patch):
     return (files, infras)
 
 
-FIND_INFRA_IN_MK = re.compile(r"^\$\(eval \$\((host-)?([^-]*)-package\)\)$")
+FIND_INFRA_IN_MK = re.compile(r"^\$\(eval \$\((host-)?(.*)-package\)\)$")
 
 
 def fname_get_package_infra(fname):
-- 
2.55.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra
  2026-09-14  7:52 [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra Thomas Petazzoni via buildroot
@ 2026-09-15 17:11 ` Julien Olivain via buildroot
  2026-09-25 14:44 ` Raphaël Mélotte via buildroot
  1 sibling, 0 replies; 3+ messages in thread
From: Julien Olivain via buildroot @ 2026-09-15 17:11 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: buildroot

On 14/09/2026 09:52, Thomas Petazzoni via buildroot wrote:
> There's recently been autobuilder failures on
> toolchain-external-bootlin, but I wasn't getting notified in the daily
> autobuilder e-mail for those failures, which sounded odd as DEVELOPERS
> contains:
> 
> N:      Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> [...]
> F:      toolchain/
> 
> And indeed, testing:
> 
> $ ./utils/get-developers -p toolchain-external-bootlin
> 
> returned nothing.
> 
> Turns out that the regexp FIND_INFRA_IN_PATCH and FIND_INFRA_IN_MK
> used to find the package infrastructure, and ultimately decide if a
> given .mk file contains a package, was a bit too strict:
> 
> "^\+\$\(eval \$\((host-)?([^-]*)-package\)\)$"
> 
> This would only allow packages named <something>-package or
> host-<something>-package, but the <something> should not contain any
> dash ("-"). So this works fine for cmake-package,
> host-autotools-package, but not for toolchain-external-package where
> <something> is toolchain-external and it contains a dash.
> 
> We fix this by relaxing the regexp a bit and allowing any character in
> <something>. Consider the rest of the regexp that expects $(eval
> $(<host>-<something>-package)), it seems highly unlikely to match
> anything else but the line we're interested in.
> 
> With this fix:
> 
> $ ./utils/get-developers -p toolchain-external-bootlin
> Giulio Benetti <giulio.benetti@benettiengineering.com>
> Romain Naour <romain.naour@gmail.com>
> Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> This issue has existed since the toolchain-external-package
> infrastructure had been added.
> 
> Fixes: 1c99d70e5210f9d7b475736e0360ed63d16584f2 ("toolchain-external: 
> introduce toolchain-external-package")
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Applied to master, thanks.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra
  2026-09-14  7:52 [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra Thomas Petazzoni via buildroot
  2026-09-15 17:11 ` Julien Olivain via buildroot
@ 2026-09-25 14:44 ` Raphaël Mélotte via buildroot
  1 sibling, 0 replies; 3+ messages in thread
From: Raphaël Mélotte via buildroot @ 2026-09-25 14:44 UTC (permalink / raw)
  To: buildroot, Thomas Petazzoni; +Cc: Raphaël Mélotte

In reply of:
> There's recently been autobuilder failures on
> toolchain-external-bootlin, but I wasn't getting notified in the daily
> autobuilder e-mail for those failures, which sounded odd as DEVELOPERS
> contains:
> 
> N:      Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> [...]
> F:      toolchain/
> 
> And indeed, testing:
> 
> $ ./utils/get-developers -p toolchain-external-bootlin
> 
> returned nothing.
> 
> Turns out that the regexp FIND_INFRA_IN_PATCH and FIND_INFRA_IN_MK
> used to find the package infrastructure, and ultimately decide if a
> given .mk file contains a package, was a bit too strict:
> 
> "^\+\$\(eval \$\((host-)?([^-]*)-package\)\)$"
> 
> This would only allow packages named <something>-package or
> host-<something>-package, but the <something> should not contain any
> dash ("-"). So this works fine for cmake-package,
> host-autotools-package, but not for toolchain-external-package where
> <something> is toolchain-external and it contains a dash.
> 
> We fix this by relaxing the regexp a bit and allowing any character in
> <something>. Consider the rest of the regexp that expects $(eval
> $(<host>-<something>-package)), it seems highly unlikely to match
> anything else but the line we're interested in.
> 
> With this fix:
> 
> $ ./utils/get-developers -p toolchain-external-bootlin
> Giulio Benetti <giulio.benetti@benettiengineering.com>
> Romain Naour <romain.naour@gmail.com>
> Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> This issue has existed since the toolchain-external-package
> infrastructure had been added.
> 
> Fixes: 1c99d70e5210f9d7b475736e0360ed63d16584f2 ("toolchain-external: introduce toolchain-external-package")
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Applied to 2025.02.x, 2026.08.x. Thanks

> ---
>  utils/getdeveloperlib.py | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/utils/getdeveloperlib.py b/utils/getdeveloperlib.py
> index b5e7b89e72..4321df8bfe 100644
> --- a/utils/getdeveloperlib.py
> +++ b/utils/getdeveloperlib.py
> @@ -12,7 +12,7 @@ brpath = os.path.normpath(os.path.join(os.path.dirname(__file__), ".."))
>  # Patch parsing functions
>  #
>  
> -FIND_INFRA_IN_PATCH = re.compile(r"^\+\$\(eval \$\((host-)?([^-]*)-package\)\)$")
> +FIND_INFRA_IN_PATCH = re.compile(r"^\+\$\(eval \$\((host-)?(.*)-package\)\)$")
>  
>  
>  def analyze_patch(patch):
> @@ -35,7 +35,7 @@ def analyze_patch(patch):
>      return (files, infras)
>  
>  
> -FIND_INFRA_IN_MK = re.compile(r"^\$\(eval \$\((host-)?([^-]*)-package\)\)$")
> +FIND_INFRA_IN_MK = re.compile(r"^\$\(eval \$\((host-)?(.*)-package\)\)$")
>  
>  
>  def fname_get_package_infra(fname):
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-09-25 14:44 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-14  7:52 [Buildroot] [PATCH] utils/getdeveloperlib.py: fix regexp used to find package infra Thomas Petazzoni via buildroot
2026-09-15 17:11 ` Julien Olivain via buildroot
2026-09-25 14:44 ` Raphaël Mélotte via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox