<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot/package/qt5/qt5webkit, branch 2019.02-op-build</title>
<subtitle>OpenPOWER buildroot sources</subtitle>
<id>https://git.raptorcs.com/git/buildroot/atom?h=2019.02-op-build</id>
<link rel='self' href='https://git.raptorcs.com/git/buildroot/atom?h=2019.02-op-build'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/'/>
<updated>2019-03-25T10:41:10+00:00</updated>
<entry>
<title>qt5webkit: select leveldb package and memenv</title>
<updated>2019-03-25T10:41:10+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@collabora.com</email>
</author>
<published>2019-01-02T20:56:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=ebe2c9accde81e168ecab0e2935ff9baf4e2b916'/>
<id>urn:sha1:ebe2c9accde81e168ecab0e2935ff9baf4e2b916</id>
<content type='text'>
This patch fixes the build issue reported by autobuilder [0].

        /home/naourr/work/instance-2/output/build/qt5webkit-5.9.1/Source/WebCore//.obj/platform/leveldb/LevelDBDatabase.o: In function
	`WebCore::LevelDBDatabase::openInMemory(WebCore::LevelDBComparator const*)':
	LevelDBDatabase.cpp.text._ZN7WebCore15LevelDBDatabase12openInMemoryEPKNS_17LevelDBComparatorE+0x34): undefined reference to `leveldb::NewMemEnv(leveldb::Env*)'
        collect2: error: ld returned 1 exit status
        make[3]: *** [Makefile.api:97: ../lib/libQt5WebKit.so.5.9.1]
	Error 1

The issue happens when both packages leveldb and qt5webkit are enabled.

QtWebKit builds its own copy of leveldb [1] (as a third-party) if the
system does not provided it (i.e. buildroot). It builds it differently
and this is the origin of that issue. Instead of using the Makefile
provided by leveldb [2], QtWebKit uses qmake to build that library [3].

The missing symbol issue happens because the symbol leveldb::NewMemEnv
is bundled in the static library libmemenv.a (aside libleveldb.so).
This static library consists of this single symbol which is like an
extra that is built but *NOT* shipped by default at installation in the
staging directory. Unfortunatly, that symbol is required later by
WebCore [4].

The copy built by QtWebKit is an all-in-one library including both
libleveldb and libmemenv; thus QtWebKit links against libleveldb only.
Also, the linker finds the buildroot's copy first (not the third-party):
that explains why it is complaining about a missing symbol. That copy
does not have the symbol leveldb::NewMemEnv.

Fortunatly, QtWebKit provides a facility to link against the system
leveldb package. The qmake flag WEBKIT_CONFIG+=use_system_leveldb tells
Qt5WebKit to link against libleveldb *AND* libmemenv [5].

To fix that issue, this commit selects the package leveldb that now
installs the libmemenv static library and its header. It ensures that
QtWebKit has everything it needs to be built. It also sets the
appropriate qmake configure flags to tell QtWebKit to use the leveldb
copy built by buildroot instead of the bundled one.

[0]: http://autobuild.buildroot.net/results/46033e82adf592c3b92c6d50cfaf45bd58beeaa4
[1]: https://github.com/qt/qtwebkit/tree/5.9/Source/ThirdParty/leveldb
[2]: https://github.com/qt/qtwebkit/blob/5.9/Source/ThirdParty/leveldb/Makefile#L167-L169
[3]: https://github.com/qt/qtwebkit/blob/5.9/Source/ThirdParty/leveldb/Target.pri#L80
[4]: https://github.com/qt/qtwebkit/blob/5.9/Source/WebCore/platform/leveldb/LevelDBDatabase.cpp#L185
[5]: https://github.com/qt/qtwebkit/blob/5.9/Source/WebCore/WebCore.pri#L254
[6]: https://github.com/google/leveldb/commit/739c25100e46576cdcdfff2d6f43f9f7008103c7

Signed-off-by: Gaël PORTAY &lt;gael.portay@collabora.com&gt;
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
(cherry picked from commit 2d7c746ed8c89ad262ef0c6db5460ade1fc35973)
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>qt5webkit: fix installation of headers</title>
<updated>2018-07-02T20:32:58+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-07-02T14:49:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=bfb6aef1eaf222a3a673746b7f6c78989900aa01'/>
<id>urn:sha1:bfb6aef1eaf222a3a673746b7f6c78989900aa01</id>
<content type='text'>
Since Qt 5.11, the headers are not installed anymore.

The issue comes from a update in qt5base [1] which is not backported to
qt5webkit because it is not officially supported anymore by Qt.

Fixes build issues with qt5webkit-examples that requires QtWebKit
headers:

	In file included from main.cpp:42:
	window.h:46:10: fatal error: QWebElement: No such file or directory
	 #include &lt;QWebElement&gt;
	          ^~~~~~~~~~~~~
	compilation terminated.

