<feed xmlns='http://www.w3.org/2005/Atom'>
<title>buildroot/package/qt5, 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>package/qt5/qt5base: add BR2_PACKAGE_QT5BASE_OPENSSL</title>
<updated>2019-03-04T20:13:21+00:00</updated>
<author>
<name>Fabrice Fontaine</name>
<email>fontaine.fabrice@gmail.com</email>
</author>
<published>2019-03-04T17:28:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=a946657b6e40924a746d1bd86eb023158abd1ab8'/>
<id>urn:sha1:a946657b6e40924a746d1bd86eb023158abd1ab8</id>
<content type='text'>
Commit c110e48cecde6f543da18388322907b05b25e7d2 disabled openssl support
on QT 5.6, this has the side-effect of breaking the build of
python-pyqt5 because support of openssl is enabled on python-pyqt5 if
BR2_PACKAGE_OPENSSL is selected

To fix this issue, add a new BR2_PACKAGE_QT5BASE_OPENSSL option in
qt5base and use it in python-pyqt5

Fixes:
 - http://autobuild.buildroot.org/results/e92991308d47649cecc4084e41ab5711ec96831f

Signed-off-by: Fabrice Fontaine &lt;fontaine.fabrice@gmail.com&gt;
[Peter: make _OPENSSL a blind option, add libressl logic for 5.6.x]
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5base: build Qt 5.6 with LibreSSL if present</title>
<updated>2019-03-04T19:22:57+00:00</updated>
<author>
<name>James Grant</name>
<email>jamesg@zaltys.org</email>
</author>
<published>2019-03-03T05:51:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=a55aca6a3d565c4fea31e410a8b7f009639f59df'/>
<id>urn:sha1:a55aca6a3d565c4fea31e410a8b7f009639f59df</id>
<content type='text'>
LibreSSL build is successful with shared linkage, but not default dlopen().

Also adds patch for successful compilation by using -fpermissive.

Signed-off-by: James Grant &lt;jamesg@zaltys.org&gt;
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5base: exclude OpenSSL functionality for Qt 5.6.x</title>
<updated>2019-03-01T09:13:14+00:00</updated>
<author>
<name>James Grant</name>
<email>james.grant@jci.com</email>
</author>
<published>2019-03-01T02:17:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=c110e48cecde6f543da18388322907b05b25e7d2'/>
<id>urn:sha1:c110e48cecde6f543da18388322907b05b25e7d2</id>
<content type='text'>
No patch back-porting OpenSSL 1.1.x support to Qt 5.6.x is available.

https://development.qt-project.narkive.com/RW4wxYXY/openssl-1-1-x-support-on-qt-5-6-5-9

Signed-off-by: James Grant &lt;james.grant@jci.com&gt;
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5base: add custom configure options last</title>
<updated>2019-03-01T09:12:36+00:00</updated>
<author>
<name>James Grant</name>
<email>james.grant@jci.com</email>
</author>
<published>2019-03-01T02:17:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=d69d9db3ce0ba59193edbe81d8299a2aee8c61a4'/>
<id>urn:sha1:d69d9db3ce0ba59193edbe81d8299a2aee8c61a4</id>
<content type='text'>
This allows all options set by Buildroot to be overridden.

Signed-off-by: James Grant &lt;james.grant@jci.com&gt;
[Peter: drop original line as pointed out by Thomas]
Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
</content>
</entry>
<entry>
<title>package/qt5base: fix double-conversion compile for riscv</title>
<updated>2019-02-24T20:30:20+00:00</updated>
<author>
<name>Peter Seiderer</name>
<email>ps.report@gmx.net</email>
</author>
<published>2019-02-16T09:48:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=a7bcd202d7e04f7a68e9167bc309dcc2716378fc'/>
<id>urn:sha1:a7bcd202d7e04f7a68e9167bc309dcc2716378fc</id>
<content type='text'>
Fixes [1], [2]:

  ../3rdparty/double-conversion/include/double-conversion/utils.h:83:2: error: #error Target architecture was not detected as supported by Double-Conversion.

[1] http://autobuild.buildroot.net/results/8bdb6a2b56f6ea96649184e5fef6ce2c56b9ec2b
[2] http://autobuild.buildroot.net/results/63ba267674b424786bb10c97c565f4306147f95a

