summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBhooshan Supe <bhooshan.supe@lge.com>2013-07-26 19:59:09 -0700
committerMartin Jansa <Martin.Jansa@gmail.com>2013-09-13 14:32:02 +0200
commit2340ce8714f2a50e459c80a6aab51dad37378303 (patch)
tree73efeb096d1a1528f832bb447a78253568f0fda9
parent284020d9344b6fbd88d9c6d5ff6fbaef430a775b (diff)
downloadmeta-qt5-2340ce8714f2a50e459c80a6aab51dad37378303.tar.gz
qttools-native: Add module to build lrelease+lupdate+lconvert
:Release Notes: Add optional Qt-Tools module. :Detailed Notes: Qt provide optional Qt-Tools like "lrelease", etc. In absence of these tools one can not have i18n and l10n changes automated in build. Adding "qttools-native" to "meta-qt5" Open Embedded layer provides those tools. Using Qt-Tools i18n and l10n changes can be auomated. :Testing Performed: :QA Notes: :Issues Addressed: [GF-11028] Enable build of Qt localization tools in the Qt component Change-Id: Ieb679249a05501a6ccb25108903a0fd48d4014f0
-rw-r--r--classes/qmake5.bbclass9
-rw-r--r--conf/distro/include/qt5-versions.inc1
-rw-r--r--recipes-qt/qt5/qttools-5.0.2/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch127
-rw-r--r--recipes-qt/qt5/qttools-5.1.0/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch136
-rw-r--r--recipes-qt/qt5/qttools-git/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch138
-rw-r--r--recipes-qt/qt5/qttools-native.inc22
-rw-r--r--recipes-qt/qt5/qttools-native_5.0.2.bb5
-rw-r--r--recipes-qt/qt5/qttools-native_5.1.0.bb10
-rw-r--r--recipes-qt/qt5/qttools-native_git.bb4
9 files changed, 443 insertions, 9 deletions
diff --git a/classes/qmake5.bbclass b/classes/qmake5.bbclass
index e1dda0d6..b056ea75 100644
--- a/classes/qmake5.bbclass
+++ b/classes/qmake5.bbclass
@@ -6,15 +6,6 @@ inherit qmake5_base
6QT5TOOLSDEPENDS ?= "qtbase-native" 6QT5TOOLSDEPENDS ?= "qtbase-native"
7DEPENDS_prepend = "${QT5TOOLSDEPENDS} " 7DEPENDS_prepend = "${QT5TOOLSDEPENDS} "
8 8
9# do we still need to export these?
10#OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qt5"
11#OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}"
12#OE_QMAKE_LIBS_QT = "qt"
13#OE_QMAKE_LIBS_X11 = "-lXext -lX11 -lm"
14#OE_QMAKE_LIBS_X11SM = "-lSM -lICE"
15#OE_QMAKE_LRELEASE = "${STAGING_BINDIR_NATIVE}/lrelease5"
16#OE_QMAKE_LUPDATE = "${STAGING_BINDIR_NATIVE}/lupdate5"
17
18do_configure() { 9do_configure() {
19 qmake5_base_do_configure 10 qmake5_base_do_configure
20} 11}
diff --git a/conf/distro/include/qt5-versions.inc b/conf/distro/include/qt5-versions.inc
index b9959ac4..ea159700 100644
--- a/conf/distro/include/qt5-versions.inc
+++ b/conf/distro/include/qt5-versions.inc
@@ -15,6 +15,7 @@ PREFERRED_VERSION_qtquick1 = "${QT5_VERSION}"
15PREFERRED_VERSION_qtsensors = "${QT5_VERSION}" 15PREFERRED_VERSION_qtsensors = "${QT5_VERSION}"
16PREFERRED_VERSION_qtscript = "${QT5_VERSION}" 16PREFERRED_VERSION_qtscript = "${QT5_VERSION}"
17PREFERRED_VERSION_qtsvg = "${QT5_VERSION}" 17PREFERRED_VERSION_qtsvg = "${QT5_VERSION}"
18PREFERRED_VERSION_qttools-native = "${QT5_VERSION}"
18PREFERRED_VERSION_qtwebkit = "${QT5_VERSION}" 19PREFERRED_VERSION_qtwebkit = "${QT5_VERSION}"
19PREFERRED_VERSION_qtwebkit-examples = "${QT5_VERSION}" 20PREFERRED_VERSION_qtwebkit-examples = "${QT5_VERSION}"
20PREFERRED_VERSION_qtxmlpatterns = "${QT5_VERSION}" 21PREFERRED_VERSION_qtxmlpatterns = "${QT5_VERSION}"
diff --git a/recipes-qt/qt5/qttools-5.0.2/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch b/recipes-qt/qt5/qttools-5.0.2/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
new file mode 100644
index 00000000..c5abceee
--- /dev/null
+++ b/recipes-qt/qt5/qttools-5.0.2/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
@@ -0,0 +1,127 @@
1From f5d7b5cd073eb6b5a60658b9622c59a682fd828d Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.jansa@gmail.com>
3Date: Wed, 11 Sep 2013 18:30:08 +0200
4Subject: [PATCH] Allow to build only lrelease + lupdate + lconvert
5
6This is useful e.g. when cross compiling with OpenEmbedded where qtbase-native
7is built without GUI support (no-png is set) and we still want to build
8native lrelease + lupdate + lconvert tools.
9
10Upstream-Status: Pending
11
12Signed-off-by: Martin Jansa <Martin.jansa@gmail.com>
13---
14 examples/examples.pro | 4 ++--
15 src/designer/src/src.pro | 14 ++++++++------
16 src/linguist/linguist.pro | 2 +-
17 src/src.pro | 10 ++++++----
18 tests/auto/auto.pro | 20 +++++++++++---------
19 5 files changed, 28 insertions(+), 22 deletions(-)
20
21diff --git a/examples/examples.pro b/examples/examples.pro
22index 4955969..8e86419 100644
23--- a/examples/examples.pro
24+++ b/examples/examples.pro
25@@ -1,3 +1,3 @@
26 TEMPLATE = subdirs
27-qtHaveModule(widgets): SUBDIRS += help designer linguist uitools assistant
28-
29+!linguistonly:qtHaveModule(widgets): SUBDIRS += help designer assistant
30+qtHaveModule(widgets): SUBDIRS += linguist uitools
31diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro
32index 64d1c37..6e6912d 100644
33--- a/src/designer/src/src.pro
34+++ b/src/designer/src/src.pro
35@@ -1,10 +1,12 @@
36 TEMPLATE = subdirs
37 CONFIG += ordered
38
39-SUBDIRS = \
40- uitools \
41- lib \
42- components \
43- designer
44+!linguistonly {
45+ SUBDIRS = \
46+ lib \
47+ components \
48+ designer
49+}
50+SUBDIRS += uitools
51
52-contains(QT_CONFIG, shared): SUBDIRS += plugins
53+!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins
54diff --git a/src/linguist/linguist.pro b/src/linguist/linguist.pro
55index 04b0ab6..8c63bb4 100644
56--- a/src/linguist/linguist.pro
57+++ b/src/linguist/linguist.pro
58@@ -3,7 +3,7 @@ SUBDIRS = \
59 lrelease \
60 lupdate \
61 lconvert
62-!no-png:qtHaveModule(widgets): SUBDIRS += linguist
63+!linguistonly:!no-png:qtHaveModule(widgets): SUBDIRS += linguist
64
65 win32:CMAKE_BIN_SUFFIX = ".exe"
66
67diff --git a/src/src.pro b/src/src.pro
68index 3799567..7deb785 100644
69--- a/src/src.pro
70+++ b/src/src.pro
71@@ -5,10 +5,12 @@ qtHaveModule(widgets) {
72 no-png {
73 message("Some graphics-related tools are unavailable without PNG support")
74 } else {
75- SUBDIRS = assistant \
76+ !linguistonly {
77+ SUBDIRS = assistant \
78 pixeltool \
79- qtestlib \
80- designer
81+ qtestlib
82+ }
83+ SUBDIRS += designer
84 # unix:!mac:!embedded:!qpa:SUBDIRS += qtconfig
85 }
86 }
87@@ -21,7 +23,7 @@ mac {
88
89 embedded:SUBDIRS += kmap2qmap
90
91-qtHaveModule(dbus): SUBDIRS += qdbus
92+!linguistonly:qtHaveModule(dbus): SUBDIRS += qdbus
93 # We don't need these command line utilities on embedded platforms.
94 embedded: SUBDIRS += makeqpf
95
96diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
97index 074aa34..d38e05d 100644
98--- a/tests/auto/auto.pro
99+++ b/tests/auto/auto.pro
100@@ -1,13 +1,15 @@
101 TEMPLATE=subdirs
102-SUBDIRS=\
103- linguist \
104- host.pro \
105- qhelpcontentmodel \
106- qhelpenginecore \
107- qhelpgenerator \
108- qhelpindexmodel \
109- qhelpprojectdata \
110- cmake
111+!linguistonly {
112+ SUBDIRS=\
113+ linguist \
114+ host.pro \
115+ qhelpcontentmodel \
116+ qhelpenginecore \
117+ qhelpgenerator \
118+ qhelpindexmodel \
119+ qhelpprojectdata \
120+ cmake
121+}
122
123 # These tests don't make sense for cross-compiled builds
124 cross_compile:SUBDIRS -= host.pro
125--
1261.7.10.4
127
diff --git a/recipes-qt/qt5/qttools-5.1.0/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch b/recipes-qt/qt5/qttools-5.1.0/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
new file mode 100644
index 00000000..f1b87835
--- /dev/null
+++ b/recipes-qt/qt5/qttools-5.1.0/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
@@ -0,0 +1,136 @@
1From 4df58d96ea516358d2762a219c0b196e56c8e89b Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.jansa@gmail.com>
3Date: Wed, 11 Sep 2013 18:30:08 +0200
4Subject: [PATCH] Allow to build only lrelease + lupdate + lconvert
5
6This is useful e.g. when cross compiling with OpenEmbedded where qtbase-native
7is built without GUI support (no-png is set) and we still want to build
8native lrelease + lupdate + lconvert tools.
9
10Upstream-Status: Pending
11
12Signed-off-by: Martin Jansa <Martin.jansa@gmail.com>
13---
14 examples/examples.pro | 4 ++--
15 src/designer/src/src.pro | 16 +++++++++-------
16 src/linguist/linguist.pro | 2 +-
17 src/src.pro | 10 ++++++----
18 tests/auto/auto.pro | 20 +++++++++++---------
19 5 files changed, 29 insertions(+), 23 deletions(-)
20
21diff --git a/examples/examples.pro b/examples/examples.pro
22index 4955969..8e86419 100644
23--- a/examples/examples.pro
24+++ b/examples/examples.pro
25@@ -1,3 +1,3 @@
26 TEMPLATE = subdirs
27-qtHaveModule(widgets): SUBDIRS += help designer linguist uitools assistant
28-
29+!linguistonly:qtHaveModule(widgets): SUBDIRS += help designer assistant
30+qtHaveModule(widgets): SUBDIRS += linguist uitools
31diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro
32index e02ca8e..49527c5 100644
33--- a/src/designer/src/src.pro
34+++ b/src/designer/src/src.pro
35@@ -1,18 +1,20 @@
36 TEMPLATE = subdirs
37
38-SUBDIRS = \
39- uitools \
40- lib \
41- components \
42- designer
43+!linguistonly {
44+ SUBDIRS = \
45+ lib \
46+ components \
47+ designer
48+}
49+SUBDIRS += uitools
50
51-contains(QT_CONFIG, shared): SUBDIRS += plugins
52+!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins
53
54 components.depends = lib
55 designer.depends = components
56 plugins.depends = lib
57
58-qtNomakeTools( \
59+!linguistonly:qtNomakeTools( \
60 lib \
61 components \
62 designer \
63diff --git a/src/linguist/linguist.pro b/src/linguist/linguist.pro
64index df3c0c7..75bdf26 100644
65--- a/src/linguist/linguist.pro
66+++ b/src/linguist/linguist.pro
67@@ -3,7 +3,7 @@ SUBDIRS = \
68 lrelease \
69 lupdate \
70 lconvert
71-!no-png:qtHaveModule(widgets): SUBDIRS += linguist
72+!linguistonly:!no-png:qtHaveModule(widgets): SUBDIRS += linguist
73
74 qtNomakeTools( \
75 linguist \
76diff --git a/src/src.pro b/src/src.pro
77index c8756db..d71c4a0 100644
78--- a/src/src.pro
79+++ b/src/src.pro
80@@ -4,10 +4,12 @@ qtHaveModule(widgets) {
81 no-png {
82 message("Some graphics-related tools are unavailable without PNG support")
83 } else {
84- SUBDIRS = assistant \
85+ !linguistonly {
86+ SUBDIRS = assistant \
87 pixeltool \
88- qtestlib \
89- designer
90+ qtestlib
91+ }
92+ SUBDIRS += designer
93 # unix:!mac:!embedded:!qpa:SUBDIRS += qtconfig
94
95 linguist.depends = designer
96@@ -20,7 +22,7 @@ mac {
97 SUBDIRS += macdeployqt
98 }
99
100-qtHaveModule(dbus): SUBDIRS += qdbus
101+!linguistonly:qtHaveModule(dbus): SUBDIRS += qdbus
102
103 qtNomakeTools( \
104 pixeltool \
105diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
106index 074aa34..a744d46 100644
107--- a/tests/auto/auto.pro
108+++ b/tests/auto/auto.pro
109@@ -1,13 +1,15 @@
110 TEMPLATE=subdirs
111-SUBDIRS=\
112- linguist \
113- host.pro \
114- qhelpcontentmodel \
115- qhelpenginecore \
116- qhelpgenerator \
117- qhelpindexmodel \
118- qhelpprojectdata \
119- cmake
120+!linguistonly {
121+ SUBDIRS=\
122+ linguist \
123+ host.pro \
124+ qhelpcontentmodel \
125+ qhelpenginecore \
126+ qhelpgenerator \
127+ qhelpindexmodel \
128+ qhelpprojectdata \
129+ cmake
130+}
131
132 # These tests don't make sense for cross-compiled builds
133 cross_compile:SUBDIRS -= host.pro
134--
1351.8.3.2
136
diff --git a/recipes-qt/qt5/qttools-git/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch b/recipes-qt/qt5/qttools-git/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
new file mode 100644
index 00000000..b1145be1
--- /dev/null
+++ b/recipes-qt/qt5/qttools-git/0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch
@@ -0,0 +1,138 @@
1From 3a1d11f3391d7745a01a68629d04f8b5b3c40ffb Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.jansa@gmail.com>
3Date: Wed, 11 Sep 2013 18:30:08 +0200
4Subject: [PATCH] Allow to build only lrelease + lupdate + lconvert
5
6This is useful e.g. when cross compiling with OpenEmbedded where qtbase-native
7is built without GUI support (no-png is set) and we still want to build
8native lrelease + lupdate + lconvert tools.
9
10Upstream-Status: Pending
11
12Signed-off-by: Martin Jansa <Martin.jansa@gmail.com>
13---
14 examples/examples.pro | 4 ++--
15 src/designer/src/src.pro | 16 +++++++++-------
16 src/linguist/linguist.pro | 2 +-
17 src/src.pro | 10 ++++++----
18 tests/auto/auto.pro | 22 ++++++++++++----------
19 5 files changed, 30 insertions(+), 24 deletions(-)
20
21diff --git a/examples/examples.pro b/examples/examples.pro
22index 4955969..8e86419 100644
23--- a/examples/examples.pro
24+++ b/examples/examples.pro
25@@ -1,3 +1,3 @@
26 TEMPLATE = subdirs
27-qtHaveModule(widgets): SUBDIRS += help designer linguist uitools assistant
28-
29+!linguistonly:qtHaveModule(widgets): SUBDIRS += help designer assistant
30+qtHaveModule(widgets): SUBDIRS += linguist uitools
31diff --git a/src/designer/src/src.pro b/src/designer/src/src.pro
32index e02ca8e..49527c5 100644
33--- a/src/designer/src/src.pro
34+++ b/src/designer/src/src.pro
35@@ -1,18 +1,20 @@
36 TEMPLATE = subdirs
37
38-SUBDIRS = \
39- uitools \
40- lib \
41- components \
42- designer
43+!linguistonly {
44+ SUBDIRS = \
45+ lib \
46+ components \
47+ designer
48+}
49+SUBDIRS += uitools
50
51-contains(QT_CONFIG, shared): SUBDIRS += plugins
52+!linguistonly:contains(QT_CONFIG, shared): SUBDIRS += plugins
53
54 components.depends = lib
55 designer.depends = components
56 plugins.depends = lib
57
58-qtNomakeTools( \
59+!linguistonly:qtNomakeTools( \
60 lib \
61 components \
62 designer \
63diff --git a/src/linguist/linguist.pro b/src/linguist/linguist.pro
64index df3c0c7..75bdf26 100644
65--- a/src/linguist/linguist.pro
66+++ b/src/linguist/linguist.pro
67@@ -3,7 +3,7 @@ SUBDIRS = \
68 lrelease \
69 lupdate \
70 lconvert
71-!no-png:qtHaveModule(widgets): SUBDIRS += linguist
72+!linguistonly:!no-png:qtHaveModule(widgets): SUBDIRS += linguist
73
74 qtNomakeTools( \
75 linguist \
76diff --git a/src/src.pro b/src/src.pro
77index c8756db..d71c4a0 100644
78--- a/src/src.pro
79+++ b/src/src.pro
80@@ -4,10 +4,12 @@ qtHaveModule(widgets) {
81 no-png {
82 message("Some graphics-related tools are unavailable without PNG support")
83 } else {
84- SUBDIRS = assistant \
85+ !linguistonly {
86+ SUBDIRS = assistant \
87 pixeltool \
88- qtestlib \
89- designer
90+ qtestlib
91+ }
92+ SUBDIRS += designer
93 # unix:!mac:!embedded:!qpa:SUBDIRS += qtconfig
94
95 linguist.depends = designer
96@@ -20,7 +22,7 @@ mac {
97 SUBDIRS += macdeployqt
98 }
99
100-qtHaveModule(dbus): SUBDIRS += qdbus
101+!linguistonly:qtHaveModule(dbus): SUBDIRS += qdbus
102
103 qtNomakeTools( \
104 pixeltool \
105diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro
106index eaf440b..1778ad1 100644
107--- a/tests/auto/auto.pro
108+++ b/tests/auto/auto.pro
109@@ -1,14 +1,16 @@
110 TEMPLATE=subdirs
111-SUBDIRS=\
112- linguist \
113- host.pro \
114- qhelpcontentmodel \
115- qhelpenginecore \
116- qhelpgenerator \
117- qhelpindexmodel \
118- qhelpprojectdata \
119- cmake \
120- installed_cmake
121+!linguistonly {
122+ SUBDIRS=\
123+ linguist \
124+ host.pro \
125+ qhelpcontentmodel \
126+ qhelpenginecore \
127+ qhelpgenerator \
128+ qhelpindexmodel \
129+ qhelpprojectdata \
130+ cmake \
131+ installed_cmake
132+}
133
134 installed_cmake.depends = cmake
135
136--
1371.8.3.2
138
diff --git a/recipes-qt/qt5/qttools-native.inc b/recipes-qt/qt5/qttools-native.inc
new file mode 100644
index 00000000..cc1e0566
--- /dev/null
+++ b/recipes-qt/qt5/qttools-native.inc
@@ -0,0 +1,22 @@
1# doesn't have GFDL-1.3 like qtbase, LICENSE files are missing in 5.0.0 and 5.0.1, this is for 5.0.2 and git
2LICENSE = "LGPL-2.1 | GPL-3.0"
3LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=4193e7f1d47a858f6b7c0f1ee66161de \
4 file://LICENSE.GPL;md5=d32239bcb673463ab874e80d47fae504 \
5 file://LGPL_EXCEPTION.txt;md5=0145c4d1b6f96a661c2c139dfb268fb6 \
6"
7
8DEPENDS = "qtbase-native"
9
10QT_MODULE = "qttools"
11
12require qt5-native.inc
13
14SRC_URI += "file://0001-Allow-to-build-only-lrelease-lupdate-lconvert.patch"
15
16do_configure() {
17 ${OE_QMAKE_QMAKE} ${OE_QMAKE_DEBUG_OUTPUT} -r ${S} CONFIG+=linguistonly
18}
19
20do_install() {
21 oe_runmake install INSTALL_ROOT=${D}
22}
diff --git a/recipes-qt/qt5/qttools-native_5.0.2.bb b/recipes-qt/qt5/qttools-native_5.0.2.bb
new file mode 100644
index 00000000..2ce71679
--- /dev/null
+++ b/recipes-qt/qt5/qttools-native_5.0.2.bb
@@ -0,0 +1,5 @@
1require qt5-${PV}.inc
2require ${PN}.inc
3
4SRC_URI[md5sum] = "93ddcfdb87c6a784b0a921d09eafbdad"
5SRC_URI[sha256sum] = "bb9bcf38dbb429cf884d688793681257876f97a2c0fba08528393a39eec7755b"
diff --git a/recipes-qt/qt5/qttools-native_5.1.0.bb b/recipes-qt/qt5/qttools-native_5.1.0.bb
new file mode 100644
index 00000000..1da72a4a
--- /dev/null
+++ b/recipes-qt/qt5/qttools-native_5.1.0.bb
@@ -0,0 +1,10 @@
1require qt5-${PV}.inc
2require ${PN}.inc
3
4# LICENSE files are missing in 5.0.0 and 5.0.1
5LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780 \
6 file://${COMMON_LICENSE_DIR}/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891 \
7"
8
9SRC_URI[md5sum] = "f3cc602d4b720a847f4ab0953a82d8ef"
10SRC_URI[sha256sum] = "9b9aa948e01bf9d0fc7fa4584ededf9b5b280ee74c334c5790dbc6f9015b3738"
diff --git a/recipes-qt/qt5/qttools-native_git.bb b/recipes-qt/qt5/qttools-native_git.bb
new file mode 100644
index 00000000..bc1ec2a1
--- /dev/null
+++ b/recipes-qt/qt5/qttools-native_git.bb
@@ -0,0 +1,4 @@
1require qt5-git.inc
2require ${PN}.inc
3
4SRCREV = "441f3d964301942e417b238b6e71b2ad13b976f0"