Merge lp:~nskaggs/ubuntu-terminal-app/add-cmake into lp:ubuntu-terminal-app

Proposed by Nicholas Skaggs
Status: Merged
Approved by: Nicholas Skaggs
Approved revision: 43
Merged at revision: 36
Proposed branch: lp:~nskaggs/ubuntu-terminal-app/add-cmake
Merge into: lp:ubuntu-terminal-app
Diff against target: 285 lines (+141/-33)
13 files modified
CMakeLists.txt (+65/-0)
click/CMakeLists.txt (+8/-0)
click/manifest.json.in (+19/-12)
com.ubuntu.terminal_terminal.desktop.in (+3/-2)
debian/control (+7/-6)
debian/rules (+0/-3)
debian/ubuntu-terminal-app-autopilot.install (+1/-1)
debian/ubuntu-terminal-app.install (+2/-6)
po/CMakeLists.txt (+25/-0)
tests/CMakeLists.txt (+1/-0)
tests/autopilot/CMakeLists.txt (+8/-0)
tests/autopilot/ubuntu_terminal_app/tests/__init__.py (+0/-2)
ubuntu-terminal-app.in (+2/-1)
To merge this branch: bzr merge lp:~nskaggs/ubuntu-terminal-app/add-cmake
Reviewer Review Type Date Requested Status
Ubuntu Phone Apps Jenkins Bot continuous-integration Approve
Sergio Schvezov (community) Needs Fixing
Ubuntu Terminal Developers Pending
Review via email: mp+204356@code.launchpad.net

Commit message

Add cmake build

Description of the change

Add cmake build

To post a comment you must log in.
Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
37. By Nicholas Skaggs

tweak build

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
38. By Nicholas Skaggs

add cmake lists

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
39. By Nicholas Skaggs

tweak name

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Sergio Schvezov (sergiusens) wrote :

We ideally need to bring in the plugin that we grab from a different package in a PPA into the tree. This would be similar to what the reminders app does

review: Needs Fixing
Revision history for this message
Nicholas Skaggs (nskaggs) wrote :

Hmm.. the plugin should now be in the same tree, but the build is still funny. I guess we should build the plugin at the same time. I'll try doing that.

40. By Nicholas Skaggs

tweak cmake

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
41. By Nicholas Skaggs

fix deb control, add dirs to cmake

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Nicholas Skaggs (nskaggs) wrote :

This still needs plugin love methinks

42. By Nicholas Skaggs

add terminal install

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
43. By Nicholas Skaggs

add configs install

Revision history for this message
Ubuntu Phone Apps Jenkins Bot (ubuntu-phone-apps-jenkins-bot) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'CMakeLists.txt'
2--- CMakeLists.txt 1970-01-01 00:00:00 +0000
3+++ CMakeLists.txt 2014-02-13 02:18:21 +0000
4@@ -0,0 +1,65 @@
5+project(com.ubuntu.terminal)
6+cmake_minimum_required(VERSION 2.8.9)
7+
8+# Standard install paths
9+include(GNUInstallDirs)
10+
11+option(INSTALL_TESTS "Install the tests on make install" on)
12+option(CLICK_MODE "Installs to a contained location" off)
13+
14+set(APP_NAME terminal)
15+set(DESKTOP_FILE "${PROJECT_NAME}_${APP_NAME}.desktop")
16+set(URLS_FILE "${PROJECT_NAME}_${APP_NAME}.url-dispatcher")
17+set(APP_HARDCODE ubuntu-terminal-app)
18+set(MAIN_QML ubuntu-terminal-app.qml)
19+set(ICON terminal64.png)
20+set(AUTOPILOT_DIR ubuntu_terminal_app)
21+
22+if(CLICK_MODE)
23+ if(NOT DEFINED BZR_SOURCE)
24+ set(BZR_SOURCE "lp:${APP_HARDCODE}")
25+ message("-- Setting BZR_SOURCE to ${BZR_SOURCE}")
26+ endif(NOT DEFINED BZR_SOURCE)
27+ set(CMAKE_INSTALL_PREFIX /)
28+ set(CMAKE_INSTALL_BINDIR /)
29+ set(DATA_DIR /)
30+ set(EXEC "qmlscene ${MAIN_QML}")
31+ set(DESKTOP_DIR ${DATA_DIR})
32+ set(URLS_DIR ${DATA_DIR})
33+else(CLICK_MODE)
34+ set(DATA_DIR ${CMAKE_INSTALL_DATADIR}/${APP_HARDCODE})
35+ set(EXEC ${APP_HARDCODE})
36+ set(ICON ${CMAKE_INSTALL_PREFIX}/${DATA_DIR}/${ICON})
37+ configure_file(${APP_HARDCODE}.in
38+ ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE})
39+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${APP_HARDCODE}
40+ DESTINATION ${CMAKE_INSTALL_BINDIR})
41+ set(DESKTOP_DIR ${CMAKE_INSTALL_DATADIR}/applications)
42+ set(URLS_DIR ${CMAKE_INSTALL_DATADIR}/url-dispatcher/urls)
43+endif(CLICK_MODE)
44+
45+file(GLOB_RECURSE I18N_SRC_FILES
46+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
47+ rc/**.qml desktop/**.desktop.in)
48+list(SORT I18N_SRC_FILES)
49+
50+
51+file(GLOB SRC_FILES
52+ RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
53+ *.qml *.js *.png *.js)
54+install(DIRECTORY config extraPanel DESTINATION ${DATA_DIR})
55+install(FILES Terminal.qml Configs.qml DESTINATION ${DATA_DIR})
56+install(FILES ${MAIN_QML} DESTINATION ${DATA_DIR})
57+
58+configure_file(${DESKTOP_FILE}.in ${CMAKE_CURRENT_BINARY_DIR}/${DESKTOP_FILE})
59+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${DESKTOP_FILE}
60+ DESTINATION ${DESKTOP_DIR})
61+
62+install(FILES ${URLS_FILE} DESTINATION ${URLS_DIR})
63+
64+# Tests
65+enable_testing()
66+
67+add_subdirectory(click)
68+add_subdirectory(po)
69+add_subdirectory(tests)
70
71=== removed directory 'apparmor'
72=== added directory 'click'
73=== added file 'click/CMakeLists.txt'
74--- click/CMakeLists.txt 1970-01-01 00:00:00 +0000
75+++ click/CMakeLists.txt 2014-02-13 02:18:21 +0000
76@@ -0,0 +1,8 @@
77+if(CLICK_MODE)
78+ if(NOT BZR_REVNO)
79+ set(BZR_REVNO "latest")
80+ endif(NOT BZR_REVNO)
81+ configure_file(manifest.json.in ${CMAKE_CURRENT_BINARY_DIR}/manifest.json)
82+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/manifest.json apparmor.json
83+ DESTINATION ${CMAKE_INSTALL_PREFIX})
84+endif(CLICK_MODE)
85
86=== renamed file 'apparmor/terminal.json' => 'click/apparmor.json'
87=== renamed file 'manifest.json' => 'click/manifest.json.in'
88--- manifest.json 2013-10-07 11:46:19 +0000
89+++ click/manifest.json.in 2014-02-13 02:18:21 +0000
90@@ -1,16 +1,23 @@
91 {
92- "architecture": "armhf",
93- "description": "Terminal application",
94- "framework": "ubuntu-sdk-13.10",
95+ "description": "Terminal application",
96+ "framework": "ubuntu-sdk-13.10",
97 "hooks": {
98- "terminal": {
99- "apparmor": "apparmor/terminal.json",
100- "desktop": "ubuntu-terminal-app.desktop"
101+ "@APP_NAME@": {
102+ "apparmor": "apparmor.json",
103+ "desktop": "@DESKTOP_FILE@",
104+ "urls": "@URLS_FILE@"
105 }
106- },
107- "icon": "terminal64.png",
108- "maintainer": "Ubuntu App Cats <ubuntu-touch-coreapps@lists.launchpad.net>",
109- "name": "com.ubuntu.terminal",
110- "title": "terminal",
111- "version": "0.5"
112+ },
113+ "icon": "@ICON@",
114+ "maintainer": "Ubuntu App Cats <ubuntu-touch-coreapps@lists.launchpad.net>",
115+ "name": "@PROJECT_NAME@",
116+ "title": "terminal",
117+ "version": "0.5.@BZR_REVNO@",
118+ "x-source": {
119+ "vcs-bzr": "@BZR_SOURCE@",
120+ "vcs-bzr-revno": "@BZR_REVNO@"
121+ },
122+ "x-test": {
123+ "autopilot": "@AUTOPILOT_DIR@"
124+ }
125 }
126
127=== renamed file 'ubuntu-terminal-app.desktop' => 'com.ubuntu.terminal_terminal.desktop.in'
128--- ubuntu-terminal-app.desktop 2013-10-11 14:24:33 +0000
129+++ com.ubuntu.terminal_terminal.desktop.in 2014-02-13 02:18:21 +0000
130@@ -2,8 +2,9 @@
131 Version=1.0
132 Type=Application
133 Terminal=false
134-Exec=qmlscene /usr/share/ubuntu-terminal-app/ubuntu-terminal-app.qml
135-Icon=/usr/share/ubuntu-terminal-app/terminal64.png
136+Exec=@EXEC@
137+Icon=@ICON@
138 Name=Terminal
139 X-Ubuntu-Touch=true
140 X-Ubuntu-StageHint=SideStage
141+X-Ubuntu-Gettext-Domain=@PROJECT_NAME@
142
143=== added file 'com.ubuntu.terminal_terminal.url-dispatcher'
144=== modified file 'debian/control'
145--- debian/control 2013-08-09 21:33:43 +0000
146+++ debian/control 2014-02-13 02:18:21 +0000
147@@ -1,7 +1,8 @@
148 Source: ubuntu-terminal-app
149 Priority: extra
150 Maintainer: Ubuntu App Cats <ubuntu-touch-coreapps@lists.launchpad.net>
151-Build-Depends: debhelper (>= 9),
152+Build-Depends: cmake,
153+ debhelper (>= 9),
154 Standards-Version: 3.9.4
155 Section: misc
156 Homepage: https://launchpad.net/ubuntu-terminal-app
157@@ -10,12 +11,12 @@
158 Package: ubuntu-terminal-app
159 Section: misc
160 Architecture: all
161-Depends: ${misc:Depends},
162- qmlscene,
163- qtdeclarative5-ubuntu-ui-toolkit-plugin | qt-components-ubuntu,
164+Depends: qmlscene,
165+ qtdeclarative5-konsole-qml-plugin (>= 0.1.1),
166 qtdeclarative5-localstorage-plugin,
167 qtdeclarative5-qtquick2-plugin,
168- qtdeclarative5-konsole-qml-plugin (>= 0.1.1)
169+ qtdeclarative5-ubuntu-ui-toolkit-plugin | qt-components-ubuntu,
170+ ${misc:Depends},
171 Description: Terminal application
172 Core Terminal application
173
174@@ -23,7 +24,7 @@
175 Architecture: all
176 Depends: libautopilot-qt,
177 libqt5test5,
178+ ubuntu-terminal-app (= ${source:Version}),
179 ubuntu-ui-toolkit-autopilot,
180- ubuntu-terminal-app (= ${source:Version})
181 Description: Autopilot tests for Terminal Application
182 This package contains the autopilot tests for the Terminal
183
184=== modified file 'debian/rules'
185--- debian/rules 2013-04-11 21:26:07 +0000
186+++ debian/rules 2014-02-13 02:18:21 +0000
187@@ -6,6 +6,3 @@
188
189 %:
190 dh $@
191-
192-override_dh_install:
193- dh_install --fail-missing
194
195=== modified file 'debian/ubuntu-terminal-app-autopilot.install'
196--- debian/ubuntu-terminal-app-autopilot.install 2013-05-31 13:10:55 +0000
197+++ debian/ubuntu-terminal-app-autopilot.install 2014-02-13 02:18:21 +0000
198@@ -1,1 +1,1 @@
199-tests/autopilot/ubuntu_terminal_app/* usr/lib/python2.7/dist-packages/ubuntu_terminal_app/
200\ No newline at end of file
201+usr/lib/*/dist-packages/ubuntu_terminal_app/
202
203=== modified file 'debian/ubuntu-terminal-app.install'
204--- debian/ubuntu-terminal-app.install 2013-05-06 19:59:55 +0000
205+++ debian/ubuntu-terminal-app.install 2014-02-13 02:18:21 +0000
206@@ -1,6 +1,2 @@
207-ubuntu-terminal-app usr/bin/
208-ubuntu-terminal-app.desktop usr/share/applications/
209-*.qml usr/share/ubuntu-terminal-app/
210-*.png usr/share/ubuntu-terminal-app/
211-config usr/share/ubuntu-terminal-app/
212-extraPanel usr/share/ubuntu-terminal-app/
213+usr/bin/*
214+usr/share/*
215
216=== added file 'po/CMakeLists.txt'
217--- po/CMakeLists.txt 1970-01-01 00:00:00 +0000
218+++ po/CMakeLists.txt 2014-02-13 02:18:21 +0000
219@@ -0,0 +1,25 @@
220+include(FindGettext)
221+find_program(GETTEXT_XGETTEXT_EXECUTABLE xgettext)
222+
223+set(DOMAIN ${PROJECT_NAME})
224+set(POT_FILE ${DOMAIN}.pot)
225+file(GLOB PO_FILES *.po)
226+
227+add_custom_target(${POT_FILE}
228+ COMMAND ${GETTEXT_XGETTEXT_EXECUTABLE} -o ${POT_FILE}
229+ -D ${CMAKE_SOURCE_DIR}
230+ --from-code=UTF-8
231+ --c++ --qt --add-comments=TRANSLATORS
232+ --keyword=tr --keyword=tr:1,2
233+ --package-name='${PROJECT}'
234+ --copyright-holder='Canonical Ltd.'
235+ ${I18N_SRC_FILES})
236+
237+foreach(PO_FILE ${PO_FILES})
238+ get_filename_component(LANG ${PO_FILE} NAME_WE)
239+ gettext_process_po_files(${LANG} ALL PO_FILES ${PO_FILE})
240+ set(INSTALL_DIR ${CMAKE_INSTALL_LOCALEDIR}/${LANG}/LC_MESSAGES)
241+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.gmo
242+ DESTINATION ${INSTALL_DIR}
243+ RENAME ${DOMAIN}.mo)
244+endforeach(PO_FILE)
245
246=== added file 'tests/CMakeLists.txt'
247--- tests/CMakeLists.txt 1970-01-01 00:00:00 +0000
248+++ tests/CMakeLists.txt 2014-02-13 02:18:21 +0000
249@@ -0,0 +1,1 @@
250+add_subdirectory(autopilot)
251
252=== added file 'tests/autopilot/CMakeLists.txt'
253--- tests/autopilot/CMakeLists.txt 1970-01-01 00:00:00 +0000
254+++ tests/autopilot/CMakeLists.txt 2014-02-13 02:18:21 +0000
255@@ -0,0 +1,8 @@
256+if(INSTALL_TESTS)
257+execute_process(COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
258+ OUTPUT_VARIABLE PYTHON_PACKAGE_DIR OUTPUT_STRIP_TRAILING_WHITESPACE)
259+
260+install(DIRECTORY ${AUTOPILOT_DIR}
261+ DESTINATION ${PYTHON_PACKAGE_DIR}
262+ )
263+endif(INSTALL_TESTS)
264
265=== modified file 'tests/autopilot/ubuntu_terminal_app/tests/__init__.py'
266--- tests/autopilot/ubuntu_terminal_app/tests/__init__.py 2013-10-08 10:10:56 +0000
267+++ tests/autopilot/ubuntu_terminal_app/tests/__init__.py 2014-02-13 02:18:21 +0000
268@@ -55,8 +55,6 @@
269 self.app = self.launch_test_application(
270 "qmlscene",
271 self.installed_location,
272- "--desktop_file_hint="
273- "/usr/share/applications/ubuntu-terminal-app.desktop",
274 app_type='qt',
275 emulator_base=toolkit_emulators.UbuntuUIToolkitEmulatorBase)
276
277
278=== renamed file 'ubuntu-terminal-app' => 'ubuntu-terminal-app.in'
279--- ubuntu-terminal-app 2013-04-11 21:26:07 +0000
280+++ ubuntu-terminal-app.in 2014-02-13 02:18:21 +0000
281@@ -1,2 +1,3 @@
282 #!/bin/bash
283-qmlscene /usr/share/ubuntu-terminal-app/ubuntu-terminal-app.qml
284+export QT_SELECT=qt5
285+qmlscene @CMAKE_INSTALL_PREFIX@/@DATA_DIR@/@MAIN_QML@

Subscribers

People subscribed via source and target branches