Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0
@ 2025-03-26 11:16 Maxime Leroy
  2025-03-26 11:16 ` [Buildroot] [PATCH 2/2] package/grout: new package Maxime Leroy
                   ` (2 more replies)
  0 siblings, 3 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 11:16 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This new version is required to compile grout v8.4.0.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 package/libecoli/libecoli.hash | 2 +-
 package/libecoli/libecoli.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libecoli/libecoli.hash b/package/libecoli/libecoli.hash
index 433550f91b..f973b6f254 100644
--- a/package/libecoli/libecoli.hash
+++ b/package/libecoli/libecoli.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  e66a85a35bae644b0baf9a4e6d084ff926ebaa12023f9df9f34e8f7a46834da8  libecoli-0.3.0.tar.gz
+sha256  bc9ca742f32dc7787146de4cbc3997b28356adaf219049304bbc3368d25b7395  libecoli-0.5.0.tar.gz
 sha256  e58bf9ec962bee9b3e37abcaa0bc0ec940b05efdc1d1a5a4d9e2fdbcc08b7bdd  LICENSE
diff --git a/package/libecoli/libecoli.mk b/package/libecoli/libecoli.mk
index f260467d1f..f989e7b9cd 100644
--- a/package/libecoli/libecoli.mk
+++ b/package/libecoli/libecoli.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBECOLI_VERSION = 0.3.0
+LIBECOLI_VERSION = 0.5.0
 LIBECOLI_SITE = $(call github,rjarry,libecoli,v$(LIBECOLI_VERSION))
 LIBECOLI_INSTALL_STAGING = YES
 LIBECOLI_LICENSE = BSD-3-Clause
-- 
2.43.0

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

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

