mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Philipp Zabel <p.zabel@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] qt5 bump to 5.5.0
Date: Wed, 05 Aug 2015 17:43:51 +0200	[thread overview]
Message-ID: <1438789431.5553.23.camel@pengutronix.de> (raw)
In-Reply-To: <1535615.1bPhk6iTM2@dabox>

Hi Tim,

Am Mittwoch, den 05.08.2015, 11:42 +0200 schrieb Tim Sander:
> Hi
> 
> Below is a bump of qt to the newest released version.
> It adapts the existing patches to qt5 and adds two new modules
> Qt3d and QtCanvas3d. I have not had the time to test these.
> The new module qtandroidextras is skipped as it is not relevant for ptxdist.
> 
> It "Works for me" (tm).
> 
> Signed-off-by: Tim Sander <tim@krieglstein.org>

I have started to work on this, too. See my (relative) changes below.

First, please consider generating the patch series with
"git format-patch -N --no-signature" and when moving files around, use
"git format-patch -M" for the patch you send to the list. That is really
helpful to see changes in the patches.

[...]
> diff --git a/rules/qt5.in b/rules/qt5.in
> index 2670ac4..a78b075 100644
> --- a/rules/qt5.in
> +++ b/rules/qt5.in
> @@ -11,7 +11,7 @@ menuconfig QT5
>  	select GCCLIBS_CXX
>  	select GCCLIBS_GCC_S
>  	select ZLIB
> -	select DBUS			if QT5_DBUS || QT5_MODULE_QTWEBENGINE
> +	select DBUS			if QT5_DBUS

Why? The qtwebengine build fails when dbus is not yet installed.

[...]
> diff --git a/rules/qt5.make b/rules/qt5.make
> index 330ad55..9f2e32a 100644
> --- a/rules/qt5.make
> +++ b/rules/qt5.make
> @@ -16,8 +16,8 @@ PACKAGES-$(PTXCONF_QT5) += qt5
>  #
>  # Paths and names
>  #
> -QT5_VERSION	:= 5.4.2
> -QT5_MD5		:= c23bd0f14d66e7901d24906a1edce9b0
> +QT5_VERSION	:= 5.5.0
> +QT5_MD5		:= 24d387fbb0e3042cc48aeaff5627bbb6

Sure? I have downloaded a qt-everywhere-opensource-src-5.5.0.tar.xz with
md5sum 65d5282f3dee0336da9ed1f77148952f. See
http://download.qt.io/official_releases/qt/5.5/5.5.0/single/qt-everywhere-opensource-src-5.5.0.tar.xz.mirrorlist
Also patch 0005 doesn't apply.

>  QT5		:= qt-everywhere-opensource-src-$(QT5_VERSION)
>  QT5_SUFFIX	:= tar.xz
>  QT5_URL		:= \
> @@ -136,7 +136,11 @@ QT5_CONF_OPT	:= \
>  	$(call ptx/ifdef, PTXCONF_QT5_PREPARE_EXAMPLES,-make examples) \
>  	-skip qtactiveqt \
>  	-skip qtandroidextras \
> +	$(call ptx/qt5-module, QT3D, qt3d) \
> +	-skip qtactiveqt \
> +	-skip qtandroidextras \

These two are already set directly above.

best regards
Philipp

----------8<----------
 ...ebengine-fix-build-by-allowing-empty-sysr.patch | 22 +++++++++++++++++++++
 ...-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch | 23 ++++++++++++++++++++++
 patches/qt-everywhere-opensource-src-5.5.0/series  |  2 ++
 rules/qt5.in                                       | 13 +++++++++---
 rules/qt5.make                                     | 14 +++++++------
 5 files changed, 65 insertions(+), 9 deletions(-)
 create mode 100644 patches/qt-everywhere-opensource-src-5.5.0/0006-ptxdist-qtwebengine-fix-build-by-allowing-empty-sysr.patch
 create mode 100644 patches/qt-everywhere-opensource-src-5.5.0/0007-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch

diff --git a/patches/qt-everywhere-opensource-src-5.5.0/0006-ptxdist-qtwebengine-fix-build-by-allowing-empty-sysr.patch b/patches/qt-everywhere-opensource-src-5.5.0/0006-ptxdist-qtwebengine-fix-build-by-allowing-empty-sysr.patch
new file mode 100644
index 0000000..03fbc83
--- /dev/null
+++ b/patches/qt-everywhere-opensource-src-5.5.0/0006-ptxdist-qtwebengine-fix-build-by-allowing-empty-sysr.patch
@@ -0,0 +1,22 @@
+From: Philipp Zabel <p.zabel@pengutronix.de>
+Date: Tue, 4 Aug 2015 12:48:00 +0200
+Subject: [PATCH] ptxdist: qtwebengine: fix build by allowing empty sysroot
+
+Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
+---
+ qtwebengine/src/3rdparty/chromium/build/common.gypi | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/qtwebengine/src/3rdparty/chromium/build/common.gypi b/qtwebengine/src/3rdparty/chromium/build/common.gypi
+index 17089589340e..5fd4d2ee587e 100644
+--- a/qtwebengine/src/3rdparty/chromium/build/common.gypi
++++ b/qtwebengine/src/3rdparty/chromium/build/common.gypi
+@@ -926,7 +926,7 @@
+           'use_allocator%': 'none',
+           # sysroot needs to be an absolute path otherwise it generates
+           # incorrect results when passed to pkg-config
+-          'sysroot%': '<!(cd <(DEPTH) && pwd -P)/chrome/installer/linux/debian_wheezy_arm-sysroot',
++          #'sysroot%': '<!(cd <(DEPTH) && pwd -P)/chrome/installer/linux/debian_wheezy_arm-sysroot',
+         }], # OS=="linux" and target_arch=="arm" and chromeos==0
+ 
+         ['OS=="linux" and branding=="Chrome" and buildtype=="Official" and chromeos==0', {
diff --git a/patches/qt-everywhere-opensource-src-5.5.0/0007-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch b/patches/qt-everywhere-opensource-src-5.5.0/0007-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch
new file mode 100644
index 0000000..cbc4864
--- /dev/null
+++ b/patches/qt-everywhere-opensource-src-5.5.0/0007-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch
@@ -0,0 +1,23 @@
+From: Philipp Zabel <p.zabel@pengutronix.de>
+Date: Tue, 4 Aug 2015 13:53:28 +0200
+Subject: [PATCH] qtwebengine: #define TRUE in case of USE_SYSTEM_LIBJPEG
+
+Otherwise libjpeg headers #define boolean to an incompatible enum.
+
+Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
+---
+ qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc b/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc
+index 8a08fe0291af..ef52a292ac87 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc
++++ b/qtwebengine/src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc
+@@ -13,6 +13,7 @@
+ 
+ extern "C" {
+ #if defined(USE_SYSTEM_LIBJPEG)
++#define TRUE
+ #include <jpeglib.h>
+ #elif defined(USE_LIBJPEG_TURBO)
+ #include "third_party/libjpeg_turbo/jpeglib.h"
diff --git a/patches/qt-everywhere-opensource-src-5.5.0/series b/patches/qt-everywhere-opensource-src-5.5.0/series
index 327dd1e..5b04041 100644
--- a/patches/qt-everywhere-opensource-src-5.5.0/series
+++ b/patches/qt-everywhere-opensource-src-5.5.0/series
@@ -3,3 +3,5 @@
 0003-qtmultimedia-videonode-plugins-require-qtmultimediaq.patch
 0004-HACK-put-wayland-scanner-outout-in-srcdir.patch
 0005-featuresfeatures-don-t-use-gold-linker-for-host-tool.patch
+0006-ptxdist-qtwebengine-fix-build-by-allowing-empty-sysr.patch
+0007-qtwebengine-define-TRUE-in-case-of-USE_SYSTEM_LIBJPE.patch
diff --git a/rules/qt5.in b/rules/qt5.in
index a78b075..600dff9 100644
--- a/rules/qt5.in
+++ b/rules/qt5.in
@@ -11,7 +11,7 @@ menuconfig QT5
 	select GCCLIBS_CXX
 	select GCCLIBS_GCC_S
 	select ZLIB
-	select DBUS			if QT5_DBUS
+	select DBUS			if QT5_DBUS || QT5_MODULE_QTWEBENGINE
 	select GLIB			if QT5_GLIB
 	select LIBPNG			if QT5_LIBPNG
 	select LIBJPEG			if QT5_LIBJPEG
@@ -27,12 +27,13 @@ menuconfig QT5
 	select OPENSSL			if QT5_OPENSSL
 	select FONTCONFIG		if QT5_GUI
 	select FREETYPE			if QT5_GUI
-	select UDEV			if QT5_GUI
+	select UDEV			if QT5_GUI || QT5_INPUT_LIBINPUT
 	select UDEV_LIBUDEV		if QT5_GUI
 	select TSLIB			if QT5_INPUT_TSLIB
 	select DIRECTFB			if QT5_PLATFORM_DIRECTFB
+	select LIBINPUT			if QT5_INPUT_LIBINPUT
 	select LIBXCB			if QT5_PLATFORM_XCB
-	select LIBXKBCOMMON		if QT5_PLATFORM_XCB
+	select LIBXKBCOMMON		if QT5_PLATFORM_XCB || QT5_INPUT_LIBINPUT
 	select LIBXKBCOMMON_X11		if QT5_PLATFORM_XCB
 	select XCB_UTIL			if QT5_PLATFORM_XCB
 	select XORG_LIB_X11		if QT5_X11
@@ -239,6 +240,10 @@ config QT5_INPUT_EVDEV
 	default y
 	prompt "evdev"
 
+config QT5_INPUT_LIBINPUT
+	bool
+	prompt "libinput"
+
 config QT5_INPUT_TSLIB
 	bool
 	prompt "tslib"
@@ -466,7 +471,9 @@ config QT5_MODULE_QTWEBENGINE
 	bool
 	select QT5_GUI
 	select QT5_ICU
+	select QT5_OPENSSL
 	select QT5_MODULE_QTQUICKCONTROLS
+	select QT5_MODULE_QTWEBCHANNEL
 	prompt "QtWebEngine"
 
 if QT5_MODULE_QTWEBENGINE
diff --git a/rules/qt5.make b/rules/qt5.make
index 9f2e32a..e8d7adc 100644
--- a/rules/qt5.make
+++ b/rules/qt5.make
@@ -17,7 +17,7 @@ PACKAGES-$(PTXCONF_QT5) += qt5
 # Paths and names
 #
 QT5_VERSION	:= 5.5.0
-QT5_MD5		:= 24d387fbb0e3042cc48aeaff5627bbb6
+QT5_MD5		:= 65d5282f3dee0336da9ed1f77148952f
 QT5		:= qt-everywhere-opensource-src-$(QT5_VERSION)
 QT5_SUFFIX	:= tar.xz
 QT5_URL		:= \
@@ -137,8 +137,6 @@ QT5_CONF_OPT	:= \
 	-skip qtactiveqt \
 	-skip qtandroidextras \
 	$(call ptx/qt5-module, QT3D, qt3d) \
-	-skip qtactiveqt \
-	-skip qtandroidextras \
 	$(call ptx/qt5-module, QTCONNECTIVITY, qtconnectivity) \
 	$(call ptx/qt5-module, QTCANVAS3D, qtcanvas3d) \
 	$(call ptx/qt5-module, QTDECLARATIVE, qtdeclarative) \
@@ -190,7 +188,9 @@ QT5_CONF_OPT	:= \
 	--opengl=$(call ptx/ifdef, PTXCONF_QT5_OPENGL,$(PTXCONF_QT5_OPENGL_API),no) \
 	--disable-system-proxies \
 	--$(call ptx/endis, PTXCONF_QT5_GLIB)-glib \
-	--no-android-style-assets
+	--no-android-style-assets \
+	-no-libproxy \
+	-no-gstreamer
 
 # Note: these options are not listed in '--help' but they exist
 QT5_CONF_OPT += \
@@ -199,12 +199,14 @@ QT5_CONF_OPT += \
 	--$(call ptx/endis, PTXCONF_QT5_GUI)-libudev \
 	--$(call ptx/endis, PTXCONF_QT5_OPENGL)-egl \
 	--$(call ptx/endis, PTXCONF_QT5_PLATFORM_XCB)-xkb \
-	$(call ptx/qt5-system, QT5_PLATFORM_XCB)-xkbcommon \
+	$(call ptx/qt5-system, QT5_PLATFORM_XCB)-xkbcommon-x11 \
 	--$(call ptx/endis, PTXCONF_QT5_XI)-xinput2 \
 	--$(call ptx/endis, PTXCONF_QT5_XRENDER)-xrender \
 	--$(call ptx/endis, PTXCONF_QT5_XV)-xvideo \
 	--$(call ptx/endis, PTXCONF_QT5_INPUT_EVDEV)-evdev \
-	--$(call ptx/endis, PTXCONF_QT5_INPUT_TSLIB)-tslib
+	--$(call ptx/endis, PTXCONF_QT5_INPUT_TSLIB)-tslib \
+	$(call ptx/ifdef, PTXCONF_QT5_INPUT_LIBINPUT,-libinput,-no-libinput) \
+	$(call ptx/ifdef, PTXCONF_QT5_INPUT_LIBINPUT,-xkbcommon-evdev,-no-xkbcommon-evdev)
 
 QT5_QMAKE_OPT := CONFIG+=release CONFIG-=debug
 
---------->8----------


-- 
ptxdist mailing list
ptxdist@pengutronix.de

  reply	other threads:[~2015-08-05 13:44 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-05  9:42 Tim Sander
2015-08-05 15:43 ` Philipp Zabel [this message]
2015-08-05 16:00   ` Tim Sander

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1438789431.5553.23.camel@pengutronix.de \
    --to=p.zabel@pengutronix.de \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox