[Buildroot] [PATCH v4 0/3] Qt WebEngine support

Gaël PORTAY gael.portay at savoirfairelinux.com
Thu Jul 20 01:05:24 UTC 2017


The purpose of this patch series is to continue the integration of Qt5 WebEngine
in buildroot; started long time ago by Akihiko Odaki [1] and Julien Corjon [2].

The first patch fixes the rpi-userland OpenGL libraries symlinks. WebEngine
eglfs backend is linked against libEGL.so.1 and libGLESv2.so.2.

	# ls -l /usr/lib/lib*GL*
	lrwxrwxrwx    1 root     root            11 Mar 21 17:24 /usr/lib/libEGL.so -> libEGL.so.1
	lrwxrwxrwx    1 root     root            15 Mar 21 17:24 /usr/lib/libEGL.so.1 -> libEGL.so.1.0.0
	-rwxr-xr-x    1 root     root        163152 Mar 22 14:56 /usr/lib/libEGL.so.1.0.0
	lrwxrwxrwx    1 root     root            14 Mar 21 17:24 /usr/lib/libGLESv2.so -> libGLESv2.so.2
	lrwxrwxrwx    1 root     root            18 Mar 21 17:24 /usr/lib/libGLESv2.so.2 -> libGLESv2.so.2.0.0
	-rwxr-xr-x    1 root     root         78788 Mar 22 14:56 /usr/lib/libGLESv2.so.2.0.0

A PR has been made [3].

The second patch provides the Qt WebEngine package.

The last patch is a special defconfig that provides a Qt WebEngine setup on
raspberrypi3.

With this patchset, one can run the Qt quicknanobrowser sample on a rpi3 with
the following options:
  - BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc" and
    BR2_TOOLCHAIN_BUILDROOT_CXX=y (Qt 5 needs a toolchain w/ wchar, NPTL, C++,
    dynamic library)
  - BR2_PACKAGE_LIBERATION (Qt 5.8 requires a least one font)
  - BR2_PACKAGE_RPI_USERLAND (to enable OpenGL backend)
  - BR2_PACKAGE_QT5BASE_EXAMPLES (to install quicknanobrowser sample)
  - BR2_PACKAGE_QT5QUICKCONTROLS (needed by quicknanobrowser)
  - BR2_PACKAGE_QT5WEBENGINE (because it is what we want :))

To browse for HTTPS websites, please consider adding the following options as
well:
  - BR2_PACKAGE_CA_CERT (for certificates)
  - BR2_PACKAGE_NTPD (to sync date)

To run quicknanobrowser:
	# cd /usr/lib/qt/examples/webengine/quicknanobrowser/
	# ./quicknanobrowser

Enjoy ;)

Note: For now, quicknanobrowser will just display the qt website without any
input backend.

[1] https://patchwork.ozlabs.org/patch/640633/
[2] http://lists.busybox.net/pipermail/buildroot/2015-July/132010.html
[3] https://github.com/raspberrypi/userland/pull/379

Changes since RFC:
 - rebase to master (use SPDX licenses, remove license approved, update
   qt5_defconfig...)
 - remove the patch "prefer arm tune"
 - disable build with Qt 5.6 LTS (not working, waiting for 5.6.3 in August)
 - re-order patches

Changes since v1:
 - manually create symlinks to preserve SONAME
 - add my signed-off-by to the qt webengine patch
 - make qtwe package depends on supported architectures
 - fix Kconfig comment about Qt 5.6
 - sort alphabetically chromium licenses

Changes since v2:
 - fix build issue when I sorted alphabetically the chromium licenses
 - replace legacy option BR2_TARGET_ROOTFS_EXT2_BLOCK to
   new option BR2_TARGET_ROOTFS_EXT2_SIZE

Changes since v3:
 - add my signed-off-by and the PR link to the rpi-userland patch
 - move rpi patch index from 0001 to 0007

Gaël PORTAY (3):
  rpi-userland: fix opengl library symlinks
  qt5webengine: new package
  configs: new raspberrypi3 qt5 config

 configs/raspberrypi3_qt5_defconfig                 |  47 ++++
 package/qt5/Config.in                              |   1 +
 .../qt5webengine/0001-change-default-ssl-dir.patch |  19 ++
 package/qt5/qt5webengine/Config.in                 |  51 +++++
 package/qt5/qt5webengine/chromium.inc              | 239 +++++++++++++++++++++
 package/qt5/qt5webengine/qt5webengine.hash         |   5 +
 package/qt5/qt5webengine/qt5webengine.mk           |  77 +++++++
 .../0007-Add-OpenGL-library-versioning.patch       |  37 ++++
 8 files changed, 476 insertions(+)
 create mode 100644 configs/raspberrypi3_qt5_defconfig
 create mode 100644 package/qt5/qt5webengine/0001-change-default-ssl-dir.patch
 create mode 100644 package/qt5/qt5webengine/Config.in
 create mode 100644 package/qt5/qt5webengine/chromium.inc
 create mode 100644 package/qt5/qt5webengine/qt5webengine.hash
 create mode 100644 package/qt5/qt5webengine/qt5webengine.mk
 create mode 100644 package/rpi-userland/0007-Add-OpenGL-library-versioning.patch

-- 
2.13.2



More information about the buildroot mailing list