summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchristian mueller <christian.ei.mueller@bmw.de>2012-01-18 13:28:09 +0100
committerchristian mueller <christian.ei.mueller@bmw.de>2012-01-18 14:01:48 +0100
commitadf0d48f869007e4527b00e1a346ed37ee82cc1a (patch)
tree48a8b7cdbf60aba53e82bbffbb1199fff865238a
parent8a99f39f0a5b84230bb6e764950dc674258870e8 (diff)
downloadaudiomanager-adf0d48f869007e4527b00e1a346ed37ee82cc1a.tar.gz
* fix for package building with lower cmake versions
* fix DBus interface to be GLIB tolerant 32bit types
-rw-r--r--CMakeLists.txt34
-rw-r--r--PluginCommandInterfaceDbus/src/DBusMessageHandler.cpp8
-rw-r--r--cmake/config.cmake1
-rw-r--r--includes/config.h11
4 files changed, 41 insertions, 13 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9c156fc..2bb1046 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -61,6 +61,12 @@ OPTION( WITH_PPOLL
OPTION( WITH_TELNET
"build with Telnetserver" OFF)
+
+OPTION ( USE_BUILD_LIBS
+ "build with default library path = build path" ON)
+
+OPTION ( GLIB_DBUS_TYPES_TOLERANT
+ "build dbus with tolerance towards glib 16bit/32bit handling" ON)
#Can be changed via passing -DDBUS_SERVICE_PREFIX="XXX" to cmake
IF(NOT DEFINED DBUS_SERVICE_PREFIX)
@@ -205,6 +211,7 @@ ENDFOREACH(dep)
STRING(REGEX REPLACE ".$" "" dev_DEPENDENCIES ${dev_DEPENDENCIES})
list(REMOVE_DUPLICATES ALL_DEPEND)
+list(REMOVE_ITEM ALL_DEPEND "audiomanager-bin")
FOREACH (dep ${ALL_DEPEND})
SET(all_DEPENDENCIES "${dep} ,${all_DEPENDENCIES}")
ENDFOREACH(dep)
@@ -212,25 +219,36 @@ STRING(REGEX REPLACE ".$" "" all_DEPENDENCIES ${all_DEPENDENCIES})
execute_process(COMMAND cp ${CMAKE_MODULE_PATH}/add_package_dependencies.sh ${CMAKE_CURRENT_BINARY_DIR})
#component based dep package generation is only supported above 2.8.5
-IF (${CMAKE_VERSION} VERSION_GREATER 2.8.4)
+IF (${CMAKE_VERSION} VERSION_GREATER 2.9.4)
SET(CPACK_COMPONENTS_ALL bin sampleplugins tests dev)
SET(CPACK_COMPONENTS_IGNORE_GROUPS 1)
- SET(CPACK_RPM_COMPONENT_INSTALL ON)
SET(CPACK_DEB_COMPONENT_INSTALL ON)
ADD_CUSTOM_TARGET(genivi_package
+ COMMAND ${CMAKE_COMMAND} ${CMAKE_BINARY_DIR} -DUSE_BUILD_LIBS=ON
COMMAND make package
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux-bin.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${bin_DEPENDENCIES}\"
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux-sampleplugins.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${sampleplugins_DEPENDENCIES}\"
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux-tests.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${tests_DEPENDENCIES}\"
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux-dev.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${dev_DEPENDENCIES}\"
)
-ELSE (${CMAKE_VERSION} VERSION_GREATER 2.8.4)
- ADD_CUSTOM_TARGET(genivi_package
- COMMAND make package
- COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${all_DEPENDENCIES}\"
- )
-ENDIF (${CMAKE_VERSION} VERSION_GREATER 2.8.4)
+ELSE (${CMAKE_VERSION} VERSION_GREATER 2.9.4)
+ IF(${CMAKE_VERSION} VERSION_GREATER 2.8.3)
+ ADD_CUSTOM_TARGET(genivi_package
+ COMMAND ${CMAKE_COMMAND} ${CMAKE_BINARY_DIR} -DUSE_BUILD_LIBS=ON
+ COMMAND make package
+ COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${all_DEPENDENCIES}\"
+ )
+ ELSE(${CMAKE_VERSION} VERSION_GREATER 2.8.3)
+ ADD_CUSTOM_TARGET(genivi_package
+ COMMAND ${CMAKE_COMMAND} ${CMAKE_BINARY_DIR} -DUSE_BUILD_LIBS=ON
+ COMMAND make package
+ COMMAND mkdir -p ../${CPACK_OUTPUT_FILE_PREFIX}
+ COMMAND mv ${CMAKE_CURRENT_BINARY_DIR}/${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux.deb ${CPACK_OUTPUT_FILE_PREFIX}
+ COMMAND ${CMAKE_CURRENT_BINARY_DIR}/add_package_dependencies.sh ${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Linux.deb ${CPACK_OUTPUT_FILE_PREFIX} \"${all_DEPENDENCIES}\"
+ )
+ ENDIF(${CMAKE_VERSION} VERSION_GREATER 2.8.3)
+ENDIF (${CMAKE_VERSION} VERSION_GREATER 2.9.4)
INCLUDE(CPack)
diff --git a/PluginCommandInterfaceDbus/src/DBusMessageHandler.cpp b/PluginCommandInterfaceDbus/src/DBusMessageHandler.cpp
index 856dbd0..adc157f 100644
--- a/PluginCommandInterfaceDbus/src/DBusMessageHandler.cpp
+++ b/PluginCommandInterfaceDbus/src/DBusMessageHandler.cpp
@@ -171,7 +171,11 @@ dbus_uint16_t DBusMessageHandler::getUInt()
{
dbus_uint16_t param;
+#ifdef GLIB_DBUS_TYPES_TOLERANT
+ if (DBUS_TYPE_UINT16 != dbus_message_iter_get_arg_type(&mDBusMessageIter) && DBUS_TYPE_UINT32 != dbus_message_iter_get_arg_type(&mDBusMessageIter))
+#else
if (DBUS_TYPE_UINT16 != dbus_message_iter_get_arg_type(&mDBusMessageIter))
+#endif
{
DLT_LOG(DLT_CONTEXT,DLT_LOG_ERROR, DLT_STRING("DBusMessageHandler::getUInt DBUS handler argument is no uint16_t!"));
mErrorName=std::string(DBUS_ERROR_INVALID_ARGS);
@@ -189,7 +193,11 @@ dbus_int16_t DBusMessageHandler::getInt()
{
dbus_int16_t param;
+#ifdef GLIB_DBUS_TYPES_TOLERANT
+ if (DBUS_TYPE_INT16 != dbus_message_iter_get_arg_type(&mDBusMessageIter) && DBUS_TYPE_INT32 != dbus_message_iter_get_arg_type(&mDBusMessageIter))
+#else
if (DBUS_TYPE_INT16 != dbus_message_iter_get_arg_type(&mDBusMessageIter))
+#endif
{
DLT_LOG(DLT_CONTEXT,DLT_LOG_ERROR, DLT_STRING("DBusMessageHandler::getInt DBUS handler argument is no int16_t!"));
mErrorName=std::string(DBUS_ERROR_INVALID_ARGS);
diff --git a/cmake/config.cmake b/cmake/config.cmake
index a0856db..c753c32 100644
--- a/cmake/config.cmake
+++ b/cmake/config.cmake
@@ -8,6 +8,7 @@
#cmakedefine WITH_SIMPLEDBUS_LOOP
#cmakedefine WITH_PPOLL
#cmakedefine WITH_TELNET
+#cmakedefine GLIB_DBUS_TYPES_TOLERANT
#cmakedefine DEFAULT_PLUGIN_COMMAND_DIR "@DEFAULT_PLUGIN_COMMAND_DIR@"
#cmakedefine DEFAULT_PLUGIN_ROUTING_DIR "@DEFAULT_PLUGIN_ROUTING_DIR@"
diff --git a/includes/config.h b/includes/config.h
index 193da1c..db5b56d 100644
--- a/includes/config.h
+++ b/includes/config.h
@@ -1,17 +1,18 @@
#ifndef _CONFIG_H
#define _CONFIG_H
-#define DAEMONVERSION "ver-0.0.1-8-g126870e"
+#define DAEMONVERSION "ver-0.0.1-11-g64ba8be"
#define WITH_DBUS_WRAPPER
#define WITH_SOCKETHANDLER_LOOP
/* #undef WITH_SIMPLEDBUS_LOOP */
#define WITH_PPOLL
/* #undef WITH_TELNET */
+/* #undef GLIB_DBUS_TYPES_TOLERANT */
-#define DEFAULT_PLUGIN_COMMAND_DIR "/usr/local/lib/audioManager/command"
-#define DEFAULT_PLUGIN_ROUTING_DIR "/usr/local/lib/audioManager/routing"
-#define CONTROLLER_PLUGIN "/usr/local/lib/audioManager/control/libPluginControlInterface.so"
+#define DEFAULT_PLUGIN_COMMAND_DIR "/home/christian/workspace/AudioManager/bin/plugins/command"
+#define DEFAULT_PLUGIN_ROUTING_DIR "/home/christian/workspace/AudioManager/bin/plugins/routing"
+#define CONTROLLER_PLUGIN "/home/christian/workspace/AudioManager/bin/plugins/control/libPluginControlInterface.so"
#define DEFAULT_TELNETPORT 6060
#define MAX_TELNETCONNECTIONS 3
@@ -19,6 +20,6 @@
#define DBUS_SERVICE_PREFIX "org.genivi.audiomanager"
#define DBUS_SERVICE_OBJECT_PATH "/org/genivi/audiomanager"
-#define INTROSPECTION_COMMAND_XML_FILE "/home/christian/workspace/gitserver/includes/dbus/CommandInterface.xml"
+#define INTROSPECTION_COMMAND_XML_FILE "/home/christian/workspace/AudioManager/includes/dbus/CommandInterface.xml"
#endif /* _CONFIG_H */