Merge lp:~mitya57/kubuntu-packaging/qtwebkit-lp1134745 into lp:~kubuntu-packagers/kubuntu-packaging/qtwebkit-opensource-src_510

Proposed by Dmitry Shachnev
Status: Merged
Approved by: Timo Jyrinki
Approved revision: 51
Merged at revision: 52
Proposed branch: lp:~mitya57/kubuntu-packaging/qtwebkit-lp1134745
Merge into: lp:~kubuntu-packagers/kubuntu-packaging/qtwebkit-opensource-src_510
Diff against target: 73 lines (+52/-0)
3 files modified
debian/changelog (+7/-0)
debian/patches/dont_pollute_pri_and_pc_with_private_deps.patch (+40/-0)
debian/patches/series (+5/-0)
To merge this branch: bzr merge lp:~mitya57/kubuntu-packaging/qtwebkit-lp1134745
Reviewer Review Type Date Requested Status
Timo Jyrinki Approve
Kubuntu Packagers Pending
Review via email: mp+211692@code.launchpad.net

Commit message

Copy dont_pollute_pri_and_pc_with_private_deps.patch from Debian
(LP: #1134745).

Description of the change

This is a backport of a patch from Upstream/Debian that makes apps using QtWebKit compile with default dependency set.

I hope I have chosen a correct Bzr branch to merge this into.

Timo: I haven't tested the patch, so I hope you can get this into the landing PPA so that we both can get it from there and test.

To post a comment you must log in.
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Thanks! I'll assign a silo for it, line 50 currently at http://wiki.ubuntu.com/citrain

This qtwebkit-opensource-src_510 branch is as good as any, while we're stuck with QtWebKit 5.1.1 at least until lp:oxide comes into production. We're not running WebKit tests anyway so there's not much to be done by CI either, compared to having all builds done in a PPA.

Revision history for this message
Timo Jyrinki (timo-jyrinki) :
review: Approve
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

The 510 branch was missing the patch files from ubuntu5 upload, so I added them before merging your branch on top of it for upload.

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Just "Abstain" until actual testing :)

review: Abstain
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

I'm at least still seeing '-lgstapp-1.0 -lgstbase-1.0 -lgstreamer-1.0' etc in the .pc files in https://launchpad.net/~ci-train-ppa-service/+archive/landing-017

review: Needs Fixing
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Looking further, the .prl widgets file is however fixed and the lp:~timo-jyrinki/+junk/testwebkit test case works unlike without this.

I've also tested there are no regressions on device, and at least the Ubuntu Touch reverse dependencies seem to compile ok.

So, I think this is ok, but I'd like to have a 2nd ack too.

review: Approve
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

I agree that a second ACK would be nice.

By the way, do we still plan to get QtWebKit 5.2 this cycle? The .pc files issue should be fixed there.

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

I have finally found some time to test this, and this upload definitely makes things better.

Before:

g++ -Wl,-O1 -Wl,-rpath-link,/usr/lib/i386-linux-gnu -o test test.o -lQt5WebKitWidgets -lX11 -lxslt -lxml2 -lgio-2.0 -lgstapp-1.0 -lgstpbutils-1.0 -lgstvideo-1.0 -lgstaudio-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lsqlite3 -L/usr/lib/i386-linux-gnu -lQt5Sql -lQt5Quick -lQt5OpenGL -lQt5PrintSupport -lQt5Location -lQt5Qml -lQt5WebKit -lQt5Widgets -lQt5Positioning -lQt5Sensors -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread

After:

g++ -Wl,-O1 -Wl,-rpath-link,/usr/lib/i386-linux-gnu -o test test.o -lQt5WebKitWidgets -L/usr/lib/i386-linux-gnu -lQt5Quick -lQt5OpenGL -lQt5PrintSupport -lQt5Location -lQt5Qml -lQt5WebKit -lQt5Widgets -lQt5Positioning -lQt5Sensors -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Thanks, so it seems to be. Releasing the landing.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2014-03-15 08:08:30 +0000
3+++ debian/changelog 2014-03-19 10:13:03 +0000
4@@ -1,3 +1,10 @@
5+qtwebkit-opensource-src (5.1.1-1ubuntu8) UNRELEASED; urgency=medium
6+
7+ * Copy dont_pollute_pri_and_pc_with_private_deps.patch from Debian
8+ (LP: #1134745).
9+
10+ -- Dmitry Shachnev <mitya57@ubuntu.com> Wed, 19 Mar 2014 14:07:02 +0400
11+
12 qtwebkit-opensource-src (5.1.1-1ubuntu7) trusty; urgency=medium
13
14 * Backport upstream patch to add AArch64 support.
15
16=== added file 'debian/patches/dont_pollute_pri_and_pc_with_private_deps.patch'
17--- debian/patches/dont_pollute_pri_and_pc_with_private_deps.patch 1970-01-01 00:00:00 +0000
18+++ debian/patches/dont_pollute_pri_and_pc_with_private_deps.patch 2014-03-19 10:13:03 +0000
19@@ -0,0 +1,40 @@
20+From 31a1ec780aaba33c1008b8dc7bca7da88bd297ff Mon Sep 17 00:00:00 2001
21+From: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
22+Date: Tue, 28 Jan 2014 13:07:59 +0100
23+Subject: [PATCH] Don't pollute .prl & .pc files with private dependencies
24+
25+Also change the creating_module check in needToLink to make sure that
26+only the main module will try to link directly with the WebCore and
27+JavaScriptCore static libraries.
28+
29+Task-number: QTBUG-35774
30+Initial-patch-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
31+Change-Id: Ib5992e112803679837249400e98cb8c22636096d
32+---
33+ Source/widgetsapi.pri | 1 +
34+ Tools/qmake/mkspecs/features/default_post.prf | 4 ++--
35+ 2 files changed, 3 insertions(+), 2 deletions(-)
36+
37+--- a/Source/widgetsapi.pri
38++++ b/Source/widgetsapi.pri
39+@@ -47,6 +47,7 @@
40+ WEBKIT += javascriptcore wtf webcore
41+
42+ MODULE = webkitwidgets
43++CONFIG += creating_module
44+
45+ MODULE_SYNCQT_DIR = $$_PRO_FILE_PWD_
46+
47+--- a/Tools/qmake/mkspecs/features/default_post.prf
48++++ b/Tools/qmake/mkspecs/features/default_post.prf
49+@@ -189,8 +189,8 @@
50+ }
51+
52+ defineTest(needToLink) {
53+- # The main dynamic library always needs to link in the intermediate libraries
54+- creating_module: return(true)
55++ # The main module dynamic library always needs to link in the intermediate libraries
56++ isEqual(MODULE, webkit): return(true)
57+
58+ force_static_libs_as_shared {
59+ # So do the individual libraries if they are dynamic
60
61=== modified file 'debian/patches/series'
62--- debian/patches/series 2014-03-15 08:08:30 +0000
63+++ debian/patches/series 2014-03-19 10:13:03 +0000
64@@ -27,4 +27,9 @@
65 0008-arm-Inverted-src-and-dest-FP-registers-in-DFG-specul.patch
66 0009-Qt-Fix-build-with-Qt-5.2-QtPosition-module.patch
67 aarch64.patch
68+
69+# Can be dropped with QtWebKit 5.2
70 disable_jit.patch
71+
72+# From QtWebKit 5.3
73+dont_pollute_pri_and_pc_with_private_deps.patch

Subscribers

People subscribed via source and target branches