* [Buildroot] [PATCH 2/2] package/grout: new package
  2025-03-26 11:16 [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-03-26 11:16 ` Maxime Leroy
  2025-03-26 11:26   ` Vincent Jardin
  2025-03-26 11:21 ` [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Vincent Jardin
  2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
  2 siblings, 1 reply; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 11:16 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Grout is a Graph router based on DPDK.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 DEVELOPERS               |  3 +++
 package/Config.in        |  1 +
 package/grout/Config.in  | 13 +++++++++++++
 package/grout/grout.hash |  2 ++
 package/grout/grout.mk   | 24 ++++++++++++++++++++++++
 5 files changed, 43 insertions(+)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 44f7684c97..c9871f5d32 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2383,6 +2383,9 @@ F:	package/libtraceevent/
 F:	package/libtracefs
 F:	package/linux-tools/linux-tool-rtla.mk.in
 
+N:	Maxime Leroy <maxime@leroys.fr>
+F:	package/grout
+
 N:	Michael Durrant <mdurrant@arcturusnetworks.com>
 F:	board/arcturus/
 F:	configs/arcturus_ucp1020_defconfig
diff --git a/package/Config.in b/package/Config.in
index d8751fc19f..854cbc6cca 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2493,6 +2493,7 @@ endif
 	source "package/gesftpserver/Config.in"
 	source "package/gloox/Config.in"
 	source "package/glorytun/Config.in"
+	source "package/grout/Config.in"
 	source "package/gupnp-tools/Config.in"
 	source "package/gutenprint/Config.in"
 	source "package/hans/Config.in"
diff --git a/package/grout/Config.in b/package/grout/Config.in
new file mode 100644
index 0000000000..a39c3283eb
--- /dev/null
+++ b/package/grout/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_GROUT
+	bool "grout"
+	depends on BR2_ENABLE_LOCALE
+	select BR2_PACKAGE_DPDK
+	select BR2_PACKAGE_LIBEVENT
+	select BR2_PACKAGE_NUMACTL
+	select BR2_PACKAGE_LIBECOLI
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
+	help
+	  Graph router based on DPDK
+
+	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
diff --git a/package/grout/grout.hash b/package/grout/grout.hash
new file mode 100644
index 0000000000..7c06a995f5
--- /dev/null
+++ b/package/grout/grout.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
new file mode 100644
index 0000000000..0d6fb8dce9
--- /dev/null
+++ b/package/grout/grout.mk
@@ -0,0 +1,24 @@
+################################################################################
+#
+# grout
+#
+################################################################################
+
+GROUT_VERSION = 0.8.4
+GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
+GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
+GROUT_LICENSE = BSD-3-Clause
+GROUT_LICENSE_FILES = LICENSE
+
+# Avoid using buildroot commit hash
+GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
+
+GROUT_DEPENDENCIES = \
+	host-pkgconf \
+	dpdk \
+	libevent \
+	numactl \
+	libecoli \
+	util-linux
+
+$(eval $(meson-package))
-- 
2.43.0

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

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

* Re: [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0
  2025-03-26 11:16 [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
  2025-03-26 11:16 ` [Buildroot] [PATCH 2/2] package/grout: new package Maxime Leroy
@ 2025-03-26 11:21 ` Vincent Jardin
  2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
  2 siblings, 0 replies; 23+ messages in thread
From: Vincent Jardin @ 2025-03-26 11:21 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Robin Jarry, Julien Olivain

On Wed, Mar 26, 2025 at 12:16:50PM +0100, Maxime Leroy wrote:
> This new version is required to compile grout v8.4.0.

LGTM, you welcome Maxime for your first contribution. Looking to get
more from you.

> 
> Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>

> ---
>  package/libecoli/libecoli.hash | 2 +-
>  package/libecoli/libecoli.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH 2/2] package/grout: new package
  2025-03-26 11:16 ` [Buildroot] [PATCH 2/2] package/grout: new package Maxime Leroy
@ 2025-03-26 11:26   ` Vincent Jardin
  2025-03-26 12:24     ` Maxime Leroy
  0 siblings, 1 reply; 23+ messages in thread
From: Vincent Jardin @ 2025-03-26 11:26 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Robin Jarry, Julien Olivain

Hi Maxime,

see below

I am not confortable with the Config.in's select/depend yet, so I'd prefer to
leave those comments for some Buildroot's maintainers.

On Wed, Mar 26, 2025 at 12:16:51PM +0100, Maxime Leroy wrote:
> Grout is a Graph router based on DPDK.
> 
> Signed-off-by: Maxime Leroy <maxime@leroys.fr>
> ---
>  DEVELOPERS               |  3 +++
>  package/Config.in        |  1 +
>  package/grout/Config.in  | 13 +++++++++++++
>  package/grout/grout.hash |  2 ++
>  package/grout/grout.mk   | 24 ++++++++++++++++++++++++
>  5 files changed, 43 insertions(+)
>  create mode 100644 package/grout/Config.in
>  create mode 100644 package/grout/grout.hash
>  create mode 100644 package/grout/grout.mk
> 
> +++ b/package/grout/grout.hash
> @@ -0,0 +1,2 @@
> +# Locally computed:
> +sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz

You need to add the LICENSE's hash too.

> diff --git a/package/grout/grout.mk b/package/grout/grout.mk
> new file mode 100644
> index 0000000000..0d6fb8dce9
> --- /dev/null
> +++ b/package/grout/grout.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# grout
> +#
> +################################################################################
> +
> +GROUT_VERSION = 0.8.4
> +GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
> +GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
> +GROUT_LICENSE = BSD-3-Clause
> +GROUT_LICENSE_FILES = LICENSE
> +
> +# Avoid using buildroot commit hash
> +GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
> +
> +GROUT_DEPENDENCIES = \
> +	host-pkgconf \
> +	dpdk \
> +	libevent \
> +	numactl \
> +	libecoli \
> +	util-linux
> +
> +$(eval $(meson-package))

Since DPDK is a complex topic, will you add a Grout basic check/test just
like it was done for DPDK too ?

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

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

* Re: [Buildroot] [PATCH 2/2] package/grout: new package
  2025-03-26 11:26   ` Vincent Jardin
@ 2025-03-26 12:24     ` Maxime Leroy
  0 siblings, 0 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 12:24 UTC (permalink / raw)
  To: Vincent Jardin; +Cc: buildroot, Robin Jarry, Julien Olivain

Hi Vincent,

Thanks for the review.

Le mer. 26 mars 2025 à 12:26, Vincent Jardin <vjardin@free.fr> a écrit :
>
> Hi Maxime,
>
> see below
>
> I am not confortable with the Config.in's select/depend yet, so I'd prefer to
> leave those comments for some Buildroot's maintainers.
>
> On Wed, Mar 26, 2025 at 12:16:51PM +0100, Maxime Leroy wrote:
> > Grout is a Graph router based on DPDK.
> >
> > Signed-off-by: Maxime Leroy <maxime@leroys.fr>
> > ---
> >  DEVELOPERS               |  3 +++
> >  package/Config.in        |  1 +
> >  package/grout/Config.in  | 13 +++++++++++++
> >  package/grout/grout.hash |  2 ++
> >  package/grout/grout.mk   | 24 ++++++++++++++++++++++++
> >  5 files changed, 43 insertions(+)
> >  create mode 100644 package/grout/Config.in
> >  create mode 100644 package/grout/grout.hash
> >  create mode 100644 package/grout/grout.mk
> >
> > +++ b/package/grout/grout.hash
> > @@ -0,0 +1,2 @@
> > +# Locally computed:
> > +sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz
>
> You need to add the LICENSE's hash too.

I will also add README hash too.

>
> > diff --git a/package/grout/grout.mk b/package/grout/grout.mk
> > new file mode 100644
> > index 0000000000..0d6fb8dce9
> > --- /dev/null
> > +++ b/package/grout/grout.mk
> > @@ -0,0 +1,24 @@
> > +################################################################################
> > +#
> > +# grout
> > +#
> > +################################################################################
> > +
> > +GROUT_VERSION = 0.8.4
> > +GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
> > +GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
> > +GROUT_LICENSE = BSD-3-Clause
> > +GROUT_LICENSE_FILES = LICENSE
> > +
> > +# Avoid using buildroot commit hash
> > +GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
> > +
> > +GROUT_DEPENDENCIES = \
> > +     host-pkgconf \
> > +     dpdk \
> > +     libevent \
> > +     numactl \
> > +     libecoli \
> > +     util-linux
> > +
> > +$(eval $(meson-package))
>
> Since DPDK is a complex topic, will you add a Grout basic check/test just
> like it was done for DPDK too ?

Yes it's my next task. I will do that into an other serie.

Regards,

Maxime

>
> Thanks,
>   Vincent



-- 
-------------------------------
Maxime Leroy
maxime@leroys.fr
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* [Buildroot] [PATCH v2 0/2] Add grout package
  2025-03-26 11:16 [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
  2025-03-26 11:16 ` [Buildroot] [PATCH 2/2] package/grout: new package Maxime Leroy
  2025-03-26 11:21 ` [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Vincent Jardin
@ 2025-03-26 13:26 ` Maxime Leroy
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
                     ` (2 more replies)
  2 siblings, 3 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 13:26 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Changes v1 -> v2:
  - Add LICENSE hash

Maxime Leroy (2):
  package/libecoli: bump version to 0.5.0
  package/grout: new package

 DEVELOPERS                     |  3 +++
 package/Config.in              |  1 +
 package/grout/Config.in        | 13 +++++++++++++
 package/grout/grout.hash       |  3 +++
 package/grout/grout.mk         | 24 ++++++++++++++++++++++++
 package/libecoli/libecoli.hash |  2 +-
 package/libecoli/libecoli.mk   |  2 +-
 7 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk

-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0
  2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
@ 2025-03-26 13:26   ` Maxime Leroy
  2025-03-27  0:23     ` Vincent Jardin
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 2/2] package/grout: new package Maxime Leroy
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
  2 siblings, 1 reply; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 13:26 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This new version is required to compile grout v8.4.0.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 package/libecoli/libecoli.hash | 2 +-
 package/libecoli/libecoli.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libecoli/libecoli.hash b/package/libecoli/libecoli.hash
index 433550f91b..f973b6f254 100644
--- a/package/libecoli/libecoli.hash
+++ b/package/libecoli/libecoli.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  e66a85a35bae644b0baf9a4e6d084ff926ebaa12023f9df9f34e8f7a46834da8  libecoli-0.3.0.tar.gz
+sha256  bc9ca742f32dc7787146de4cbc3997b28356adaf219049304bbc3368d25b7395  libecoli-0.5.0.tar.gz
 sha256  e58bf9ec962bee9b3e37abcaa0bc0ec940b05efdc1d1a5a4d9e2fdbcc08b7bdd  LICENSE
diff --git a/package/libecoli/libecoli.mk b/package/libecoli/libecoli.mk
index f260467d1f..f989e7b9cd 100644
--- a/package/libecoli/libecoli.mk
+++ b/package/libecoli/libecoli.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBECOLI_VERSION = 0.3.0
+LIBECOLI_VERSION = 0.5.0
 LIBECOLI_SITE = $(call github,rjarry,libecoli,v$(LIBECOLI_VERSION))
 LIBECOLI_INSTALL_STAGING = YES
 LIBECOLI_LICENSE = BSD-3-Clause
-- 
2.43.0

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

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

* [Buildroot] [PATCH v2 2/2] package/grout: new package
  2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-03-26 13:26   ` Maxime Leroy
  2025-03-27  0:29     ` Vincent Jardin
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
  2 siblings, 1 reply; 23+ messages in thread
From: Maxime Leroy @ 2025-03-26 13:26 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Grout is a Graph router based on DPDK.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 DEVELOPERS               |  3 +++
 package/Config.in        |  1 +
 package/grout/Config.in  | 13 +++++++++++++
 package/grout/grout.hash |  3 +++
 package/grout/grout.mk   | 24 ++++++++++++++++++++++++
 5 files changed, 44 insertions(+)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 44f7684c97..c9871f5d32 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2383,6 +2383,9 @@ F:	package/libtraceevent/
 F:	package/libtracefs
 F:	package/linux-tools/linux-tool-rtla.mk.in
 
+N:	Maxime Leroy <maxime@leroys.fr>
+F:	package/grout
+
 N:	Michael Durrant <mdurrant@arcturusnetworks.com>
 F:	board/arcturus/
 F:	configs/arcturus_ucp1020_defconfig
diff --git a/package/Config.in b/package/Config.in
index d8751fc19f..854cbc6cca 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2493,6 +2493,7 @@ endif
 	source "package/gesftpserver/Config.in"
 	source "package/gloox/Config.in"
 	source "package/glorytun/Config.in"
+	source "package/grout/Config.in"
 	source "package/gupnp-tools/Config.in"
 	source "package/gutenprint/Config.in"
 	source "package/hans/Config.in"
diff --git a/package/grout/Config.in b/package/grout/Config.in
new file mode 100644
index 0000000000..a39c3283eb
--- /dev/null
+++ b/package/grout/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_GROUT
+	bool "grout"
+	depends on BR2_ENABLE_LOCALE
+	select BR2_PACKAGE_DPDK
+	select BR2_PACKAGE_LIBEVENT
+	select BR2_PACKAGE_NUMACTL
+	select BR2_PACKAGE_LIBECOLI
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
+	help
+	  Graph router based on DPDK
+
+	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
diff --git a/package/grout/grout.hash b/package/grout/grout.hash
new file mode 100644
index 0000000000..cff686ff19
--- /dev/null
+++ b/package/grout/grout.hash
@@ -0,0 +1,3 @@
+# Locally computed:
+sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz
+sha256  1e412aae8da58b718c78b3d7a52eb547004384d4347e4746a22ca6af7522930c  LICENSE
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
new file mode 100644
index 0000000000..0d6fb8dce9
--- /dev/null
+++ b/package/grout/grout.mk
@@ -0,0 +1,24 @@
+################################################################################
+#
+# grout
+#
+################################################################################
+
+GROUT_VERSION = 0.8.4
+GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
+GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
+GROUT_LICENSE = BSD-3-Clause
+GROUT_LICENSE_FILES = LICENSE
+
+# Avoid using buildroot commit hash
+GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
+
+GROUT_DEPENDENCIES = \
+	host-pkgconf \
+	dpdk \
+	libevent \
+	numactl \
+	libecoli \
+	util-linux
+
+$(eval $(meson-package))
-- 
2.43.0

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

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

* Re: [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-03-27  0:23     ` Vincent Jardin
  0 siblings, 0 replies; 23+ messages in thread
From: Vincent Jardin @ 2025-03-27  0:23 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Robin Jarry, Julien Olivain

On Wed, Mar 26, 2025 at 02:26:54PM +0100, Maxime Leroy wrote:
> This new version is required to compile grout v8.4.0.
> 
> Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>

It was already stated OK for me:
  https://lists.buildroot.org/pipermail/buildroot/2025-March/775904.html

> ---
>  package/libecoli/libecoli.hash | 2 +-
>  package/libecoli/libecoli.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/package/libecoli/libecoli.hash b/package/libecoli/libecoli.hash
> index 433550f91b..f973b6f254 100644
> --- a/package/libecoli/libecoli.hash
> +++ b/package/libecoli/libecoli.hash
> @@ -1,3 +1,3 @@
>  # Locally computed:
> -sha256  e66a85a35bae644b0baf9a4e6d084ff926ebaa12023f9df9f34e8f7a46834da8  libecoli-0.3.0.tar.gz
> +sha256  bc9ca742f32dc7787146de4cbc3997b28356adaf219049304bbc3368d25b7395  libecoli-0.5.0.tar.gz
>  sha256  e58bf9ec962bee9b3e37abcaa0bc0ec940b05efdc1d1a5a4d9e2fdbcc08b7bdd  LICENSE
> diff --git a/package/libecoli/libecoli.mk b/package/libecoli/libecoli.mk
> index f260467d1f..f989e7b9cd 100644
> --- a/package/libecoli/libecoli.mk
> +++ b/package/libecoli/libecoli.mk
> @@ -4,7 +4,7 @@
>  #
>  ################################################################################
>  
> -LIBECOLI_VERSION = 0.3.0
> +LIBECOLI_VERSION = 0.5.0
>  LIBECOLI_SITE = $(call github,rjarry,libecoli,v$(LIBECOLI_VERSION))
>  LIBECOLI_INSTALL_STAGING = YES
>  LIBECOLI_LICENSE = BSD-3-Clause
> -- 
> 2.43.0
> 
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v2 2/2] package/grout: new package
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 2/2] package/grout: new package Maxime Leroy
@ 2025-03-27  0:29     ` Vincent Jardin
  0 siblings, 0 replies; 23+ messages in thread
From: Vincent Jardin @ 2025-03-27  0:29 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Robin Jarry, Julien Olivain

Thanks Maxime,

On Wed, Mar 26, 2025 at 02:26:55PM +0100, Maxime Leroy wrote:
> Grout is a Graph router based on DPDK.
> 
> Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>

It LGTMs. I am not 100% confortable with Config.in, so I'd be pleased to
read the comments for a Buildroot maintainer.

Best regards,
  Vincent

> ---
>  DEVELOPERS               |  3 +++
>  package/Config.in        |  1 +
>  package/grout/Config.in  | 13 +++++++++++++
>  package/grout/grout.hash |  3 +++
>  package/grout/grout.mk   | 24 ++++++++++++++++++++++++
>  5 files changed, 44 insertions(+)
>  create mode 100644 package/grout/Config.in
>  create mode 100644 package/grout/grout.hash
>  create mode 100644 package/grout/grout.mk
> 
> diff --git a/DEVELOPERS b/DEVELOPERS
> index 44f7684c97..c9871f5d32 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -2383,6 +2383,9 @@ F:	package/libtraceevent/
>  F:	package/libtracefs
>  F:	package/linux-tools/linux-tool-rtla.mk.in
>  
> +N:	Maxime Leroy <maxime@leroys.fr>
> +F:	package/grout
> +
>  N:	Michael Durrant <mdurrant@arcturusnetworks.com>
>  F:	board/arcturus/
>  F:	configs/arcturus_ucp1020_defconfig
> diff --git a/package/Config.in b/package/Config.in
> index d8751fc19f..854cbc6cca 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -2493,6 +2493,7 @@ endif
>  	source "package/gesftpserver/Config.in"
>  	source "package/gloox/Config.in"
>  	source "package/glorytun/Config.in"
> +	source "package/grout/Config.in"
>  	source "package/gupnp-tools/Config.in"
>  	source "package/gutenprint/Config.in"
>  	source "package/hans/Config.in"
> diff --git a/package/grout/Config.in b/package/grout/Config.in
> new file mode 100644
> index 0000000000..a39c3283eb
> --- /dev/null
> +++ b/pakjjkckage/grout/Config.in
> @@ -0,0 +1,13 @@
> +config BR2_PACKAGE_GROUT
> +	bool "grout"
> +	depends on BR2_ENABLE_LOCALE
> +	select BR2_PACKAGE_DPDK
> +	select BR2_PACKAGE_LIBEVENT
> +	select BR2_PACKAGE_NUMACTL
> +	select BR2_PACKAGE_LIBECOLI
> +	select BR2_PACKAGE_UTIL_LINUX
> +	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
> +	help
> +	  Graph router based on DPDK
> +
> +	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
> diff --git a/package/grout/grout.hash b/package/grout/grout.hash
> new file mode 100644
> index 0000000000..cff686ff19
> --- /dev/null
> +++ b/package/grout/grout.hash
> @@ -0,0 +1,3 @@
> +# Locally computed:
> +sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz
> +sha256  1e412aae8da58b718c78b3d7a52eb547004384d4347e4746a22ca6af7522930c  LICENSE
> diff --git a/package/grout/grout.mk b/package/grout/grout.mk
> new file mode 100644
> index 0000000000..0d6fb8dce9
> --- /dev/null
> +++ b/package/grout/grout.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# grout
> +#
> +################################################################################
> +
> +GROUT_VERSION = 0.8.4
> +GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
> +GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
> +GROUT_LICENSE = BSD-3-Clause
> +GROUT_LICENSE_FILES = LICENSE
> +
> +# Avoid using buildroot commit hash
> +GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
> +
> +GROUT_DEPENDENCIES = \
> +	host-pkgconf \
> +	dpdk \
> +	libevent \
> +	numactl \
> +	libecoli \
> +	util-linux
> +
> +$(eval $(meson-package))
> -- 
> 2.43.0
> 
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* [Buildroot] [PATCH v3 0/3] Add grout package
  2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
  2025-03-26 13:26   ` [Buildroot] [PATCH v2 2/2] package/grout: new package Maxime Leroy
@ 2025-03-28  8:47   ` Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
                       ` (3 more replies)
  2 siblings, 4 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-28  8:47 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Changes v2 -> v3:
  - Add runtime test
Changes v1 -> v2:
  - Add LICENSE hash

Maxime Leroy (3):
  package/libecoli: bump version to 0.5.0
  package/grout: new package
  RFC: support/testing: add grout runtime test

 DEVELOPERS                                    |  4 ++
 package/Config.in                             |  1 +
 package/grout/Config.in                       | 29 +++++++++++
 package/grout/grout.hash                      |  3 ++
 package/grout/grout.mk                        | 32 ++++++++++++
 package/libecoli/libecoli.hash                |  2 +-
 package/libecoli/libecoli.mk                  |  2 +-
 support/testing/tests/package/test_grout.py   | 50 +++++++++++++++++++
 .../package/test_grout/linux-net.fragment     |  4 ++
 9 files changed, 125 insertions(+), 2 deletions(-)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk
 create mode 100644 support/testing/tests/package/test_grout.py
 create mode 100644 support/testing/tests/package/test_grout/linux-net.fragment

-- 
2.43.0

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

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

* [Buildroot] [PATCH v3 1/3] package/libecoli: bump version to 0.5.0
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
@ 2025-03-28  8:47     ` Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 2/3] package/grout: new package Maxime Leroy
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-28  8:47 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This new version is required to compile grout v8.4.0.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>
---
 package/libecoli/libecoli.hash | 2 +-
 package/libecoli/libecoli.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libecoli/libecoli.hash b/package/libecoli/libecoli.hash
index 433550f91b..f973b6f254 100644
--- a/package/libecoli/libecoli.hash
+++ b/package/libecoli/libecoli.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  e66a85a35bae644b0baf9a4e6d084ff926ebaa12023f9df9f34e8f7a46834da8  libecoli-0.3.0.tar.gz
+sha256  bc9ca742f32dc7787146de4cbc3997b28356adaf219049304bbc3368d25b7395  libecoli-0.5.0.tar.gz
 sha256  e58bf9ec962bee9b3e37abcaa0bc0ec940b05efdc1d1a5a4d9e2fdbcc08b7bdd  LICENSE
diff --git a/package/libecoli/libecoli.mk b/package/libecoli/libecoli.mk
index f260467d1f..f989e7b9cd 100644
--- a/package/libecoli/libecoli.mk
+++ b/package/libecoli/libecoli.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBECOLI_VERSION = 0.3.0
+LIBECOLI_VERSION = 0.5.0
 LIBECOLI_SITE = $(call github,rjarry,libecoli,v$(LIBECOLI_VERSION))
 LIBECOLI_INSTALL_STAGING = YES
 LIBECOLI_LICENSE = BSD-3-Clause
-- 
2.43.0

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

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

* [Buildroot] [PATCH v3 2/3] package/grout: new package
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-03-28  8:47     ` Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 3/3] RFC: support/testing: add grout runtime test Maxime Leroy
  2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
  3 siblings, 0 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-28  8:47 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Grout is a Graph router based on DPDK.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>
---
 DEVELOPERS               |  3 +++
 package/Config.in        |  1 +
 package/grout/Config.in  | 13 +++++++++++++
 package/grout/grout.hash |  3 +++
 package/grout/grout.mk   | 24 ++++++++++++++++++++++++
 5 files changed, 44 insertions(+)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 44f7684c97..c9871f5d32 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2383,6 +2383,9 @@ F:	package/libtraceevent/
 F:	package/libtracefs
 F:	package/linux-tools/linux-tool-rtla.mk.in
 
+N:	Maxime Leroy <maxime@leroys.fr>
+F:	package/grout
+
 N:	Michael Durrant <mdurrant@arcturusnetworks.com>
 F:	board/arcturus/
 F:	configs/arcturus_ucp1020_defconfig
diff --git a/package/Config.in b/package/Config.in
index d8751fc19f..854cbc6cca 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2493,6 +2493,7 @@ endif
 	source "package/gesftpserver/Config.in"
 	source "package/gloox/Config.in"
 	source "package/glorytun/Config.in"
+	source "package/grout/Config.in"
 	source "package/gupnp-tools/Config.in"
 	source "package/gutenprint/Config.in"
 	source "package/hans/Config.in"
diff --git a/package/grout/Config.in b/package/grout/Config.in
new file mode 100644
index 0000000000..a39c3283eb
--- /dev/null
+++ b/package/grout/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_GROUT
+	bool "grout"
+	depends on BR2_ENABLE_LOCALE
+	select BR2_PACKAGE_DPDK
+	select BR2_PACKAGE_LIBEVENT
+	select BR2_PACKAGE_NUMACTL
+	select BR2_PACKAGE_LIBECOLI
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
+	help
+	  Graph router based on DPDK
+
+	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
diff --git a/package/grout/grout.hash b/package/grout/grout.hash
new file mode 100644
index 0000000000..cff686ff19
--- /dev/null
+++ b/package/grout/grout.hash
@@ -0,0 +1,3 @@
+# Locally computed:
+sha256  10f8e20b4aa1a8fe928c87b249e23267eef356f39b04994a0b88b52931fcaa4b  v0.8.4.tar.gz
+sha256  1e412aae8da58b718c78b3d7a52eb547004384d4347e4746a22ca6af7522930c  LICENSE
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
new file mode 100644
index 0000000000..0d6fb8dce9
--- /dev/null
+++ b/package/grout/grout.mk
@@ -0,0 +1,24 @@
+################################################################################
+#
+# grout
+#
+################################################################################
+
+GROUT_VERSION = 0.8.4
+GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
+GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
+GROUT_LICENSE = BSD-3-Clause
+GROUT_LICENSE_FILES = LICENSE
+
+# Avoid using buildroot commit hash
+GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
+
+GROUT_DEPENDENCIES = \
+	host-pkgconf \
+	dpdk \
+	libevent \
+	numactl \
+	libecoli \
+	util-linux
+
+$(eval $(meson-package))
-- 
2.43.0

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

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

* [Buildroot] [PATCH v3 3/3] RFC: support/testing: add grout runtime test
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 2/3] package/grout: new package Maxime Leroy
@ 2025-03-28  8:47     ` Maxime Leroy
  2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
  3 siblings, 0 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-03-28  8:47 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This adds a runtime test for Grout, inspired by test_dpdk.py.

It uses the smoke test normally used to validate development on Grout.

The smoke test are copied into the image by enabled the new option
BR2_PACKAGE_GROUT_TESTS.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 DEVELOPERS                                    |  1 +
 package/grout/Config.in                       | 16 ++++++
 package/grout/grout.mk                        |  8 +++
 support/testing/tests/package/test_grout.py   | 50 +++++++++++++++++++
 .../package/test_grout/linux-net.fragment     |  4 ++
 5 files changed, 79 insertions(+)
 create mode 100644 support/testing/tests/package/test_grout.py
 create mode 100644 support/testing/tests/package/test_grout/linux-net.fragment

diff --git a/DEVELOPERS b/DEVELOPERS
index c9871f5d32..82ca05d5c1 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2385,6 +2385,7 @@ F:	package/linux-tools/linux-tool-rtla.mk.in
 
 N:	Maxime Leroy <maxime@leroys.fr>
 F:	package/grout
+F:	support/testing/tests/package/test_grout.py
 
 N:	Michael Durrant <mdurrant@arcturusnetworks.com>
 F:	board/arcturus/
diff --git a/package/grout/Config.in b/package/grout/Config.in
index a39c3283eb..8d1466fa02 100644
--- a/package/grout/Config.in
+++ b/package/grout/Config.in
@@ -11,3 +11,19 @@ config BR2_PACKAGE_GROUT
 	  Graph router based on DPDK
 
 	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
+
+if BR2_PACKAGE_GROUT
+
+config BR2_PACKAGE_GROUT_TESTS
+	bool "Install tests"
+	select BR2_PACKAGE_BASH
+	select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS if BR2_PACKAGE_BUSYBOX
+	select BR2_PACKAGE_IPUTILS
+	select BR2_PACKAGE_IPUTILS_PING
+	select BR2_PACKAGE_SOCAT
+	select BR2_PACKAGE_IPROUTE2
+	select BR2_PACKAGE_TRACEROUTE
+	select BR2_PACKAGE_NDISC6
+	select BR2_PACKAGE_NDISC6_RDISC6
+
+endif
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
index 0d6fb8dce9..19f952330e 100644
--- a/package/grout/grout.mk
+++ b/package/grout/grout.mk
@@ -21,4 +21,12 @@ GROUT_DEPENDENCIES = \
 	libecoli \
 	util-linux
 
+ifeq ($(BR2_PACKAGE_GROUT_TESTS),y)
+define GROUT_INSTALL_TEST_SCRIPTS
+	$(INSTALL) -d $(TARGET_DIR)/usr/share/grout-test/
+	$(INSTALL) -D -m 0755 $(@D)/smoke/*.sh $(TARGET_DIR)/usr/share/grout-test
+endef
+GROUT_POST_INSTALL_TARGET_HOOKS += GROUT_INSTALL_TEST_SCRIPTS
+endif
+
 $(eval $(meson-package))
diff --git a/support/testing/tests/package/test_grout.py b/support/testing/tests/package/test_grout.py
new file mode 100644
index 0000000000..3d66033611
--- /dev/null
+++ b/support/testing/tests/package/test_grout.py
@@ -0,0 +1,50 @@
+import os
+
+import infra.basetest
+
+
+class TestGrout(infra.basetest.BRTest):
+    kernel_fragment = \
+        infra.filepath("tests/package/test_grout/linux-net.fragment")
+    config = \
+        f"""
+        BR2_x86_64=y
+        BR2_x86_nehalem=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_LINUX_KERNEL=y
+        BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+        BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.13.8"
+        BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+        BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux.config"
+        BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{kernel_fragment}"
+        BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
+        BR2_PACKAGE_DPDK=y
+        BR2_ENABLE_LOCALE=y
+        BR2_ENABLE_LOCALE_WHITELIST="C.UTF-8"
+        BR2_GENERATE_LOCALE="C.UTF-8"
+        BR2_PACKAGE_GROUT=y
+        BR2_PACKAGE_GROUT_TESTS=y
+        BR2_TARGET_ROOTFS_EXT2=y
+        BR2_TARGET_ROOTFS_EXT2_SIZE="300M"
+        # BR2_TARGET_ROOTFS_TAR is not set
+        """
+
+    def test_run(self):
+        img = os.path.join(self.builddir, "images", "rootfs.ext2")
+        kern = os.path.join(self.builddir, "images", "bzImage")
+        self.emulator.boot(arch="x86_64",
+                           kernel=kern,
+                           kernel_cmdline=["root=/dev/vda", "console=ttyS0"],
+                           options=["-cpu", "Nehalem", "-m", "2G",
+                                    "-smp", "4",
+                                    "-device", "virtio-rng-pci",
+                                    "-drive", f"file={img},format=raw,if=virtio",
+                                    "-net", "nic,model=virtio",
+                                    "-net", "user"])
+        self.emulator.login()
+
+        # Remove graph, no needs to check we can generate svg (only for developpement)
+        self.assertRunOk("rm /usr/share/grout-test/graph_svg_test.sh")
+
+        # Run smoke tests
+        self.assertRunOk("/usr/share/grout-test/run.sh .", timeout=600)
diff --git a/support/testing/tests/package/test_grout/linux-net.fragment b/support/testing/tests/package/test_grout/linux-net.fragment
new file mode 100644
index 0000000000..6bdd89bd26
--- /dev/null
+++ b/support/testing/tests/package/test_grout/linux-net.fragment
@@ -0,0 +1,4 @@
+CONFIG_VLAN_8021Q=y
+CONFIG_NET_IPIP=y
+CONFIG_IPV6_SEG6_LWTUNNEL=y
+CONFIG_TUN=y
-- 
2.43.0

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

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

* [Buildroot] [PATCH v4 0/3] Add grout package
  2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
                       ` (2 preceding siblings ...)
  2025-03-28  8:47     ` [Buildroot] [PATCH v3 3/3] RFC: support/testing: add grout runtime test Maxime Leroy
@ 2025-04-03 15:39     ` Maxime Leroy
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
                         ` (2 more replies)
  3 siblings, 3 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-04-03 15:39 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Changes v3 -> v4:
  - Bump grout version from 0.8.4 to 0.9
  - Update test_grout.py to support version 0.9 (e.g. adjust taskset usage,
    increase vCPUs from 4 to 6)
  - Add help text for BR2_PACKAGE_GROUT_TESTS
  - Use `BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE` via `BR2_PACKAGE_GROUT_TESTS`
    instead of setting a kernel fragment in the test script
  - Confirmed test_grout passes in CI [1]
Changes v2 -> v3:
  - Add runtime test
Changes v1 -> v2:
  - Add LICENSE hash

[1] https://gitlab.com/maxime-leroy/buildroot/-/jobs/9615201047

Maxime Leroy (3):
  package/libecoli: bump version to 0.5.0
  package/grout: new package
  RFC: support/testing: add grout runtime test

 DEVELOPERS                                  |  4 ++
 package/Config.in                           |  1 +
 package/grout/Config.in                     | 37 ++++++++++++++++
 package/grout/grout.hash                    |  3 ++
 package/grout/grout.mk                      | 39 +++++++++++++++++
 package/libecoli/libecoli.hash              |  2 +-
 package/libecoli/libecoli.mk                |  2 +-
 support/testing/tests/package/test_grout.py | 47 +++++++++++++++++++++
 8 files changed, 133 insertions(+), 2 deletions(-)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk
 create mode 100644 support/testing/tests/package/test_grout.py

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

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

* [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0
  2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
@ 2025-04-03 15:39       ` Maxime Leroy
  2025-04-24 21:48         ` Thomas Petazzoni via buildroot
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 2/3] package/grout: new package Maxime Leroy
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 3/3] RFC: support/testing: add grout runtime test Maxime Leroy
  2 siblings, 1 reply; 23+ messages in thread
From: Maxime Leroy @ 2025-04-03 15:39 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This new version is required to compile grout v8.4.0.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>
---
 package/libecoli/libecoli.hash | 2 +-
 package/libecoli/libecoli.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/libecoli/libecoli.hash b/package/libecoli/libecoli.hash
index 433550f91b..f973b6f254 100644
--- a/package/libecoli/libecoli.hash
+++ b/package/libecoli/libecoli.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  e66a85a35bae644b0baf9a4e6d084ff926ebaa12023f9df9f34e8f7a46834da8  libecoli-0.3.0.tar.gz
+sha256  bc9ca742f32dc7787146de4cbc3997b28356adaf219049304bbc3368d25b7395  libecoli-0.5.0.tar.gz
 sha256  e58bf9ec962bee9b3e37abcaa0bc0ec940b05efdc1d1a5a4d9e2fdbcc08b7bdd  LICENSE
diff --git a/package/libecoli/libecoli.mk b/package/libecoli/libecoli.mk
index f260467d1f..f989e7b9cd 100644
--- a/package/libecoli/libecoli.mk
+++ b/package/libecoli/libecoli.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBECOLI_VERSION = 0.3.0
+LIBECOLI_VERSION = 0.5.0
 LIBECOLI_SITE = $(call github,rjarry,libecoli,v$(LIBECOLI_VERSION))
 LIBECOLI_INSTALL_STAGING = YES
 LIBECOLI_LICENSE = BSD-3-Clause
-- 
2.43.0

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

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

* [Buildroot] [PATCH v4 2/3] package/grout: new package
  2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-04-03 15:39       ` Maxime Leroy
  2025-04-24 21:51         ` Thomas Petazzoni via buildroot
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 3/3] RFC: support/testing: add grout runtime test Maxime Leroy
  2 siblings, 1 reply; 23+ messages in thread
From: Maxime Leroy @ 2025-04-03 15:39 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

Grout is a Graph router based on DPDK.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
Reviewed-by: Vincent Jardin <vjardin@free.fr>
---
 DEVELOPERS               |  3 +++
 package/Config.in        |  1 +
 package/grout/Config.in  | 13 +++++++++++++
 package/grout/grout.hash |  3 +++
 package/grout/grout.mk   | 24 ++++++++++++++++++++++++
 5 files changed, 44 insertions(+)
 create mode 100644 package/grout/Config.in
 create mode 100644 package/grout/grout.hash
 create mode 100644 package/grout/grout.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 1c84f95943..1cbbf829c5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2384,6 +2384,9 @@ F:	package/libtraceevent/
 F:	package/libtracefs
 F:	package/linux-tools/linux-tool-rtla.mk.in
 
+N:	Maxime Leroy <maxime@leroys.fr>
+F:	package/grout
+
 N:	Meena Murthy <meena.murthy@amarulasolutions.com>
 F:	board/engicam/px30core/
 F:	configs/engicam_px30_core_defconfig
diff --git a/package/Config.in b/package/Config.in
index eb22c81d1d..585d206562 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2494,6 +2494,7 @@ endif
 	source "package/gesftpserver/Config.in"
 	source "package/gloox/Config.in"
 	source "package/glorytun/Config.in"
+	source "package/grout/Config.in"
 	source "package/gupnp-tools/Config.in"
 	source "package/gutenprint/Config.in"
 	source "package/hans/Config.in"
diff --git a/package/grout/Config.in b/package/grout/Config.in
new file mode 100644
index 0000000000..a39c3283eb
--- /dev/null
+++ b/package/grout/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_GROUT
+	bool "grout"
+	depends on BR2_ENABLE_LOCALE
+	select BR2_PACKAGE_DPDK
+	select BR2_PACKAGE_LIBEVENT
+	select BR2_PACKAGE_NUMACTL
+	select BR2_PACKAGE_LIBECOLI
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
+	help
+	  Graph router based on DPDK
+
+	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
diff --git a/package/grout/grout.hash b/package/grout/grout.hash
new file mode 100644
index 0000000000..c67633afc7
--- /dev/null
+++ b/package/grout/grout.hash
@@ -0,0 +1,3 @@
+# Locally computed:
+sha256  46b0cf938c786c42882a03306575c7855d24158ea50a3ac01aca199e11cdcfd3  v0.9.0.tar.gz
+sha256  1e412aae8da58b718c78b3d7a52eb547004384d4347e4746a22ca6af7522930c  LICENSE
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
new file mode 100644
index 0000000000..a75af27978
--- /dev/null
+++ b/package/grout/grout.mk
@@ -0,0 +1,24 @@
+################################################################################
+#
+# grout
+#
+################################################################################
+
+GROUT_VERSION = 0.9.0
+GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
+GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
+GROUT_LICENSE = BSD-3-Clause
+GROUT_LICENSE_FILES = LICENSE
+
+# Avoid using buildroot commit hash
+GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
+
+GROUT_DEPENDENCIES = \
+	host-pkgconf \
+	dpdk \
+	libevent \
+	numactl \
+	libecoli \
+	util-linux
+
+$(eval $(meson-package))
-- 
2.43.0

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

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

* [Buildroot] [PATCH v4 3/3] RFC: support/testing: add grout runtime test
  2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 2/3] package/grout: new package Maxime Leroy
@ 2025-04-03 15:39       ` Maxime Leroy
  2 siblings, 0 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-04-03 15:39 UTC (permalink / raw)
  To: buildroot; +Cc: Vincent Jardin, Robin Jarry, Julien Olivain, Maxime Leroy

This adds a runtime test for Grout, inspired by test_dpdk.py.

It uses the smoke test normally used to validate development on Grout.

The smoke test are copied into the image by enabled the new option
BR2_PACKAGE_GROUT_TESTS.

Signed-off-by: Maxime Leroy <maxime@leroys.fr>
---
 DEVELOPERS                                  |  1 +
 package/grout/Config.in                     | 24 +++++++++++
 package/grout/grout.mk                      | 15 +++++++
 support/testing/tests/package/test_grout.py | 47 +++++++++++++++++++++
 4 files changed, 87 insertions(+)
 create mode 100644 support/testing/tests/package/test_grout.py

diff --git a/DEVELOPERS b/DEVELOPERS
index 1cbbf829c5..baec4959fc 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2386,6 +2386,7 @@ F:	package/linux-tools/linux-tool-rtla.mk.in
 
 N:	Maxime Leroy <maxime@leroys.fr>
 F:	package/grout
+F:	support/testing/tests/package/test_grout.py
 
 N:	Meena Murthy <meena.murthy@amarulasolutions.com>
 F:	board/engicam/px30core/
diff --git a/package/grout/Config.in b/package/grout/Config.in
index a39c3283eb..5e39697665 100644
--- a/package/grout/Config.in
+++ b/package/grout/Config.in
@@ -11,3 +11,27 @@ config BR2_PACKAGE_GROUT
 	  Graph router based on DPDK
 
 	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
+
+if BR2_PACKAGE_GROUT
+
+config BR2_PACKAGE_GROUT_TESTS
+	bool "Install tests"
+	select BR2_PACKAGE_BASH
+	select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS if BR2_PACKAGE_BUSYBOX
+	select BR2_PACKAGE_IPUTILS
+	select BR2_PACKAGE_IPUTILS_PING
+	select BR2_PACKAGE_SOCAT
+	select BR2_PACKAGE_IPROUTE2
+	select BR2_PACKAGE_TRACEROUTE
+	select BR2_PACKAGE_NDISC6
+	select BR2_PACKAGE_NDISC6_RDISC6
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS
+
+	help
+	  Install smoke tests.
+
+	  These tests check basic functionality like packet forwarding,
+	  SRv6, VLAN, ICMP, etc.
+
+endif
diff --git a/package/grout/grout.mk b/package/grout/grout.mk
index a75af27978..702249668f 100644
--- a/package/grout/grout.mk
+++ b/package/grout/grout.mk
@@ -21,4 +21,19 @@ GROUT_DEPENDENCIES = \
 	libecoli \
 	util-linux
 
+ifeq ($(BR2_PACKAGE_GROUT_TESTS),y)
+define GROUT_INSTALL_TEST_SCRIPTS
+	$(INSTALL) -d $(TARGET_DIR)/usr/share/grout-test/
+	$(INSTALL) -D -m 0755 $(@D)/smoke/*.sh $(TARGET_DIR)/usr/share/grout-test
+endef
+GROUT_POST_INSTALL_TARGET_HOOKS += GROUT_INSTALL_TEST_SCRIPTS
+
+define GROUT_LINUX_CONFIG_FIXUPS
+	$(call KCONFIG_ENABLE_OPT,CONFIG_VLAN_8021Q)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_NET_IPIP)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_IPV6_SEG6_LWTUNNEL)
+	$(call KCONFIG_ENABLE_OPT,CONFIG_TUN)
+endef
+endif
+
 $(eval $(meson-package))
diff --git a/support/testing/tests/package/test_grout.py b/support/testing/tests/package/test_grout.py
new file mode 100644
index 0000000000..f14e481c52
--- /dev/null
+++ b/support/testing/tests/package/test_grout.py
@@ -0,0 +1,47 @@
+import os
+
+import infra.basetest
+
+
+class TestGrout(infra.basetest.BRTest):
+    config = \
+        """
+        BR2_x86_64=y
+        BR2_x86_nehalem=y
+        BR2_TOOLCHAIN_EXTERNAL=y
+        BR2_LINUX_KERNEL=y
+        BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+        BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.13.8"
+        BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+        BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux.config"
+        BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
+        BR2_PACKAGE_DPDK=y
+        BR2_ENABLE_LOCALE=y
+        BR2_ENABLE_LOCALE_WHITELIST="C.UTF-8"
+        BR2_GENERATE_LOCALE="C.UTF-8"
+        BR2_PACKAGE_GROUT=y
+        BR2_PACKAGE_GROUT_TESTS=y
+        BR2_TARGET_ROOTFS_EXT2=y
+        BR2_TARGET_ROOTFS_EXT2_SIZE="300M"
+        # BR2_TARGET_ROOTFS_TAR is not set
+        """
+
+    def test_run(self):
+        img = os.path.join(self.builddir, "images", "rootfs.ext2")
+        kern = os.path.join(self.builddir, "images", "bzImage")
+        self.emulator.boot(arch="x86_64",
+                           kernel=kern,
+                           kernel_cmdline=["root=/dev/vda", "console=ttyS0"],
+                           options=["-cpu", "Nehalem", "-m", "2G",
+                                    "-smp", "6",
+                                    "-device", "virtio-rng-pci",
+                                    "-drive", f"file={img},format=raw,if=virtio",
+                                    "-net", "nic,model=virtio",
+                                    "-net", "user"])
+        self.emulator.login()
+
+        # Remove graph, no needs to check we can generate svg (only for developpement)
+        self.assertRunOk("rm /usr/share/grout-test/graph_svg_test.sh")
+
+        # Run smoke tests
+        self.assertRunOk("/usr/share/grout-test/run.sh .", timeout=600)
-- 
2.43.0

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

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

* Re: [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
@ 2025-04-24 21:48         ` Thomas Petazzoni via buildroot
  0 siblings, 0 replies; 23+ messages in thread
From: Thomas Petazzoni via buildroot @ 2025-04-24 21:48 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Vincent Jardin, Robin Jarry, Julien Olivain

On Thu,  3 Apr 2025 17:39:48 +0200
Maxime Leroy <maxime@leroys.fr> wrote:

> This new version is required to compile grout v8.4.0.
> 
> Signed-off-by: Maxime Leroy <maxime@leroys.fr>
> Reviewed-by: Vincent Jardin <vjardin@free.fr>
> ---
>  package/libecoli/libecoli.hash | 2 +-
>  package/libecoli/libecoli.mk   | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/3] package/grout: new package
  2025-04-03 15:39       ` [Buildroot] [PATCH v4 2/3] package/grout: new package Maxime Leroy
@ 2025-04-24 21:51         ` Thomas Petazzoni via buildroot
  2025-04-25  8:19           ` Maxime Leroy
  0 siblings, 1 reply; 23+ messages in thread
From: Thomas Petazzoni via buildroot @ 2025-04-24 21:51 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Vincent Jardin, Robin Jarry, Julien Olivain

Hello Maxime,

Thanks for your patch! I have applied it, after doing a number of
changes, see below.

On Thu,  3 Apr 2025 17:39:49 +0200
Maxime Leroy <maxime@leroys.fr> wrote:

> diff --git a/DEVELOPERS b/DEVELOPERS
> index 1c84f95943..1cbbf829c5 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -2384,6 +2384,9 @@ F:	package/libtraceevent/
>  F:	package/libtracefs
>  F:	package/linux-tools/linux-tool-rtla.mk.in
>  
> +N:	Maxime Leroy <maxime@leroys.fr>
> +F:	package/grout

                     ^^ Nit: missing final slash.


> diff --git a/package/grout/Config.in b/package/grout/Config.in
> new file mode 100644
> index 0000000000..a39c3283eb
> --- /dev/null
> +++ b/package/grout/Config.in
> @@ -0,0 +1,13 @@
> +config BR2_PACKAGE_GROUT
> +	bool "grout"
> +	depends on BR2_ENABLE_LOCALE

I really wasn't sure about this dependency, because that doesn't
guarantee you that a UTF-8 locale is present, only that the toolchain
has locale support, which is different. So I dropped this dependency.

However, you had forgotten to replicate the dependencies of the options
you select, so I had to add:

+       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS # dpdk
+       depends on BR2_TOOLCHAIN_HAS_THREADS # dpdk
+       depends on BR2_USE_MMU # dpdk, numactl, libecoli, util-linux-smartcols, libcap
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # dpdk
+       depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 # dpdk
+       depends on BR2_TOOLCHAIN_USES_GLIBC # dpdk
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
+       depends on !BR2_STATIC_LIBS # libecoli
+       depends on BR2_USE_WCHAR # libecoli

> +	select BR2_PACKAGE_DPDK
> +	select BR2_PACKAGE_LIBEVENT
> +	select BR2_PACKAGE_NUMACTL
> +	select BR2_PACKAGE_LIBECOLI
> +	select BR2_PACKAGE_UTIL_LINUX
> +	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS

libcap was missing here, it is required by grout, so I added:

+       select BR2_PACKAGE_LIBCAP

(at the proper location to preserve alphabetic ordering)

> +	help
> +	  Graph router based on DPDK
> +
> +	  NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)

The Config.in comment about the dependencies was missing, so I added
this:

+comment "grout needs a glibc toolchain w/ dynamic library, threads, wchar, gcc >= 4.9, headers >= 4.19"
+       depends on BR2_USE_MMU
+       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_USES_GLIBC || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
+               !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19

> diff --git a/package/grout/grout.mk b/package/grout/grout.mk
> new file mode 100644
> index 0000000000..a75af27978
> --- /dev/null
> +++ b/package/grout/grout.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# grout
> +#
> +################################################################################
> +
> +GROUT_VERSION = 0.9.0

Since 0.9.1 was out, I used this one instead.

> +GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
> +GROUT_SOURCE = v$(GROUT_VERSION).tar.gz

I used the github macro instead, because you're anyway using the
auto-generated tarball:

+GROUT_SITE = $(call github,DPDK,grout,v$(GROUT_VERSION))

> +GROUT_LICENSE = BSD-3-Clause
> +GROUT_LICENSE_FILES = LICENSE
> +
> +# Avoid using buildroot commit hash
> +GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
> +
> +GROUT_DEPENDENCIES = \
> +	host-pkgconf \
> +	dpdk \

I added libcap here.

> +	libevent \
> +	numactl \
> +	libecoli \
> +	util-linux
> +
> +$(eval $(meson-package))

Applied with all those changes, thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/3] package/grout: new package
  2025-04-24 21:51         ` Thomas Petazzoni via buildroot
@ 2025-04-25  8:19           ` Maxime Leroy
  2025-04-25  9:06             ` Thomas Petazzoni via buildroot
  2025-04-25  9:17             ` Thomas Petazzoni via buildroot
  0 siblings, 2 replies; 23+ messages in thread
From: Maxime Leroy @ 2025-04-25  8:19 UTC (permalink / raw)
  To: Thomas Petazzoni; +Cc: buildroot, Vincent Jardin, Robin Jarry, Julien Olivain

Hello Thomas,

Thanks for the review and the modifications.

Le jeu. 24 avr. 2025 à 23:51, Thomas Petazzoni
<thomas.petazzoni@bootlin.com> a écrit :
>
> Hello Maxime,
>
> Thanks for your patch! I have applied it, after doing a number of
> changes, see below.
>
> On Thu,  3 Apr 2025 17:39:49 +0200
> Maxime Leroy <maxime@leroys.fr> wrote:
>
> > diff --git a/DEVELOPERS b/DEVELOPERS
> > index 1c84f95943..1cbbf829c5 100644
> > --- a/DEVELOPERS
> > +++ b/DEVELOPERS
> > @@ -2384,6 +2384,9 @@ F:      package/libtraceevent/
> >  F:   package/libtracefs
> >  F:   package/linux-tools/linux-tool-rtla.mk.in
> >
> > +N:   Maxime Leroy <maxime@leroys.fr>
> > +F:   package/grout
>
>                      ^^ Nit: missing final slash.
>
>
> > diff --git a/package/grout/Config.in b/package/grout/Config.in
> > new file mode 100644
> > index 0000000000..a39c3283eb
> > --- /dev/null
> > +++ b/package/grout/Config.in
> > @@ -0,0 +1,13 @@
> > +config BR2_PACKAGE_GROUT
> > +     bool "grout"
> > +     depends on BR2_ENABLE_LOCALE
>
> I really wasn't sure about this dependency, because that doesn't
> guarantee you that a UTF-8 locale is present, only that the toolchain
> has locale support, which is different. So I dropped this dependency.

Grout needs to have UTF-8 local present to run, else it doesn't properly start.

>
> However, you had forgotten to replicate the dependencies of the options
> you select, so I had to add:
>
> +       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS # dpdk
> +       depends on BR2_TOOLCHAIN_HAS_THREADS # dpdk
> +       depends on BR2_USE_MMU # dpdk, numactl, libecoli, util-linux-smartcols, libcap
> +       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # dpdk
> +       depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 # dpdk
> +       depends on BR2_TOOLCHAIN_USES_GLIBC # dpdk
> +       depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
> +       depends on !BR2_STATIC_LIBS # libecoli
> +       depends on BR2_USE_WCHAR # libecoli

Thanks. I am not very familiar about dependencies with buildroot.
I was planning to change 'select on' to depends on 'DPDK' on a V4 serie.

I thought having a dependencies with DPDK, will be enough to inherit
of this one.
If I understand well, these ones should be replicated.

>
> > +     select BR2_PACKAGE_DPDK
> > +     select BR2_PACKAGE_LIBEVENT
> > +     select BR2_PACKAGE_NUMACTL
> > +     select BR2_PACKAGE_LIBECOLI
> > +     select BR2_PACKAGE_UTIL_LINUX
> > +     select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
>
> libcap was missing here, it is required by grout, so I added:
>
> +       select BR2_PACKAGE_LIBCAP
>

In fact, libcap dependencies was introduced with grout 9.1 released.
It was not needed for grout 9.0. Thanks for the upgrade.


> (at the proper location to preserve alphabetic ordering)
>
> > +     help
> > +       Graph router based on DPDK
> > +
> > +       NOTE: grout needs a working UTF-8 locale (BR2_GENERATE_LOCALE)
>
> The Config.in comment about the dependencies was missing, so I added
> this:
>
> +comment "grout needs a glibc toolchain w/ dynamic library, threads, wchar, gcc >= 4.9, headers >= 4.19"
> +       depends on BR2_USE_MMU
> +       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS
> +       depends on BR2_TOOLCHAIN_HAS_ATOMIC
> +       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
> +               !BR2_TOOLCHAIN_USES_GLIBC || \
> +               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
> +               !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19
>
> > diff --git a/package/grout/grout.mk b/package/grout/grout.mk
> > new file mode 100644
> > index 0000000000..a75af27978
> > --- /dev/null
> > +++ b/package/grout/grout.mk
> > @@ -0,0 +1,24 @@
> > +################################################################################
> > +#
> > +# grout
> > +#
> > +################################################################################
> > +
> > +GROUT_VERSION = 0.9.0
>
> Since 0.9.1 was out, I used this one instead.
>
> > +GROUT_SITE = https://github.com/DPDK/grout/archive/refs/tags
> > +GROUT_SOURCE = v$(GROUT_VERSION).tar.gz
>
> I used the github macro instead, because you're anyway using the
> auto-generated tarball:
>
> +GROUT_SITE = $(call github,DPDK,grout,v$(GROUT_VERSION))
>
> > +GROUT_LICENSE = BSD-3-Clause
> > +GROUT_LICENSE_FILES = LICENSE
> > +
> > +# Avoid using buildroot commit hash
> > +GROUT_CONF_ENV += GROUT_VERSION=$(GROUT_VERSION)
> > +
> > +GROUT_DEPENDENCIES = \
> > +     host-pkgconf \
> > +     dpdk \
>
> I added libcap here.
>
> > +     libevent \
> > +     numactl \
> > +     libecoli \
> > +     util-linux
> > +
> > +$(eval $(meson-package))
>
> Applied with all those changes, thanks!

Thanks Thomas.

>
> Thomas
> --
> Thomas Petazzoni, co-owner and CEO, Bootlin
> Embedded Linux and Kernel engineering and training
> https://bootlin.com



-- 
-------------------------------
Maxime Leroy
maxime@leroys.fr
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/3] package/grout: new package
  2025-04-25  8:19           ` Maxime Leroy
@ 2025-04-25  9:06             ` Thomas Petazzoni via buildroot
  2025-04-25  9:17             ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 23+ messages in thread
From: Thomas Petazzoni via buildroot @ 2025-04-25  9:06 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Vincent Jardin, Robin Jarry, Julien Olivain

Hello Maxime,

On Fri, 25 Apr 2025 10:19:12 +0200
Maxime Leroy <maxime@leroys.fr> wrote:

> Grout needs to have UTF-8 local present to run, else it doesn't
> properly start.

Problem is that BR2_ENABLE_LOCALE doesn't tell you an UTF-8 locale is
available. We have no mechanism right now in Buildroot to enforce
having a UTF-8 locale. It could be added separately.

> > +       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS # dpdk
> > +       depends on BR2_TOOLCHAIN_HAS_THREADS # dpdk
> > +       depends on BR2_USE_MMU # dpdk, numactl, libecoli, util-linux-smartcols, libcap
> > +       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # dpdk
> > +       depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 # dpdk
> > +       depends on BR2_TOOLCHAIN_USES_GLIBC # dpdk
> > +       depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
> > +       depends on !BR2_STATIC_LIBS # libecoli
> > +       depends on BR2_USE_WCHAR # libecoli  
> 
> Thanks. I am not very familiar about dependencies with buildroot.
> I was planning to change 'select on' to depends on 'DPDK' on a V4 serie.

Using a "depends on" for DPDK could have made sense indeed. But the
other libraries need to be "select"ed, and therefore you anyway need to
inherit their "depends on".

> I thought having a dependencies with DPDK, will be enough to inherit
> of this one.

Nope, that a Kconfig limitation. If you "select" something, you don't
inherit the "depends on" of the thing you select.

> In fact, libcap dependencies was introduced with grout 9.1 released.
> It was not needed for grout 9.0. Thanks for the upgrade.

Ah indeed, that explains it! Thanks for clarifying.

Best regards,

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/3] package/grout: new package
  2025-04-25  8:19           ` Maxime Leroy
  2025-04-25  9:06             ` Thomas Petazzoni via buildroot
@ 2025-04-25  9:17             ` Thomas Petazzoni via buildroot
  1 sibling, 0 replies; 23+ messages in thread
From: Thomas Petazzoni via buildroot @ 2025-04-25  9:17 UTC (permalink / raw)
  To: Maxime Leroy; +Cc: buildroot, Vincent Jardin, Robin Jarry, Julien Olivain

Hello Maxime,

On Fri, 25 Apr 2025 10:19:12 +0200
Maxime Leroy <maxime@leroys.fr> wrote:

> Grout needs to have UTF-8 local present to run, else it doesn't
> properly start.

Problem is that BR2_ENABLE_LOCALE doesn't tell you an UTF-8 locale is
available. We have no mechanism right now in Buildroot to enforce
having a UTF-8 locale. It could be added separately.

> > +       depends on BR2_PACKAGE_DPDK_ARCH_SUPPORTS # dpdk
> > +       depends on BR2_TOOLCHAIN_HAS_THREADS # dpdk
> > +       depends on BR2_USE_MMU # dpdk, numactl, libecoli, util-linux-smartcols, libcap
> > +       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # dpdk
> > +       depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 # dpdk
> > +       depends on BR2_TOOLCHAIN_USES_GLIBC # dpdk
> > +       depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
> > +       depends on !BR2_STATIC_LIBS # libecoli
> > +       depends on BR2_USE_WCHAR # libecoli  
> 
> Thanks. I am not very familiar about dependencies with buildroot.
> I was planning to change 'select on' to depends on 'DPDK' on a V4 serie.

Using a "depends on" for DPDK could have made sense indeed. But the
other libraries need to be "select"ed, and therefore you anyway need to
inherit their "depends on".

> I thought having a dependencies with DPDK, will be enough to inherit
> of this one.

Nope, that a Kconfig limitation. If you "select" something, you don't
inherit the "depends on" of the thing you select.

> In fact, libcap dependencies was introduced with grout 9.1 released.
> It was not needed for grout 9.0. Thanks for the upgrade.

Ah indeed, that explains it! Thanks for clarifying.

Best regards,

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

end of thread, other threads:[~2025-04-25  9:17 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-26 11:16 [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
2025-03-26 11:16 ` [Buildroot] [PATCH 2/2] package/grout: new package Maxime Leroy
2025-03-26 11:26   ` Vincent Jardin
2025-03-26 12:24     ` Maxime Leroy
2025-03-26 11:21 ` [Buildroot] [PATCH 1/2] package/libecoli: bump version to 0.5.0 Vincent Jardin
2025-03-26 13:26 ` [Buildroot] [PATCH v2 0/2] Add grout package Maxime Leroy
2025-03-26 13:26   ` [Buildroot] [PATCH v2 1/2] package/libecoli: bump version to 0.5.0 Maxime Leroy
2025-03-27  0:23     ` Vincent Jardin
2025-03-26 13:26   ` [Buildroot] [PATCH v2 2/2] package/grout: new package Maxime Leroy
2025-03-27  0:29     ` Vincent Jardin
2025-03-28  8:47   ` [Buildroot] [PATCH v3 0/3] Add grout package Maxime Leroy
2025-03-28  8:47     ` [Buildroot] [PATCH v3 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
2025-03-28  8:47     ` [Buildroot] [PATCH v3 2/3] package/grout: new package Maxime Leroy
2025-03-28  8:47     ` [Buildroot] [PATCH v3 3/3] RFC: support/testing: add grout runtime test Maxime Leroy
2025-04-03 15:39     ` [Buildroot] [PATCH v4 0/3] Add grout package Maxime Leroy
2025-04-03 15:39       ` [Buildroot] [PATCH v4 1/3] package/libecoli: bump version to 0.5.0 Maxime Leroy
2025-04-24 21:48         ` Thomas Petazzoni via buildroot
2025-04-03 15:39       ` [Buildroot] [PATCH v4 2/3] package/grout: new package Maxime Leroy
2025-04-24 21:51         ` Thomas Petazzoni via buildroot
2025-04-25  8:19           ` Maxime Leroy
2025-04-25  9:06             ` Thomas Petazzoni via buildroot
2025-04-25  9:17             ` Thomas Petazzoni via buildroot
2025-04-03 15:39       ` [Buildroot] [PATCH v4 3/3] RFC: support/testing: add grout runtime test Maxime Leroy

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