* [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration
@ 2023-02-07 17:17 Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module Angelo Compagnucci
` (12 more replies)
0 siblings, 13 replies; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
This series is an attempt to revamp the QT6 series from Jesse Van Gavere
to be included mainline. It reworks a bit of things we discussed during
the developer days in Bruxelles.
Angelo Compagnucci (4):
package/qt6/qt6base: add support for widgets
package/qt6/qt6base: add support for widgets gtk backend
package/qt6/qt6base: add opengl support
package/qt6/qt6base: add QPA backend selection
Jesse Van Gavere (9):
package/qt6/qt6base: add support for gui module
package/qt6/qt6base: add support for fontconfig/harfbuzz
package/qt6/qt6base: Add support for jpeg/png/gif image format
package/qt6/qt6base: add support for tslib
package/qt6/qt6base: add support for libinput
package/qt6/qt6base: add support for kms
package/qt6/qt6base: add support for printsupport/cups
package/qt6/qt6base: add support for building examples
package/qt6: Add qmake functionality
package/qt6/Config.in | 5 +
package/qt6/qt6.mk | 12 ++
package/qt6/qt6base/Config.in | 161 +++++++++++++++++++++++++++
package/qt6/qt6base/qmake.conf.in | 34 ++++++
package/qt6/qt6base/qplatformdefs.h | 1 +
package/qt6/qt6base/qt.conf.in | 7 ++
package/qt6/qt6base/qt6base.hash | 1 +
package/qt6/qt6base/qt6base.mk | 166 ++++++++++++++++++++++++++++
8 files changed, 387 insertions(+)
create mode 100644 package/qt6/qt6base/qmake.conf.in
create mode 100644 package/qt6/qt6base/qplatformdefs.h
create mode 100644 package/qt6/qt6base/qt.conf.in
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:07 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz Angelo Compagnucci
` (11 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
v6:
* Moved the basic linuxfb, xcb backend support here (Thomas P.)
package/qt6/qt6base/Config.in | 31 +++++++++++++++++++++++++++++++
package/qt6/qt6base/qt6base.mk | 33 +++++++++++++++++++++++++++++++++
2 files changed, 64 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index e8357a675c..1810b1586d 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -30,6 +30,37 @@ config BR2_PACKAGE_QT6BASE_DBUS
help
This option enables the D-Bus module.
+config BR2_PACKAGE_QT6BASE_GUI
+ bool "gui module"
+ select BR2_PACKAGE_FREETYPE
+ # At least one graphic backend must be enabled, so enable
+ # linuxfb if nothing is enabled.
+ select BR2_PACKAGE_QT6BASE_LINUXFB if \
+ !BR2_PACKAGE_QT6BASE_XCB
+ help
+ This option enables the Qt6Gui library.
+
+if BR2_PACKAGE_QT6BASE_GUI
+
+config BR2_PACKAGE_QT6BASE_LINUXFB
+ bool "linuxfb support"
+
+config BR2_PACKAGE_QT6BASE_XCB
+ bool "X.org XCB support"
+ depends on BR2_PACKAGE_XORG7
+ select BR2_PACKAGE_XLIB_LIBX11
+ select BR2_PACKAGE_LIBXCB
+ select BR2_PACKAGE_XCB_UTIL_IMAGE
+ select BR2_PACKAGE_XCB_UTIL_KEYSYMS
+ select BR2_PACKAGE_XCB_UTIL_RENDERUTIL
+ select BR2_PACKAGE_XCB_UTIL_WM
+ select BR2_PACKAGE_LIBXKBCOMMON
+
+comment "X.org XCB backend available if X.org is enabled"
+ depends on !BR2_PACKAGE_XORG7
+
+endif
+
config BR2_PACKAGE_QT6BASE_NETWORK
bool "network module"
help
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 2f159f380b..9bfb2a8420 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -141,6 +141,39 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_glib=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_GUI),y)
+QT6BASE_CONF_OPTS += -DFEATURE_gui=ON -DFEATURE_freetype=ON -DINPUT_opengl=no -DFEATURE_vulkan=OFF
+QT6BASE_DEPENDENCIES += freetype
+
+ifeq ($(BR2_PACKAGE_QT6BASE_LINUXFB),y)
+QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=ON
+else
+QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6BASE_XCB),y)
+QT6BASE_CONF_OPTS += \
+ -DFEATURE_xcb=ON \
+ -DFEATURE_xcb_xlib=ON \
+ -DFEATURE_xkbcommon=ON \
+ -DFEATURE_xkbcommon_x11=ON
+QT6BASE_DEPENDENCIES += \
+ libxcb \
+ xcb-util-wm \
+ xcb-util-image \
+ xcb-util-keysyms \
+ xcb-util-renderutil \
+ xlib_libX11 \
+ libxkbcommon
+QT6BASE_DEPENDENCIES += xlib_libXext
+else
+QT6BASE_CONF_OPTS += -DFEATURE_xcb=OFF
+endif
+
+else
+QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF
+endif
+
ifeq ($(BR2_PACKAGE_OPENSSL),y)
QT6BASE_CONF_OPTS += -DINPUT_openssl=yes
QT6BASE_DEPENDENCIES += openssl
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:08 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format Angelo Compagnucci
` (10 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Additionally the harfbuzz license file is added and the hash for this is
also added to the hash file
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 17 +++++++++++++++++
package/qt6/qt6base/qt6base.hash | 1 +
package/qt6/qt6base/qt6base.mk | 23 +++++++++++++++++++++++
3 files changed, 41 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 1810b1586d..594221b792 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -59,6 +59,23 @@ config BR2_PACKAGE_QT6BASE_XCB
comment "X.org XCB backend available if X.org is enabled"
depends on !BR2_PACKAGE_XORG7
+config BR2_PACKAGE_QT6BASE_FONTCONFIG
+ bool "fontconfig support"
+ select BR2_PACKAGE_FONTCONFIG
+ help
+ This option enables Fontconfig and Freetype support using
+ the system fontconfig and freetype2 libraries.
+
+config BR2_PACKAGE_QT6BASE_HARFBUZZ
+ bool "harfbuzz support"
+ select BR2_PACKAGE_HARFBUZZ if \
+ BR2_TOOLCHAIN_HAS_SYNC_4 && \
+ BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ help
+ This option enables HarfBuzz support (either system harfbuzz
+ if the toolchain supports __sync for 4 bytes, or the qt
+ provided one which avoids this dependency by using QAtomic).
+
endif
config BR2_PACKAGE_QT6BASE_NETWORK
diff --git a/package/qt6/qt6base/qt6base.hash b/package/qt6/qt6base/qt6base.hash
index 0c722ccded..dda7ff61c8 100644
--- a/package/qt6/qt6base/qt6base.hash
+++ b/package/qt6/qt6base/qt6base.hash
@@ -1,5 +1,6 @@
# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.2/submodules/qtbase-everywhere-src-6.4.2.tar.xz.sha256
sha256 a88bc6cedbb34878a49a622baa79cace78cfbad4f95fdbd3656ddb21c705525d qtbase-everywhere-src-6.4.2.tar.xz
+sha256 2a886915de4f296cdae5ed67064f86dba01d0c55286d86e8487f2a5caaf40216 src/3rdparty/harfbuzz-ng/COPYING
# Hashes for license files
sha256 e3ba223bb1423f0aad8c3dfce0fe3148db48926d41e6fbc3afbbf5ff9e1c89cb LICENSES/Apache-2.0.txt
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 9bfb2a8420..da67b12c99 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -170,6 +170,29 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_xcb=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_HARFBUZZ),y)
+QT6BASE_CONF_OPTS += -DFEATURE_harfbuzz=ON
+ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4),y)
+# system harfbuzz in case __sync for 4 bytes is supported
+QT6BASE_CONF_OPTS += -DQT_USE_BUNDLED_BundledHarfbuzz=OFF
+QT6BASE_DEPENDENCIES += harfbuzz
+else #BR2_TOOLCHAIN_HAS_SYNC_4
+# qt harfbuzz otherwise (using QAtomic instead)
+QT6BASE_CONF_OPTS += -DQT_USE_BUNDLED_BundledHarfbuzz=ON
+QT6BASE_LICENSE += , MIT (harfbuzz)
+QT6BASE_LICENSE_FILES += src/3rdparty/harfbuzz-ng/COPYING
+endif
+else
+QT6BASE_CONF_OPTS += -DFEATURE_harfbuzz=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6BASE_FONTCONFIG),y)
+QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=ON
+QT6BASE_DEPENDENCIES += fontconfig
+else
+QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=OFF
+endif
+
else
QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF
endif
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:08 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets Angelo Compagnucci
` (9 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 19 +++++++++++++++++++
package/qt6/qt6base/qt6base.mk | 20 ++++++++++++++++++++
2 files changed, 39 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 594221b792..6c5c60fa30 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -76,6 +76,25 @@ config BR2_PACKAGE_QT6BASE_HARFBUZZ
if the toolchain supports __sync for 4 bytes, or the qt
provided one which avoids this dependency by using QAtomic).
+config BR2_PACKAGE_QT6BASE_GIF
+ bool "GIF support"
+ help
+ This compiles and installs the plugin for GIF reading support.
+
+config BR2_PACKAGE_QT6BASE_JPEG
+ bool "JPEG support"
+ select BR2_PACKAGE_JPEG
+ help
+ This option enables JPEG support using the system libjpeg
+ library.
+
+config BR2_PACKAGE_QT6BASE_PNG
+ bool "PNG support"
+ select BR2_PACKAGE_LIBPNG
+ help
+ This option enables PNG support using the system libpng
+ library.
+
endif
config BR2_PACKAGE_QT6BASE_NETWORK
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index da67b12c99..06ebbab8e7 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -186,6 +186,26 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_harfbuzz=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_PNG),y)
+QT6BASE_CONF_OPTS += -DFEATURE_png=ON -DFEATURE_system_png=ON
+QT6BASE_DEPENDENCIES += libpng
+else
+QT6BASE_CONF_OPTS += -DFEATURE_png=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6BASE_GIF),y)
+QT6BASE_CONF_OPTS += -DFEATURE_gif=ON
+else
+QT6BASE_CONF_OPTS += -DFEATURE_gif=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6BASE_JPEG),y)
+QT6BASE_CONF_OPTS += -DFEATURE_jpeg=ON
+QT6BASE_DEPENDENCIES += jpeg
+else
+QT6BASE_CONF_OPTS += -DFEATURE_jpeg=OFF
+endif
+
ifeq ($(BR2_PACKAGE_QT6BASE_FONTCONFIG),y)
QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=ON
QT6BASE_DEPENDENCIES += fontconfig
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (2 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:09 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend Angelo Compagnucci
` (8 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
v6:
* Removed backend configuration options (Thomas P.)
package/qt6/qt6base/Config.in | 6 ++++++
package/qt6/qt6base/qt6base.mk | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 6c5c60fa30..0f7e936162 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -95,6 +95,12 @@ config BR2_PACKAGE_QT6BASE_PNG
This option enables PNG support using the system libpng
library.
+config BR2_PACKAGE_QT6BASE_WIDGETS
+ bool "widgets module"
+ select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT6BASE_XCB
+ help
+ This option enables the Qt6Widgets library.
+
endif
config BR2_PACKAGE_QT6BASE_NETWORK
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 06ebbab8e7..cf3c7b1ad1 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -213,6 +213,10 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_WIDGETS),y)
+QT6BASE_CONF_OPTS += -DFEATURE_widgets=ON
+endif
+
else
QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF
endif
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (3 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:09 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support Angelo Compagnucci
` (7 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/qt6base.mk | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index cf3c7b1ad1..f936d19c68 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -215,6 +215,17 @@ endif
ifeq ($(BR2_PACKAGE_QT6BASE_WIDGETS),y)
QT6BASE_CONF_OPTS += -DFEATURE_widgets=ON
+
+# only enable gtk support if libgtk3 X11 backend is enabled
+ifeq ($(BR2_PACKAGE_LIBGTK3)$(BR2_PACKAGE_LIBGTK3_X11),yy)
+QT6BASE_CONF_OPTS += -DFEATURE_gtk3=ON
+QT6BASE_DEPENDENCIES += libgtk3
+else
+QT6BASE_CONF_OPTS += -DFEATURE_gtk3=OFF
+endif
+
+else
+QT6BASE_CONF_OPTS += -DFEATURE_widgets=OFF
endif
else
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (4 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:11 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection Angelo Compagnucci
` (6 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
v6:
* Moving eglfs backend selection here (Thomas P.)
package/qt6/Config.in | 5 ++++
package/qt6/qt6base/Config.in | 49 +++++++++++++++++++++++++++++++++-
package/qt6/qt6base/qt6base.mk | 17 ++++++++++++
3 files changed, 70 insertions(+), 1 deletion(-)
diff --git a/package/qt6/Config.in b/package/qt6/Config.in
index b0cc008df5..655fa8392a 100644
--- a/package/qt6/Config.in
+++ b/package/qt6/Config.in
@@ -12,6 +12,11 @@ config BR2_PACKAGE_QT6_ARCH_SUPPORTS
default y if BR2_sparc64
depends on BR2_USE_MMU
+config BR2_PACKAGE_QT6_GL_SUPPORTS
+ bool
+ default y
+ depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES
+
comment "qt6 needs a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 8, host gcc >= 8"
depends on !BR2_PACKAGE_QT5
depends on BR2_PACKAGE_QT6_ARCH_SUPPORTS
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 0f7e936162..a33ffcd511 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -36,7 +36,8 @@ config BR2_PACKAGE_QT6BASE_GUI
# At least one graphic backend must be enabled, so enable
# linuxfb if nothing is enabled.
select BR2_PACKAGE_QT6BASE_LINUXFB if \
- !BR2_PACKAGE_QT6BASE_XCB
+ !BR2_PACKAGE_QT6BASE_XCB && \
+ !BR2_PACKAGE_QT6BASE_EGLFS
help
This option enables the Qt6Gui library.
@@ -59,6 +60,52 @@ config BR2_PACKAGE_QT6BASE_XCB
comment "X.org XCB backend available if X.org is enabled"
depends on !BR2_PACKAGE_XORG7
+config BR2_PACKAGE_QT6BASE_OPENGL
+ bool "OpenGL support"
+ depends on BR2_PACKAGE_QT6_GL_SUPPORTS
+ help
+ This option enables OpenGL support.
+
+comment "OpenGL support needs an OpenGL-capable backend"
+ depends on !BR2_PACKAGE_QT6_GL_SUPPORTS
+
+if BR2_PACKAGE_QT6BASE_OPENGL
+
+choice
+ prompt "OpenGL API"
+ help
+ Select OpenGL API.
+
+config BR2_PACKAGE_QT6BASE_OPENGL_DESKTOP
+ bool "Desktop OpenGL"
+ depends on BR2_PACKAGE_HAS_LIBGL
+ help
+ Use desktop OpenGL.
+
+config BR2_PACKAGE_QT6BASE_OPENGL_ES2
+ bool "OpenGL ES 2.0+"
+ depends on BR2_PACKAGE_HAS_LIBGLES
+ help
+ Use OpenGL ES 2.0 and later versions.
+
+endchoice
+
+config BR2_PACKAGE_QT6BASE_OPENGL_LIB
+ bool "opengl module"
+ select BR2_PACKAGE_QT6BASE_WIDGETS
+ help
+ This option enables the Qt6OpenGL library. This library
+ includes OpenGL support classes provided to ease porting
+ from Qt 4.x.
+
+config BR2_PACKAGE_QT6BASE_EGLFS
+ bool "eglfs support"
+ default y
+ depends on BR2_PACKAGE_HAS_LIBGBM
+ select BR2_PACKAGE_QT6BASE_OPENGL
+
+endif
+
config BR2_PACKAGE_QT6BASE_FONTCONFIG
bool "fontconfig support"
select BR2_PACKAGE_FONTCONFIG
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index f936d19c68..e9a3396fb6 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -228,6 +228,23 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_widgets=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_EGLFS),y)
+QT6BASE_CONF_OPTS += -DFEATURE_egl=ON -DFEATURE_eglfs=ON
+QT6BASE_DEPENDENCIES += libegl
+else
+QT6BASE_CONF_OPTS += -DFEATURE_eglfs=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_QT6BASE_OPENGL_DESKTOP),y)
+QT6BASE_CONF_OPTS += -DFEATURE_opengl=ON -DFEATURE_opengl_desktop=ON
+QT6BASE_DEPENDENCIES += libgl
+else ifeq ($(BR2_PACKAGE_QT6BASE_OPENGL_ES2),y)
+QT6BASE_CONF_OPTS += -DFEATURE_opengl=ON -DFEATURE_opengles2=ON
+QT6BASE_DEPENDENCIES += libgles
+else
+QT6BASE_CONF_OPTS += -DFEATURE_opengl=OFF -DINPUT_opengl=no
+endif
+
else
QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF
endif
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (5 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:11 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib Angelo Compagnucci
` (5 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 13 +++++++++++++
package/qt6/qt6base/qt6base.mk | 3 +++
2 files changed, 16 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index a33ffcd511..065725049d 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -60,6 +60,19 @@ config BR2_PACKAGE_QT6BASE_XCB
comment "X.org XCB backend available if X.org is enabled"
depends on !BR2_PACKAGE_XORG7
+config BR2_PACKAGE_QT6BASE_DEFAULT_QPA
+ string "Default graphical platform"
+ help
+ Choose the default platform abstraction to use for graphical
+ applications (e.g xcb, linuxfb, eglfs, ...). If this is
+ empty, the default for your architecture will be used
+ (usually this is eglfs).
+
+ You can get a list of supported platforms by running a Qt
+ application with the option "-platform help" on your
+ target. You can choose a different platform at runtime with
+ the -platform option.
+
config BR2_PACKAGE_QT6BASE_OPENGL
bool "OpenGL support"
depends on BR2_PACKAGE_QT6_GL_SUPPORTS
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index e9a3396fb6..a3c0c20d6e 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -249,6 +249,9 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF
endif
+QT6BASE_DEFAULT_QPA = $(call qstrip,$(BR2_PACKAGE_QT6BASE_DEFAULT_QPA))
+QT6BASE_CONF_OPTS += $(if $(QT6BASE_DEFAULT_QPA),-DQT_QPA_DEFAULT_PLATFORM=$(QT6BASE_DEFAULT_QPA))
+
ifeq ($(BR2_PACKAGE_OPENSSL),y)
QT6BASE_CONF_OPTS += -DINPUT_openssl=yes
QT6BASE_DEPENDENCIES += openssl
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (6 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput Angelo Compagnucci
` (4 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 6 ++++++
package/qt6/qt6base/qt6base.mk | 7 +++++++
2 files changed, 13 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 065725049d..d5d6d3569d 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -224,6 +224,12 @@ config BR2_PACKAGE_QT6BASE_TEST
help
This options enables the Qt6Test library.
+config BR2_PACKAGE_QT6BASE_TSLIB
+ bool "Enable Tslib support"
+ select BR2_PACKAGE_TSLIB
+ help
+ This options enables the Tslib plugin
+
config BR2_PACKAGE_QT6BASE_XML
bool "XML module"
help
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index a3c0c20d6e..3942af6758 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -228,6 +228,13 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_widgets=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_TSLIB),y)
+QT6BASE_CONF_OPTS += -DFEATURE_tslib=ON
+QT6BASE_DEPENDENCIES += tslib
+else
+QT6BASE_CONF_OPTS += -DFEATURE_tslib=OFF
+endif
+
ifeq ($(BR2_PACKAGE_QT6BASE_EGLFS),y)
QT6BASE_CONF_OPTS += -DFEATURE_egl=ON -DFEATURE_eglfs=ON
QT6BASE_DEPENDENCIES += libegl
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (7 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms Angelo Compagnucci
` (3 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/qt6base.mk | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 3942af6758..fb452b0b7d 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -228,6 +228,13 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_widgets=OFF
endif
+ifeq ($(BR2_PACKAGE_LIBINPUT),y)
+QT6BASE_CONF_OPTS += -DFEATURE_libinput=ON
+QT6BASE_DEPENDENCIES += libinput
+else
+QT6BASE_CONF_OPTS += -DFEATURE_libinput=OFF
+endif
+
ifeq ($(BR2_PACKAGE_QT6BASE_TSLIB),y)
QT6BASE_CONF_OPTS += -DFEATURE_tslib=ON
QT6BASE_DEPENDENCIES += tslib
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (8 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups Angelo Compagnucci
` (2 subsequent siblings)
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/qt6base.mk | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index fb452b0b7d..4a64886a3f 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -206,6 +206,13 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_jpeg=OFF
endif
+ifeq ($(BR2_PACKAGE_LIBDRM),y)
+QT6BASE_CONF_OPTS += -DFEATURE_kms=ON
+QT6BASE_DEPENDENCIES += libdrm
+else
+QT6BASE_CONF_OPTS += -DFEATURE_kms=OFF
+endif
+
ifeq ($(BR2_PACKAGE_QT6BASE_FONTCONFIG),y)
QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=ON
QT6BASE_DEPENDENCIES += fontconfig
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (9 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:15 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality Angelo Compagnucci
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 4 ++++
package/qt6/qt6base/qt6base.mk | 12 ++++++++++++
2 files changed, 16 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index d5d6d3569d..4d13128661 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -168,6 +168,10 @@ config BR2_PACKAGE_QT6BASE_NETWORK
help
This options enables the Qt6Network library.
+config BR2_PACKAGE_QT6BASE_PRINTSUPPORT
+ depends on BR2_PACKAGE_QT6BASE_WIDGETS
+ def_bool y
+
config BR2_PACKAGE_QT6BASE_SQL
bool "sql module"
help
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 4a64886a3f..97986a3c2b 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -206,6 +206,18 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_jpeg=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_PRINTSUPPORT), y)
+QT6BASE_CONF_OPTS += -DFEATURE_printsupport=ON
+ifeq ($(BR2_PACKAGE_CUPS), y)
+QT6BASE_CONF_OPTS += -DFEATURE_cups=ON
+QT6BASE_DEPENDENCIES += cups
+else
+QT6BASE_CONF_OPTS += -DFEATURE_cups=OFF
+endif
+else
+QT6BASE_CONF_OPTS += -DFEATURE_printsupport=OFF
+endif
+
ifeq ($(BR2_PACKAGE_LIBDRM),y)
QT6BASE_CONF_OPTS += -DFEATURE_kms=ON
QT6BASE_DEPENDENCIES += libdrm
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (10 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:16 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality Angelo Compagnucci
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
The selected options make the default examples set to actually compile.
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
package/qt6/qt6base/Config.in | 18 ++++++++++++++++++
package/qt6/qt6base/qt6base.mk | 6 ++++++
2 files changed, 24 insertions(+)
diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
index 4d13128661..4ae5e96ef0 100644
--- a/package/qt6/qt6base/Config.in
+++ b/package/qt6/qt6base/Config.in
@@ -30,6 +30,24 @@ config BR2_PACKAGE_QT6BASE_DBUS
help
This option enables the D-Bus module.
+config BR2_PACKAGE_QT6BASE_EXAMPLES
+ bool "Compile and install examples "
+ depends on BR2_PACKAGE_QT6_GL_SUPPORTS
+ select BR2_PACKAGE_QT6BASE_DBUS
+ select BR2_PACKAGE_QT6BASE_NETWORK
+ select BR2_PACKAGE_QT6BASE_XML
+ select BR2_PACKAGE_QT6BASE_DBUS
+ select BR2_PACKAGE_QT6BASE_GUI
+ select BR2_PACKAGE_QT6BASE_WIDGETS
+ select BR2_PACKAGE_QT6BASE_OPENGL
+ select BR2_PACKAGE_QT6BASE_OPENGL_LIB
+ select BR2_PACKAGE_QT6BASE_CONCURRENT
+ help
+ If unsure, say N.
+
+comment "Building examples needs OpenGL/DBus support"
+ depends on !BR2_PACKAGE_QT6_GL_SUPPORTS || !BR2_PACKAGE_DBUS
+
config BR2_PACKAGE_QT6BASE_GUI
bool "gui module"
select BR2_PACKAGE_FREETYPE
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index 97986a3c2b..ec1c65f827 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -310,6 +310,12 @@ QT6BASE_CONF_OPTS += -DFEATURE_dbus=OFF
HOST_QT6BASE_CONF_OPTS += -DFEATURE_dbus=OFF
endif
+ifeq ($(BR2_PACKAGE_QT6BASE_EXAMPLES),y)
+QT6BASE_CONF_OPTS += -DQT_BUILD_EXAMPLES=ON
+else
+QT6BASE_CONF_OPTS += -DQT_BUILD_EXAMPLES=OFF
+endif
+
ifeq ($(BR2_PACKAGE_QT6BASE_NETWORK),y)
QT6BASE_CONF_OPTS += -DFEATURE_network=ON
else
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
` (11 preceding siblings ...)
2023-02-07 17:17 ` [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples Angelo Compagnucci
@ 2023-02-07 17:17 ` Angelo Compagnucci
2023-02-08 11:18 ` Thomas Petazzoni via buildroot
12 siblings, 1 reply; 28+ messages in thread
From: Angelo Compagnucci @ 2023-02-07 17:17 UTC (permalink / raw)
To: buildroot; +Cc: jesseevg, Angelo Compagnucci
From: Jesse Van Gavere <jesseevg@gmail.com>
The qmake functionality had been missing due to the new host/target
build requirement, to get it working the main parts of the qt5 qmake
has been kept, we're still making our own device spec which we use to
run qmake with along with passing some additional device options for our
flags/cross-compiler the biggest difference is that where previously
qt.conf was used to fixup per-paths builds, this is now always
created with changed contents so qmake looks at the correct target
directories.
Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
---
v6:
* Removing EGLFS_DEVICE mangling because is not working right now
and should be added later.
package/qt6/qt6.mk | 12 ++++++++++
package/qt6/qt6base/qmake.conf.in | 34 +++++++++++++++++++++++++++++
package/qt6/qt6base/qplatformdefs.h | 1 +
package/qt6/qt6base/qt.conf.in | 7 ++++++
package/qt6/qt6base/qt6base.mk | 16 ++++++++++++++
5 files changed, 70 insertions(+)
create mode 100644 package/qt6/qt6base/qmake.conf.in
create mode 100644 package/qt6/qt6base/qplatformdefs.h
create mode 100644 package/qt6/qt6base/qt.conf.in
diff --git a/package/qt6/qt6.mk b/package/qt6/qt6.mk
index 431bb8c9d3..847286a3fc 100644
--- a/package/qt6/qt6.mk
+++ b/package/qt6/qt6.mk
@@ -10,3 +10,15 @@ QT6_SOURCE_TARBALL_PREFIX = everywhere-src
QT6_SITE = https://download.qt.io/archive/qt/$(QT6_VERSION_MAJOR)/$(QT6_VERSION)/submodules
include $(sort $(wildcard package/qt6/*/*.mk))
+
+# The file "qt.conf" can be used to override the hard-coded paths that are
+# compiled into the Qt library. We need it to make "qmake" relocatable due
+# to the host/target build and tweak the per-package install pathes
+define QT6_INSTALL_QT_CONF
+ rm -f $(HOST_DIR)/bin/qt.conf
+ sed -e "s|@@HOST_DIR@@|$(HOST_DIR)|" -e "s|@@STAGING_DIR@@|$(STAGING_DIR)|" \
+ $(QT6BASE_PKGDIR)/qt.conf.in > $(HOST_DIR)/bin/qt.conf
+endef
+
+# Variable for other Qt applications to use
+QT6_QMAKE = $(HOST_DIR)/bin/qmake -spec devices/linux-buildroot-g++
diff --git a/package/qt6/qt6base/qmake.conf.in b/package/qt6/qt6base/qmake.conf.in
new file mode 100644
index 0000000000..e0d53d755d
--- /dev/null
+++ b/package/qt6/qt6base/qmake.conf.in
@@ -0,0 +1,34 @@
+# Qt6 has a mechanism to support "device" profiles, so that people can
+# specify the compiler, compiler flags and so on for a specific device.
+
+# We leverage this mechanism in the Buildroot packaging of qt6 to
+# simplify cross-compilation: we have our own "device" definition, which
+# allows us to easily pass the cross-compiler paths and flags from our
+# qt6.mk.
+
+include(../common/linux_device_pre.conf)
+
+# modifications to g++-unix.conf
+QMAKE_CC = $${CROSS_COMPILE}gcc
+QMAKE_CXX = $${CROSS_COMPILE}g++
+QMAKE_LINK = $${CROSS_COMPILE}g++
+
+# modifications to gcc-base.conf
+QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS}
+QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS}
+# Remove all optimisation flags, we really only want our own.
+QMAKE_CFLAGS_OPTIMIZE =
+QMAKE_CFLAGS_OPTIMIZE_DEBUG =
+QMAKE_CFLAGS_OPTIMIZE_FULL =
+QMAKE_CFLAGS_OPTIMIZE_SIZE =
+QMAKE_CFLAGS_DEBUG =
+QMAKE_CXXFLAGS_DEBUG =
+QMAKE_CFLAGS_RELEASE =
+QMAKE_CXXFLAGS_RELEASE =
+CONFIG += nostrip
+
+QMAKE_LIBS += -lrt -lpthread -ldl
+QMAKE_CFLAGS_ISYSTEM =
+
+include(../common/linux_device_post.conf)
+load(qt_config)
diff --git a/package/qt6/qt6base/qplatformdefs.h b/package/qt6/qt6base/qplatformdefs.h
new file mode 100644
index 0000000000..99e9a27923
--- /dev/null
+++ b/package/qt6/qt6base/qplatformdefs.h
@@ -0,0 +1 @@
+#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt6/qt6base/qt.conf.in b/package/qt6/qt6base/qt.conf.in
new file mode 100644
index 0000000000..4842bcb462
--- /dev/null
+++ b/package/qt6/qt6base/qt.conf.in
@@ -0,0 +1,7 @@
+[Paths]
+Prefix=/usr
+HostPrefix=@@HOST_DIR@@
+HostData=../target/usr
+Sysroot=@@STAGING_DIR@@
+SysrootifyPrefix=true
+TargetSpec=devices/linux-buildroot-g++
diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
index ec1c65f827..f37b2bafce 100644
--- a/package/qt6/qt6base/qt6base.mk
+++ b/package/qt6/qt6base/qt6base.mk
@@ -54,6 +54,9 @@ QT6BASE_CONF_OPTS = \
-DFEATURE_system_zlib=ON \
-DFEATURE_system_libb2=ON
+QT6BASE_CFLAGS = $(TARGET_CFLAGS)
+QT6BASE_CXXFLAGS = $(TARGET_CXXFLAGS)
+
# x86 optimization options. While we have a BR2_X86_CPU_HAS_AVX512, it
# is not clear yet how it maps to all the avx512* options of Qt, so we
# for now keeps them disabled.
@@ -384,5 +387,18 @@ else
QT6BASE_CONF_OPTS += -DFEATURE_zstd=OFF
endif
+define QT6BASE_MAKE_BR_SPEC
+ $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qmake.conf.in \
+ $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
+ $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qplatformdefs.h \
+ $(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
+endef
+
+QT6BASE_CONF_OPTS += -DQT_QMAKE_DEVICE_OPTIONS=CROSS_COMPILE="$(TARGET_CROSS)";BR_COMPILER_CFLAGS="$(QT6BASE_CFLAGS)";BR_COMPILER_CXXFLAGS="$(QT6BASE_CXX_FLAGS)"
+
+QT6BASE_PRE_CONFIGURE_HOOKS += QT6BASE_MAKE_BR_SPEC
+
+QT6BASE_POST_INSTALL_STAGING_HOOKS += QT6_INSTALL_QT_CONF
+
$(eval $(cmake-package))
$(eval $(host-cmake-package))
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module
2023-02-07 17:17 ` [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module Angelo Compagnucci
@ 2023-02-08 11:07 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:07 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
Hello,
On Tue, 7 Feb 2023 18:17:09 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> +ifeq ($(BR2_PACKAGE_QT6BASE_GUI),y)
> +QT6BASE_CONF_OPTS += -DFEATURE_gui=ON -DFEATURE_freetype=ON -DINPUT_opengl=no -DFEATURE_vulkan=OFF
Split with one option per line.
> +QT6BASE_DEPENDENCIES += freetype
> +
> +ifeq ($(BR2_PACKAGE_QT6BASE_LINUXFB),y)
> +QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=ON
> +else
> +QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=OFF
> +endif
> +
> +ifeq ($(BR2_PACKAGE_QT6BASE_XCB),y)
> +QT6BASE_CONF_OPTS += \
> + -DFEATURE_xcb=ON \
> + -DFEATURE_xcb_xlib=ON \
> + -DFEATURE_xkbcommon=ON \
> + -DFEATURE_xkbcommon_x11=ON
> +QT6BASE_DEPENDENCIES += \
> + libxcb \
> + xcb-util-wm \
> + xcb-util-image \
> + xcb-util-keysyms \
> + xcb-util-renderutil \
> + xlib_libX11 \
> + libxkbcommon
> +QT6BASE_DEPENDENCIES += xlib_libXext
This line was not correct: (1) this package is not needed and (2) it
was not selected in Config.in, causing a build failure because we don't
allow depending on a package that isn't selected in Config.in.
I fixed that up when applying. 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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz
2023-02-07 17:17 ` [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz Angelo Compagnucci
@ 2023-02-08 11:08 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:08 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:10 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Additionally the harfbuzz license file is added and the hash for this is
> also added to the hash file
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/Config.in | 17 +++++++++++++++++
> package/qt6/qt6base/qt6base.hash | 1 +
> package/qt6/qt6base/qt6base.mk | 23 +++++++++++++++++++++++
> 3 files changed, 41 insertions(+)
>
> diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
> index 1810b1586d..594221b792 100644
> --- a/package/qt6/qt6base/Config.in
> +++ b/package/qt6/qt6base/Config.in
> @@ -59,6 +59,23 @@ config BR2_PACKAGE_QT6BASE_XCB
> comment "X.org XCB backend available if X.org is enabled"
> depends on !BR2_PACKAGE_XORG7
>
> +config BR2_PACKAGE_QT6BASE_FONTCONFIG
> + bool "fontconfig support"
> + select BR2_PACKAGE_FONTCONFIG
> + help
> + This option enables Fontconfig and Freetype support using
> + the system fontconfig and freetype2 libraries.
It doesn't enable fontconfig and freetype, but only fontconfig.
Freetype is unconditionally enabled for the GUI module.
I fixed that up when applying. 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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format
2023-02-07 17:17 ` [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format Angelo Compagnucci
@ 2023-02-08 11:08 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:08 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:11 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/Config.in | 19 +++++++++++++++++++
> package/qt6/qt6base/qt6base.mk | 20 ++++++++++++++++++++
> 2 files changed, 39 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets
2023-02-07 17:17 ` [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets Angelo Compagnucci
@ 2023-02-08 11:09 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:09 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:12 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> +config BR2_PACKAGE_QT6BASE_WIDGETS
> + bool "widgets module"
> + select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT6BASE_XCB
According to my build testing, this dependency is not needed, so I
dropped it.
> + help
> + This option enables the Qt6Widgets library.
> +
> endif
>
> config BR2_PACKAGE_QT6BASE_NETWORK
> diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
> index 06ebbab8e7..cf3c7b1ad1 100644
> --- a/package/qt6/qt6base/qt6base.mk
> +++ b/package/qt6/qt6base/qt6base.mk
> @@ -213,6 +213,10 @@ else
> QT6BASE_CONF_OPTS += -DFEATURE_fontconfig=OFF
> endif
>
> +ifeq ($(BR2_PACKAGE_QT6BASE_WIDGETS),y)
> +QT6BASE_CONF_OPTS += -DFEATURE_widgets=ON
Missing else clause to explicitly disable widgets.
Applied with these two things fixed. 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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend
2023-02-07 17:17 ` [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend Angelo Compagnucci
@ 2023-02-08 11:09 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:09 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:13 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/qt6base.mk | 11 +++++++++++
> 1 file changed, 11 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support
2023-02-07 17:17 ` [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support Angelo Compagnucci
@ 2023-02-08 11:11 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:11 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:14 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> +if BR2_PACKAGE_QT6BASE_OPENGL
> +
> +choice
> + prompt "OpenGL API"
> + help
> + Select OpenGL API.
> +
> +config BR2_PACKAGE_QT6BASE_OPENGL_DESKTOP
> + bool "Desktop OpenGL"
> + depends on BR2_PACKAGE_HAS_LIBGL
> + help
> + Use desktop OpenGL.
> +
> +config BR2_PACKAGE_QT6BASE_OPENGL_ES2
> + bool "OpenGL ES 2.0+"
> + depends on BR2_PACKAGE_HAS_LIBGLES
> + help
> + Use OpenGL ES 2.0 and later versions.
> +
> +endchoice
> +
> +config BR2_PACKAGE_QT6BASE_OPENGL_LIB
> + bool "opengl module"
> + select BR2_PACKAGE_QT6BASE_WIDGETS
> + help
> + This option enables the Qt6OpenGL library. This library
> + includes OpenGL support classes provided to ease porting
> + from Qt 4.x.
This option didn't do anything: there is nothing in the .mk file that
did something about this option, so I dropped it.
> +
> +config BR2_PACKAGE_QT6BASE_EGLFS
> + bool "eglfs support"
> + default y
I dropped the "default y", there is no need for that.
> + depends on BR2_PACKAGE_HAS_LIBGBM
It also needs EGL.
> + select BR2_PACKAGE_QT6BASE_OPENGL
I also moved this option closer to the other graphics backends
(linuxfb, xcb).
> config BR2_PACKAGE_QT6BASE_FONTCONFIG
> bool "fontconfig support"
> select BR2_PACKAGE_FONTCONFIG
> diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
> index f936d19c68..e9a3396fb6 100644
> --- a/package/qt6/qt6base/qt6base.mk
> +++ b/package/qt6/qt6base/qt6base.mk
> @@ -228,6 +228,23 @@ else
> QT6BASE_CONF_OPTS += -DFEATURE_widgets=OFF
> endif
>
> +ifeq ($(BR2_PACKAGE_QT6BASE_EGLFS),y)
> +QT6BASE_CONF_OPTS += -DFEATURE_egl=ON -DFEATURE_eglfs=ON
> +QT6BASE_DEPENDENCIES += libegl
libgbm added here, since according to Config.in we need it.
Applied with those fixes, 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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection
2023-02-07 17:17 ` [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection Angelo Compagnucci
@ 2023-02-08 11:11 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:11 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:15 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/Config.in | 13 +++++++++++++
> package/qt6/qt6base/qt6base.mk | 3 +++
> 2 files changed, 16 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib
2023-02-07 17:17 ` [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib Angelo Compagnucci
@ 2023-02-08 11:13 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:13 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:16 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/Config.in | 6 ++++++
> package/qt6/qt6base/qt6base.mk | 7 +++++++
> 2 files changed, 13 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput
2023-02-07 17:17 ` [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput Angelo Compagnucci
@ 2023-02-08 11:13 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:13 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:17 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/qt6base.mk | 7 +++++++
> 1 file changed, 7 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms
2023-02-07 17:17 ` [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms Angelo Compagnucci
@ 2023-02-08 11:13 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:13 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:18 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/qt6base.mk | 7 +++++++
> 1 file changed, 7 insertions(+)
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups
2023-02-07 17:17 ` [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups Angelo Compagnucci
@ 2023-02-08 11:15 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:15 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:19 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> From: Jesse Van Gavere <jesseevg@gmail.com>
>
> Signed-off-by: Jesse Van Gavere <jesseevg@gmail.com>
> Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com>
> ---
> package/qt6/qt6base/Config.in | 4 ++++
> package/qt6/qt6base/qt6base.mk | 12 ++++++++++++
> 2 files changed, 16 insertions(+)
>
> diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in
> index d5d6d3569d..4d13128661 100644
> --- a/package/qt6/qt6base/Config.in
> +++ b/package/qt6/qt6base/Config.in
> @@ -168,6 +168,10 @@ config BR2_PACKAGE_QT6BASE_NETWORK
> help
> This options enables the Qt6Network library.
>
> +config BR2_PACKAGE_QT6BASE_PRINTSUPPORT
> + depends on BR2_PACKAGE_QT6BASE_WIDGETS
> + def_bool y
Why is that a def_bool y? I see it's like that in qt5base, but I'm not
sure why. I changed it to be a normal option:
config BR2_PACKAGE_QT6BASE_PRINTSUPPORT
bool "printing support"
# yes, print support needs widgets
depends on BR2_PACKAGE_QT6BASE_WIDGETS
help
This option enables printing support, optionally using CUPS
if available.
> diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
> index 4a64886a3f..97986a3c2b 100644
> --- a/package/qt6/qt6base/qt6base.mk
> +++ b/package/qt6/qt6base/qt6base.mk
> @@ -206,6 +206,18 @@ else
> QT6BASE_CONF_OPTS += -DFEATURE_jpeg=OFF
> endif
>
> +ifeq ($(BR2_PACKAGE_QT6BASE_PRINTSUPPORT), y)
Spurious space before y
> +QT6BASE_CONF_OPTS += -DFEATURE_printsupport=ON
> +ifeq ($(BR2_PACKAGE_CUPS), y)
Same.
Applied with those fixes. 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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples
2023-02-07 17:17 ` [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples Angelo Compagnucci
@ 2023-02-08 11:16 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:16 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
On Tue, 7 Feb 2023 18:17:20 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> +config BR2_PACKAGE_QT6BASE_EXAMPLES
> + bool "Compile and install examples "
> + depends on BR2_PACKAGE_QT6_GL_SUPPORTS
> + select BR2_PACKAGE_QT6BASE_DBUS
> + select BR2_PACKAGE_QT6BASE_NETWORK
> + select BR2_PACKAGE_QT6BASE_XML
> + select BR2_PACKAGE_QT6BASE_DBUS
> + select BR2_PACKAGE_QT6BASE_GUI
> + select BR2_PACKAGE_QT6BASE_WIDGETS
> + select BR2_PACKAGE_QT6BASE_OPENGL
> + select BR2_PACKAGE_QT6BASE_OPENGL_LIB
Due to comments/issues on previous patches, this option does not exist,
so I'm not able to apply this patch right now.
Could you resend as part of a new series after checking this
BR2_PACKAGE_QT6BASE_OPENGL_LIB thing?
Also, are all those options needed to have the examples? I believe with
Qt5, when you enable the examples, it builds only the examples that it
can build based on the features enabled in Qt. This was very handy. The
same is not possible here?
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality
2023-02-07 17:17 ` [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality Angelo Compagnucci
@ 2023-02-08 11:18 ` Thomas Petazzoni via buildroot
2023-02-10 10:14 ` Jesse Van Gavere
0 siblings, 1 reply; 28+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-02-08 11:18 UTC (permalink / raw)
To: Angelo Compagnucci; +Cc: jesseevg, buildroot
Hello,
On Tue, 7 Feb 2023 18:17:21 +0100
Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
> diff --git a/package/qt6/qt6base/qt.conf.in b/package/qt6/qt6base/qt.conf.in
> new file mode 100644
> index 0000000000..4842bcb462
> --- /dev/null
> +++ b/package/qt6/qt6base/qt.conf.in
> @@ -0,0 +1,7 @@
> +[Paths]
> +Prefix=/usr
> +HostPrefix=@@HOST_DIR@@
> +HostData=../target/usr
This looks very very odd, and most likely doesn't work. If I understand
correctly, this is a path that will be interpreted relatively to
$(HOST_DIR), so this value assumes that host/ and target/ are side by
side, but that's not true in the general case. Indeed, BR2_HOST_DIR
allows to customize where $(HOST_DIR) is located, and it can be
elsewhere than side by side to target/.
What is this trying to do exactly?
> +Sysroot=@@STAGING_DIR@@
> +SysrootifyPrefix=true
> +TargetSpec=devices/linux-buildroot-g++
> diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
> index ec1c65f827..f37b2bafce 100644
> --- a/package/qt6/qt6base/qt6base.mk
> +++ b/package/qt6/qt6base/qt6base.mk
> @@ -54,6 +54,9 @@ QT6BASE_CONF_OPTS = \
> -DFEATURE_system_zlib=ON \
> -DFEATURE_system_libb2=ON
>
> +QT6BASE_CFLAGS = $(TARGET_CFLAGS)
> +QT6BASE_CXXFLAGS = $(TARGET_CXXFLAGS)
> +
> # x86 optimization options. While we have a BR2_X86_CPU_HAS_AVX512, it
> # is not clear yet how it maps to all the avx512* options of Qt, so we
> # for now keeps them disabled.
> @@ -384,5 +387,18 @@ else
> QT6BASE_CONF_OPTS += -DFEATURE_zstd=OFF
> endif
>
> +define QT6BASE_MAKE_BR_SPEC
> + $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qmake.conf.in \
> + $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
> + $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qplatformdefs.h \
> + $(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
> +endef
> +
> +QT6BASE_CONF_OPTS += -DQT_QMAKE_DEVICE_OPTIONS=CROSS_COMPILE="$(TARGET_CROSS)";BR_COMPILER_CFLAGS="$(QT6BASE_CFLAGS)";BR_COMPILER_CXXFLAGS="$(QT6BASE_CXX_FLAGS)"
> +
> +QT6BASE_PRE_CONFIGURE_HOOKS += QT6BASE_MAKE_BR_SPEC
> +
> +QT6BASE_POST_INSTALL_STAGING_HOOKS += QT6_INSTALL_QT_CONF
Where is QT6_INSTALL_QT_CONF implemented ?
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] 28+ messages in thread
* Re: [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality
2023-02-08 11:18 ` Thomas Petazzoni via buildroot
@ 2023-02-10 10:14 ` Jesse Van Gavere
0 siblings, 0 replies; 28+ messages in thread
From: Jesse Van Gavere @ 2023-02-10 10:14 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: buildroot, Angelo Compagnucci
Hello Thomas,
You're right, this won't work with a relocated HOST_DIR the
QT6_INSTALL_QT_CONF seems to have gotten dropped in Angelo his patch
series, I'll rebase onto what has been approved and submit a new
series for the qmake functionality.
Thanks for the reviews!
Regards,
Jesse
Op wo 8 feb. 2023 om 12:18 schreef Thomas Petazzoni
<thomas.petazzoni@bootlin.com>:
>
> Hello,
>
> On Tue, 7 Feb 2023 18:17:21 +0100
> Angelo Compagnucci <angelo@amarulasolutions.com> wrote:
>
> > diff --git a/package/qt6/qt6base/qt.conf.in b/package/qt6/qt6base/qt.conf.in
> > new file mode 100644
> > index 0000000000..4842bcb462
> > --- /dev/null
> > +++ b/package/qt6/qt6base/qt.conf.in
> > @@ -0,0 +1,7 @@
> > +[Paths]
> > +Prefix=/usr
> > +HostPrefix=@@HOST_DIR@@
> > +HostData=../target/usr
>
> This looks very very odd, and most likely doesn't work. If I understand
> correctly, this is a path that will be interpreted relatively to
> $(HOST_DIR), so this value assumes that host/ and target/ are side by
> side, but that's not true in the general case. Indeed, BR2_HOST_DIR
> allows to customize where $(HOST_DIR) is located, and it can be
> elsewhere than side by side to target/.
>
> What is this trying to do exactly?
>
>
>
> > +Sysroot=@@STAGING_DIR@@
> > +SysrootifyPrefix=true
> > +TargetSpec=devices/linux-buildroot-g++
> > diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk
> > index ec1c65f827..f37b2bafce 100644
> > --- a/package/qt6/qt6base/qt6base.mk
> > +++ b/package/qt6/qt6base/qt6base.mk
> > @@ -54,6 +54,9 @@ QT6BASE_CONF_OPTS = \
> > -DFEATURE_system_zlib=ON \
> > -DFEATURE_system_libb2=ON
> >
> > +QT6BASE_CFLAGS = $(TARGET_CFLAGS)
> > +QT6BASE_CXXFLAGS = $(TARGET_CXXFLAGS)
> > +
> > # x86 optimization options. While we have a BR2_X86_CPU_HAS_AVX512, it
> > # is not clear yet how it maps to all the avx512* options of Qt, so we
> > # for now keeps them disabled.
> > @@ -384,5 +387,18 @@ else
> > QT6BASE_CONF_OPTS += -DFEATURE_zstd=OFF
> > endif
> >
> > +define QT6BASE_MAKE_BR_SPEC
> > + $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qmake.conf.in \
> > + $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
> > + $(INSTALL) -m 0644 -D $(QT6BASE_PKGDIR)/qplatformdefs.h \
> > + $(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
> > +endef
> > +
> > +QT6BASE_CONF_OPTS += -DQT_QMAKE_DEVICE_OPTIONS=CROSS_COMPILE="$(TARGET_CROSS)";BR_COMPILER_CFLAGS="$(QT6BASE_CFLAGS)";BR_COMPILER_CXXFLAGS="$(QT6BASE_CXX_FLAGS)"
> > +
> > +QT6BASE_PRE_CONFIGURE_HOOKS += QT6BASE_MAKE_BR_SPEC
> > +
> > +QT6BASE_POST_INSTALL_STAGING_HOOKS += QT6_INSTALL_QT_CONF
>
> Where is QT6_INSTALL_QT_CONF implemented ?
>
> 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] 28+ messages in thread
end of thread, other threads:[~2023-02-10 10:14 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-07 17:17 [Buildroot] [PATCH v6 00/13] Extend Qt6 configuration Angelo Compagnucci
2023-02-07 17:17 ` [Buildroot] [PATCH v6 01/13] package/qt6/qt6base: add support for gui module Angelo Compagnucci
2023-02-08 11:07 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 02/13] package/qt6/qt6base: add support for fontconfig/harfbuzz Angelo Compagnucci
2023-02-08 11:08 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 03/13] package/qt6/qt6base: Add support for jpeg/png/gif image format Angelo Compagnucci
2023-02-08 11:08 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 04/13] package/qt6/qt6base: add support for widgets Angelo Compagnucci
2023-02-08 11:09 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 05/13] package/qt6/qt6base: add support for widgets gtk backend Angelo Compagnucci
2023-02-08 11:09 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 06/13] package/qt6/qt6base: add opengl support Angelo Compagnucci
2023-02-08 11:11 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 07/13] package/qt6/qt6base: add QPA backend selection Angelo Compagnucci
2023-02-08 11:11 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 08/13] package/qt6/qt6base: add support for tslib Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 09/13] package/qt6/qt6base: add support for libinput Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 10/13] package/qt6/qt6base: add support for kms Angelo Compagnucci
2023-02-08 11:13 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 11/13] package/qt6/qt6base: add support for printsupport/cups Angelo Compagnucci
2023-02-08 11:15 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 12/13] package/qt6/qt6base: add support for building examples Angelo Compagnucci
2023-02-08 11:16 ` Thomas Petazzoni via buildroot
2023-02-07 17:17 ` [Buildroot] [PATCH v6 13/13] package/qt6: Add qmake functionality Angelo Compagnucci
2023-02-08 11:18 ` Thomas Petazzoni via buildroot
2023-02-10 10:14 ` Jesse Van Gavere
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.