Commit Graph

400 Commits

Author SHA1 Message Date
Giulio Benetti
8252118c5a qt5base: add support for sunxi-mali{,-mainline} eglfs backend
Only one of the two can be selected (they are conflicting virtual
packages) so testing against a single 'y' is enough.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
[Arnout: add sunxi-mali and sunxi-mali-mainline in a single patch]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-04 23:35:22 +02:00
Giulio Benetti
81fb33af2a qt5base: correct eglfs support in qmake.conf.in
Setting EGLFS_DEVICE_INTEGRATION at the end of qmake.conf like is done
by commit 0c219ddb8a doesn't work correctly: it has to be set before the
include(../common/linux_device_post.conf)

Instead of appending to the file, change it into a qmake.conf.in
template file that contains a placeholder for the
EGLFS_DEVICE_INTEGRATION assignment and update it with sed. Since the
sed always has to be executed, this removes the need for a separate
QT5BASE_CONFIGURE_QMAKE_CONFIG definition.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
[Arnout: simplify the replacement, move sunxi-mali support to a
 separate patch]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-04 23:35:22 +02:00
Gaël PORTAY
3c6958423f qt5: bump latest version to 5.10.1
The tarball filename has changed since 5.10. The module suffix
*opensource-src* has changed to *everywhere-src*. I introduced the
*QT5_SOURCE_TARBALL_PREFIX* variable to set the right filename according
to the Qt version.

qtwebengine:

	Select libnss. It is a requirement[1] because OpenSSL
	certificate validation[2] and NSS bundle[3] was dropped.

	Add host-libnss and host-libpng to satisfy new requirement to
	build an internal host-tool.

	Set ninja host pkg-config tool using environment variable
	$GN_PKG_CONFIG_HOST[4]. The build system uses pkg-config to get
	package data for both host and target architectures. Using the
	same call to pkg-config for both target and host leads to build
	mismatches: it tries to link a host-tool using target libraries.

qt5base:

	sqlite plugin now uses sqlite3_column_table_name16() so select
	BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA to make sure it is
	available.

qt5multimedia:

	libqgsttools was renamed to libQtMultimediaGstTools. The latter
	name matches the libQt5Multimedia*.so.* pattern so no additional
	copy command is needed for it anymore.

qt5xmlpatterns:

	Names of the license files have changed: LICENSE.(L)GPLv3 ->
	LICENSE.(L)GPL3. The new files in fact already existed in 5.9.4
	but the old ones were not removed yet. The new files are
	slightly different: there used to be a Qt header in front of it
	which is now removed. Also LICENSE.LGPL3 is rewrapped.

qt5location, qt5quickcontrols, qt5serialport:

	Same license files issue, and for LICENSE.GPLv2 as well.
	LICENSE.GPL2 has the "How to Apply These Terms to Your New
	Programs" text appended to it.

qt5script:

	Similar license file issues, but the new license files were not
	present yet. LICENSE.GPLv21 was removed so there is no longer a
	license file for the LGPL-2.1-covered Qt code.

[1]: 9b449045fb
[2]: https://codereview.chromium.org/2862543003
[3]: https://codereview.chromium.org/1882433002
[4]: https://github.com/qt/qtwebengine/blob/v5.10.1/src/core/config/linux.pri#L111-L125

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
[Peter:
 - fix sqlite plugin support in qt5base;
 - fix target installation of qt5multimedia
]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Arnout:
 - create a local host-pkg-config tool instead of extending pkgconf;
 - pass the same options to host-pkg-config as we do for other packages;
 - carry the EGL mesa3d X11 headers patch;
 - update license file names and hashes
]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-02 16:39:31 +02:00
Arnout Vandecappelle (Essensium/Mind)
d9ec8526bb qt5script: correct license information
The license information in qt5script was just copied from all the other
qt5 modules, but it is different (and complicated).

- libQt5Script itself contains the third-party JavaScriptCore source.
  JavaScriptCore has a number of licenses: BSD-2-Clause, BSD-3-Clause,
  LGPL-2.0+, LGPL-2.1+. Since it is all linked together, the end
  result will be BSD-3-Clause and LGPL-2.1+.

  The different BSD licenses are all slightly different (different
  authors, which affects the third clause in particular). Only one
  separate license file is provided, so let's use that one.

  There is an LGPL-2.0 license file, which is slightly different from
  the top-level LICENSE.LGPLv21, so let's add that one as well.

