summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Wagner <david.wagner@intel.com>2014-02-17 15:14:15 +0100
committerDavid Wagner <david.wagner@intel.com>2014-02-17 16:44:14 +0100
commit3fac6d8f4e0d65a02a478dd32947c74b82b1b7b5 (patch)
treeb0fb0f3fbdc1b1e262c3eb9e415bb8bb30d9432b
parent4ff62d67aaf128546af2b4a4ec728a1c731998d0 (diff)
downloadexternal_parameter-framework-3fac6d8f4e0d65a02a478dd32947c74b82b1b7b5.zip
external_parameter-framework-3fac6d8f4e0d65a02a478dd32947c74b82b1b7b5.tar.gz
external_parameter-framework-3fac6d8f4e0d65a02a478dd32947c74b82b1b7b5.tar.bz2
Add CMake Makefiles
1) Generate the Makefiles with "cmake"; 2) compile all targets with "make". Signed-off-by: David Wagner <david.wagner@intel.com>
-rw-r--r--CMakeLists.txt19
-rw-r--r--parameter/CMakeLists.txt176
-rw-r--r--remote-process/CMakeLists.txt8
-rw-r--r--remote-processor/CMakeLists.txt14
-rw-r--r--test/test-platform/CMakeLists.txt12
-rw-r--r--utility/CMakeLists.txt7
-rw-r--r--xmlserializer/CMakeLists.txt16
7 files changed, 252 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..283f452
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,19 @@
+# has been tested on 2.8 only - might work on older versions
+cmake_minimum_required(VERSION 2.8)
+
+# linking policy (see cmake --help-policy CMP0003)
+if(COMMAND cmake_policy)
+ cmake_policy(SET CMP0003 NEW)
+endif(COMMAND cmake_policy)
+
+project(parameter-framework)
+
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror -Wall -Wextra") # -Wno-unused-parameter
+
+add_subdirectory(xmlserializer)
+add_subdirectory(parameter)
+add_subdirectory(utility)
+add_subdirectory(remote-processor)
+
+add_subdirectory(remote-process)
+add_subdirectory(test/test-platform)
diff --git a/parameter/CMakeLists.txt b/parameter/CMakeLists.txt
new file mode 100644
index 0000000..9d097da
--- /dev/null
+++ b/parameter/CMakeLists.txt
@@ -0,0 +1,176 @@
+add_library(parameter SHARED
+ Subsystem.cpp
+ PathNavigator.cpp
+ Element.cpp
+ SystemClass.cpp
+ Component.cpp
+ ParameterMgr.cpp
+ SelectionCriteria.cpp
+ SelectionCriterionLibrary.cpp
+ SelectionCriteriaDefinition.cpp
+ SelectionCriterionType.cpp
+ ElementLibrary.cpp
+ SubsystemElementBuilder.cpp
+ SubsystemLibrary.cpp
+ SelectionCriterion.cpp
+ ComponentLibrary.cpp
+ ParameterBlock.cpp
+ ConfigurableElement.cpp
+ MappingData.cpp
+ ParameterBlackboard.cpp
+ ComponentType.cpp
+ TypeElement.cpp
+ InstanceConfigurableElement.cpp
+ ComponentInstance.cpp
+ ParameterBlockType.cpp
+ ParameterType.cpp
+ Parameter.cpp
+ BooleanParameterType.cpp
+ IntegerParameterType.cpp
+ ArrayParameter.cpp
+ InstanceDefinition.cpp
+ ParameterMgrPlatformConnector.cpp
+ FixedPointParameterType.cpp
+ ParameterAccessContext.cpp
+ XmlFileIncluderElement.cpp
+ ParameterFrameworkConfiguration.cpp
+ FrameworkConfigurationGroup.cpp
+ SubsystemPlugins.cpp
+ FrameworkConfigurationLocation.cpp
+ PluginLocation.cpp
+ KindElement.cpp
+ ElementLibrarySet.cpp
+ ErrorContext.cpp
+ AreaConfiguration.cpp
+ DomainConfiguration.cpp
+ ConfigurableDomain.cpp
+ SyncerSet.cpp
+ ConfigurableDomains.cpp
+ BinaryStream.cpp
+ ConfigurationAccessContext.cpp
+ XmlElementSerializingContext.cpp
+ XmlParameterSerializingContext.cpp
+ XmlDomainSerializingContext.cpp
+ BinarySerializableElement.cpp
+ BitwiseAreaConfiguration.cpp
+ BitParameterBlockType.cpp
+ BitParameterBlock.cpp
+ BitParameterType.cpp
+ BitParameter.cpp
+ ElementLocator.cpp
+ ParameterMgrLogger.cpp
+ AutoLog.cpp
+ Rule.cpp
+ CompoundRule.cpp
+ SelectionCriterionRule.cpp
+ ConfigurableElementAggregator.cpp
+ BackSynchronizer.cpp
+ HardwareBackSynchronizer.cpp
+ SimulatedBackSynchronizer.cpp
+ MappingContext.cpp
+ SubsystemObject.cpp
+ FormattedSubsystemObject.cpp
+ SubsystemObjectCreator.cpp
+ BaseParameter.cpp
+ AutoLock.cpp
+ StringParameterType.cpp
+ StringParameter.cpp
+ EnumParameterType.cpp
+ VirtualSubsystem.cpp
+ VirtualSyncer.cpp
+ ParameterHandle.cpp
+ ParameterAdaptation.cpp
+ LinearParameterAdaptation.cpp
+ RuleParser.cpp
+ EnumValuePair.cpp
+ Subsystem.cpp
+ PathNavigator.cpp
+ Element.cpp
+ SystemClass.cpp
+ Component.cpp
+ ParameterMgr.cpp
+ SelectionCriteria.cpp
+ SelectionCriterionLibrary.cpp
+ SelectionCriteriaDefinition.cpp
+ SelectionCriterionType.cpp
+ ElementLibrary.cpp
+ SubsystemElementBuilder.cpp
+ SubsystemLibrary.cpp
+ SelectionCriterion.cpp
+ ComponentLibrary.cpp
+ ParameterBlock.cpp
+ ConfigurableElement.cpp
+ MappingData.cpp
+ ParameterBlackboard.cpp
+ ComponentType.cpp
+ TypeElement.cpp
+ InstanceConfigurableElement.cpp
+ ComponentInstance.cpp
+ ParameterBlockType.cpp
+ ParameterType.cpp
+ Parameter.cpp
+ BooleanParameterType.cpp
+ IntegerParameterType.cpp
+ ArrayParameter.cpp
+ InstanceDefinition.cpp
+ ParameterMgrPlatformConnector.cpp
+ FixedPointParameterType.cpp
+ ParameterAccessContext.cpp
+ XmlFileIncluderElement.cpp
+ ParameterFrameworkConfiguration.cpp
+ FrameworkConfigurationGroup.cpp
+ SubsystemPlugins.cpp
+ FrameworkConfigurationLocation.cpp
+ PluginLocation.cpp
+ KindElement.cpp
+ ElementLibrarySet.cpp
+ ErrorContext.cpp
+ AreaConfiguration.cpp
+ DomainConfiguration.cpp
+ ConfigurableDomain.cpp
+ SyncerSet.cpp
+ ConfigurableDomains.cpp
+ BinaryStream.cpp
+ ConfigurationAccessContext.cpp
+ XmlElementSerializingContext.cpp
+ XmlParameterSerializingContext.cpp
+ XmlDomainSerializingContext.cpp
+ BinarySerializableElement.cpp
+ BitwiseAreaConfiguration.cpp
+ BitParameterBlockType.cpp
+ BitParameterBlock.cpp
+ BitParameterType.cpp
+ BitParameter.cpp
+ ElementLocator.cpp
+ ParameterMgrLogger.cpp
+ AutoLog.cpp
+ Rule.cpp
+ CompoundRule.cpp
+ SelectionCriterionRule.cpp
+ ConfigurableElementAggregator.cpp
+ BackSynchronizer.cpp
+ HardwareBackSynchronizer.cpp
+ SimulatedBackSynchronizer.cpp
+ MappingContext.cpp
+ SubsystemObject.cpp
+ FormattedSubsystemObject.cpp
+ SubsystemObjectCreator.cpp
+ BaseParameter.cpp
+ AutoLock.cpp
+ StringParameterType.cpp
+ StringParameter.cpp
+ EnumParameterType.cpp
+ VirtualSubsystem.cpp
+ VirtualSyncer.cpp
+ ParameterHandle.cpp
+ ParameterAdaptation.cpp
+ LinearParameterAdaptation.cpp
+ RuleParser.cpp
+ EnumValuePair.cpp)
+
+include_directories("include")
+include_directories("${PROJECT_SOURCE_DIR}/xmlserializer")
+include_directories("${PROJECT_SOURCE_DIR}/utility")
+include_directories("${PROJECT_SOURCE_DIR}/remote-processor")
+
+target_link_libraries(parameter xmlserializer pfw_utility)
diff --git a/remote-process/CMakeLists.txt b/remote-process/CMakeLists.txt
new file mode 100644
index 0000000..7f8a5ee
--- /dev/null
+++ b/remote-process/CMakeLists.txt
@@ -0,0 +1,8 @@
+add_executable(remote-process main.cpp) # TODO: WIN32 ?
+
+# TODO: separate remote-processor's includes in half (public/private)
+# And use only public headers here
+include_directories("${PROJECT_SOURCE_DIR}/remote-processor")
+include_directories("${PROJECT_SOURCE_DIR}/utility")
+
+target_link_libraries(remote-process remote-processor pfw_utility)
diff --git a/remote-processor/CMakeLists.txt b/remote-processor/CMakeLists.txt
new file mode 100644
index 0000000..5cecf98
--- /dev/null
+++ b/remote-processor/CMakeLists.txt
@@ -0,0 +1,14 @@
+add_library(remote-processor SHARED
+ Socket.cpp
+ ListeningSocket.cpp
+ ConnectionSocket.cpp
+ Message.cpp
+ RequestMessage.cpp
+ AnswerMessage.cpp
+ RemoteProcessorServer.cpp
+ RemoteProcessorServerBuilder.cpp)
+
+include(FindThreads)
+# TODO: use the "prefer pthread" option; check if we are using pthread (what to
+# do else ?)
+target_link_libraries(remote-processor ${CMAKE_THREAD_LIBS_INIT})
diff --git a/test/test-platform/CMakeLists.txt b/test/test-platform/CMakeLists.txt
new file mode 100644
index 0000000..17979d0
--- /dev/null
+++ b/test/test-platform/CMakeLists.txt
@@ -0,0 +1,12 @@
+add_executable(test-platform # WIN32 ?
+ main.cpp
+ TestPlatform.cpp)
+
+# FIXME
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-parameter")
+
+include_directories("${PROJECT_SOURCE_DIR}/parameter/include")
+include_directories("${PROJECT_SOURCE_DIR}/remote-processor")
+include_directories("${PROJECT_SOURCE_DIR}/utility")
+
+target_link_libraries(test-platform parameter remote-processor)
diff --git a/utility/CMakeLists.txt b/utility/CMakeLists.txt
new file mode 100644
index 0000000..ac4d5b7
--- /dev/null
+++ b/utility/CMakeLists.txt
@@ -0,0 +1,7 @@
+add_library(pfw_utility STATIC
+ Tokenizer.cpp
+ Utility.cpp
+ NaiveTokenizer.cpp)
+
+# Needed for linking libpfw_utility against shared libraries e.g. libparameter)
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
diff --git a/xmlserializer/CMakeLists.txt b/xmlserializer/CMakeLists.txt
new file mode 100644
index 0000000..052ca2e
--- /dev/null
+++ b/xmlserializer/CMakeLists.txt
@@ -0,0 +1,16 @@
+add_library(xmlserializer SHARED
+ XmlElement.cpp
+ XmlSerializingContext.cpp
+ XmlDocSource.cpp
+ XmlDocSink.cpp
+ XmlMemoryDocSink.cpp
+ XmlMemoryDocSource.cpp
+ XmlStringDocSink.cpp
+ XmlFileDocSink.cpp
+ XmlFileDocSource.cpp
+ XmlStringDocSource.cpp)
+
+include(FindLibXml2)
+# TODO: check for the "XInclude" feature in libxml2
+include_directories(${LIBXML2_INCLUDE_DIR})
+target_link_libraries(xmlserializer ${LIBXML2_LIBRARIES})