Merge lp:~pete-woods/hud/cmake-extras-compatibility into lp:hud

Proposed by Pete Woods
Status: Merged
Approved by: Pete Woods
Approved revision: 413
Merged at revision: 411
Proposed branch: lp:~pete-woods/hud/cmake-extras-compatibility
Merge into: lp:hud
Diff against target: 292 lines (+69/-129)
8 files modified
CMakeLists.txt (+61/-2)
cmake/Coverage.cmake (+0/-37)
cmake/FindValgrind.cmake (+0/-40)
cmake/UseGSettings.cmake (+0/-42)
debian/control (+1/-1)
debian/rules (+1/-3)
tests/CMakeLists.txt (+2/-4)
tests/integration/TestHud.cpp (+4/-0)
To merge this branch: bzr merge lp:~pete-woods/hud/cmake-extras-compatibility
Reviewer Review Type Date Requested Status
Indicator Applet Developers Pending
Review via email: mp+312698@code.launchpad.net

Commit message

Compatibility with unversioned cmake-extras modules. Remove inactive and broken valgrind / memcheck support.

Description of the change

Compatibility with unversioned cmake-extras modules. Remove inactive and broken valgrind / memcheck support.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2015-08-20 13:44:43 +0000
3+++ CMakeLists.txt 2016-12-12 13:51:51 +0000
4@@ -19,11 +19,10 @@
5 include(GNUInstallDirs)
6 include(CheckIncludeFile)
7 include(CheckFunctionExists)
8-include(Coverage)
9 include(UseGlibGeneration)
10 include(UseGdbusCodegen)
11 include(UseConstantBuilder)
12-include(UseGSettings)
13+find_package(GSettings)
14 include(UseVala)
15
16 # Workaround for libexecdir on debian
17@@ -160,6 +159,66 @@
18 ${CMAKE_CTEST_COMMAND} --force-new-ctest-process --output-on-failure
19 )
20 add_subdirectory(tests)
21+
22+ find_package(CoverageReport)
23+ enable_coverage_report(
24+ TARGETS
25+ hud-generated
26+ hud
27+ hud-cli
28+ hud-cli-appstack
29+ hud-cli-param
30+ hud-cli-toolbar
31+ hud-client-generated
32+ hud-client
33+ hud-common
34+ hud-gtk
35+ hud-service
36+ hud-service-exec
37+ qtgmenu
38+ window-stack-bridge
39+ window-stack-bridge-bin
40+ dbusmenu-json-loader
41+ hud-test-interface
42+ qtgmenu-test-app
43+ test-integration-tests
44+ test-libhud-application
45+ test-libhud-client-unit-tests
46+ test-libhud-unit-tests
47+ test-menu-input-model-deep
48+ test-menu-input-model-shortcuts
49+ test-menu-input-model-simple
50+ test-menu-input-model-toolbar-all
51+ test-menu-input-model-toolbar-dynamic
52+ test-menu-input-model-toolbar-undo
53+ test-menu-input-model-toolbar-unknown
54+ test-qtgmenu-unit-tests
55+ test-service-unit-tests
56+ test-utils
57+ test-window-stack-bridge-unit-tests
58+ FILTER
59+ ${CMAKE_SOURCE_DIR}/tests/*
60+ ${CMAKE_BINARY_DIR}/*
61+ TESTS
62+ dbusmenu-json-loader
63+ hud-test-interface
64+ qtgmenu-test-app
65+ test-integration-tests
66+ test-libhud-application
67+ test-libhud-client-unit-tests
68+ test-libhud-unit-tests
69+ test-menu-input-model-deep
70+ test-menu-input-model-shortcuts
71+ test-menu-input-model-simple
72+ test-menu-input-model-toolbar-all
73+ test-menu-input-model-toolbar-dynamic
74+ test-menu-input-model-toolbar-undo
75+ test-menu-input-model-toolbar-unknown
76+ test-qtgmenu-unit-tests
77+ test-service-unit-tests
78+ test-utils
79+ test-window-stack-bridge-unit-tests
80+ )
81 endif()
82
83
84
85=== removed file 'cmake/Coverage.cmake'
86--- cmake/Coverage.cmake 2013-10-30 08:38:05 +0000
87+++ cmake/Coverage.cmake 1970-01-01 00:00:00 +0000
88@@ -1,37 +0,0 @@
89-if (CMAKE_BUILD_TYPE MATCHES coverage)
90- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage")
91- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage")
92- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} --coverage")
93- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} --coverage")
94-
95- find_program(GCOVR_EXECUTABLE gcovr HINTS ${GCOVR_ROOT} "${GCOVR_ROOT}/bin")
96- if (NOT GCOVR_EXECUTABLE)
97- message(STATUS "Gcovr binary was not found, can not generate XML coverage info.")
98- else ()
99- message(STATUS "Gcovr found, can generate XML coverage info.")
100- add_custom_target (coverage-xml
101- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
102- COMMAND "${GCOVR_EXECUTABLE}" --exclude="test.*" --exclude="obj.*" -x -r "${CMAKE_SOURCE_DIR}"
103- --object-directory=${CMAKE_BINARY_DIR} -o coverage.xml)
104- endif()
105-
106- find_program(LCOV_EXECUTABLE lcov HINTS ${LCOV_ROOT} "${GCOVR_ROOT}/bin")
107- find_program(GENHTML_EXECUTABLE genhtml HINTS ${GENHTML_ROOT})
108- if (NOT LCOV_EXECUTABLE)
109- message(STATUS "Lcov binary was not found, can not generate HTML coverage info.")
110- else ()
111- if(NOT GENHTML_EXECUTABLE)
112- message(STATUS "Genthml binary not found, can not generate HTML coverage info.")
113- else()
114- message(STATUS "Lcov and genhtml found, can generate HTML coverage info.")
115- add_custom_target (coverage-html
116- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
117- COMMAND "${LCOV_EXECUTABLE}" --capture --output-file "${CMAKE_BINARY_DIR}/coverage.info" --no-checksum --directory "${CMAKE_BINARY_DIR}"
118- COMMAND "${LCOV_EXECUTABLE}" --remove "${CMAKE_BINARY_DIR}/coverage.info" '/usr/*' --output-file "${CMAKE_BINARY_DIR}/coverage.info"
119- COMMAND "${LCOV_EXECUTABLE}" --remove "${CMAKE_BINARY_DIR}/coverage.info" '${CMAKE_BINARY_DIR}/*' --output-file "${CMAKE_BINARY_DIR}/coverage.info"
120- COMMAND "${LCOV_EXECUTABLE}" --remove "${CMAKE_BINARY_DIR}/coverage.info" '${CMAKE_SOURCE_DIR}/tests/*' --output-file "${CMAKE_BINARY_DIR}/coverage.info"
121- COMMAND "${GENHTML_EXECUTABLE}" --prefix "${CMAKE_BINARY_DIR}" --output-directory coveragereport --title "Code Coverage" --legend --show-details coverage.info
122- )
123- endif()
124- endif()
125-endif()
126
127=== removed file 'cmake/FindValgrind.cmake'
128--- cmake/FindValgrind.cmake 2015-08-19 16:04:55 +0000
129+++ cmake/FindValgrind.cmake 1970-01-01 00:00:00 +0000
130@@ -1,40 +0,0 @@
131-
132-option(
133- ENABLE_MEMCHECK_OPTION
134- "If set to ON, enables automatic creation of memcheck targets"
135- OFF
136-)
137-
138-find_program(
139- VALGRIND_PROGRAM
140- NAMES valgrind
141-)
142-
143-if(VALGRIND_PROGRAM)
144- set(VALGRIND_PROGRAM_OPTIONS
145- "--suppressions=${CMAKE_SOURCE_DIR}/tests/data/valgrind.suppression"
146- "--error-exitcode=1"
147- "--leak-check=full"
148- "--gen-suppressions=all"
149- "--quiet"
150- )
151-endif()
152-
153-find_package_handle_standard_args(
154- VALGRIND DEFAULT_MSG
155- VALGRIND_PROGRAM
156-)
157-
158-function(add_valgrind_test)
159- foreach(_arg ${ARGN})
160- if ("VALGRIND" STREQUAL ${_arg})
161- if(ENABLE_MEMCHECK_OPTION AND VALGRIND_PROGRAM)
162- list(APPEND _vgargs ${VALGRIND_PROGRAM} ${VALGRIND_PROGRAM_OPTIONS})
163- endif()
164- else()
165- list(APPEND _vgargs ${_arg})
166- endif()
167- endforeach()
168-
169- add_test(${_vgargs})
170-endfunction()
171
172=== removed file 'cmake/UseGSettings.cmake'
173--- cmake/UseGSettings.cmake 2013-04-02 08:34:53 +0000
174+++ cmake/UseGSettings.cmake 1970-01-01 00:00:00 +0000
175@@ -1,42 +0,0 @@
176-# GSettings.cmake, CMake macros written for Marlin, feel free to re-use them.
177-
178-option (GSETTINGS_LOCALINSTALL "Install GSettings Schemas locally instead of to the GLib prefix" ${LOCAL_INSTALL})
179-
180-option (GSETTINGS_COMPILE "Compile GSettings Schemas after installation" ${GSETTINGS_LOCALINSTALL})
181-
182-if(GSETTINGS_LOCALINSTALL)
183- message(STATUS "GSettings schemas will be installed locally.")
184-endif()
185-
186-if(GSETTINGS_COMPILE)
187- message(STATUS "GSettings shemas will be compiled.")
188-endif()
189-
190-macro(add_schema SCHEMA_NAME)
191-
192- set(PKG_CONFIG_EXECUTABLE pkg-config)
193- # Have an option to not install the schema into where GLib is
194- if (GSETTINGS_LOCALINSTALL)
195- SET (GSETTINGS_DIR "${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas/")
196- else (GSETTINGS_LOCALINSTALL)
197- execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} glib-2.0 --variable prefix OUTPUT_VARIABLE _glib_prefix OUTPUT_STRIP_TRAILING_WHITESPACE)
198- SET (GSETTINGS_DIR "${_glib_prefix}/share/glib-2.0/schemas/")
199- endif (GSETTINGS_LOCALINSTALL)
200-
201- # Run the validator and error if it fails
202- execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} gio-2.0 --variable glib_compile_schemas OUTPUT_VARIABLE _glib_comple_schemas OUTPUT_STRIP_TRAILING_WHITESPACE)
203- execute_process (COMMAND ${_glib_comple_schemas} --dry-run --schema-file=${CMAKE_CURRENT_SOURCE_DIR}/${SCHEMA_NAME} ERROR_VARIABLE _schemas_invalid OUTPUT_STRIP_TRAILING_WHITESPACE)
204-
205- if (_schemas_invalid)
206- message (SEND_ERROR "Schema validation error: ${_schemas_invalid}")
207- endif (_schemas_invalid)
208-
209- # Actually install and recomple schemas
210- message (STATUS "GSettings schemas will be installed into ${GSETTINGS_DIR}")
211- install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/${SCHEMA_NAME} DESTINATION ${GSETTINGS_DIR} OPTIONAL)
212-
213- if (GSETTINGS_COMPILE)
214- install (CODE "message (STATUS \"Compiling GSettings schemas\")")
215- install (CODE "execute_process (COMMAND ${_glib_comple_schemas} ${GSETTINGS_DIR})")
216- endif ()
217-endmacro()
218
219=== modified file 'debian/control'
220--- debian/control 2016-12-02 12:25:16 +0000
221+++ debian/control 2016-12-12 13:51:51 +0000
222@@ -3,7 +3,7 @@
223 Priority: optional
224 Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
225 Build-Depends: cmake (>= 3.4),
226- cmake-extras,
227+ cmake-extras (>= 0.10),
228 debhelper (>= 9),
229 gnome-common,
230 gobject-introspection,
231
232=== modified file 'debian/rules'
233--- debian/rules 2014-09-11 14:20:19 +0000
234+++ debian/rules 2016-12-12 13:51:51 +0000
235@@ -6,17 +6,15 @@
236
237 ifneq (,$(filter $(DEB_HOST_ARCH),ppc64el armhf arm64))
238 ENABLE_BAMF = OFF
239- ENABLE_MEMCHECK_OPTION = OFF
240 else
241 ENABLE_BAMF = ON
242- ENABLE_MEMCHECK_OPTION = ON
243 endif
244
245 %:
246 dh $@
247
248 override_dh_auto_configure:
249- dh_auto_configure -- -DDEBIAN_TARGET_DIR="${DEBIAN_TARGET_DIR}" -DENABLE_DOCUMENTATION=ON -DENABLE_MEMCHECK_OPTION=$(ENABLE_MEMCHECK_OPTION) -DENABLE_BAMF=$(ENABLE_BAMF)
250+ dh_auto_configure -- -DDEBIAN_TARGET_DIR="${DEBIAN_TARGET_DIR}" -DENABLE_DOCUMENTATION=ON -DENABLE_BAMF=$(ENABLE_BAMF)
251
252 override_dh_install:
253 dh_install --fail-missing
254
255=== modified file 'tests/CMakeLists.txt'
256--- tests/CMakeLists.txt 2016-12-02 12:25:16 +0000
257+++ tests/CMakeLists.txt 2016-12-12 13:51:51 +0000
258@@ -2,8 +2,6 @@
259 find_package(GMock REQUIRED)
260 set(CMAKE_AUTOMOC ON)
261
262-find_package("Valgrind" REQUIRED)
263-
264 include_directories(${CMAKE_CURRENT_SOURCE_DIR})
265 include_directories(${GMOCK_INCLUDE_DIRS})
266 include_directories(${GTEST_INCLUDE_DIRS})
267@@ -52,9 +50,9 @@
268 set(TEST_RUNNER "${CMAKE_CURRENT_SOURCE_DIR}/run-under-xvfb.sh")
269
270 function(add_hud_test NAME)
271- add_valgrind_test(
272+ add_test(
273 ${NAME}
274- ${TEST_RUNNER} qdbus-simple-test-runner VALGRIND "${CMAKE_CURRENT_BINARY_DIR}/${NAME}"
275+ ${TEST_RUNNER} qdbus-simple-test-runner "${CMAKE_CURRENT_BINARY_DIR}/${NAME}"
276 )
277
278 set_tests_properties(
279
280=== modified file 'tests/integration/TestHud.cpp'
281--- tests/integration/TestHud.cpp 2014-03-18 18:02:27 +0000
282+++ tests/integration/TestHud.cpp 2016-12-12 13:51:51 +0000
283@@ -145,6 +145,10 @@
284 EXPECT_EQ(icon,
285 toolbarModel.data(index, Qt::DecorationRole).toString());
286 EXPECT_EQ(item, toolbarModel.data(index, Qt::UserRole).toInt());
287+ if ((toolbarModel.data(index, Qt::UserRole + 1).toBool()) != enabled) {
288+ QSignalSpy spy(&toolbarModel, SIGNAL(dataChanged(const QModelIndex &, const QModelIndex &, const QVector<int> &)));
289+ ASSERT_TRUE(spy.wait());
290+ }
291 EXPECT_EQ(enabled, toolbarModel.data(index, Qt::UserRole + 1).toBool());
292 }
293

Subscribers

People subscribed via source and target branches