Signed-off-by: Peter Seiderer &lt;ps.report@gmx.net&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5base: handle sse2/sse3/ssse3/sse4.1/sse4.2/avx/avx2 configuration</title>
<updated>2019-02-15T21:49:21+00:00</updated>
<author>
<name>Peter Seiderer</name>
<email>ps.report@gmx.net</email>
</author>
<published>2019-02-05T21:41:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=8f9009e5bd14fac29038bf6728c1e019d2b2ffc7'/>
<id>urn:sha1:8f9009e5bd14fac29038bf6728c1e019d2b2ffc7</id>
<content type='text'>
The Qt configure auto detection (and announced runtime detection
feature) failes (see e.g. [1]), so override the configuration
with the buildroot determined settings.

[1] http://lists.busybox.net/pipermail/buildroot/2019-January/241862.html

Reported-by: David Picard &lt;dplamp@gmx.com&gt;
Signed-off-by: Peter Seiderer &lt;ps.report@gmx.net&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>package/qt: remove package</title>
<updated>2019-02-06T14:47:13+00:00</updated>
<author>
<name>Peter Korsgaard</name>
<email>peter@korsgaard.com</email>
</author>
<published>2019-02-06T14:10:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=5a8bc8083a5d0e18e34fa70c44c91cbdc5bf0c92'/>
<id>urn:sha1:5a8bc8083a5d0e18e34fa70c44c91cbdc5bf0c92</id>
<content type='text'>
Qt4 has been marked obsolete for close to 1 year, since commit 3538b5fb10
(qt: mark as obsolete) and is no longer supported upstream since December
2015:

https://blog.qt.io/blog/2015/05/26/qt-4-8-7-released/

So now finally remove it as the in tree users have been removed.

Signed-off-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) &lt;arnout@mind.be&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5base: do not change QMAKE_COMPILER in g++-base.conf</title>
<updated>2018-12-10T19:49:09+00:00</updated>
<author>
<name>Peter Seiderer</name>
<email>ps.report@gmx.net</email>
</author>
<published>2018-12-10T19:46:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=b24340bef7188ee3433b0c17251f85dd8a8bd302'/>
<id>urn:sha1:b24340bef7188ee3433b0c17251f85dd8a8bd302</id>
<content type='text'>
The variable QMAKE_COMPILER determines the compiler flavour (e.g.
gcc, clang, llvm, msvc etc.) and not a compiler path. Changing
it confuses the platform test of the qt5webengine package
(mkspecs/features/platform.prf):

  defineTest(isPlatformSupported) {
    QT_FOR_CONFIG += gui-private
    linux {
      if(!gcc:!clang)|intel_icc {
        skipBuild("Qt WebEngine on Linux requires clang or GCC.")
        return(false)
      }
      gcc:!clang:!isGCCVersionSupported(): return(false)
    }
  }

Revert the variable change introduced by commit 'package/qt5/qt5base: use
ccache for building host code' ([2]).

Fixes raspberrypi3_qt5we_defconfig/qt5webengine build ([1]):

  Qt WebEngine on Linux requires clang or GCC.
  QtWebEngine will not be built.

[1] https://gitlab.com/buildroot.org/buildroot/-/jobs/131217091
[2] https://git.buildroot.net/buildroot/commit/?id=c2ea056a1b34fd1354100d08e603b9374e225968

Signed-off-by: Peter Seiderer &lt;ps.report@gmx.net&gt;
Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
<entry>
<title>package/qt5/qt5virtualkeyboard: rewrap Config.in help text</title>
<updated>2018-12-09T21:50:12+00:00</updated>
<author>
<name>Thomas Petazzoni</name>
<email>thomas.petazzoni@bootlin.com</email>
</author>
<published>2018-12-09T21:50:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/buildroot/commit/?id=88b2e747dfa7e562001b0c959b3b1c1a2b3717ed'/>
<id>urn:sha1:88b2e747dfa7e562001b0c959b3b1c1a2b3717ed</id>
<content type='text'>
check-package complains with:

package/qt5/qt5virtualkeyboard/Config.in:59: help text: &lt;tab&gt;&lt;2 spaces&gt;&lt;62 chars&gt; (http://nightly.buildroot.org/#writing-rules-config-in)

So let's rewrap the Config.in help text.

Signed-off-by: Thomas Petazzoni &lt;thomas.petazzoni@bootlin.com&gt;
</content>
</entry>
</feed>