- libQt5Script also contains Qt-specific code which is all licensed
  under LGPL-2.1 only. This is covered by the LICENSE.LGPLv21 file.
  It merges with the LGPL-2.1+ from JavaScriptCore but limits it to
  2.1 only.

- libQt5ScriptTools is a separate libary containing just the script
  debugger. It is covered by the usual Qt license:
  * LGPL-2.1 or LGPL-3.0 with exception for Qt 5.6;
  * LGPL-3.0 or GPL-2.0+ for Qt 5.9 (actually it is GPL-2.0 or GPL-3.0
    or any later version approved by the KDE Qt foundation, but let's
    keep it simple :-). Note that there is no LICENSE.GPLv2 provided,
    only LICENSE.GPLv3. Also, there is an LGPL_EXCEPTION.txt file but
    no mention of an exception anywhere in the sources.

Update the license information with all of the above. Also add hashes
for the new license files from JavaScriptCore.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-02 16:29:58 +02:00
Bartosz Bilas
8092838828 package/qt5/qt5scxml: install missing QML module
Fixes:
 qrc:/MainUI.qml:2 module "QtScxml" is not installed

Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
Reviewed-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 23:48:30 +02:00
Gaël PORTAY
7a41e1c672 Revert "qt5multimedia: fix build issue with mesa3d w/out xcb"
This reverts commit fadaaabe6f.

Superseded by:

	qt5base: fix build issue with mesa3d w/out xcb

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 23:48:30 +02:00
Gaël PORTAY
3f52e9d584 Revert "qt5webkit: fix build issue with mesa3d w/out xcb"
This reverts commit e46f9fde78.

Supersede by:

	qt5base: fix build issue with mesa3d w/out xcb

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 23:48:30 +02:00
Gaël PORTAY
d675b11843 Revert "qt5wayland: fix build issue with mesa3d w/out xcb"
This reverts commit 85483968be.

Supersede by:

	qt5base: fix build issue with mesa3d w/out xcb

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 23:48:30 +02:00
Gaël PORTAY
d515ca8dd8 qt5base: fix build issue with mesa3d w/out xcb
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].

A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected. For instance, with this defconfig:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_FPU_VFPV3D16=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_NONE=y
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_OPENGL_LIB=y
BR2_PACKAGE_QT5BASE_LINUXFB=y
BR2_PACKAGE_QT5BASE_EGLFS=y
BR2_PACKAGE_QT5WEBKIT=y

Also the odroid-mali EGL backend suffers the same problem.

This commit backports the patch from the Gerrit of Qt which is in
review[5]. It extends the QMAKE_CXXFLAGS with cflags contained in the
egl.pc file.

In this situation, the define MESA_EGL_NO_X11_HEADERS is given to the
compiler that prevent from including the missing X headers.

The issues QTBUG-61712[3] and QTBUG-66233[4] are opened in the Qt
tracker.

Fixes
http://autobuild.buildroot.net/results/8781a561ae1a89e4d70ddaba65d8817eabe3ce69

[1]: 79ee1b2ff0/include/EGL/eglplatform.h (L109-L125)
[2]: https://codereview.qt-project.org/#/c/198906/
[3]: https://bugreports.qt.io/browse/QTBUG-61712
[4]: https://bugreports.qt.io/browse/QTBUG-66233

Cc: Julien CORJON <corjon.j@ecagroup.com>
Cc: Peter Seiderer <ps.report@gmx.net>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 23:48:30 +02:00
Gaël PORTAY
cea7aa873a qt5webkit: fix build issue with 32-bits armv8-a
Adds WTF platform support for the 32-bits armv8-a architectures.

Fixes:

	In file included from ./config.h:30:0,
	                 from ...
	./wtf/Platform.h:323:6: error: #error "Not supported ARM architecture"
	 #    error "Not supported ARM architecture"
	      ^~~~~
from this defconfig:

BR2_arm=y
BR2_cortex_a72=y
BR2_ARM_FPU_VFPV3D16=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_INIT_NONE=y
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5WEBKIT=y

The patch is an adaptation of an upstream fix in version 5.212 of
qtwebkit[1].

Unfortunately, the commit cannot be backported and has to be fixed since
the toolchain does not define __ARM_ARCH_8__ but __ARM_ARCH_8A__.

	$ host/bin/arm-buildroot-linux-gnueabihf-g++ -dM -E - < /dev/null | grep ARM_ARCH
	#define __ARM_ARCH_ISA_ARM 1
	#define __ARM_ARCH_8A__ 1
	#define __ARM_ARCH_PROFILE 65
	#define __ARM_ARCH_ISA_THUMB 2
	#define __ARM_ARCH 8
	#define __ARM_ARCH_EXT_IDIV__ 1

[1]: 35655d5f4b/Source/WTF/wtf/Platform.h (L241-L242)

Cc: Arnout Vandecappelle <arnout@mind.be>
Reported-by: Brock Williams <brock@cottonwoodcomputer.com>
Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2018-04-01 20:21:39 +02:00
Gaël PORTAY
fadaaabe6f qt5multimedia: fix build issue with mesa3d w/out xcb
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].

A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.

This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.

The issue QTBUG-66233 is opened in the Qt tracker[1].

Fixes:

	In file included from
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
	                 from qsgvideonode_egl.h:48,
	                 from qsgvideonode_egl.cpp:40:
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
	fatal error: X11/Xlib.h: No such file or directory
	 #include <X11/Xlib.h>
	                      ^
	compilation terminated.
	Makefile:550: recipe for target '.obj/qsgvideonode_egl.o' failed

[1]: 79ee1b2ff0/include/EGL/eglplatform.h (L109-L125)
[2]: https://bugreports.qt.io/browse/QTBUG-66233

[Peter: simplify logic]
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-27 22:00:20 +01:00
Gaël PORTAY
e46f9fde78 qt5webkit: fix build issue with mesa3d w/out xcb
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].

A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.

This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.

The issue QTBUG-66233 is opened in the Qt tracker[1].

Fixes:

	In file included from /home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
	                 from platform/graphics/opengl/Extensions3DOpenGLES.cpp:33:
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22: fatal error: X11/Xlib.h: No such file or directory
	 #include <X11/Xlib.h>
	                      ^
	compilation terminated.
	Makefile.WebCore.Target:93596: recipe for target '.obj/platform/graphics/opengl/Extensions3DOpenGLES.o' failed

[1]: 79ee1b2ff0/include/EGL/eglplatform.h (L109-L125)
[2]: https://bugreports.qt.io/browse/QTBUG-66233

[Peter: simplify logic]
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-27 21:59:05 +01:00
Gaël PORTAY
85483968be qt5wayland: fix build issue with mesa3d w/out xcb
The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
MESA_EGL_NO_X11_HEADERS is defined[1].

A build issue happens when mesa3d is selected as then OpenGL EGL backend
but the XCB library is not selected.

This commit tells qmake to pass the cflag MESA_EGL_NO_X11_HEADERS to
make and prevent from including the missing X headers.

The issue QTBUG-66233 is opened in the Qt tracker[1].

Fixes:

	In file included from
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:39:0,
	                 from
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qt_egl_p.h:65,
	                 from
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/qt5/QtEglSupport/5.10.0/QtEglSupport/private/qeglstreamconvenience_p.h:55,
	                 from
	../../../../hardwareintegration/compositor/wayland-egl/waylandeglclientbufferintegration.cpp:56:
	/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:118:22:
	fatal error: X11/Xlib.h: No such file or directory
	 #include <X11/Xlib.h>
	                      ^
	compilation terminated.
	Makefile:656: recipe for target
	'.obj/waylandeglclientbufferintegration.o' failed
	make[8]: *** [.obj/waylandeglclientbufferintegration.o] Error 1

[1]: 79ee1b2ff0/include/EGL/eglplatform.h (L109-L125)
[2]: https://bugreports.qt.io/browse/QTBUG-66233

[Peter: simplify logic]
Cc: Julien CORJON <corjon.j@ecagroup.com>
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-27 21:48:17 +01:00
Sébastien Szymanski
ee5724ca05 qt5: bump latest version to 5.9.4
qt5connectivity:
 - removed
 0001-Example-heartrate-server-needs-only-core-and-bluetoo.patch
 (upstream comitted [1])

qt5quickcontrols2:
 - removed 0001-Example-flatstyle-needs-widgets-module.patch (upstream
 comitted [2])

qt5webengine:
 - removed 0002-Load-libEGL-and-libGLES2-symbols-implicitly.patch
 (upstream comitted, reverted and recomitted [3])

[1] https://codereview.qt-project.org/211810
[2] https://codereview.qt-project.org/212583
[3] https://codereview.qt-project.org/209547

Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-27 20:18:51 +01:00
Gaël PORTAY
737278c2cc qt5webengine: fix build issue with alsa
Qt WebEngine auto-guesses if it compiles support for alsa. When the
alsa-lib config is enabled but the features mixer, rawmidi, hwdep and
seq are not also enabled, it leads to a build failure.

Lets the developer decide whether or not support for alsa in Qt
WebEngine by adding the new config BR2_PACKAGE_QT5WEBENGINE_ALSA that
selects the features it needs when it is set.

Fixes [1].

[1]: http://autobuild.buildroot.net/results/d81537a8f67bb0a3625057560b2f16daf4828f98/build-end.log

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-19 23:45:38 +01:00
Gaël PORTAY
298b8a38dd qt5: fetch sources using https URLs
Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-14 21:24:10 +01:00
Gaël PORTAY
06197ed294 qt5webengine: replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/bin
Apply effect of commit 0f9c0bf3d5 to Qt WebEngine.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-13 23:22:00 +01:00
Gaël PORTAY
0082d2c446 qt5webkit{, -examples}: use https link in hashfile
All Qt modules but qt5webkit use https link in their hashfile.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-13 23:20:29 +01:00
Gaël PORTAY
7c384c3b0f qt5tools: fix typo in <pkg>_SOURCE
The QT5TOOLS_SOURCE variable uses mismatch QT5BASE_VERSION variable.

This commit fixes the typo by using the appropriate QT5TOOLS_VERSION
variable.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-10 16:14:56 +01:00
Gaël PORTAY
04ceb347e5 qt5enginio: bump to 1.6.3
Qt Enginio has been bumped to 1.6.3 with Qt 5.6.3.

This new version follows the Qt release number and has only one change
since 1.6.2[1].

[1]: e447818458

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-10 15:33:57 +01:00
Gaël PORTAY
caa3f12fd6 qt53d: fix typo in <pkg>_SOURCES
The QT53D_SOURCE variable uses mismatch QT5SVG_VERSION variable.

This commit fixes the typo by using the appropriate QT53D_VERSION
variable.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-10 15:33:46 +01:00
Peter Seiderer
ec8f5db9bb qt5: enable jscore/qt5declarative support for aarch64
Fixes [1] (as suggested by JD Conley <jd.conley@gmail.com>).

[1] https://bugs.busybox.net/show_bug.cgi?id=10541

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2018-01-15 23:19:51 +01:00
Peter Seiderer
9d2dd70bea package/qt5/qt5scxml: fix qt5declarative dependency
This commit makes additional improvements after commit
187d24701d ("package/qt5/qt5scxml: needs
qt5declarative package") :

- add qt5declarative depends comment
- add missing qt5declarative dependency

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-28 10:04:48 +01:00
Bartosz Bilas
187d24701d package/qt5/qt5scxml: needs qt5declarative package
qt5scxml package needs qml-private module which is delivered by
qt5declarative.

Fixes:

  http://autobuild.buildroot.net/results/9e650f6147f7858be74782806f4b8d2aac4c689a/

Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
[Thomas: add missing dependency on BR2_PACKAGE_QT5_JSCORE_AVAILABLE,
adjust commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-27 22:07:01 +01:00
Thomas Petazzoni
1b51fa44d0 package/*/Config.in: fix consecutive lines check-package warnings
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-18 09:25:24 +01:00
Thomas Petazzoni
1610200e78 package/*/Config.in: fix property order warning of check-package
This commit fixes the ordering of the Config.in option properties, as
reported by check-package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-18 09:24:38 +01:00
Thomas Petazzoni
2277fdeca8 package/*/Config.in: fix help text check-package warnings
This commit fixes the warnings reported by check-package on the help
text of all package Config.in files, related to the formatting of the
help text: should start with a tab, then 2 spaces, then at most 62
characters.

The vast majority of warnings fixed were caused by too long lines. A
few warnings were related to spaces being used instead of a tab to
indent the help text.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-18 09:22:54 +01:00
Bartosz Bilas
ef298d9b1d package/qt5/qt5scxml: new package
Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com>
[Thomas: add entry to DEVELOPERS file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-13 14:22:52 +01:00
Peter Seiderer
4b09fe60d9 qt5charts: fix qt5base widgets/gui selection
Selection of BR2_PACKAGE_QT5BASE_WIDGETS needs BR2_PACKAGE_QT5BASE_GUI too.

Fixes qt5base configure failure ([1]):

  ERROR: Feature 'widgets' was enabled, but the pre-condition 'features.gui' failed.
[1] http://autobuild.buildroot.net/results/69c4385b2fd484d16f749b4cde6967f5cabea8b2

and buildroot warning:

  warning: (... && BR2_PACKAGE_QT5CHARTS && ...) selects BR2_PACKAGE_QT5BASE_WIDGETS
  which has unmet direct dependencies (BR2_PACKAGE_QT5 && BR2_PACKAGE_QT5BASE && BR2_PACKAGE_QT5BASE_GUI)

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Acked-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-12 07:12:38 +01:00
Sébastien Szymanski
f0066a215d qt5charts: new package
Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
[Thomas: add entry to DEVELOPERS file, update to Qt 5.9.3.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-03 23:47:12 +01:00
Peter Seiderer
573a4a0bc8 qt5quickcontrols2: fix examples compile without Qt widgets module
Add upstream suggested patch to fix flatstyle example configure
(needs widgets module).

Fixes:

  cd flatstyle/ && ( test -e Makefile || .../host/bin/qmake -o Makefile .../build/qt5quickcontrols2-5.9.2/examples/quickcontrols2/flatstyle/flatstyle.pro ) && make -f Makefile
  Project ERROR: Unknown module(s) in QT: widgets
  make[1]: *** [Makefile:202: sub-flatstyle-make_first] Error 3
  make[1]: Leaving directory '.../build/qt5quickcontrols2-5.9.2/examples/quickcontrols2'
  make: *** [Makefile:45: sub-quickcontrols2-make_first] Error 2

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Thomas: move patch to 5.9.3 directory, since we've bumped
qtquickcontrols2 since then.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 23:24:54 +01:00
Joshua Henderson
5eb43c83c1 qt5: remove Qt Quick dependency on opengl
Qt Quick should no longer depend on opengl, and instead fallback to
the limited functionality software renderer as a replacement [1] when
not available.

[1] http://blog.qt.io/blog/2016/08/15/the-qt-quick-graphics-stack-in-qt-5-8/

Cc: Peter Seiderer <ps.report@gmx.net>
Cc: Julien Corjon <corjon.j@ecagroup.com>
Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
[Thomas: drop qt5declarative patch, since we have bumped to 5.9.3,
which contains the patch.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 23:12:01 +01:00
Peter Seiderer
914f55e2b1 qt5: bump latest version to 5.9.3
qt5connectivity:
 - moved 0001-Example-heartrate-server-needs-only-core-and-bluetoo.patch
   to 5.9.3

qt5declarative:
 - removed 0001-Fix-no-opengl-builds.patch to 5.9.3 (upstream committed,
   see [1])

qt5webengine:
 - keep 0002-Load-libEGL-and-libGLES2-symbols-implicitly.patch
   (upstream committed, see [2], but reverted afterwards, see [3])

[1] https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=fa52bb665d6beb77a951c14c8edcba3541850afc
[2] https://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=d4c621f6a6b87f2a86069fa393b9f7c4f9e7b9ad
[3] https://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=c11c2c8981e647c1eb2c6753ce77d436b92fff87

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 23:02:22 +01:00
Thomas Petazzoni
99809a0ae8 qt5webkit: fix typo in the <pkg>_DEPENDENCIES declaration
This commit fixes a typo introduced in commit
43e1d099b4 ("Revert
"package/qt5webkit-examples: remove obsolete package""), which caused
qt5declarative to not be added as a dependency for the correct
package.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 22:58:13 +01:00
Thomas Petazzoni
1c8dda3e43 Merge branch 'next'
This merges the next branch accumulated during the 2017.11 release
cycle back into the master branch.

A few conflicts had to be resolved:

 - In the DEVELOPERS file, because Fabrice Fontaine was added as a
   developer for libupnp in master, and for libupnp18 in
   next. Resolution is simple: add him for both.

 - linux/Config.in, because we updated the 4.13.x release used by
   default in master, while we moved to 4.14 in next. Resolution: use
   4.14.

 - package/libupnp/libupnp.hash: a hash for the license file was added
   in master, while the package was bumped into next. Resolution: keep
   the hash for the license file, and keep the hash for the newest
   version of libupnp.

 - package/linux-headers/Config.in.host: default version of the kernel
   headers for 4.13 was bumped to the latest 4.13.x in master, but was
   changed to 4.14 in next. Resolution: use 4.14.

 - package/samba4/: samba was bumped to 4.6.11 in master for security
   reasons, but was bumped to 4.7.3 in next. Resolution: keep 4.7.3.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-12-01 21:56:44 +01:00
Gaël PORTAY
43e1d099b4 Revert "package/qt5webkit-examples: remove obsolete package"
This reverts commit 940bfe2f43 with the
following changes:

 - new hashes for 5.6.3 and 5.9.1 (there is no 5.9.2).
 - BR2_PACKAGE_QT5BASE_LICENSE_APPROVED has been removed
 - add GPL-3 to licences
 - uses SPDX identifier for licences
 - add missing dependencies (qt5base, qt5webkit, qt5declarative)
 - removes /usr when qmake host-tools is invoked at configure

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
[Thomas: add entry in the DEVELOPERS file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-29 22:22:14 +01:00
Gaël PORTAY
b865c38ea6 package/qt5: simplify and cleanup _SITE variables
The variable QT5_SNAPSHOTS_SITE was introduced in commit 9d5ac9698 to
fetch sources of obsolete modules. It was used to download qt5webkit
tarballs.

The variable is not referenced anymore since the qt5webkit tarballs are
downloaded from the Qt community release site.

Since the introduction of qt-5.9 in aa1c40ba3, the QT5_SITE variable
was duplicated for no good reason.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-29 21:46:29 +01:00
Gaël PORTAY
00012bf9d5 qt5webengine: enable build for 5.6.3
The build was broken in 5.6.2 and was disabled.

It compiles fine since 5.6.3.

The two additional patches are useful at run-time.

The first one avoid the need to specify the path to the SSL certificate
directory (using an additional environment variable).

The second one is the same used in 5.9.x (plus resolved conflicts). It uses the
process's context to get handles on EGL and GLESv2 libraries. Those libraries
are linked to Qt WebEngine at compile time.

The patch is particularly usefull for RPI boards since the raspberrypi userland
package does not provide the libEGLv2.so.2 and libGLES.so.1 symlinks. Both
library paths are hardcoded in Qt WebEngine.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-27 21:42:12 +01:00
Gaël PORTAY
7780cef535 qt5webkit: fix URL for 5.6 download
The Qt community releases are not stored under submodules path
component.

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-25 12:01:05 +01:00
Peter Seiderer
553a736ebb qt5connectivity: fix examples compile without Qt gui module
Add upstream suggested patch to fix heartrate-server (needs only
core and bluetooth modules).

Fixes [1]:

  make[3]: Entering directory `.../build/qt5connectivity-5.9.2/examples/bluetooth'
  cd heartrate-server/ && ( test -e Makefile || .../output/host/bin/qmake -o Makefile .../build/qt5connectivity-5.9.2/examples/bluetooth/heartrate-server/heartrate-server.pro ) && /usr/bin/make -f Makefile
  Project ERROR: Unknown module(s) in QT: gui
  make[3]: *** [sub-heartrate-server-make_first] Error 3
  make[3]: Leaving directory `.../build/qt5connectivity-5.9.2/examples/bluetooth'

[1] http://autobuild.buildroot.net/results/387a21fe7fc672e5668b0afddc138cbb7197d234

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
[Thomas: move patch to 5.9.2 subfolder, since it only applies to 5.9.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-22 22:11:41 +01:00
Peter Seiderer
5e7ddc54df qt5declarative: fix examples compile without OpenGL support
Add upstream patch to fix examples compile without OpenGL support, in
the Qt 5.9 version of qt5declarative.

Fixes [1]:

  In file included from fbitem.h:49:0,
                   from mainwindow.cpp:42:
  logo.h:52:11: error: 'GLfloat' does not name a type
       const GLfloat *constData() const { return m_data.constData(); }
             ^
  logo.h:57:15: error: 'GLfloat' has not been declared
       void quad(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2, GLfloat x3, GLfloat y3, GLfloat x4, GLfloat y4);
                 ^
  [...]
  Makefile:610: recipe for target '.obj/mainwindow.o' failed
  make[5]: *** [.obj/mainwindow.o] Error 1
  make[5]: Leaving directory '.../build/qt5declarative-5.9.2/examples/quick/quickwidgets/qquickviewcomparison'
  Makefile:70: recipe for target 'sub-qquickviewcomparison-make_first' failed
  make[4]: *** [sub-qquickviewcomparison-make_first] Error 2
  make[4]: *** Waiting for unfinished jobs....

[1] http://autobuild.buildroot.net/results/cef4abbe043f3aaad03c73e07cfab9d24c3d0fc9

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-22 21:56:54 +01:00
Peter Korsgaard
cab0d0a8ac qt5webkit: backport upstream icu-59 fix from 5.9 branch to 5.6.3
icu-59.x slightly changed the API, breaking qt5webkit builds. For details, see:

https://bugreports.qt.io/browse/QTBUG-60532

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-11-17 10:31:58 +01:00
Peter Korsgaard
d4a119ccc4 qt5webkit: correct download URL and hash for 5.6 variant
Commit 06a4975d4b (qt5: bump LTS version to 5.6.3) added an empty hash
for the 5.6.3 variant of qt5webkit, causing failures.

It also forgot to adjust the download URL as the qt5webkit tarballs are no
longer available under official_releases/ like the other submodules, but only
under community_releases/.

Fix both issues.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-11-17 10:31:55 +01:00
Gary Bisson
0c219ddb8a qt5base: add qmake.conf fixup for i.MX platforms
As stated in QTBUG-61156 [1], since Qt5.9 all the Qt apps fail to start
on i.MX platforms.

The reason is that the qmake.conf should apparently now specify which
eglfs backend to use.

It can be seen in the qmake.conf example for i.MX [2].

It has also been integrated into the Yocto meta-freescale layer [3].

Although this issue can be worked around by exporting a variable
(QT_QPA_EGLFS_INTEGRATION=eglfs_viv), this patch aims at providing
a more user-friendly approach by modifying qmake.conf when created.

[1]: https://bugreports.qt.io/browse/QTBUG-61156
[2]: https://github.com/qt/qtbase/blob/5.9/mkspecs/devices/linux-imx6-g%2B%2B/qmake.conf#L35
[3]: https://github.com/Freescale/meta-freescale/blob/master/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase/0015-Add-eglfs-to-IMX-GPU.patch

[Peter: simplify conditional, add comment explaining why]
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Tested-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-11-06 18:41:22 +01:00
Peter Korsgaard
315f2a7d16 qt5webengine: only available on x86(-64) hosts
The -m32 compiler flag is used for 32bit builds and the host tools have
limited architecture support. It may work in some situations (e.g.
on aarch64 host when building a 64-bit target), but it's equally likely
that it breaks and those situations are not tested. So just limit to
x86(-64) hosts.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
[Arnout: explain that it may work in some situations]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-11-05 16:58:12 +01:00
Peter Seiderer
8fbff9651b qt5base: add 3rdparty/harfbuzz-ng license file hash
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-11-05 15:52:25 +01:00
Joshua Henderson
f2b022893f qt5wayland: fix config option indentation
Reorganize so the optional composer option for the qt5wayland package shows up
as an indented option.

Signed-off-by: Joshua Henderson <joshua.henderson@microchip.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-10-28 09:11:25 +02:00
Peter Seiderer
e7e71c0124 qt5base: make harfbuzz support selectable
If selected use:

 - system/buildroot harfbuzz in case __sync for 4 bytes is supported
 - qt harfbuzz otherwise (using QAtomic instead)

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-10-21 21:37:28 +02:00
Peter Seiderer
06a4975d4b qt5: bump LTS version to 5.6.3
qt5base:
  - move hash file to 5.6.3
  - move 0001-eglfs-rasp-pi-header-inclusion.patch to 5.6.3
  - remove 0002-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch (upstream committed [1])

qt5declarative:
  - move patches to 5.6.3

qt5quickcontrols2:
  - move hash file to 5.6.3

qt5webkit:
  - move patches to 5.6.3

[1] http://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.6&id=f1b4bd4790860e1ff5afcec111a359bc3a91cfda

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-21 09:55:51 +02:00
Peter Seiderer
64f4f6de0c qt5: bump latest version to 5.9.2
qt5base:
  - removed 0001-Fix-error-attribute-target-crc-is-unknown.patch
    (upstream committed, see [1])
  - removed 0002-examples-fix-compile-without-opengl-support.patch
    (upstream committed, see [2])

qt5declarative:
  - removed 0001-Fix-alignment-issue-on-ARMv7.patch
    (upstream committed, see [3])
  - moved 0001-examples-photoviewer-needs-widgets-support.patch to 5.6.2
    only (upstream 5.9.2 committed, see [4])
  - moved 0002-examples-qquickviewcomparison-and-quickwidget-needs-.patch
    to 5.6.2 only (similare patch upstream committed, see [5])

qt5location:
  - removed 0001-Fix-plugins-build-dependency.patch
    (upstream committed, see [6])

qt5webchannel:
 - fix webchannel.js installation to target (the locatinon of the
   file webchannel.js changed from src/webchannel/qwebchannel.js
   to examples/webchannel/shared/qwebchannel.js, see commit [7])

qt5webengine:
  - removed 0001-Always-compile-QWebEnginePage-print.patch
    (upstream committed, see [8])
  - keep 0002-Load-libEGL-and-libGLES2-symbols-implicitly.patch
    (upstream committed, see [9], but reverted afterwards, see [10])

qt5webkit:
 - fall back to 5.9.1 (no 5.9.2 package provided, see [11] and [12]).

[1] http://code.qt.io/cgit/qt/qtbase.git/commit/?id=b7722c251c3a0938c7c71fc3da47fdbe920060b7
[2] http://code.qt.io/cgit/qt/qtbase.git/commit/?id=6ce4b680cdde7827a6ed4d00dbeb7e7e91569433
[3] http://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=03c2661b1243cc529fc3d8cfa65073f1da420307
[4] http://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=452a78d0ac4a1579733a8ab641be24c9b7c0dd96
[5] http://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=fa52bb665d6beb77a951c14c8edcba3541850afc
[6] http://code.qt.io/cgit/qt/qtlocation.git/commit/?id=3ac051c4549575634cecc706175b019f4ed4c3bf
[7] https://code.qt.io/cgit/qt/qtwebchannel.git/commit/?id=e7f150abaa8e81d3e404e9631a49341a7f7623d1
[8] http://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=085c2c529473bbe9dd7c8c5698a45053520cc423
[9] http://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=d4c621f6a6b87f2a86069fa393b9f7c4f9e7b9ad
[10] http://code.qt.io/cgit/qt/qtwebengine.git/commit/?id=c11c2c8981e647c1eb2c6753ce77d436b92fff87
[11] https://blog.qt.io/blog/2017/10/06/qt-5-9-2-released/#comment-1200724
[12] https://blog.qt.io/blog/2017/10/06/qt-5-9-2-released/#comment-1200746

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Tested-by: Joshua Henderson <joshua.henderson@microchip.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-10-17 23:05:04 +02:00