Merge lp:~thomas-voss/location-service/clean-up-cmake-setup into lp:location-service

Proposed by Thomas Voß
Status: Merged
Approved by: Thomas Voß
Approved revision: 311
Merged at revision: 313
Proposed branch: lp:~thomas-voss/location-service/clean-up-cmake-setup
Merge into: lp:location-service
Diff against target: 577 lines (+22/-404)
11 files modified
CMakeLists.txt (+13/-35)
cmake/EnableCoverageReport.cmake (+0/-153)
cmake/FindLcov.cmake (+0/-29)
cmake/Findgcovr.cmake (+0/-31)
cmake/ParseArguments.cmake (+0/-52)
cmake/PrePush.cmake (+0/-81)
data/ubuntu-location-service-connectivity.pc.in (+2/-2)
data/ubuntu-location-service.pc.in (+1/-1)
src/location/CMakeLists.txt (+5/-5)
src/location/config.h.in (+1/-4)
tests/CMakeLists.txt (+0/-11)
To merge this branch: bzr merge lp:~thomas-voss/location-service/clean-up-cmake-setup
Reviewer Review Type Date Requested Status
Simon Fels (community) Approve
Thomas Voß Pending
Review via email: mp+324060@code.launchpad.net

Commit message

Clean up and trim down cmake setup.

Description of the change

Clean up and trim down cmake setup.

To post a comment you must log in.
Revision history for this message
Simon Fels (morphis) wrote :

