blob: e42b6bec0e32f5ca810d9c1df31f296a0bcdff18 [file] [log] [blame]
Mattijs Korpershoekf2a6d242014-06-27 11:27:31 +02001# Copyright (c) 2014, Intel Corporation
2# All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without modification,
5# are permitted provided that the following conditions are met:
6#
7# 1. Redistributions of source code must retain the above copyright notice, this
8# list of conditions and the following disclaimer.
9#
10# 2. Redistributions in binary form must reproduce the above copyright notice,
11# this list of conditions and the following disclaimer in the documentation and/or
12# other materials provided with the distribution.
13#
14# 3. Neither the name of the copyright holder nor the names of its contributors
15# may be used to endorse or promote products derived from this software without
16# specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
22# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
25# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
David Wagner3fac6d82014-02-17 15:14:15 +010029# has been tested on 2.8 only - might work on older versions
30cmake_minimum_required(VERSION 2.8)
31
32# linking policy (see cmake --help-policy CMP0003)
33if(COMMAND cmake_policy)
34 cmake_policy(SET CMP0003 NEW)
35endif(COMMAND cmake_policy)
36
37project(parameter-framework)
38
David Wagner00500492014-02-18 10:21:01 +010039set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Wall -Wextra")
David Wagner3fac6d82014-02-17 15:14:15 +010040
Kevin Rocard747bb842015-03-11 11:46:32 +010041option(COVERAGE "Build with coverage support" OFF)
42if(COVERAGE)
43 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
44 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fprofile-arcs -ftest-coverage")
45endif()
46
David Wagner3fac6d82014-02-17 15:14:15 +010047add_subdirectory(xmlserializer)
48add_subdirectory(parameter)
49add_subdirectory(utility)
50add_subdirectory(remote-processor)
51
52add_subdirectory(remote-process)
Kevin Rocard9f8b7bd2014-12-02 11:30:57 +010053
Kevin Rocard7fe36ee2015-03-06 10:36:40 +010054include(CTest)
55# Ctest requires its configuration to be placed at the build root
56configure_file(CTestCustom.cmake ${CMAKE_BINARY_DIR} COPYONLY)
57
David Wagner3fac6d82014-02-17 15:14:15 +010058add_subdirectory(test/test-platform)
Kevin Rocard9f8b7bd2014-12-02 11:30:57 +010059add_subdirectory(test/test-fixed-point-parameter)
David Wagnerb2742cf2015-03-19 16:53:50 +010060add_subdirectory(test/tokenizer)
Mattijs Korpershoek8c478032014-03-14 11:30:23 +010061
Kevin Rocard747bb842015-03-11 11:46:32 +010062option(BASH_COMPLETION "Install bash completion configuration" ON)
63if (BASH_COMPLETION)
64 add_subdirectory(tools/bash_completion)
65endif()
66
Mattijs Korpershoek8c478032014-03-14 11:30:23 +010067add_subdirectory(tools/xmlGenerator)
Mattijs Korpershoekf563b2d2014-03-14 10:20:43 +010068add_subdirectory(tools/xmlValidator)
David Wagner8a7cecb2015-01-06 11:03:06 +010069
70add_subdirectory(bindings)