* [Buildroot] [PATCH 1/2] package/libdecor: new package
@ 2023-07-16 14:50 Bernd Kuhls
2023-07-16 14:50 ` [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support Bernd Kuhls
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Bernd Kuhls @ 2023-07-16 14:50 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, Spenser Gilliland
Needed for wayland support in mesa3d-demos.
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
package/Config.in | 1 +
package/libdecor/Config.in | 25 +++++++++++++++++++++++++
package/libdecor/libdecor.hash | 3 +++
package/libdecor/libdecor.mk | 22 ++++++++++++++++++++++
4 files changed, 51 insertions(+)
create mode 100644 package/libdecor/Config.in
create mode 100644 package/libdecor/libdecor.hash
create mode 100644 package/libdecor/libdecor.mk
diff --git a/package/Config.in b/package/Config.in
index 57d3646566..1097d2deae 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1600,6 +1600,7 @@ menu "Graphics"
source "package/leptonica/Config.in"
source "package/lesstif/Config.in"
source "package/libart/Config.in"
+ source "package/libdecor/Config.in"
source "package/libdmtx/Config.in"
source "package/libdri2/Config.in"
source "package/libdrm/Config.in"
diff --git a/package/libdecor/Config.in b/package/libdecor/Config.in
new file mode 100644
index 0000000000..782fe855b4
--- /dev/null
+++ b/package/libdecor/Config.in
@@ -0,0 +1,25 @@
+config BR2_PACKAGE_LIBDECOR
+ bool "libdecor"
+ depends on !BR2_STATIC_LIBS # wayland
+ depends on BR2_USE_MMU # pango
+ depends on BR2_USE_WCHAR # pango
+ depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # pango
+ depends on BR2_INSTALL_LIBSTDCPP # pango
+ depends on BR2_TOOLCHAIN_HAS_THREADS # pango, wayland
+ select BR2_PACKAGE_CAIRO
+ select BR2_PACKAGE_PANGO
+ select BR2_PACKAGE_WAYLAND
+ select BR2_PACKAGE_WAYLAND_PROTOCOLS
+ help
+ libdecor is a library that can help Wayland clients draw
+ window decorations for them. It aims to provide multiple
+ backends that implements the decoration drawing.
+
+ https://gitlab.freedesktop.org/libdecor/libdecor
+
+comment "libdecor needs a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+ depends on BR2_USE_MMU
+ depends on BR2_TOOLCHAIN_HAS_SYNC_4
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
+ !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/libdecor/libdecor.hash b/package/libdecor/libdecor.hash
new file mode 100644
index 0000000000..9e51e90593
--- /dev/null
+++ b/package/libdecor/libdecor.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 82adece5baeb6194292b0d1a91b4b3d10da41115f352a5e6c5844b20b88a0512 libdecor-0.1.1.tar.gz
+sha256 508a77d2e7b51d98adeed32648ad124b7b30241a8e70b2e72c99f92d8e5874d1 LICENSE
diff --git a/package/libdecor/libdecor.mk b/package/libdecor/libdecor.mk
new file mode 100644
index 0000000000..21505de785
--- /dev/null
+++ b/package/libdecor/libdecor.mk
@@ -0,0 +1,22 @@
+################################################################################
+#
+# libdecor
+#
+################################################################################
+
+LIBDECOR_VERSION = 0.1.1
+LIBDECOR_SITE = https://gitlab.freedesktop.org/libdecor/libdecor/-/archive/$(LIBDECOR_VERSION)
+LIBDECOR_LICENSE = MIT
+LIBDECOR_LICENSE_FILES = LICENSE
+LIBDECOR_INSTALL_STAGING = YES
+LIBDECOR_DEPENDENCIES = cairo dbus pango wayland wayland-protocols
+LIBDECOR_CONF_OPTS = -Ddemo=false
+
+ifeq ($(BR2_PACKAGE_DBUS),yx)
+LIBDECOR_CONF_OPTS += -Ddbus=enabled
+LIBDECOR_DEPENDENCIES += dbus
+else
+LIBDECOR_CONF_OPTS += -Ddbus=disabled
+endif
+
+$(eval $(meson-package))
--
2.39.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 6+ messages in thread* [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support
2023-07-16 14:50 [Buildroot] [PATCH 1/2] package/libdecor: new package Bernd Kuhls
@ 2023-07-16 14:50 ` Bernd Kuhls
2023-09-02 17:19 ` Thomas Petazzoni via buildroot
2023-07-25 8:54 ` [Buildroot] [PATCH 1/2] package/libdecor: new package Sebastian WEYER
2023-09-02 17:17 ` Thomas Petazzoni via buildroot
2 siblings, 1 reply; 6+ messages in thread
From: Bernd Kuhls @ 2023-07-16 14:50 UTC (permalink / raw)
To: buildroot; +Cc: Eric Le Bihan, Spenser Gilliland
libdecor cannot be selected due to a circular dependency:
package/wayland/Config.in:1:error: recursive dependency detected!
package/wayland/Config.in:1: symbol BR2_PACKAGE_WAYLAND is selected by BR2_PACKAGE_LIBDECOR
package/libdecor/Config.in:1: symbol BR2_PACKAGE_LIBDECOR is selected by BR2_PACKAGE_MESA3D_DEMOS
package/mesa3d-demos/Config.in:1: symbol BR2_PACKAGE_MESA3D_DEMOS is selected by BR2_PACKAGE_PIGLIT
package/piglit/Config.in:1: symbol BR2_PACKAGE_PIGLIT depends on BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND
package/waffle/Config.in:7: symbol BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND depends on BR2_PACKAGE_WAYLAND
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
package/mesa3d-demos/Config.in | 1 +
package/mesa3d-demos/mesa3d-demos.mk | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/package/mesa3d-demos/Config.in b/package/mesa3d-demos/Config.in
index 7848bb6faf..1761494c3a 100644
--- a/package/mesa3d-demos/Config.in
+++ b/package/mesa3d-demos/Config.in
@@ -7,6 +7,7 @@ config BR2_PACKAGE_MESA3D_DEMOS
select BR2_PACKAGE_LIBGLU if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL
select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL
+ select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND
help
OpenGL demos from the Mesa 3D project.
diff --git a/package/mesa3d-demos/mesa3d-demos.mk b/package/mesa3d-demos/mesa3d-demos.mk
index 29cb00bb8a..8acba9270a 100644
--- a/package/mesa3d-demos/mesa3d-demos.mk
+++ b/package/mesa3d-demos/mesa3d-demos.mk
@@ -62,8 +62,8 @@ else
MESA3D_DEMOS_CONF_OPTS += -Dosmesa=disabled
endif
-ifeq ($(BR2_PACKAGE_WAYLAND),y)
-MESA3D_DEMOS_DEPENDENCIES += wayland
+ifeq ($(BR2_PACKAGE_LIBDECOR)$(BR2_PACKAGE_WAYLAND),yy)
+MESA3D_DEMOS_DEPENDENCIES += libdecor libxkbcommon wayland
MESA3D_DEMOS_CONF_OPTS += -Dwayland=enabled
else
MESA3D_DEMOS_CONF_OPTS += -Dwayland=disabled
--
2.39.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support
2023-07-16 14:50 ` [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support Bernd Kuhls
@ 2023-09-02 17:19 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-02 17:19 UTC (permalink / raw)
To: Bernd Kuhls; +Cc: Eric Le Bihan, Spenser Gilliland, Yann E. MORIN, buildroot
Hello,
+Yann for kconfig sorcery.
On Sun, 16 Jul 2023 16:50:03 +0200
Bernd Kuhls <bernd@kuhls.net> wrote:
> libdecor cannot be selected due to a circular dependency:
>
> package/wayland/Config.in:1:error: recursive dependency detected!
> package/wayland/Config.in:1: symbol BR2_PACKAGE_WAYLAND is selected by BR2_PACKAGE_LIBDECOR
> package/libdecor/Config.in:1: symbol BR2_PACKAGE_LIBDECOR is selected by BR2_PACKAGE_MESA3D_DEMOS
> package/mesa3d-demos/Config.in:1: symbol BR2_PACKAGE_MESA3D_DEMOS is selected by BR2_PACKAGE_PIGLIT
> package/piglit/Config.in:1: symbol BR2_PACKAGE_PIGLIT depends on BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND
> package/waffle/Config.in:7: symbol BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND depends on BR2_PACKAGE_WAYLAND
>
> Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
> ---
> package/mesa3d-demos/Config.in | 1 +
> package/mesa3d-demos/mesa3d-demos.mk | 4 ++--
> 2 files changed, 3 insertions(+), 2 deletions(-)
I've split this into two commits: one for libxkbcommon, one for
libdecor, and added references to the autobuilder failures being fixed,
and applied to master.
It's a bit a pity that we can't select BR2_PACKAGE_LIBDECOR due to the
recursive dependency we have there reported by kconfig. To me, this
recursive dependency is bogus, but I'll let Yann comment :-)
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] 6+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/libdecor: new package
2023-07-16 14:50 [Buildroot] [PATCH 1/2] package/libdecor: new package Bernd Kuhls
2023-07-16 14:50 ` [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support Bernd Kuhls
@ 2023-07-25 8:54 ` Sebastian WEYER
2023-09-02 17:18 ` Thomas Petazzoni via buildroot
2023-09-02 17:17 ` Thomas Petazzoni via buildroot
2 siblings, 1 reply; 6+ messages in thread
From: Sebastian WEYER @ 2023-07-25 8:54 UTC (permalink / raw)
To: Bernd Kuhls; +Cc: Eric Le Bihan, Spenser Gilliland, buildroot
Hello Bernd, hello all,
On Sun, Jul 16, 2023 at 4:50 PM Bernd Kuhls <bernd@kuhls.net> wrote:
>
> Needed for wayland support in mesa3d-demos.
>
> Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
It seems like this dependency is only required for wayland support
with the mesa3d-demos upgrade to version 9.0.0 in commit
80304d9911f34f8a0173a4f37d52f93177478cc7.
Version 9.0.0 of mesa3d-demos also includes commit
ef24aae22978d4d357340074ca9a1c04d9cf81e6 which seems to have added a
dependency on glu for the demos which is not yet reflected in
Buildroot. Does this mean we have to have libglu and therefore xorg7
and glx as a fixed dependency for mesa3d-demos?
test/test/build/mesa3d-demos-9.0.0/src/demos/meson.build:82:14: ERROR:
Unknown variable "dep_glu".
This patch looks fine to me however, all dependencies specified in the
documentation are there and I successfully built the demos with
wayland support activated once I built libglu.
Reviewed-by: Sebastian Weyer <sebastian.weyer@smile.fr>
Tested-by: Sebastian Weyer <sebastian.weyer@smile.fr>
> ---
> package/Config.in | 1 +
> package/libdecor/Config.in | 25 +++++++++++++++++++++++++
> package/libdecor/libdecor.hash | 3 +++
> package/libdecor/libdecor.mk | 22 ++++++++++++++++++++++
> 4 files changed, 51 insertions(+)
> create mode 100644 package/libdecor/Config.in
> create mode 100644 package/libdecor/libdecor.hash
> create mode 100644 package/libdecor/libdecor.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 57d3646566..1097d2deae 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1600,6 +1600,7 @@ menu "Graphics"
> source "package/leptonica/Config.in"
> source "package/lesstif/Config.in"
> source "package/libart/Config.in"
> + source "package/libdecor/Config.in"
> source "package/libdmtx/Config.in"
> source "package/libdri2/Config.in"
> source "package/libdrm/Config.in"
> diff --git a/package/libdecor/Config.in b/package/libdecor/Config.in
> new file mode 100644
> index 0000000000..782fe855b4
> --- /dev/null
> +++ b/package/libdecor/Config.in
> @@ -0,0 +1,25 @@
> +config BR2_PACKAGE_LIBDECOR
> + bool "libdecor"
> + depends on !BR2_STATIC_LIBS # wayland
> + depends on BR2_USE_MMU # pango
> + depends on BR2_USE_WCHAR # pango
> + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # pango
> + depends on BR2_INSTALL_LIBSTDCPP # pango
> + depends on BR2_TOOLCHAIN_HAS_THREADS # pango, wayland
> + select BR2_PACKAGE_CAIRO
> + select BR2_PACKAGE_PANGO
> + select BR2_PACKAGE_WAYLAND
> + select BR2_PACKAGE_WAYLAND_PROTOCOLS
> + help
> + libdecor is a library that can help Wayland clients draw
> + window decorations for them. It aims to provide multiple
> + backends that implements the decoration drawing.
> +
> + https://gitlab.freedesktop.org/libdecor/libdecor
> +
> +comment "libdecor needs a toolchain w/ wchar, threads, C++, gcc >= 4.9"
> + depends on BR2_USE_MMU
> + depends on BR2_TOOLCHAIN_HAS_SYNC_4
> + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> + !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
> diff --git a/package/libdecor/libdecor.hash b/package/libdecor/libdecor.hash
> new file mode 100644
> index 0000000000..9e51e90593
> --- /dev/null
> +++ b/package/libdecor/libdecor.hash
> @@ -0,0 +1,3 @@
> +# Locally calculated
> +sha256 82adece5baeb6194292b0d1a91b4b3d10da41115f352a5e6c5844b20b88a0512 libdecor-0.1.1.tar.gz
> +sha256 508a77d2e7b51d98adeed32648ad124b7b30241a8e70b2e72c99f92d8e5874d1 LICENSE
> diff --git a/package/libdecor/libdecor.mk b/package/libdecor/libdecor.mk
> new file mode 100644
> index 0000000000..21505de785
> --- /dev/null
> +++ b/package/libdecor/libdecor.mk
> @@ -0,0 +1,22 @@
> +################################################################################
> +#
> +# libdecor
> +#
> +################################################################################
> +
> +LIBDECOR_VERSION = 0.1.1
> +LIBDECOR_SITE = https://gitlab.freedesktop.org/libdecor/libdecor/-/archive/$(LIBDECOR_VERSION)
> +LIBDECOR_LICENSE = MIT
> +LIBDECOR_LICENSE_FILES = LICENSE
> +LIBDECOR_INSTALL_STAGING = YES
> +LIBDECOR_DEPENDENCIES = cairo dbus pango wayland wayland-protocols
> +LIBDECOR_CONF_OPTS = -Ddemo=false
> +
> +ifeq ($(BR2_PACKAGE_DBUS),yx)
> +LIBDECOR_CONF_OPTS += -Ddbus=enabled
> +LIBDECOR_DEPENDENCIES += dbus
> +else
> +LIBDECOR_CONF_OPTS += -Ddbus=disabled
> +endif
> +
> +$(eval $(meson-package))
> --
> 2.39.2
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
Best regards,
Sebastian
--
Pour la planète, n'imprimez ce mail que si c'est nécessaire
10-12 Rue Nicolas Appert
44100 NANTES
Sebastian WEYER
Stagiaire production
sebastian.weyer@smile.fr
http://www.smile.eu
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/libdecor: new package
2023-07-16 14:50 [Buildroot] [PATCH 1/2] package/libdecor: new package Bernd Kuhls
2023-07-16 14:50 ` [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support Bernd Kuhls
2023-07-25 8:54 ` [Buildroot] [PATCH 1/2] package/libdecor: new package Sebastian WEYER
@ 2023-09-02 17:17 ` Thomas Petazzoni via buildroot
2 siblings, 0 replies; 6+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-09-02 17:17 UTC (permalink / raw)
To: Bernd Kuhls; +Cc: Eric Le Bihan, Spenser Gilliland, Sebastian WEYER, buildroot
Hello,
On Sun, 16 Jul 2023 16:50:02 +0200
Bernd Kuhls <bernd@kuhls.net> wrote:
> Needed for wayland support in mesa3d-demos.
>
> Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
I've applied after doing some changes/fixes, see below.
> ---
> package/Config.in | 1 +
> package/libdecor/Config.in | 25 +++++++++++++++++++++++++
> package/libdecor/libdecor.hash | 3 +++
> package/libdecor/libdecor.mk | 22 ++++++++++++++++++++++
> 4 files changed, 51 insertions(+)
> create mode 100644 package/libdecor/Config.in
> create mode 100644 package/libdecor/libdecor.hash
> create mode 100644 package/libdecor/libdecor.mk
Entry in DEVELOPERS file was missing.
> +LIBDECOR_VERSION = 0.1.1
> +LIBDECOR_SITE = https://gitlab.freedesktop.org/libdecor/libdecor/-/archive/$(LIBDECOR_VERSION)
> +LIBDECOR_LICENSE = MIT
> +LIBDECOR_LICENSE_FILES = LICENSE
> +LIBDECOR_INSTALL_STAGING = YES
> +LIBDECOR_DEPENDENCIES = cairo dbus pango wayland wayland-protocols
You're adding dbus as a mandatory dependency here, but it's not
selected in Config.in and it's actually an optional dependency.
> +LIBDECOR_CONF_OPTS = -Ddemo=false
> +
> +ifeq ($(BR2_PACKAGE_DBUS),yx)
This condition would never be true due to the typo "yx" instead of just "y".
I fixed both issues and applied to master, as this package is needed to
fix issues in master.
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] 6+ messages in thread
end of thread, other threads:[~2023-09-02 17:19 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-16 14:50 [Buildroot] [PATCH 1/2] package/libdecor: new package Bernd Kuhls
2023-07-16 14:50 ` [Buildroot] [PATCH 2/2] package/mesa3d-demos: add optional dependencies for wayland support Bernd Kuhls
2023-09-02 17:19 ` Thomas Petazzoni via buildroot
2023-07-25 8:54 ` [Buildroot] [PATCH 1/2] package/libdecor: new package Sebastian WEYER
2023-09-02 17:18 ` Thomas Petazzoni via buildroot
2023-09-02 17:17 ` Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox