blob: 5c3e5684428c396e4e887ad02b771383f44e6921 [file] [log] [blame]
Guillaume Denneulin1080f662013-12-05 16:24:32 +01001# INTEL CONFIDENTIAL
2#
3# Copyright 2013 Intel Corporation All Rights Reserved.
4# The source code contained or described herein and all documents
5# related to the source code ("Material") are owned by Intel
6# Corporation or its suppliers or licensors. Title to the Material
7# remains with Intel Corporation or its suppliers and licensors. The
8# Material contains trade secrets and proprietary and confidential
9# information of Intel or its suppliers and licensors. The Material is
10# protected by worldwide copyright and trade secret laws and treaty
11# provisions. No part of the Material may be used, copied, reproduced,
12# modified, published, uploaded, posted, transmitted, distributed, or
13# disclosed in any way without Intel's prior express written permission.
14#
15# No license under any patent, copyright, trade secret or other
16# intellectual property right is granted to or conferred upon you by
17# disclosure or delivery of the Materials, either expressly, by
18# implication, inducement, estoppel or otherwise. Any license under
19# such intellectual property rights must be express and approved by
20# Intel in writing.
21
Kevin Rocard6ac99e52013-05-07 17:29:53 +020022LOCAL_PATH := $(call my-dir)
Patrick Benavoli68a91282011-08-31 11:23:23 +020023
Kevin Rocard7d7de5f2013-05-07 17:29:53 +020024####################
25# Common definitions
Patrick Benavoli68a91282011-08-31 11:23:23 +020026
Kevin Rocard310c4992013-06-24 18:12:18 +020027common_copy_headers_to := parameter
Patrick Benavoli68a91282011-08-31 11:23:23 +020028
Kevin Rocard310c4992013-06-24 18:12:18 +020029common_copy_headers := \
Kevin Rocarda4c39f12013-05-24 17:23:09 +020030 include/ParameterMgrPlatformConnector.h \
31 include/SelectionCriterionTypeInterface.h \
32 include/SelectionCriterionInterface.h \
33 include/ParameterHandle.h
Patrick Benavoli68a91282011-08-31 11:23:23 +020034
Kevin Rocard310c4992013-06-24 18:12:18 +020035common_src_files := \
Patrick Benavoli68a91282011-08-31 11:23:23 +020036 Subsystem.cpp \
37 PathNavigator.cpp \
38 Element.cpp \
39 SystemClass.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020040 Component.cpp \
41 ParameterMgr.cpp \
42 SelectionCriteria.cpp \
43 SelectionCriterionLibrary.cpp \
44 SelectionCriteriaDefinition.cpp \
45 SelectionCriterionType.cpp \
46 ElementLibrary.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020047 SubsystemElementBuilder.cpp \
48 SubsystemLibrary.cpp \
49 SelectionCriterion.cpp \
50 ComponentLibrary.cpp \
51 ParameterBlock.cpp \
52 ConfigurableElement.cpp \
53 MappingData.cpp \
54 ParameterBlackboard.cpp \
55 ComponentType.cpp \
56 TypeElement.cpp \
57 InstanceConfigurableElement.cpp \
58 ComponentInstance.cpp \
59 ParameterBlockType.cpp \
60 ParameterType.cpp \
61 Parameter.cpp \
62 BooleanParameterType.cpp \
63 IntegerParameterType.cpp \
64 ArrayParameter.cpp \
65 InstanceDefinition.cpp \
66 ParameterMgrPlatformConnector.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020067 FixedPointParameterType.cpp \
68 ParameterAccessContext.cpp \
69 XmlFileIncluderElement.cpp \
70 ParameterFrameworkConfiguration.cpp \
71 FrameworkConfigurationGroup.cpp \
Guillaume Denneulina4ec15d2012-02-17 14:38:14 +010072 SubsystemPlugins.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020073 FrameworkConfigurationLocation.cpp \
Guillaume Denneulina4ec15d2012-02-17 14:38:14 +010074 PluginLocation.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020075 KindElement.cpp \
76 ElementLibrarySet.cpp \
77 ErrorContext.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020078 AreaConfiguration.cpp \
79 DomainConfiguration.cpp \
80 ConfigurableDomain.cpp \
81 SyncerSet.cpp \
82 ConfigurableDomains.cpp \
83 BinaryStream.cpp \
84 ConfigurationAccessContext.cpp \
85 XmlElementSerializingContext.cpp \
86 XmlParameterSerializingContext.cpp \
87 XmlDomainSerializingContext.cpp \
88 BinarySerializableElement.cpp \
Frédéric Boisnard9620e442012-05-30 16:15:02 +020089 BitwiseAreaConfiguration.cpp \
Patrick Benavoli68a91282011-08-31 11:23:23 +020090 BitParameterBlockType.cpp \
91 BitParameterBlock.cpp \
92 BitParameterType.cpp \
93 BitParameter.cpp \
94 ElementLocator.cpp \
95 ParameterMgrLogger.cpp \
96 AutoLog.cpp \
97 Rule.cpp \
98 CompoundRule.cpp \
99 SelectionCriterionRule.cpp \
100 ConfigurableElementAggregator.cpp \
101 BackSynchronizer.cpp \
102 HardwareBackSynchronizer.cpp \
103 SimulatedBackSynchronizer.cpp \
104 MappingContext.cpp \
105 SubsystemObject.cpp \
Frederic Boisnard6cae0ec2013-05-23 18:48:58 +0200106 FormattedSubsystemObject.cpp \
Patrick Benavoli2ecf9002011-08-31 11:23:24 +0200107 SubsystemObjectCreator.cpp \
Patrick Benavoli1387bda2011-08-31 11:23:24 +0200108 BaseParameter.cpp \
Patrick Benavoli1352ae52011-10-21 16:48:04 +0200109 AutoLock.cpp \
110 StringParameterType.cpp \
Patrick Benavoli9fc3c0d2011-10-27 14:27:27 +0200111 StringParameter.cpp \
Patrick Benavoli6ccab9d2011-11-10 23:21:01 +0100112 EnumParameterType.cpp \
113 VirtualSubsystem.cpp \
Patrick Benavoli065264a2011-11-20 15:46:41 +0100114 VirtualSyncer.cpp \
Patrick Benavoliee65e6d2011-11-20 18:52:24 +0100115 ParameterHandle.cpp \
116 ParameterAdaptation.cpp \
Patrick Benavoli0bd50542011-11-29 11:10:27 +0100117 LinearParameterAdaptation.cpp \
Patrick Benavoli68808c62012-02-02 17:12:41 +0100118 RuleParser.cpp \
119 EnumValuePair.cpp
Patrick Benavoli68a91282011-08-31 11:23:23 +0200120
Kevin Rocard310c4992013-06-24 18:12:18 +0200121common_module := libparameter
122common_module_tags := optional
Patrick Benavoli68a91282011-08-31 11:23:23 +0200123
Frédéric Boisnard11e31ae2013-08-06 19:23:46 +0200124common_cflags := \
125 -Wall \
126 -Werror \
127 -Wextra \
128 -Wno-unused-parameter
129
Kevin Rocard310c4992013-06-24 18:12:18 +0200130common_c_includes := \
Kevin Rocarda4c39f12013-05-24 17:23:09 +0200131 $(LOCAL_PATH)/include/ \
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200132 $(LOCAL_PATH)/../utility/ \
133 $(LOCAL_PATH)/../xmlserializer/ \
134 $(LOCAL_PATH)/../remote-processor/
Patrick Benavoli68a91282011-08-31 11:23:23 +0200135
Kevin Rocard310c4992013-06-24 18:12:18 +0200136common_shared_libraries := libicuuc
137common_static_libraries := libxml2
Guillaume Denneulin1080f662013-12-05 16:24:32 +0100138
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200139#############################
140# Target build
141
142include $(CLEAR_VARS)
143
Kevin Rocard310c4992013-06-24 18:12:18 +0200144LOCAL_COPY_HEADERS_TO := $(common_copy_headers_to)
145LOCAL_COPY_HEADERS := $(common_copy_headers)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200146
147LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)
148
Frédéric Boisnard11e31ae2013-08-06 19:23:46 +0200149LOCAL_CFLAGS := $(common_cflags)
150
Kevin Rocard310c4992013-06-24 18:12:18 +0200151LOCAL_SRC_FILES := $(common_src_files)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200152
Kevin Rocard310c4992013-06-24 18:12:18 +0200153LOCAL_MODULE := $(common_module)
154LOCAL_MODULE_TAGS := $(common_module_tags)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200155
Patrick Benavoli68a91282011-08-31 11:23:23 +0200156LOCAL_C_INCLUDES += \
Kevin Rocard310c4992013-06-24 18:12:18 +0200157 $(common_c_includes) \
Chetan Rao55f41bc2013-04-29 11:53:42 +0300158 $(call include-path-for, stlport) \
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200159 bionic/
Patrick Benavoli68a91282011-08-31 11:23:23 +0200160
Kevin Rocard310c4992013-06-24 18:12:18 +0200161LOCAL_SHARED_LIBRARIES := $(common_shared_libraries) libdl libstlport
162LOCAL_STATIC_LIBRARIES := libxmlserializer libutility $(common_static_libraries)
Patrick Benavoli68a91282011-08-31 11:23:23 +0200163
164include $(BUILD_SHARED_LIBRARY)
165
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200166##############################
167# Host build
168
169include $(CLEAR_VARS)
170
Kevin Rocard310c4992013-06-24 18:12:18 +0200171LOCAL_COPY_HEADERS_TO := $(common_copy_headers_to)
172LOCAL_COPY_HEADERS := $(common_copy_headers)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200173
Renaud de Chivred55f5862013-09-11 14:33:48 +0200174LOCAL_CFLAGS := $(common_cflags) -O0 -ggdb
Frédéric Boisnard11e31ae2013-08-06 19:23:46 +0200175
Kevin Rocard310c4992013-06-24 18:12:18 +0200176LOCAL_SRC_FILES := $(common_src_files)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200177
Kevin Rocard310c4992013-06-24 18:12:18 +0200178LOCAL_MODULE := $(common_module)_host
179LOCAL_MODULE_TAGS := $(common_module_tags)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200180
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200181LOCAL_C_INCLUDES += \
Kevin Rocard310c4992013-06-24 18:12:18 +0200182 $(common_c_includes)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200183
Jin Weibf76f6b2013-10-22 12:16:27 +0800184LOCAL_SHARED_LIBRARIES := $(common_shared_libraries)-host
Kevin Rocard310c4992013-06-24 18:12:18 +0200185LOCAL_STATIC_LIBRARIES := libxmlserializer_host libutility_host $(common_static_libraries)
Kevin Rocard7d7de5f2013-05-07 17:29:53 +0200186
187LOCAL_LDLIBS += -ldl
188
189include $(BUILD_HOST_SHARED_LIBRARY)
Guillaume Denneulin1080f662013-12-05 16:24:32 +0100190
191################################
192# Export includes for plugins (Target build)
193
194include $(CLEAR_VARS)
195
196LOCAL_MODULE := $(common_module)_includes
197
198LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
199
200LOCAL_STATIC_LIBRARIES := \
201 libxmlserializer \
202 libutility \
203 $(common_static_libraries)
204
205include $(BUILD_STATIC_LIBRARY)
206
207################################
208# Export includes for plugins (Host build)
209
210include $(CLEAR_VARS)
211
212LOCAL_MODULE := $(common_module)_includes_host
213
214LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
215
216LOCAL_STATIC_LIBRARIES := \
217 libxmlserializer_host \
218 libutility_host \
219 $(common_static_libraries)
220
221include $(BUILD_HOST_STATIC_LIBRARY)
222