Skip to content
This repository was archived by the owner on Aug 5, 2022. It is now read-only.

Commit 1702db4

Browse files
committed
Merge tag 'v2.6.0' into next
Conflicts: parameter/Android.mk parameter/ConfigurableDomain.cpp parameter/ConfigurableDomains.cpp parameter/Element.cpp parameter/Element.h parameter/ParameterMgr.cpp parameter/SelectionCriterion.cpp parameter/SubsystemObject.cpp parameter/SubsystemObject.h utility/Utility.h
2 parents 99e7ef8 + 5cb695f commit 1702db4

File tree

18 files changed

+95
-113
lines changed

18 files changed

+95
-113
lines changed

.travis.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ env:
88

99
compiler:
1010
- gcc
11-
# clang not supported yet
12-
# - clang
11+
- clang
1312

1413
# Install a recent gcc and gcov,
1514
# it will not be necessary once travis worker is based on ubuntu > 12.04.

bindings/python/Android.mk

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,20 +44,22 @@ LOCAL_CLANG := false
4444
# Android only provides a 32bit version of python.
4545
LOCAL_32_BIT_ONLY := true
4646

47-
LOCAL_SHARED_LIBRARIES := libparameter_host
48-
LOCAL_STATIC_LIBRARIES := libxmlserializer_host
47+
LOCAL_SHARED_LIBRARIES := libxmlserializer_host libparameter_host
48+
49+
# python is only available in 32bits for now, thus arch is forced to 32bits
50+
PYTHON_INSTALL_PATH := prebuilts/python/$(HOST_OS)-x86/2.7.5/
51+
PYTHON_INCLUDES_PATH := $(PYTHON_INSTALL_PATH)/include/python2.7
52+
PYTHON_BIN_PATH := $(PYTHON_INSTALL_PATH)/bin
4953

5054
LOCAL_C_INCLUDES := \
51-
prebuilts/python/linux-x86/2.7.5/include/python2.7 \
55+
$(PYTHON_INCLUDES_PATH) \
5256
$(HOST_OUT_HEADERS)/parameter
5357

54-
# The 'unused-but-set-variable' warning must be disabled because SWIG generates
55-
# files that do not respect that constraint.
5658
# '-DSWIG_PYTHON_SILENT_MEMLEAK' is needed because the "memleak" warning
5759
# pollutes the standard output. At the time of writing, the only warning is
5860
# spurious anyway, as it relates to "ILogger *" which is an abstract
5961
# class/interface class and as such cannot be destroyed.
60-
LOCAL_CFLAGS := -Wno-unused-but-set-variable -fexceptions -DSWIG_PYTHON_SILENT_MEMLEAK
62+
LOCAL_CFLAGS := -fexceptions -DSWIG_PYTHON_SILENT_MEMLEAK
6163

6264
# Undefined symbols will be resolved at runtime
6365
LOCAL_ALLOW_UNDEFINED_SYMBOLS := true
@@ -74,6 +76,26 @@ LOCAL_GENERATED_SOURCES := $(generated-sources-dir)/pfw_wrap.cxx $(generated-sou
7476

7577
LOCAL_EXPORT_C_INCLUDE_DIRS := $(generated-sources-dir)
7678

79+
# Get the interpreter ld options.
80+
ifeq ($(HOST_OS), darwin)
81+
# Contrary to linux, on darwin, a python 64 bit executable is installed
82+
# in the x86 prebuild directory,
83+
# As all host libraries are 32 bit in android. We can not link and host
84+
# python module against the prebuild python library.
85+
#
86+
# As a *dirty* workaround, use the system's python configuration and hope
87+
# it will be compatible with the prebuild python interpreter used at runtime.
88+
# To summarize the prebuild python (64 bit?) interpreter will load a
89+
# python native module (32bit) linked with the host (32 bit ?) python library.
90+
LOCAL_LDLIBS += $(shell python-config --ldflags)
91+
else
92+
# Careful, we need to invoke the android python config not the host's one.
93+
# Unfortunately, the internal install directory of python is hardcoded to a dummy value,
94+
# As a workaround, we need to manually add the correct path to libs to the library list.
95+
LOCAL_LDLIBS += $(shell $(PYTHON_BIN_PATH)/python $(PYTHON_BIN_PATH)/python-config --ldflags) \
96+
-L $(PYTHON_INSTALL_PATH)/lib/
97+
endif
98+
7799
$(generated-sources-dir)/pfw_wrap.h: $(generated-sources-dir)/pfw_wrap.cxx
78100

79101
# The PyPfw.py file is generated in the directory given by -outdir switch, thus
@@ -82,7 +104,7 @@ $(generated-sources-dir)/pfw_wrap.cxx: $(LOCAL_PATH)/pfw.i
82104
@echo "Generating Python binding files"
83105
mkdir -p $(dir $@) # surprisingly, path is not generated by build system
84106
mkdir -p $(HOST_LIBRARY_PATH)
85-
prebuilts/misc/linux-x86_64/swig/swig \
107+
prebuilts/misc/$(HOST_OS)-$(HOST_ARCH)/swig/swig \
86108
-Iprebuilts/misc/common/swig/include/2.0.11/python/ \
87109
-Iprebuilts/misc/common/swig/include/2.0.11/ \
88110
-Wall -Werror -v -python -c++ -outdir $(HOST_LIBRARY_PATH)/ -o $@ $^

bindings/python/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,13 @@ swig_link_libraries(PyPfw parameter ${PYTHON_LIBRARIES})
5656
# ${CMAKE_CURRENT_BINARY_DIR}.
5757
set_property(TARGET _PyPfw PROPERTY LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
5858

59-
# The 'unused-but-set-variable' warning must be disabled because SWIG generates
60-
# files that do not respect that contraint.
6159
# '-DSWIG_PYTHON_SILENT_MEMLEAK' is needed because the "memleak" warning
6260
# pollutes the standard output. At the time of writing, the only warning is
6361
# spurious anyway, as it relates to "ILogger *" which is an abstract
6462
# class/interface class and as such cannot be destroyed.
65-
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-but-set-variable -DSWIG_PYTHON_SILENT_MEMLEAK")
63+
# -Wno-error is set to prevent compilation failure in case of the code
64+
# generated by swig generates warnings
65+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DSWIG_PYTHON_SILENT_MEMLEAK -Wno-error")
6666

6767

6868
# Find the python modules install path.

doc/Doxyfile.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ FULL_PATH_NAMES = YES
152152
# will be relative from the directory where doxygen is started.
153153
# This tag requires that the tag FULL_PATH_NAMES is set to YES.
154154

155-
STRIP_FROM_PATH =
155+
STRIP_FROM_PATH = @PROJECT_SOURCE_DIR@
156156

157157
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
158158
# path mentioned in the documentation of a class, which tells the reader which
@@ -1135,7 +1135,7 @@ HTML_COLORSTYLE_GAMMA = 80
11351135
# The default value is: YES.
11361136
# This tag requires that the tag GENERATE_HTML is set to YES.
11371137

1138-
HTML_TIMESTAMP = YES
1138+
HTML_TIMESTAMP = NO
11391139

11401140
# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
11411141
# documentation will contain sections that can be hidden and shown after the

parameter/Android.mk

Lines changed: 8 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,8 @@ common_c_includes := \
130130
$(LOCAL_PATH)/include/ \
131131
$(LOCAL_PATH)/log/include/ \
132132
$(LOCAL_PATH)/../utility/ \
133-
$(LOCAL_PATH)/../xmlserializer/ \
134133
$(LOCAL_PATH)/../remote-processor/
135134

136-
common_shared_libraries := libicuuc
137-
138135
#############################
139136
# Target build
140137

@@ -143,6 +140,8 @@ include $(CLEAR_VARS)
143140
LOCAL_COPY_HEADERS_TO := $(common_copy_headers_to)
144141
LOCAL_COPY_HEADERS := $(common_copy_headers)
145142

143+
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) $(LOCAL_PATH)/log/include
144+
146145
LOCAL_CFLAGS := $(common_cflags)
147146

148147
LOCAL_SRC_FILES := $(common_src_files)
@@ -153,12 +152,11 @@ LOCAL_MODULE_TAGS := $(common_module_tags)
153152

154153
LOCAL_C_INCLUDES := $(common_c_includes)
155154

156-
LOCAL_SHARED_LIBRARIES := $(common_shared_libraries) libdl
157-
LOCAL_STATIC_LIBRARIES := libxmlserializer libpfw_utility libxml2
155+
LOCAL_SHARED_LIBRARIES := libxmlserializer libdl
156+
LOCAL_STATIC_LIBRARIES := libpfw_utility
158157

159158
LOCAL_REQUIRED_MODULES := libremote-processor
160159

161-
LOCAL_CLANG := false
162160
include external/stlport/libstlport.mk
163161
include $(BUILD_SHARED_LIBRARY)
164162

@@ -170,6 +168,8 @@ include $(CLEAR_VARS)
170168
LOCAL_COPY_HEADERS_TO := $(common_copy_headers_to)
171169
LOCAL_COPY_HEADERS := $(common_copy_headers)
172170

171+
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH) $(LOCAL_PATH)/log/include
172+
173173
LOCAL_CFLAGS := $(common_cflags) -O0 -ggdb
174174

175175
LOCAL_SRC_FILES := $(common_src_files)
@@ -181,47 +181,9 @@ LOCAL_MODULE_TAGS := $(common_module_tags)
181181
LOCAL_C_INCLUDES += \
182182
$(common_c_includes)
183183

184-
LOCAL_SHARED_LIBRARIES := $(common_shared_libraries)-host
185-
LOCAL_STATIC_LIBRARIES := libxmlserializer_host libpfw_utility_host libxml2
184+
LOCAL_SHARED_LIBRARIES := libxmlserializer_host
185+
LOCAL_STATIC_LIBRARIES := libpfw_utility_host libxml2
186186

187187
LOCAL_LDLIBS += -ldl
188188

189-
LOCAL_CLANG := false
190189
include $(BUILD_HOST_SHARED_LIBRARY)
191-
192-
################################
193-
# Export includes for plugins (Target build)
194-
195-
include $(CLEAR_VARS)
196-
197-
LOCAL_MODULE := $(common_module)_includes
198-
LOCAL_MODULE_OWNER := intel
199-
200-
LOCAL_EXPORT_C_INCLUDE_DIRS := \
201-
$(LOCAL_PATH) \
202-
$(LOCAL_PATH)/log/include
203-
204-
205-
LOCAL_STATIC_LIBRARIES := \
206-
libxmlserializer \
207-
libpfw_utility \
208-
libxml2
209-
210-
include $(BUILD_STATIC_LIBRARY)
211-
212-
################################
213-
# Export includes for plugins (Host build)
214-
215-
include $(CLEAR_VARS)
216-
217-
LOCAL_MODULE := $(common_module)_includes_host
218-
LOCAL_MODULE_OWNER := intel
219-
220-
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
221-
222-
LOCAL_STATIC_LIBRARIES := \
223-
libxmlserializer_host \
224-
libpfw_utility_host \
225-
libxml2
226-
227-
include $(BUILD_HOST_STATIC_LIBRARY)

parameter/BitParameter.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ bool CBitParameter::accessAsBoolean(bool& bValue, bool bSet, CParameterAccessCon
8787
}
8888

8989
// Rely on integer access
90-
uint64_t uiValue;
90+
uint32_t uiValue;
9191

9292
if (bSet) {
9393

@@ -108,7 +108,7 @@ bool CBitParameter::accessAsBoolean(bool& bValue, bool bSet, CParameterAccessCon
108108
}
109109

110110
// Integer Access
111-
bool CBitParameter::accessAsInteger(uint64_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const
111+
bool CBitParameter::accessAsInteger(uint32_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const
112112
{
113113
uint32_t uiOffset = getOffset();
114114

parameter/BitParameter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class CBitParameter : public CBaseParameter
4949
virtual bool accessAsBoolean(bool& bValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
5050

5151
// Integer Access
52-
virtual bool accessAsInteger(uint64_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
52+
virtual bool accessAsInteger(uint32_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
5353

5454
// AreaConfiguration creation
5555
virtual CAreaConfiguration* createAreaConfiguration(const CSyncerSet* pSyncerSet) const;

parameter/BitParameterType.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ bool CBitParameterType::toBlackboard(uint64_t uiUserValue, uint64_t& uiValue, CP
192192
return true;
193193
}
194194

195-
void CBitParameterType::fromBlackboard(uint64_t& uiUserValue, uint64_t uiValue, CParameterAccessContext& parameterAccessContext) const
195+
void CBitParameterType::fromBlackboard(uint32_t& uiUserValue, uint64_t uiValue, CParameterAccessContext& parameterAccessContext) const
196196
{
197197
(void)parameterAccessContext;
198198

parameter/BitParameterType.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class CBitParameterType : public CTypeElement
5353
void fromBlackboard(std::string& strValue, const uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
5454
// Integer
5555
bool toBlackboard(uint64_t uiUserValue, uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
56-
void fromBlackboard(uint64_t& uiUserValue, uint64_t uiValue, CParameterAccessContext& parameterAccessContext) const;
56+
void fromBlackboard(uint32_t& uiUserValue, uint64_t uiValue, CParameterAccessContext& parameterAccessContext) const;
5757
// Access from area configuration
5858
uint64_t merge(uint64_t uiOriginData, uint64_t uiNewData) const;
5959

parameter/ParameterMgr.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,9 @@ class CParameterMgr
8585
const char* _pcDescription;
8686
};
8787
// Version
88-
static const uint32_t guiEditionMajor = 0x2;
89-
static const uint32_t guiEditionMinor = 0x5;
90-
static const uint32_t guiRevision = 0x0;
88+
static const uint32_t guiEditionMajor = 2;
89+
static const uint32_t guiEditionMinor = 6;
90+
static const uint32_t guiRevision = 0;
9191

9292
// Parameter handle friendship
9393
friend class CParameterHandle;

0 commit comments

Comments
 (0)