LGTM

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2017-05-10 11:09:37 +0000
+++ CMakeLists.txt 2017-05-15 13:20:09 +0000
@@ -1,6 +1,6 @@
1cmake_minimum_required(VERSION 2.8)1cmake_minimum_required(VERSION 2.8)
22
3project(ubuntu-location-service)3project(locationd)
44
5if (DEFINED SNAPPY_UBUNTU_CORE)5if (DEFINED SNAPPY_UBUNTU_CORE)
6 add_definitions(-DSNAPPY_UBUNTU_CORE)6 add_definitions(-DSNAPPY_UBUNTU_CORE)
@@ -9,7 +9,7 @@
9# We haven't received version information via the packaging setup.9# We haven't received version information via the packaging setup.
10# For that, we try to determine sensible values on our own, ensuring10# For that, we try to determine sensible values on our own, ensuring
11# plain old invocations to cmake still work as expected.11# plain old invocations to cmake still work as expected.
12if (NOT DEFINED UBUNTU_LOCATION_SERVICE_VERSION_MAJOR)12if (NOT DEFINED LOCATIOND_VERSION_MAJOR)
13 find_program(LSB_RELEASE lsb_release)13 find_program(LSB_RELEASE lsb_release)
14 execute_process(14 execute_process(
15 COMMAND ${LSB_RELEASE} -c -s15 COMMAND ${LSB_RELEASE} -c -s
@@ -23,19 +23,17 @@
23 # - errors23 # - errors
24 # we define the version to be 2.0.024 # we define the version to be 2.0.0
25 if (${DISTRO_CODENAME} STREQUAL "vivid")25 if (${DISTRO_CODENAME} STREQUAL "vivid")
26 set(UBUNTU_LOCATION_SERVICE_VERSION_MAJOR 3)26 set(LOCATIOND_VERSION_MAJOR 3)
27 set(UBUNTU_LOCATION_SERVICE_VERSION_MINOR 0)27 set(LOCATIOND_VERSION_MINOR 0)
28 set(UBUNTU_LOCATION_SERVICE_VERSION_PATCH 0)28 set(LOCATIOND_VERSION_PATCH 0)
29 else ()29 else ()
30 set(UBUNTU_LOCATION_SERVICE_VERSION_MAJOR 4)30 set(LOCATIOND_VERSION_MAJOR 4)
31 set(UBUNTU_LOCATION_SERVICE_VERSION_MINOR 0)31 set(LOCATIOND_VERSION_MINOR 0)
32 set(UBUNTU_LOCATION_SERVICE_VERSION_PATCH 0)32 set(LOCATIOND_VERSION_PATCH 0)
33 endif()33 endif()
34endif()34endif()
3535
36message(STATUS "${CMAKE_PROJECT_NAME} ${UBUNTU_LOCATION_SERVICE_VERSION_MAJOR}.${UBUNTU_LOCATION_SERVICE_VERSION_MINOR}.${UBUNTU_LOCATION_SERVICE_VERSION_PATCH}")36message(STATUS "${CMAKE_PROJECT_NAME} ${LOCATIOND_VERSION_MAJOR}.${LOCATIOND_VERSION_MINOR}.${LOCATIOND_VERSION_PATCH}")
37
38set(UBUNTU_LOCATION_SERVICE_TRUST_STORE_SERVICE_NAME "UbuntuLocationService")
3937
40set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pedantic -Wextra -fPIC")38set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pedantic -Wextra -fPIC")
41set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -Wall -fno-strict-aliasing -fvisibility=hidden -fvisibility-inlines-hidden -pedantic -Wextra -fPIC -pthread")39set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -Wall -fno-strict-aliasing -fvisibility=hidden -fvisibility-inlines-hidden -pedantic -Wextra -fPIC -pthread")
@@ -43,10 +41,6 @@
4341
44set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)42set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
4543
46include(cmake/EnableCoverageReport.cmake)
47include(cmake/FindGFlags.cmake)
48include(cmake/FindGLog.cmake)
49include(cmake/PrePush.cmake)
50include(CTest)44include(CTest)
5145
52include(GNUInstallDirs)46include(GNUInstallDirs)
@@ -67,20 +61,6 @@
67pkg_check_modules(UBUNTU_PLATFORM_HARDWARE_API ubuntu-platform-hardware-api)61pkg_check_modules(UBUNTU_PLATFORM_HARDWARE_API ubuntu-platform-hardware-api)
68pkg_check_modules(GIO gio-2.0)62pkg_check_modules(GIO gio-2.0)
69pkg_check_modules(GIO_UNIX gio-unix-2.0)63pkg_check_modules(GIO_UNIX gio-unix-2.0)
70#####################################################################
71# Enable code coverage calculation with gcov/gcovr/lcov
72# Usage:
73# * Switch build type to coverage (use ccmake or cmake-gui)
74# * Invoke make, make test, make coverage
75# * Find html report in subdir coveragereport
76# * Find xml report feasible for jenkins in coverage.xml
77#####################################################################
78IF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE])
79 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftest-coverage -fprofile-arcs" )
80 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftest-coverage -fprofile-arcs" )
81 SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ftest-coverage -fprofile-arcs" )
82 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ftest-coverage -fprofile-arcs" )
83ENDIF(CMAKE_BUILD_TYPE MATCHES [cC][oO][vV][eE][rR][aA][gG][eE])
8464
85option (DISABLE_ERROR_ON_LOCAL_TYPEDEFS_WARNINGS "Disable errors when local typedefs are unused" ON)65option (DISABLE_ERROR_ON_LOCAL_TYPEDEFS_WARNINGS "Disable errors when local typedefs are unused" ON)
86if (DISABLE_ERROR_ON_LOCAL_TYPEDEFS_WARNINGS)66if (DISABLE_ERROR_ON_LOCAL_TYPEDEFS_WARNINGS)
@@ -96,9 +76,9 @@
96endif()76endif()
9777
98if (CLANG_FORMAT_COMMAND)78if (CLANG_FORMAT_COMMAND)
99 file(GLOB_RECURSE UBUNTU_LOCATION_SERVICE_INTERFACE_HEADER_FILES ${CMAKE_SOURCE_DIR}/include/*.h)79 file(GLOB_RECURSE LOCATIOND_INTERFACE_HEADER_FILES ${CMAKE_SOURCE_DIR}/include/*.h)
100 file(GLOB_RECURSE UBUNTU_LOCATION_SERVICE_IMPLEMENTATION_FILES ${CMAKE_SOURCE_DIR}/src/*.h ${CMAKE_SOURCE_DIR}/src/*.cpp)80 file(GLOB_RECURSE LOCATIOND_IMPLEMENTATION_FILES ${CMAKE_SOURCE_DIR}/src/*.h ${CMAKE_SOURCE_DIR}/src/*.cpp)
101 add_custom_target(formatcode ${CLANG_FORMAT_COMMAND} -i ${UBUNTU_LOCATION_SERVICE_INTERFACE_HEADER_FILES} ${UBUNTU_LOCATION_SERVICE_IMPLEMENTATION_FILES} SOURCES _clang-format)81 add_custom_target(formatcode ${CLANG_FORMAT_COMMAND} -i ${LOCATIOND_INTERFACE_HEADER_FILES} ${LOCATIOND_IMPLEMENTATION_FILES} SOURCES _clang-format)
102endif()82endif()
10383
104include_directories(84include_directories(
@@ -124,7 +104,7 @@
124 ${CMAKE_BINARY_DIR}/src104 ${CMAKE_BINARY_DIR}/src
125)105)
126106
127file(GLOB_RECURSE UBUNTU_LOCATION_SERVICE_PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR} *.h)107file(GLOB_RECURSE LOCATIOND_PUBLIC_HEADERS ${CMAKE_CURRENT_SOURCE_DIR} *.h)
128108
129add_subdirectory(3rd-party/ichnaea)109add_subdirectory(3rd-party/ichnaea)
130110
@@ -135,5 +115,3 @@
135add_subdirectory(po)115add_subdirectory(po)
136add_subdirectory(src)116add_subdirectory(src)
137add_subdirectory(tests)117add_subdirectory(tests)
138
139enable_coverage_report(service)
140118
=== removed file 'cmake/EnableCoverageReport.cmake'
--- cmake/EnableCoverageReport.cmake 2013-05-29 09:21:16 +0000
+++ cmake/EnableCoverageReport.cmake 1970-01-01 00:00:00 +0000
@@ -1,153 +0,0 @@
1# - Creates a special coverage build type and target on GCC.
2#
3# Defines a function ENABLE_COVERAGE_REPORT which generates the coverage target
4# for selected targets. Optional arguments to this function are used to filter
5# unwanted results using globbing expressions. Moreover targets with tests for
6# the source code can be specified to trigger regenerating the report if the
7# test has changed
8#
9# ENABLE_COVERAGE_REPORT(TARGETS target... [FILTER filter...] [TESTS test targets...])
10#
11# To generate a coverage report first build the project with
12# CMAKE_BUILD_TYPE=coverage, then call make test and afterwards make coverage.
13#
14# The coverage report is based on gcov. Depending on the availability of lcov
15# a HTML report will be generated and/or an XML report of gcovr is found.
16# The generated coverage target executes all found solutions. Special targets
17# exist to create e.g. only the xml report: coverage-xml.
18#
19# Copyright (C) 2010 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
20#
21# This program is free software; you can redistribute it
22# and/or modify it under the terms of the GNU General
23# Public License as published by the Free Software Foundation;
24# either version 2, or (at your option)
25# any later version.
26#
27# This program is distributed in the hope that it will be useful,
28# but WITHOUT ANY WARRANTY; without even the implied warranty of
29# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30# GNU General Public License for more details.
31#
32
33INCLUDE(ParseArguments)
34
35FIND_PACKAGE(Lcov)
36FIND_PACKAGE(gcovr)
37
38FUNCTION(ENABLE_COVERAGE_REPORT)
39
40 # argument parsing
41 PARSE_ARGUMENTS(ARG "FILTER;TARGETS;TESTS" "" ${ARGN})
42
43 SET(COVERAGE_RAW_FILE "${CMAKE_BINARY_DIR}/coverage.raw.info")
44 SET(COVERAGE_FILTERED_FILE "${CMAKE_BINARY_DIR}/coverage.info")
45 SET(COVERAGE_REPORT_DIR "${CMAKE_BINARY_DIR}/coveragereport")
46 SET(COVERAGE_XML_FILE "${CMAKE_BINARY_DIR}/coverage.xml")
47 SET(COVERAGE_XML_COMMAND_FILE "${CMAKE_BINARY_DIR}/coverage-xml.cmake")
48
49 # decide if there is any tool to create coverage data
50 SET(TOOL_FOUND FALSE)
51 IF(LCOV_FOUND OR GCOVR_FOUND)
52 SET(TOOL_FOUND TRUE)
53 ENDIF()
54 IF(NOT TOOL_FOUND)
55 MESSAGE(STATUS "Cannot enable coverage targets because neither lcov nor gcovr are found.")
56 ENDIF()
57
58 STRING(TOLOWER "${CMAKE_BUILD_TYPE}" COVERAGE_BUILD_TYPE)
59 IF(CMAKE_COMPILER_IS_GNUCXX AND TOOL_FOUND AND "${COVERAGE_BUILD_TYPE}" MATCHES "coverage")
60
61 MESSAGE(STATUS "Coverage support enabled for targets: ${ARG_TARGETS}")
62
63 # create coverage build type
64 SET(CMAKE_CXX_FLAGS_COVERAGE ${CMAKE_CXX_FLAGS_DEBUG} PARENT_SCOPE)
65 SET(CMAKE_C_FLAGS_COVERAGE ${CMAKE_C_FLAGS_DEBUG} PARENT_SCOPE)
66 SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} coverage PARENT_SCOPE)
67
68 # instrument targets
69 SET_TARGET_PROPERTIES(${ARG_TARGETS} PROPERTIES COMPILE_FLAGS --coverage
70 LINK_FLAGS --coverage)
71
72 # html report
73 IF (LCOV_FOUND)
74
75 MESSAGE(STATUS "Enabling HTML coverage report")
76
77 # set up coverage target
78
79 ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_RAW_FILE}
80 COMMAND ${LCOV_EXECUTABLE} -c -d ${CMAKE_BINARY_DIR} -o ${COVERAGE_RAW_FILE}
81 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
82 COMMENT "Collecting coverage data"
83 DEPENDS ${ARG_TARGETS} ${ARG_TESTS}
84 VERBATIM)
85
86 # filter unwanted stuff
87 LIST(LENGTH ARG_FILTER FILTER_LENGTH)
88 IF(${FILTER_LENGTH} GREATER 0)
89 SET(FILTER COMMAND ${LCOV_EXECUTABLE})
90 FOREACH(F ${ARG_FILTER})
91 SET(FILTER ${FILTER} -r ${COVERAGE_FILTERED_FILE} ${F})
92 ENDFOREACH()
93 SET(FILTER ${FILTER} -o ${COVERAGE_FILTERED_FILE})
94 ELSE()
95 SET(FILTER "")
96 ENDIF()
97
98 ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_FILTERED_FILE}
99 COMMAND ${LCOV_EXECUTABLE} -e ${COVERAGE_RAW_FILE} "${CMAKE_SOURCE_DIR}*" -o ${COVERAGE_FILTERED_FILE}
100 ${FILTER}
101 DEPENDS ${COVERAGE_RAW_FILE}
102 COMMENT "Filtering recorded coverage data for project-relevant entries"
103 VERBATIM)
104 ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_REPORT_DIR}
105 COMMAND ${CMAKE_COMMAND} -E make_directory ${COVERAGE_REPORT_DIR}
106 COMMAND ${GENHTML_EXECUTABLE} --legend --show-details -t "${PROJECT_NAME} test coverage" -o ${COVERAGE_REPORT_DIR} ${COVERAGE_FILTERED_FILE}
107 DEPENDS ${COVERAGE_FILTERED_FILE}
108 COMMENT "Generating HTML coverage report in ${COVERAGE_REPORT_DIR}"
109 VERBATIM)
110
111 ADD_CUSTOM_TARGET(coverage-html
112 DEPENDS ${COVERAGE_REPORT_DIR})
113
114 ENDIF()
115
116 # xml coverage report
117 IF(GCOVR_FOUND)
118
119 MESSAGE(STATUS "Enabling XML coverage report")
120
121 # gcovr cannot write directly to a file so the execution needs to
122 # be wrapped in a cmake file that generates the file output
123 FILE(WRITE ${COVERAGE_XML_COMMAND_FILE}
124 "SET(ENV{LANG} en)\n")
125 FILE(APPEND ${COVERAGE_XML_COMMAND_FILE}
126 "EXECUTE_PROCESS(COMMAND \"${GCOVR_EXECUTABLE}\" --exclude=tests.* --exclude=obj-.* --exclude=cmake.* -x -r \"${CMAKE_SOURCE_DIR}\" OUTPUT_FILE \"${COVERAGE_XML_FILE}\" WORKING_DIRECTORY \"${CMAKE_BINARY_DIR}\")\n")
127
128 ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_XML_FILE}
129 COMMAND ${CMAKE_COMMAND} ARGS -P ${COVERAGE_XML_COMMAND_FILE}
130 COMMENT "Generating coverage XML report"
131 VERBATIM)
132
133 ADD_CUSTOM_TARGET(coverage-xml
134 DEPENDS ${COVERAGE_XML_FILE})
135
136 ENDIF()
137
138 # provide a global coverage target executing both steps if available
139 SET(GLOBAL_DEPENDS "")
140 IF(LCOV_FOUND)
141 LIST(APPEND GLOBAL_DEPENDS ${COVERAGE_REPORT_DIR})
142 ENDIF()
143 IF(GCOVR_FOUND)
144 LIST(APPEND GLOBAL_DEPENDS ${COVERAGE_XML_FILE})
145 ENDIF()
146 IF(LCOV_FOUND OR GCOVR_FOUND)
147 ADD_CUSTOM_TARGET(coverage
148 DEPENDS ${GLOBAL_DEPENDS})
149 ENDIF()
150
151 ENDIF()
152
153ENDFUNCTION()
1540
=== removed file 'cmake/FindLcov.cmake'
--- cmake/FindLcov.cmake 2013-05-28 14:20:45 +0000
+++ cmake/FindLcov.cmake 1970-01-01 00:00:00 +0000
@@ -1,29 +0,0 @@
1# - Find lcov
2# Will define:
3#
4# LCOV_EXECUTABLE - the lcov binary
5# GENHTML_EXECUTABLE - the genhtml executable
6#
7# Copyright (C) 2010 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
8#
9# This program is free software; you can redistribute it
10# and/or modify it under the terms of the GNU General
11# Public License as published by the Free Software Foundation;
12# either version 2, or (at your option)
13# any later version.
14#
15# This program is distributed in the hope that it will be useful,
16# but WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18# GNU General Public License for more details.
19#
20
21INCLUDE(FindPackageHandleStandardArgs)
22
23FIND_PROGRAM(LCOV_EXECUTABLE lcov)
24FIND_PROGRAM(GENHTML_EXECUTABLE genhtml)
25
26FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lcov DEFAULT_MSG LCOV_EXECUTABLE GENHTML_EXECUTABLE)
27
28# only visible in advanced view
29MARK_AS_ADVANCED(LCOV_EXECUTABLE GENHTML_EXECUTABLE)
300
=== removed file 'cmake/Findgcovr.cmake'
--- cmake/Findgcovr.cmake 2013-05-28 14:20:45 +0000
+++ cmake/Findgcovr.cmake 1970-01-01 00:00:00 +0000
@@ -1,31 +0,0 @@
1# - Find gcovr scrip
2# Will define:
3#
4# GCOVR_EXECUTABLE - the gcovr script
5#
6# Uses:
7#
8# GCOVR_ROOT - root to search for the script
9#
10# Copyright (C) 2011 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
11#
12# This program is free software; you can redistribute it
13# and/or modify it under the terms of the GNU General
14# Public License as published by the Free Software Foundation;
15# either version 2, or (at your option)
16# any later version.
17#
18# This program is distributed in the hope that it will be useful,
19# but WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21# GNU General Public License for more details.
22#
23
24INCLUDE(FindPackageHandleStandardArgs)
25
26FIND_PROGRAM(GCOVR_EXECUTABLE gcovr HINTS ${GCOVR_ROOT} "${GCOVR_ROOT}/bin")
27
28FIND_PACKAGE_HANDLE_STANDARD_ARGS(gcovr DEFAULT_MSG GCOVR_EXECUTABLE)
29
30# only visible in advanced view
31MARK_AS_ADVANCED(GCOVR_EXECUTABLE)
320
=== removed file 'cmake/ParseArguments.cmake'
--- cmake/ParseArguments.cmake 2013-05-28 14:20:45 +0000
+++ cmake/ParseArguments.cmake 1970-01-01 00:00:00 +0000
@@ -1,52 +0,0 @@
1# Parse arguments passed to a function into several lists separated by
2# upper-case identifiers and options that do not have an associated list e.g.:
3#
4# SET(arguments
5# hello OPTION3 world
6# LIST3 foo bar
7# OPTION2
8# LIST1 fuz baz
9# )
10# PARSE_ARGUMENTS(ARG "LIST1;LIST2;LIST3" "OPTION1;OPTION2;OPTION3" ${arguments})
11#
12# results in 7 distinct variables:
13# * ARG_DEFAULT_ARGS: hello;world
14# * ARG_LIST1: fuz;baz
15# * ARG_LIST2:
16# * ARG_LIST3: foo;bar
17# * ARG_OPTION1: FALSE
18# * ARG_OPTION2: TRUE
19# * ARG_OPTION3: TRUE
20#
21# taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments
22
23MACRO(PARSE_ARGUMENTS prefix arg_names option_names)
24 SET(DEFAULT_ARGS)
25 FOREACH(arg_name ${arg_names})
26 SET(${prefix}_${arg_name})
27 ENDFOREACH(arg_name)
28 FOREACH(option ${option_names})
29 SET(${prefix}_${option} FALSE)
30 ENDFOREACH(option)
31
32 SET(current_arg_name DEFAULT_ARGS)
33 SET(current_arg_list)
34 FOREACH(arg ${ARGN})
35 SET(larg_names ${arg_names})
36 LIST(FIND larg_names "${arg}" is_arg_name)
37 IF (is_arg_name GREATER -1)
38 SET(${prefix}_${current_arg_name} ${current_arg_list})
39 SET(current_arg_name ${arg})
40 SET(current_arg_list)
41 ELSE (is_arg_name GREATER -1)
42 SET(loption_names ${option_names})
43 LIST(FIND loption_names "${arg}" is_option)
44 IF (is_option GREATER -1)
45 SET(${prefix}_${arg} TRUE)
46 ELSE (is_option GREATER -1)
47 SET(current_arg_list ${current_arg_list} ${arg})
48 ENDIF (is_option GREATER -1)
49 ENDIF (is_arg_name GREATER -1)
50 ENDFOREACH(arg)
51 SET(${prefix}_${current_arg_name} ${current_arg_list})
52ENDMACRO(PARSE_ARGUMENTS)
530
=== removed file 'cmake/PrePush.cmake'
--- cmake/PrePush.cmake 2013-05-28 14:20:45 +0000
+++ cmake/PrePush.cmake 1970-01-01 00:00:00 +0000
@@ -1,81 +0,0 @@
1#######################################################################
2# A convenience target that carries out the following steps:
3# - Apply astyle to all source files of interest.
4# - Build & test in a chroot, comparable setup to CI/Autolanding
5# and ppa builders. Will fail if new files have not been added.
6# - Build & test for android.
7#
8# NOTE: This target is very sensitive to the availability of all
9# all required dependencies. For that, we prefer to fail the
10# target if deps are missing to make the problem very visible.
11#
12# TODO:
13# - Wire up the style-check target once we have reached a state
14# where trunk actually passes the style check.
15#######################################################################
16add_custom_target(
17 pre-push
18
19 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
20)
21
22#######################################################################
23# Add target for running astyle with the correct options #
24#######################################################################
25find_program(ASTYLE_EXECUTABLE astyle)
26
27if (ASTYLE_EXECUTABLE)
28 add_custom_target(
29 astyle
30 ${ASTYLE_EXECUTABLE} --style=allman -s4 --indent=spaces=4 --pad-header --align-pointer=type --recursive ${CMAKE_SOURCE_DIR}/include/*.h
31 COMMAND ${ASTYLE_EXECUTABLE} --recursive --style=allman -s4 --indent=spaces=4 --pad-header --align-pointer=type ${CMAKE_SOURCE_DIR}/tests/*.cpp
32 VERBATIM
33 )
34endif (ASTYLE_EXECUTABLE)
35
36#######################################################################
37# Add target for creating a source tarball with bzr export #
38#######################################################################
39add_custom_target(
40 pre-push-source-tarball
41
42 COMMAND rm -rf pre-push-build-area
43 COMMAND mkdir pre-push-build-area
44 COMMAND bzr export --root pre-push pre-push-build-area/${PROJECT_NAME}_${DBUS_CPP_VERSION_MAJOR}.${DBUS_CPP_VERSION_MAJOR}.${DBUS_CPP_VERSION_MAJOR}.orig.tar.bz2 ${CMAKE_SOURCE_DIR}
45 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
46 COMMENT "Preparing source tarball for pre-push build & test"
47)
48
49#######################################################################
50# Add target for extracting source tarball for pdebuild #
51#######################################################################
52add_custom_target(
53 extract-pre-push-tarball
54 COMMAND tar -xf {PROJECT_NAME}_${DBUS_CPP_VERSION_MAJOR}.${DBUS_CPP_VERSION_MAJOR}.${DBUS_CPP_VERSION_MAJOR}.orig.tar.bz2
55 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/pre-push-build-area VERBATIM
56)
57
58#######################################################################
59# Builds & tests the last committed revision of the current branch #
60#######################################################################
61find_program(PDEBUILD_EXECUTABLE pdebuild)
62if(NOT PDEBUILD_EXECUTABLE)
63 message(STATUS "pdebuild NOT found, pre-push is going to FAIL")
64endif()
65
66add_custom_target(
67 pdebuild
68 COMMAND ${PDEBUILD_EXECUTABLE}
69 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/pre-push-build-area/pre-push
70 COMMENT "Building & testing in chroot'd environment"
71 VERBATIM
72)
73
74#######################################################################
75# pdebuild: make tarball -> extract to build area -> pdebuild #
76# android-build: invoke cross-compile script #
77#######################################################################
78add_dependencies(extract-pre-push-tarball pre-push-source-tarball)
79add_dependencies(pdebuild extract-pre-push-tarball)
80
81add_dependencies(pre-push pdebuild android-build)
820
=== modified file 'data/ubuntu-location-service-connectivity.pc.in'
--- data/ubuntu-location-service-connectivity.pc.in 2014-05-19 12:07:44 +0000
+++ data/ubuntu-location-service-connectivity.pc.in 2017-05-15 13:20:09 +0000
@@ -6,7 +6,7 @@
6Name: ubuntu-location-service-connectivity6Name: ubuntu-location-service-connectivity
7Description: A location service aggregating position/velocity/heading7Description: A location service aggregating position/velocity/heading
8 updates and exporting them over dbus, wifi and cell id query interfaces.8 updates and exporting them over dbus, wifi and cell id query interfaces.
9Version: @UBUNTU_LOCATION_SERVICE_VERSION_MAJOR@.@UBUNTU_LOCATION_SERVICE_VERSION_MINOR@.@UBUNTU_LOCATION_SERVICE_VERSION_PATCH@9Version: @LOCATIOND_VERSION_MAJOR@.@LOCATIOND_VERSION_MINOR@.@LOCATIOND_VERSION_PATCH@
10Libs: -L${libdir} -lubuntu-location-service-connectivity10Libs: -L${libdir} -lubuntu-location-service-connectivity
11Cflags: -I${includedir}/ubuntu-location-service-@UBUNTU_LOCATION_SERVICE_VERSION_MAJOR@11Cflags: -I${includedir}/ubuntu-location-service-@LOCATIOND_VERSION_MAJOR@
12Requires: dbus-cpp12Requires: dbus-cpp
1313
=== modified file 'data/ubuntu-location-service.pc.in'
--- data/ubuntu-location-service.pc.in 2016-06-26 21:17:03 +0000
+++ data/ubuntu-location-service.pc.in 2017-05-15 13:20:09 +0000
@@ -6,6 +6,6 @@
6Name: @CMAKE_PROJECT_NAME@6Name: @CMAKE_PROJECT_NAME@
7Description: A location service aggregating position/velocity/heading7Description: A location service aggregating position/velocity/heading
8 updates and exporting them over dbus.8 updates and exporting them over dbus.
9Version: @UBUNTU_LOCATION_SERVICE_VERSION_MAJOR@.@UBUNTU_LOCATION_SERVICE_VERSION_MINOR@.@UBUNTU_LOCATION_SERVICE_VERSION_PATCH@9Version: @LOCATIOND_VERSION_MAJOR@.@LOCATIOND_VERSION_MINOR@.@LOCATIOND_VERSION_PATCH@
10Libs: -L${libdir} -lubuntu-location-service10Libs: -L${libdir} -lubuntu-location-service
11Requires: dbus-cpp11Requires: dbus-cpp
1212
=== modified file 'src/location/CMakeLists.txt'
--- src/location/CMakeLists.txt 2017-05-12 07:43:46 +0000
+++ src/location/CMakeLists.txt 2017-05-15 13:20:09 +0000
@@ -43,7 +43,7 @@
43add_library(43add_library(
44 ubuntu-location-service SHARED44 ubuntu-location-service SHARED
4545
46 ${UBUNTU_LOCATION_SERVICE_PUBLIC_HEADERS}46 ${LOCATIOND_PUBLIC_HEADERS}
4747
48 fusion_provider_selection_policy.cpp48 fusion_provider_selection_policy.cpp
49 non_selecting_provider_selection_policy.cpp49 non_selecting_provider_selection_policy.cpp
@@ -182,8 +182,8 @@
182 PROPERTIES182 PROPERTIES
183 LINK_FLAGS "${ldflags} -Wl,--version-script,${symbol_map}"183 LINK_FLAGS "${ldflags} -Wl,--version-script,${symbol_map}"
184 LINK_DEPENDS ${symbol_map}184 LINK_DEPENDS ${symbol_map}
185 VERSION ${UBUNTU_LOCATION_SERVICE_VERSION_MAJOR}.${UBUNTU_LOCATION_SERVICE_VERSION_MINOR}.${UBUNTU_LOCATION_SERVICE_VERSION_PATCH}185 VERSION ${LOCATIOND_VERSION_MAJOR}.${LOCATIOND_VERSION_MINOR}.${LOCATIOND_VERSION_PATCH}
186 SOVERSION ${UBUNTU_LOCATION_SERVICE_VERSION_MAJOR}186 SOVERSION ${LOCATIOND_VERSION_MAJOR}
187)187)
188188
189set_target_properties(189set_target_properties(
@@ -192,8 +192,8 @@
192 PROPERTIES192 PROPERTIES
193 LINK_FLAGS "${ldflags} -Wl,--version-script,${symbol_map}"193 LINK_FLAGS "${ldflags} -Wl,--version-script,${symbol_map}"
194 LINK_DEPENDS ${symbol_map}194 LINK_DEPENDS ${symbol_map}
195 VERSION ${UBUNTU_LOCATION_SERVICE_VERSION_MAJOR}.${UBUNTU_LOCATION_SERVICE_VERSION_MINOR}.${UBUNTU_LOCATION_SERVICE_VERSION_PATCH}195 VERSION ${LOCATIOND_VERSION_MAJOR}.${LOCATIOND_VERSION_MINOR}.${LOCATIOND_VERSION_PATCH}
196 SOVERSION ${UBUNTU_LOCATION_SERVICE_VERSION_MAJOR}196 SOVERSION ${LOCATIOND_VERSION_MAJOR}
197)197)
198198
199add_definitions(${ENABLED_PROVIDER_TARGETS_DEFINITIONS})199add_definitions(${ENABLED_PROVIDER_TARGETS_DEFINITIONS})
200200
=== modified file 'src/location/config.h.in'
--- src/location/config.h.in 2016-07-13 14:06:18 +0000
+++ src/location/config.h.in 2017-05-15 13:20:09 +0000
@@ -20,10 +20,7 @@
2020
21namespace location21namespace location
22{22{
23static constexpr const char* trust_store_service_name23
24{
25 "@UBUNTU_LOCATION_SERVICE_TRUST_STORE_SERVICE_NAME@"
26};
27}24}
2825
29#endif // LOCATION_CONFIG_H_26#endif // LOCATION_CONFIG_H_
3027
=== modified file 'tests/CMakeLists.txt'
--- tests/CMakeLists.txt 2017-05-09 12:06:57 +0000
+++ tests/CMakeLists.txt 2017-05-15 13:20:09 +0000
@@ -2,17 +2,6 @@
22
3add_definitions(-DCORE_DBUS_ENABLE_GOOGLE_TEST_FIXTURE -DBOOST_ASIO_DISABLE_MOVE)3add_definitions(-DCORE_DBUS_ENABLE_GOOGLE_TEST_FIXTURE -DBOOST_ASIO_DISABLE_MOVE)
44
5option(
6 LOCATION_SERVICE_ENABLE_DBUS_TEST_RUNNER
7 "Rely on dbus test runner to start a private session for testing purposes"
8 ON
9)
10
11if (LOCATION_SERVICE_ENABLE_DBUS_TEST_RUNNER)
12 find_program(DBUS_TEST_RUNNER_EXECUTABLE dbus-test-runner)
13 message(STATUS "Executing test suite under dbus-test-runner")
14endif (LOCATION_SERVICE_ENABLE_DBUS_TEST_RUNNER)
15
16# Build mongoose as static library to leverage in location reporter testing5# Build mongoose as static library to leverage in location reporter testing
17add_library(mongoose mongoose.c)6add_library(mongoose mongoose.c)
18# Explicitly select c99 when compiling mongoose7# Explicitly select c99 when compiling mongoose

Subscribers

People subscribed via source and target branches

to all changes: