Merge lp:~roadmr/checkbox/packaging-checkbox-gui-arch-support into lp:~checkbox-dev/checkbox/checkbox-packaging

Proposed by Daniel Manrique
Status: Merged
Approved by: Sylvain Pineau
Approved revision: 63
Merged at revision: 63
Proposed branch: lp:~roadmr/checkbox/packaging-checkbox-gui-arch-support
Merge into: lp:~checkbox-dev/checkbox/checkbox-packaging
Diff against target: 111 lines (+27/-9)
3 files modified
debian/changelog (+7/-0)
debian/control (+8/-8)
debian/rules (+12/-1)
To merge this branch: bzr merge lp:~roadmr/checkbox/packaging-checkbox-gui-arch-support
Reviewer Review Type Date Requested Status
Sylvain Pineau (community) Approve
Review via email: mp+206216@code.launchpad.net

Commit message

uild checkbox-gui only on supported architectures (i386, amd64, armhf).

The reason the others are unsupported is that the qt5declarative set of
packages depends on the v8 javascript engine which is unavailable for those
architectures. If/when this dependency becomes available we can either remove
these restrictions or leave the supported arch list "empty".

Description of the change

Build checkbox-gui only on supported architectures (i386, amd64, armhf).

The reason the others are unsupported is that the qt5declarative set of
packages depends on the v8 javascript engine which is unavailable for those
architectures. If/when this dependency becomes available we can either remove
these restrictions or leave the supported arch list "empty".

To post a comment you must log in.
Revision history for this message
Sylvain Pineau (sylvain-pineau) wrote :

+1 for me.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'debian/changelog'
--- debian/changelog 2014-02-12 20:11:56 +0000
+++ debian/changelog 2014-02-13 16:06:36 +0000
@@ -15,6 +15,13 @@
15 * Removed build dependencies on qt{multimedia,sensors}5-dev as they're not15 * Removed build dependencies on qt{multimedia,sensors}5-dev as they're not
16 actually needed.16 actually needed.
17 * Minor rearranging of checkbox-gui dependencies.17 * Minor rearranging of checkbox-gui dependencies.
18 * Ignore some build-depends on a few architectures where they're
19 unavailable.
20 * Declare specific architectures for which the checkbox-gui binary package
21 can be built.
22 * Make rules file conditionally build, install and package checkbox-gui
23 files only on supported archs.
24
1825
19 -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Tue, 28 Jan 2014 03:15:31 +010026 -- Zygmunt Krynicki <zygmunt.krynicki@canonical.com> Tue, 28 Jan 2014 03:15:31 +0100
2027
2128
=== modified file 'debian/control'
--- debian/control 2014-02-12 20:11:56 +0000
+++ debian/control 2014-02-13 16:06:36 +0000
@@ -9,11 +9,11 @@
9 dh-translations,9 dh-translations,
10 libnl-genl-3-dev,10 libnl-genl-3-dev,
11 libqt4-dev,11 libqt4-dev,
12 libqt5qml-graphicaleffects,12 libqt5qml-graphicaleffects [!arm64 !powerpc !ppc64el],
13 libqt5sql5-sqlite,13 libqt5sql5-sqlite,
14 libqt5svg5-dev,14 libqt5svg5-dev,
15 libqt5v8-5-dev,15 libqt5v8-5-dev [!arm64 !powerpc !ppc64el],
16 libqt5webkit5-dev,16 libqt5webkit5-dev [!arm64 !powerpc !ppc64el],
17 libqt5xmlpatterns5-dev,17 libqt5xmlpatterns5-dev,
18 po-debconf,18 po-debconf,
19 python,19 python,
@@ -28,13 +28,13 @@
28 python3-requests ( >= 1.0),28 python3-requests ( >= 1.0),
29 python3-setuptools,29 python3-setuptools,
30 python3-sphinx,30 python3-sphinx,
31 qt3d5-dev,31 qt3d5-dev [!arm64 !powerpc !ppc64el],
32 qt4-qmake,32 qt4-qmake,
33 qt5-default,33 qt5-default,
34 qtbase5-dev,34 qtbase5-dev,
35 qtdeclarative5-dev,35 qtdeclarative5-dev [!arm64 !powerpc !ppc64el],
36 qtdeclarative5-dev-tools,36 qtdeclarative5-dev-tools [!arm64 !powerpc !ppc64el],
37 qtlocation5-dev,37 qtlocation5-dev [!arm64 !powerpc !ppc64el],
38 qtscript5-dev,38 qtscript5-dev,
39 qttools5-dev,39 qttools5-dev,
40 qttools5-dev-tools40 qttools5-dev-tools
@@ -426,7 +426,7 @@
426 checkbox-certification-server426 checkbox-certification-server
427427
428Package: checkbox-gui428Package: checkbox-gui
429Architecture: any429Architecture: i386 armhf amd64
430Depends: checkbox-ng-service,430Depends: checkbox-ng-service,
431 plainbox-provider-checkbox,431 plainbox-provider-checkbox,
432 qtdeclarative5-localstorage-plugin,432 qtdeclarative5-localstorage-plugin,
433433
=== modified file 'debian/rules'
--- debian/rules 2013-12-13 18:12:06 +0000
+++ debian/rules 2014-02-13 16:06:36 +0000
@@ -7,7 +7,9 @@
77
8REL_NO := $(shell lsb_release -rs)8REL_NO := $(shell lsb_release -rs)
9RELEASE_GTE_RARING := $(shell expr $(REL_NO) \>= 13.04)9RELEASE_GTE_RARING := $(shell expr $(REL_NO) \>= 13.04)
1010# The checkbox-gui binary only makes sense to build for the following
11# architectures.
12GUI_ARCHS := amd64 armhf i386
11%:13%:
12 dh "$@" --with python3,sphinxdoc,translations14 dh "$@" --with python3,sphinxdoc,translations
1315
@@ -35,7 +37,12 @@
35 echo "from unittest.mock import *" > $(CURDIR)/plainbox/plainbox/vendor/mock.py37 echo "from unittest.mock import *" > $(CURDIR)/plainbox/plainbox/vendor/mock.py
36 dh_quilt_patch38 dh_quilt_patch
37endif39endif
40ifneq (,$(findstring $(DEB_BUILD_ARCH), $(GUI_ARCHS)))
38 cd $(CURDIR)/checkbox-gui && qmake PREFIX=/usr && make41 cd $(CURDIR)/checkbox-gui && qmake PREFIX=/usr && make
42 $(warning NOTICE: Building GUI on supported architecture)
43else
44 $(warning NOTICE: NOT building GUI on unsupported architecture)
45endif
39 python3 setup.py build46 python3 setup.py build
4047
41ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))48ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
@@ -55,7 +62,9 @@
55 python3 setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb62 python3 setup.py install --root=$(CURDIR)/debian/tmp --install-layout=deb
56 mkdir -p $(CURDIR)/debian/tmp/usr/lib/checkbox/bin/63 mkdir -p $(CURDIR)/debian/tmp/usr/lib/checkbox/bin/
57 cp -R $(CURDIR)/debian/tmp/usr/share/checkbox/scripts/* $(CURDIR)/debian/tmp/usr/lib/checkbox/bin/64 cp -R $(CURDIR)/debian/tmp/usr/share/checkbox/scripts/* $(CURDIR)/debian/tmp/usr/lib/checkbox/bin/
65ifneq (,$(findstring $(DEB_BUILD_ARCH), $(GUI_ARCHS)))
58 cd $(CURDIR)/checkbox-gui && make INSTALL_ROOT=$(CURDIR)/debian/tmp install66 cd $(CURDIR)/checkbox-gui && make INSTALL_ROOT=$(CURDIR)/debian/tmp install
67endif
59 dh_install68 dh_install
6069
61override_dh_installdocs:70override_dh_installdocs:
@@ -73,7 +82,9 @@
73 # dh_python3 runs automatically on packages with the python3- prefix82 # dh_python3 runs automatically on packages with the python3- prefix
74 # let's not forget plainbox83 # let's not forget plainbox
75 dh_python3 --package=plainbox84 dh_python3 --package=plainbox
85ifneq (,$(findstring $(DEB_BUILD_ARCH), $(GUI_ARCHS)))
76 dh_python3 --no-package=checkbox-gui86 dh_python3 --no-package=checkbox-gui
87endif
7788
78override_dh_installdeb:89override_dh_installdeb:
79 cp debian/checkbox.postrm debian/checkbox-cli.postrm90 cp debian/checkbox.postrm debian/checkbox-cli.postrm

Subscribers

People subscribed via source and target branches