[1]: https://github.com/qt/qtbase/commit/9c4c136bc9f29bab1cc9684dfced55a92a8bbe96

Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>Revert "qt5webkit: fix build issue with mesa3d w/out xcb"</title>
<updated>2018-04-01T21:48:30+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-03-01T21:34:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=3f52e9d584b573ac0b4e582e07b9b371215bffc5'/>
<id>urn:sha1:3f52e9d584b573ac0b4e582e07b9b371215bffc5</id>
<content type='text'>
This reverts commit e46f9fde78e53740bd00c077275d3cd80d7792c7.

Supersede by:

	qt5base: fix build issue with mesa3d w/out xcb

Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
</content>
</entry>
<entry>
<title>qt5webkit: fix build issue with 32-bits armv8-a</title>
<updated>2018-04-01T18:21:39+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-03-02T16:28:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=cea7aa873aa1b6034c3ac93aec21d74d9901b270'/>
<id>urn:sha1:cea7aa873aa1b6034c3ac93aec21d74d9901b270</id>
<content type='text'>
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 - &lt; /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]: https://github.com/qt/qtwebkit/blob/35655d5f4bad248ead1700b59c381cc568b4e98b/Source/WTF/wtf/Platform.h#L241-L242

Cc: Arnout Vandecappelle &lt;arnout@mind.be&gt;
Reported-by: Brock Williams &lt;brock@cottonwoodcomputer.com&gt;
Reviewed-by: Adrian Perez de Castro &lt;aperez@igalia.com&gt;
Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
</content>
</entry>
<entry>
<title>qt5webkit: fix build issue with mesa3d w/out xcb</title>
<updated>2018-02-27T20:59:05+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-02-12T04:25:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=e46f9fde78e53740bd00c077275d3cd80d7792c7'/>
<id>urn:sha1:e46f9fde78e53740bd00c077275d3cd80d7792c7</id>
<content type='text'>
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 &lt;X11/Xlib.h&gt;
	                      ^
	compilation terminated.
	Makefile.WebCore.Target:93596: recipe for target '.obj/platform/graphics/opengl/Extensions3DOpenGLES.o' failed

[1]: https://github.com/mesa3d/mesa/blob/79ee1b2ff0b85f4eeb4165d23a7943c28d3a3d93/include/EGL/eglplatform.h#L109-L125
[2]: https://bugreports.qt.io/browse/QTBUG-66233

[Peter: simplify logic]
Cc: Julien CORJON &lt;corjon.j@ecagroup.com&gt;
Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>qt5: fetch sources using https URLs</title>
<updated>2018-02-14T20:24:10+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-02-13T23:16:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=298b8a38dd752c12437611c92e722400de93bf9c'/>
<id>urn:sha1:298b8a38dd752c12437611c92e722400de93bf9c</id>
<content type='text'>
Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>qt5webkit{, -examples}: use https link in hashfile</title>
<updated>2018-02-13T22:20:29+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2018-02-10T19:11:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=0082d2c4464b1cf923487bc947b6f2ad94335ea7'/>
<id>urn:sha1:0082d2c4464b1cf923487bc947b6f2ad94335ea7</id>
<content type='text'>
All Qt modules but qt5webkit use https link in their hashfile.

Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>package/*/Config.in: fix help text check-package warnings</title>
<updated>2017-12-18T08:22:54+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@free-electrons.com</email>
</author>
<published>2017-12-18T08:21:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=2277fdeca8c94f8ea8fe8afebcdbb176c6b1531d'/>
<id>urn:sha1:2277fdeca8c94f8ea8fe8afebcdbb176c6b1531d</id>
<content type='text'>
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 &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>qt5webkit: fix URL for 5.6 download</title>
<updated>2017-11-25T11:01:05+00:00</updated>
<author>
<name>Gaël PORTAY</name>
<email>gael.portay@savoirfairelinux.com</email>
</author>
<published>2017-11-24T22:37:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=7780cef53540b59816852bfb89aa0c0012a36fbc'/>
<id>urn:sha1:7780cef53540b59816852bfb89aa0c0012a36fbc</id>
<content type='text'>
The Qt community releases are not stored under submodules path
component.

Signed-off-by: Gaël PORTAY &lt;gael.portay@savoirfairelinux.com&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
</content>
</entry>
<entry>
<title>qt5webkit: backport upstream icu-59 fix from 5.9 branch to 5.6.3</title>
<updated>2017-11-17T09:31:58+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>peter@korsgaard.com</email>
</author>
<published>2017-11-16T14:23:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=cab0d0a8acc920c6d240e9d503816b9ffb0508d2'/>
<id>urn:sha1:cab0d0a8acc920c6d240e9d503816b9ffb0508d2</id>
<content type='text'>
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 &lt;peter@korsgaard.com&gt;
</content>
</entry>
</feed>
