* Fixed a stupid error in util.h

* Added a --system command line option to dbusxx-introspect (to use the system bus)
* Added a simple client-side example using HAL to demonstrate how to receive signals



git-svn-id: http://dev.openwengo.org/svn/openwengo/wengophone-ng/branches/wengophone-dbus-api/libs/dbus@8519 30a43799-04e7-0310-8b2b-ea0d24f86d0e
This commit is contained in:
pdurante 2006-11-23 12:17:44 +00:00
parent a9e3429b9e
commit cb5ba80633
19 changed files with 885 additions and 374 deletions

View file

@ -20252,7 +20252,7 @@ echo "${ECHO_T}yes" >&6; }
# Save processed files
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile doc/html/Makefile examples/Makefile examples/properties/Makefile examples/echo/Makefile dbus-c++-0.3.pc"
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile examples/Makefile examples/properties/Makefile examples/echo/Makefile examples/hal/Makefile examples/tcp/Makefile dbus-c++-0.3.pc"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -20839,10 +20839,11 @@ do
"data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"doc/Doxyfile") CONFIG_FILES="$CONFIG_FILES doc/Doxyfile" ;;
"doc/html/Makefile") CONFIG_FILES="$CONFIG_FILES doc/html/Makefile" ;;
"examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
"examples/properties/Makefile") CONFIG_FILES="$CONFIG_FILES examples/properties/Makefile" ;;
"examples/echo/Makefile") CONFIG_FILES="$CONFIG_FILES examples/echo/Makefile" ;;
"examples/hal/Makefile") CONFIG_FILES="$CONFIG_FILES examples/hal/Makefile" ;;
"examples/tcp/Makefile") CONFIG_FILES="$CONFIG_FILES examples/tcp/Makefile" ;;
"dbus-c++-0.3.pc") CONFIG_FILES="$CONFIG_FILES dbus-c++-0.3.pc" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5

View file

@ -20240,7 +20240,7 @@ echo "${ECHO_T}yes" >&6; }
# Save processed files
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile doc/html/Makefile examples/Makefile examples/properties/Makefile examples/echo/Makefile dbus-c++-0.3.pc"
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile examples/Makefile examples/properties/Makefile examples/echo/Makefile examples/hal/Makefile examples/tcp/Makefile dbus-c++-0.3.pc"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -20827,10 +20827,11 @@ do
"data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"doc/Doxyfile") CONFIG_FILES="$CONFIG_FILES doc/Doxyfile" ;;
"doc/html/Makefile") CONFIG_FILES="$CONFIG_FILES doc/html/Makefile" ;;
"examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
"examples/properties/Makefile") CONFIG_FILES="$CONFIG_FILES examples/properties/Makefile" ;;
"examples/echo/Makefile") CONFIG_FILES="$CONFIG_FILES examples/echo/Makefile" ;;
"examples/hal/Makefile") CONFIG_FILES="$CONFIG_FILES examples/hal/Makefile" ;;
"examples/tcp/Makefile") CONFIG_FILES="$CONFIG_FILES examples/tcp/Makefile" ;;
"dbus-c++-0.3.pc") CONFIG_FILES="$CONFIG_FILES dbus-c++-0.3.pc" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5

View file

@ -35,22 +35,22 @@
{
'AM_ENABLE_STATIC' => 1,
'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_C_VOLATILE' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_TYPE_OFF_T' => 1,
'_LT_AC_SHELL_INIT' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_REPLACE_FNMATCH' => 1,
'AC_DEFUN' => 1,
'_LT_AC_LANG_CXX_CONFIG' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_STAT' => 1,
'_LT_AC_LANG_CXX_CONFIG' => 1,
'AM_PROG_MKDIR_P' => 1,
'AC_FUNC_STAT' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_LSTAT' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_FUNC_STRTOD' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_STRUCT_TM' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_FUNC_STRTOD' => 1,
'AM_MISSING_PROG' => 1,
'AC_FUNC_STRNLEN' => 1,
'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
@ -65,30 +65,30 @@
'AM_SANITY_CHECK' => 1,
'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
'_LT_AC_CHECK_DLFCN' => 1,
'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
'_LT_AC_CHECK_DLFCN' => 1,
'_AM_PROG_TAR' => 1,
'AC_LIBTOOL_GCJ' => 1,
'AC_PROG_GCC_TRADITIONAL' => 1,
'AC_LIBSOURCE' => 1,
'AC_STRUCT_ST_BLOCKS' => 1,
'AM_PROG_FC_C_O' => 1,
'AC_LIBTOOL_CONFIG' => 1,
'_LT_AC_LANG_F77' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'AC_LIBTOOL_CONFIG' => 1,
'AC_PROG_MAKE_SET' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'sinclude' => 1,
'AM_DISABLE_SHARED' => 1,
'_LT_AC_LANG_CXX' => 1,
'AM_PROG_LIBTOOL' => 1,
'AM_PROG_LD' => 1,
'_LT_AC_LANG_CXX' => 1,
'_LT_AC_FILE_LTDLL_C' => 1,
'AM_PROG_LD' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_FUNC_FORK' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_FORK' => 1,
'AU_DEFUN' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_PROG_NM' => 1,
'AC_LIBTOOL_DLOPEN' => 1,
'AC_PROG_LD' => 1,
@ -96,64 +96,64 @@
'AC_ENABLE_FAST_INSTALL' => 1,
'AC_INIT' => 1,
'AC_STRUCT_TIMEZONE' => 1,
'AC_SUBST' => 1,
'AC_FUNC_ALLOCA' => 1,
'AC_SUBST' => 1,
'_AM_SET_OPTION' => 1,
'AC_CANONICAL_HOST' => 1,
'_LT_LINKER_BOILERPLATE' => 1,
'AC_PROG_RANLIB' => 1,
'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
'AC_LIBTOOL_PROG_CC_C_O' => 1,
'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
'AC_PROG_RANLIB' => 1,
'AC_FUNC_SETPGRP' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_FUNC_MMAP' => 1,
'AC_TYPE_SIZE_T' => 1,
'AC_CHECK_TYPES' => 1,
'LT_SUPPORTED_TAG' => 1,
'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
'LT_SUPPORTED_TAG' => 1,
'AC_CHECK_MEMBERS' => 1,
'AC_DEFUN_ONCE' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'_LT_AC_LANG_GCJ' => 1,
'AC_HEADER_STAT' => 1,
'AC_FUNC_STRFTIME' => 1,
'AC_HEADER_STAT' => 1,
'AC_C_INLINE' => 1,
'AC_LIBTOOL_RC' => 1,
'AC_DISABLE_FAST_INSTALL' => 1,
'_LT_AC_PROG_ECHO_BACKSLASH' => 1,
'AC_DISABLE_FAST_INSTALL' => 1,
'AC_CONFIG_FILES' => 1,
'include' => 1,
'_LT_AC_SYS_LIBPATH_AIX' => 1,
'_LT_AC_TRY_DLOPEN_SELF' => 1,
'_LT_AC_SYS_LIBPATH_AIX' => 1,
'include' => 1,
'LT_AC_PROG_SED' => 1,
'AM_ENABLE_SHARED' => 1,
'AM_GNU_GETTEXT' => 1,
'_LT_AC_LANG_GCJ_CONFIG' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_CHECK_LIB' => 1,
'AC_ENABLE_SHARED' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_GETGROUPS' => 1,
'AC_FC_FREEFORM' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AC_FUNC_FSEEKO' => 1,
'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
'AC_FC_FREEFORM' => 1,
'AC_ENABLE_STATIC' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
'AC_FUNC_FSEEKO' => 1,
'_LT_AC_TAGVAR' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
'AC_FUNC_MKTIME' => 1,
'AM_CONDITIONAL' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_PROG_LN_S' => 1,
'AC_FUNC_MEMCMP' => 1,
'm4_include' => 1,
'AC_PROG_LN_S' => 1,
'AM_PROG_INSTALL_SH' => 1,
'AC_HEADER_DIRENT' => 1,
'm4_include' => 1,
'AC_PROG_EGREP' => 1,
'_AC_AM_CONFIG_HEADER_HOOK' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_PATH_MAGIC' => 1,
'_AC_AM_CONFIG_HEADER_HOOK' => 1,
'AM_MAKE_INCLUDE' => 1,
'AM_PROG_F77_C_O' => 1,
'_LT_AC_TAGCONFIG' => 1,
@ -163,16 +163,16 @@
'AC_LIBTOOL_COMPILER_OPTION' => 1,
'AC_DISABLE_SHARED' => 1,
'_LT_COMPILER_BOILERPLATE' => 1,
'AC_LIBTOOL_SETUP' => 1,
'AC_LIBTOOL_WIN32_DLL' => 1,
'AC_LIBTOOL_SETUP' => 1,
'AC_PROG_LD_RELOAD_FLAG' => 1,
'AC_HEADER_TIME' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AM_MISSING_HAS_RUN' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_TYPE_MODE_T' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'm4_sinclude' => 1,
'AC_LIBTOOL_DLOPEN_SELF' => 1,
'm4_sinclude' => 1,
'AC_PATH_X' => 1,
'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
'_PKG_SHORT_ERRORS_SUPPORTED' => 1,
@ -180,30 +180,30 @@
'AM_PROG_CXX_C_O' => 1,
'AC_LIBTOOL_LINKER_OPTION' => 1,
'PKG_CHECK_EXISTS' => 1,
'LT_AC_PROG_RC' => 1,
'AC_LIBTOOL_CXX' => 1,
'LT_AC_PROG_RC' => 1,
'LT_INIT' => 1,
'LT_AC_PROG_GCJ' => 1,
'AC_FUNC_ERROR_AT_LINE' => 1,
'AM_DEP_TRACK' => 1,
'_LT_AC_PROG_CXXCPP' => 1,
'AM_DISABLE_STATIC' => 1,
'AC_FUNC_MBRTOWC' => 1,
'_AC_PROG_LIBTOOL' => 1,
'_LT_AC_PROG_CXXCPP' => 1,
'AM_DEP_TRACK' => 1,
'AM_CONFIG_HEADER' => 1,
'AC_CANONICAL_BUILD' => 1,
'_AC_PROG_LIBTOOL' => 1,
'AC_FUNC_MBRTOWC' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_TYPE_UID_T' => 1,
'AC_CANONICAL_BUILD' => 1,
'_AM_IF_OPTION' => 1,
'AC_TYPE_UID_T' => 1,
'AC_PATH_TOOL_PREFIX' => 1,
'AC_LIBTOOL_F77' => 1,
'm4_pattern_allow' => 1,
'AC_LIBTOOL_F77' => 1,
'AM_SET_LEADING_DOT' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'_AM_DEPENDENCIES' => 1,
'AC_LIBTOOL_LANG_C_CONFIG' => 1,
'AC_PROG_CC' => 1,
'_LT_AC_SYS_COMPILER' => 1,
'AC_PROG_CC' => 1,
'AM_PROG_NM' => 1,
'PKG_CHECK_MODULES' => 1,
'AC_FUNC_STRCOLL' => 1,
@ -211,44 +211,44 @@
'AC_SUBST_TRACE' => 1,
'AC_LIBLTDL_CONVENIENCE' => 1,
'AC_DEPLIBS_CHECK_METHOD' => 1,
'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
'AC_LIBLTDL_INSTALLABLE' => 1,
'AC_FUNC_CHOWN' => 1,
'AC_LIBLTDL_INSTALLABLE' => 1,
'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
'AC_FC_SRCEXT' => 1,
'AC_FUNC_GETPGRP' => 1,
'AC_FC_SRCEXT' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_FUNC_REALLOC' => 1,
'AC_DISABLE_STATIC' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'AM_MAINTAINER_MODE' => 1,
'_LT_AC_LOCK' => 1,
'_LT_AC_LANG_RC_CONFIG' => 1,
'AC_PROG_CPP' => 1,
'AC_TYPE_PID_T' => 1,
'AC_PROG_LEX' => 1,
'AC_C_CONST' => 1,
'AC_PROG_LEX' => 1,
'AC_TYPE_PID_T' => 1,
'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_PROG_INSTALL' => 1,
'AM_AUX_DIR_EXPAND' => 1,
'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
'AC_PROG_INSTALL' => 1,
'_LT_AC_LANG_F77_CONFIG' => 1,
'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
'_AM_SET_OPTIONS' => 1,
'AM_RUN_LOG' => 1,
'_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
'AM_RUN_LOG' => 1,
'AC_LIBTOOL_PICMODE' => 1,
'AH_OUTPUT' => 1,
'AC_CHECK_LIBM' => 1,
'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
'_AM_MANGLE_OPTION' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
'AC_CONFIG_HEADERS' => 1,
'AM_SET_DEPDIR' => 1,
'_LT_CC_BASENAME' => 1,
'PKG_PROG_PKG_CONFIG' => 1,
'_LT_CC_BASENAME' => 1,
'AC_CHECK_FUNCS' => 1
}
], 'Autom4te::Request' ),
@ -264,26 +264,26 @@
'configure.ac'
],
{
'AM_PROG_F77_C_O' => 1,
'_LT_AC_TAGCONFIG' => 1,
'AM_PROG_F77_C_O' => 1,
'm4_pattern_forbid' => 1,
'AC_CANONICAL_TARGET' => 1,
'AC_CONFIG_LIBOBJ_DIR' => 1,
'AC_C_VOLATILE' => 1,
'AC_TYPE_OFF_T' => 1,
'AC_C_VOLATILE' => 1,
'AC_FUNC_CLOSEDIR_VOID' => 1,
'AC_REPLACE_FNMATCH' => 1,
'AC_PROG_LIBTOOL' => 1,
'AC_FUNC_STAT' => 1,
'AC_FUNC_WAIT3' => 1,
'AC_HEADER_TIME' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_WAIT3' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_STRUCT_TM' => 1,
'AC_FUNC_LSTAT' => 1,
'AC_TYPE_MODE_T' => 1,
'AC_CHECK_HEADERS' => 1,
'AC_FUNC_GETMNTENT' => 1,
'AC_FUNC_STRTOD' => 1,
'AC_CHECK_HEADERS' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'AC_FUNC_STRNLEN' => 1,
'm4_sinclude' => 1,
@ -301,22 +301,22 @@
'AC_LIBSOURCE' => 1,
'AC_FUNC_MBRTOWC' => 1,
'AC_STRUCT_ST_BLOCKS' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_CANONICAL_BUILD' => 1,
'AM_PROG_FC_C_O' => 1,
'AC_CANONICAL_BUILD' => 1,
'AC_TYPE_SIGNAL' => 1,
'AC_TYPE_UID_T' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'AC_PROG_MAKE_SET' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'm4_pattern_allow' => 1,
'AC_PROG_MAKE_SET' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'sinclude' => 1,
'm4_pattern_allow' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_FUNC_STRERROR_R' => 1,
'AC_PROG_CC' => 1,
'AC_FUNC_FORK' => 1,
'AC_DECL_SYS_SIGLIST' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_FUNC_FORK' => 1,
'AC_FUNC_VPRINTF' => 1,
'AC_FUNC_STRCOLL' => 1,
'AC_PROG_YACC' => 1,
'AC_SUBST_TRACE' => 1,
'AC_STRUCT_TIMEZONE' => 1,
@ -328,49 +328,49 @@
'AC_CANONICAL_HOST' => 1,
'AC_FUNC_GETPGRP' => 1,
'AC_PROG_RANLIB' => 1,
'AC_FUNC_SETPGRP' => 1,
'AM_INIT_AUTOMAKE' => 1,
'AC_FUNC_SETPGRP' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_FUNC_MMAP' => 1,
'AC_FUNC_REALLOC' => 1,
'AC_TYPE_SIZE_T' => 1,
'AC_CHECK_TYPES' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_CHECK_TYPES' => 1,
'LT_SUPPORTED_TAG' => 1,
'AC_CHECK_MEMBERS' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_FUNC_UTIME_NULL' => 1,
'AC_FUNC_SELECT_ARGTYPES' => 1,
'AC_HEADER_STAT' => 1,
'AC_FUNC_STRFTIME' => 1,
'AC_PROG_CPP' => 1,
'AC_HEADER_STAT' => 1,
'AC_C_INLINE' => 1,
'AM_ENABLE_MULTILIB' => 1,
'AC_C_CONST' => 1,
'AC_PROG_LEX' => 1,
'AC_PROG_CPP' => 1,
'AC_TYPE_PID_T' => 1,
'AC_PROG_LEX' => 1,
'AC_C_CONST' => 1,
'AM_ENABLE_MULTILIB' => 1,
'AC_CONFIG_FILES' => 1,
'include' => 1,
'AC_FUNC_SETVBUF_REVERSED' => 1,
'AC_PROG_INSTALL' => 1,
'AM_GNU_GETTEXT' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_CHECK_LIB' => 1,
'AC_FUNC_OBSTACK' => 1,
'AC_FUNC_MALLOC' => 1,
'AC_FUNC_GETGROUPS' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AC_FC_FREEFORM' => 1,
'AC_FUNC_GETLOADAVG' => 1,
'AH_OUTPUT' => 1,
'AC_FUNC_FSEEKO' => 1,
'AM_PROG_CC_C_O' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AM_CONDITIONAL' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_FUNC_MKTIME' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_HEADER_SYS_WAIT' => 1,
'AC_FUNC_MEMCMP' => 1,
'AC_PROG_LN_S' => 1,
'AC_FUNC_MEMCMP' => 1,
'm4_include' => 1,
'AC_HEADER_DIRENT' => 1,
'AC_CHECK_FUNCS' => 1

View file

@ -9485,34 +9485,35 @@ m4trace:configure.ac:88: -1- m4_pattern_allow([^DBUS_DOXYGEN_DOCS_ENABLED_TRUE$]
m4trace:configure.ac:88: -1- AC_SUBST([DBUS_DOXYGEN_DOCS_ENABLED_FALSE])
m4trace:configure.ac:88: -1- AC_SUBST_TRACE([DBUS_DOXYGEN_DOCS_ENABLED_FALSE])
m4trace:configure.ac:88: -1- m4_pattern_allow([^DBUS_DOXYGEN_DOCS_ENABLED_FALSE$])
m4trace:configure.ac:105: -1- AC_CONFIG_FILES([Makefile
m4trace:configure.ac:106: -1- AC_CONFIG_FILES([Makefile
src/Makefile
tools/Makefile
data/Makefile
doc/Makefile
doc/Doxyfile
doc/html/Makefile
examples/Makefile
examples/properties/Makefile
examples/echo/Makefile
examples/hal/Makefile
examples/tcp/Makefile
dbus-c++-0.3.pc
])
m4trace:configure.ac:105: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
m4trace:configure.ac:106: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
You should run autoupdate.], [])
m4trace:configure.ac:105: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:105: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:105: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:105: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.ac:105: -1- _AC_AM_CONFIG_HEADER_HOOK([$ac_file])
m4trace:configure.ac:105: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS
m4trace:configure.ac:106: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:106: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:106: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.ac:106: -1- _AC_AM_CONFIG_HEADER_HOOK([$ac_file])
m4trace:configure.ac:106: -1- _AM_OUTPUT_DEPENDENCY_COMMANDS

View file

@ -640,32 +640,33 @@ m4trace:configure.ac:88: -1- m4_pattern_allow([^DBUS_DOXYGEN_DOCS_ENABLED_TRUE$]
m4trace:configure.ac:88: -1- AC_SUBST([DBUS_DOXYGEN_DOCS_ENABLED_FALSE])
m4trace:configure.ac:88: -1- AC_SUBST_TRACE([DBUS_DOXYGEN_DOCS_ENABLED_FALSE])
m4trace:configure.ac:88: -1- m4_pattern_allow([^DBUS_DOXYGEN_DOCS_ENABLED_FALSE$])
m4trace:configure.ac:105: -1- AC_CONFIG_FILES([Makefile
m4trace:configure.ac:106: -1- AC_CONFIG_FILES([Makefile
src/Makefile
tools/Makefile
data/Makefile
doc/Makefile
doc/Doxyfile
doc/html/Makefile
examples/Makefile
examples/properties/Makefile
examples/echo/Makefile
examples/hal/Makefile
examples/tcp/Makefile
dbus-c++-0.3.pc
])
m4trace:configure.ac:105: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
m4trace:configure.ac:106: -1- _m4_warn([obsolete], [AC_OUTPUT should be used without arguments.
You should run autoupdate.], [])
m4trace:configure.ac:105: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:105: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:105: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:105: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:105: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.ac:106: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:106: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:106: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:106: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:106: -1- AC_SUBST_TRACE([INSTALL])

5
configure vendored
View file

@ -20240,7 +20240,7 @@ echo "${ECHO_T}yes" >&6; }
# Save processed files
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile doc/html/Makefile examples/Makefile examples/properties/Makefile examples/echo/Makefile dbus-c++-0.3.pc"
ac_config_files="$ac_config_files Makefile src/Makefile tools/Makefile data/Makefile doc/Makefile doc/Doxyfile examples/Makefile examples/properties/Makefile examples/echo/Makefile examples/hal/Makefile examples/tcp/Makefile dbus-c++-0.3.pc"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -20827,10 +20827,11 @@ do
"data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;;
"doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"doc/Doxyfile") CONFIG_FILES="$CONFIG_FILES doc/Doxyfile" ;;
"doc/html/Makefile") CONFIG_FILES="$CONFIG_FILES doc/html/Makefile" ;;
"examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
"examples/properties/Makefile") CONFIG_FILES="$CONFIG_FILES examples/properties/Makefile" ;;
"examples/echo/Makefile") CONFIG_FILES="$CONFIG_FILES examples/echo/Makefile" ;;
"examples/hal/Makefile") CONFIG_FILES="$CONFIG_FILES examples/hal/Makefile" ;;
"examples/tcp/Makefile") CONFIG_FILES="$CONFIG_FILES examples/tcp/Makefile" ;;
"dbus-c++-0.3.pc") CONFIG_FILES="$CONFIG_FILES dbus-c++-0.3.pc" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5

View file

@ -97,9 +97,10 @@ AC_OUTPUT(
data/Makefile
doc/Makefile
doc/Doxyfile
doc/html/Makefile
examples/Makefile
examples/properties/Makefile
examples/echo/Makefile
examples/hal/Makefile
examples/tcp/Makefile
dbus-c++-0.3.pc
)

View file

@ -1,7 +1,5 @@
if DBUS_DOXYGEN_DOCS_ENABLED
SUBDIRS = html
EXTRA_DIST = Doxyfile.in
noinst_PROGRAMS = index.html

View file

@ -63,15 +63,6 @@ LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(index_html_SOURCES)
DIST_SOURCES = $(am__index_html_SOURCES_DIST)
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-exec-recursive install-info-recursive \
install-recursive installcheck-recursive installdirs-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \
uninstall-recursive
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = html
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
@ -183,10 +174,9 @@ sysconfdir = @sysconfdir@
target_alias = @target_alias@
xml_CFLAGS = @xml_CFLAGS@
xml_LIBS = @xml_LIBS@
@DBUS_DOXYGEN_DOCS_ENABLED_TRUE@SUBDIRS = html
@DBUS_DOXYGEN_DOCS_ENABLED_TRUE@EXTRA_DIST = Doxyfile.in
@DBUS_DOXYGEN_DOCS_ENABLED_TRUE@index_html_SOURCES = Doxyfile
all: all-recursive
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@ -246,138 +236,12 @@ clean-libtool:
distclean-libtool:
-rm -f libtool
uninstall-info-am:
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS:
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
CTAGS:
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
@ -406,35 +270,19 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
check: check-am
all-am: Makefile $(PROGRAMS)
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
@ -450,23 +298,23 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean: clean-am
clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
mostlyclean-am
distclean: distclean-recursive
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-tags
distclean-libtool
dvi: dvi-recursive
dvi: dvi-am
dvi-am:
html: html-recursive
html: html-am
info: info-recursive
info: info-am
info-am:
@ -474,46 +322,41 @@ install-data-am:
install-exec-am:
install-info: install-info-recursive
install-info: install-info-am
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool
pdf: pdf-recursive
pdf: pdf-am
pdf-am:
ps: ps-recursive
ps: ps-am
ps-am:
uninstall-am: uninstall-info-am
uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
clean clean-generic clean-libtool clean-noinstPROGRAMS \
clean-recursive ctags ctags-recursive distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-recursive distclean-tags distdir dvi dvi-am html \
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
clean-noinstPROGRAMS distclean distclean-compile \
distclean-generic distclean-libtool distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-exec install-exec-am install-info \
install-info-am install-man install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic maintainer-clean-recursive \
mostlyclean mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool mostlyclean-recursive pdf pdf-am ps ps-am \
tags tags-recursive uninstall uninstall-am uninstall-info-am
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
uninstall uninstall-am uninstall-info-am
@DBUS_DOXYGEN_DOCS_ENABLED_TRUE@index.html: Doxyfile

View file

@ -1,2 +1,2 @@
SUBDIRS = properties echo
SUBDIRS = properties echo hal

View file

@ -166,7 +166,7 @@ sysconfdir = @sysconfdir@
target_alias = @target_alias@
xml_CFLAGS = @xml_CFLAGS@
xml_LIBS = @xml_LIBS@
SUBDIRS = properties echo
SUBDIRS = properties echo hal
all: all-recursive
.SUFFIXES:

6
examples/hal/Makefile.am Normal file
View file

@ -0,0 +1,6 @@
INCLUDES = -I$(top_srcdir)/include
noinst_PROGRAMS = hal-listen
hal_listen_SOURCES = hal-listen.h hal-listen.cpp
hal_listen_LDADD = $(top_builddir)/src/libdbus-c++-0.3.la

441
examples/hal/Makefile.in Normal file
View file

@ -0,0 +1,441 @@
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../..
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
noinst_PROGRAMS = hal-listen$(EXEEXT)
subdir = examples/hal
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/include/dbus-c++/config.h
CONFIG_CLEAN_FILES =
PROGRAMS = $(noinst_PROGRAMS)
am_hal_listen_OBJECTS = hal-listen.$(OBJEXT)
hal_listen_OBJECTS = $(am_hal_listen_OBJECTS)
hal_listen_DEPENDENCIES = $(top_builddir)/src/libdbus-c++-0.3.la
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include/dbus-c++
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(AM_LDFLAGS) $(LDFLAGS) -o $@
SOURCES = $(hal_listen_SOURCES)
DIST_SOURCES = $(hal_listen_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DBUS_DOXYGEN_DOCS_ENABLED_FALSE = @DBUS_DOXYGEN_DOCS_ENABLED_FALSE@
DBUS_DOXYGEN_DOCS_ENABLED_TRUE = @DBUS_DOXYGEN_DOCS_ENABLED_TRUE@
DEBUG_FLAGS = @DEBUG_FLAGS@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DOXYGEN = @DOXYGEN@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GREP = @GREP@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
datarootdir = @datarootdir@
dbus_CFLAGS = @dbus_CFLAGS@
dbus_LIBS = @dbus_LIBS@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
xml_CFLAGS = @xml_CFLAGS@
xml_LIBS = @xml_LIBS@
INCLUDES = -I$(top_srcdir)/include
hal_listen_SOURCES = hal-listen.h hal-listen.cpp
hal_listen_LDADD = $(top_builddir)/src/libdbus-c++-0.3.la
all: all-am
.SUFFIXES:
.SUFFIXES: .cpp .lo .o .obj
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu examples/hal/Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu examples/hal/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstPROGRAMS:
@list='$(noinst_PROGRAMS)'; for p in $$list; do \
f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
echo " rm -f $$p $$f"; \
rm -f $$p $$f ; \
done
hal-listen$(EXEEXT): $(hal_listen_OBJECTS) $(hal_listen_DEPENDENCIES)
@rm -f hal-listen$(EXEEXT)
$(CXXLINK) $(hal_listen_LDFLAGS) $(hal_listen_OBJECTS) $(hal_listen_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hal-listen.Po@am__quote@
.cpp.o:
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cpp.obj:
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.cpp.lo:
@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
uninstall-info-am:
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS)
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-libtool distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
info: info-am
info-am:
install-data-am:
install-exec-am:
install-info: install-info-am
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-info-am
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libtool clean-noinstPROGRAMS ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-exec \
install-exec-am install-info install-info-am install-man \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
pdf pdf-am ps ps-am tags uninstall uninstall-am \
uninstall-info-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

125
examples/hal/hal-listen.cpp Normal file
View file

@ -0,0 +1,125 @@
#include "hal-listen.h"
#include <signal.h>
#include <iostream>
HalManagerProxy::HalManagerProxy( DBus::Connection& connection )
: DBus::InterfaceProxy("org.freedesktop.Hal.Manager"),
DBus::ObjectProxy(connection, "/org/freedesktop/Hal/Manager", "org.freedesktop.Hal")
{
connect_signal(HalManagerProxy, DeviceAdded, DeviceAddedCb);
connect_signal(HalManagerProxy, DeviceRemoved, DeviceRemovedCb);
std::vector< DBus::String > devices = GetAllDevices();
std::vector< DBus::String >::iterator it;
for(it = devices.begin(); it != devices.end(); ++it)
{
DBus::Path udi = *it;
std::cout << "found device " << udi << std::endl;
_devices[udi] = new HalDeviceProxy(connection, udi);
}
}
std::vector< DBus::String > HalManagerProxy::GetAllDevices()
{
std::vector< DBus::String > udis;
DBus::CallMessage call;
call.member("GetAllDevices");
DBus::Message reply = invoke_method(call);
DBus::MessageIter it = reply.reader();
it >> udis;
return udis;
}
void HalManagerProxy::DeviceAddedCb( const DBus::SignalMessage& sig )
{
DBus::MessageIter it = sig.reader();
DBus::String devname;
it >> devname;
DBus::Path udi(devname);
_devices[devname] = new HalDeviceProxy(conn(), udi);
std::cout << "added device " << udi << std::endl;
}
void HalManagerProxy::DeviceRemovedCb( const DBus::SignalMessage& sig )
{
DBus::MessageIter it = sig.reader();
DBus::String devname;
it >> devname;
std::cout << "removed device " << devname << std::endl;
_devices.erase(devname);
}
HalDeviceProxy::HalDeviceProxy( DBus::Connection& connection, DBus::Path& udi )
: DBus::InterfaceProxy("org.freedesktop.Hal.Device"),
DBus::ObjectProxy(connection, udi, "org.freedesktop.Hal")
{
connect_signal(HalDeviceProxy, PropertyModified, PropertyModifiedCb);
connect_signal(HalDeviceProxy, Condition, ConditionCb);
}
void HalDeviceProxy::PropertyModifiedCb( const DBus::SignalMessage& sig )
{
typedef DBus::Struct< DBus::String, DBus::Bool, DBus::Bool > HalProperty;
DBus::MessageIter it = sig.reader();
DBus::Int32 number;
it >> number;
DBus::MessageIter arr = it.recurse();
for(int i = 0; i < number; ++i, ++arr)
{
HalProperty hp;
arr >> hp;
std::cout << "modified property " << hp._1 << std::endl;
}
}
void HalDeviceProxy::ConditionCb( const DBus::SignalMessage& sig )
{
DBus::MessageIter it = sig.reader();
DBus::String condition;
it >> condition;
std::cout << "encountered condition " << condition << std::endl;
}
DBus::BusDispatcher dispatcher;
void niam( int sig )
{
dispatcher.leave();
}
int main()
{
signal(SIGTERM, niam);
signal(SIGINT, niam);
DBus::default_dispatcher = &dispatcher;
DBus::Connection conn = DBus::Connection::SystemBus();
HalManagerProxy hal(conn);
dispatcher.enter();
return 0;
}

44
examples/hal/hal-listen.h Normal file
View file

@ -0,0 +1,44 @@
#ifndef __DEMO_HAL_LISTEN_H
#define __DEMO_HAL_LISTEN_H
#include <dbus-c++/dbus.h>
#include <vector>
#include <map>
class HalDeviceProxy;
class HalManagerProxy
: public DBus::InterfaceProxy,
public DBus::ObjectProxy
{
public:
HalManagerProxy( DBus::Connection& connection );
std::vector< DBus::String > GetAllDevices();
private:
void DeviceAddedCb( const DBus::SignalMessage& sig );
void DeviceRemovedCb( const DBus::SignalMessage& sig );
std::map< DBus::String, DBus::RefPtr< HalDeviceProxy > > _devices;
};
class HalDeviceProxy
: public DBus::InterfaceProxy,
public DBus::ObjectProxy
{
public:
HalDeviceProxy( DBus::Connection& connection, DBus::Path& udi );
private:
void PropertyModifiedCb( const DBus::SignalMessage& sig );
void ConditionCb( const DBus::SignalMessage& sig );
};
#endif//__DEMO_HAL_LISTEN_H

View file

@ -238,7 +238,7 @@ public:
bool empty()
{
return _cb.get() != 0;
return _cb.get() == 0;
}
private:

View file

@ -149,10 +149,12 @@ void Connection::Private::dispatch_status_stub( DBusConnection* dc, DBusDispatch
}
}
DBusHandlerResult Connection::Private::message_filter_stub( DBusConnection*, DBusMessage* dmsg, void* data )
DBusHandlerResult Connection::Private::message_filter_stub( DBusConnection* conn, DBusMessage* dmsg, void* data )
{
MessageSlot* slot = static_cast<MessageSlot*>(data);
debug_log("incoming message on connection %p", conn);
Message msg = Message(new Message::Private(dmsg));
return slot && !slot->empty() && slot->call(msg)

View file

@ -27,12 +27,13 @@
#include "introspect.h"
DBus::BusDispatcher dispatcher;
static bool systembus;
static char* path;
static char* service;
void niam( int sig )
{
DBus::Connection conn = DBus::Connection::SessionBus();
DBus::Connection conn = systembus ? DBus::Connection::SystemBus() : DBus::Connection::SessionBus();
IntrospectedObject io(conn, path, service);
@ -49,12 +50,22 @@ int main( int argc, char** argv )
if(argc == 1)
{
std::cerr << std::endl << "Usage: " << argv[0] << " <object_path> [<destination>]" << std::endl << std::endl;
std::cerr << std::endl << "Usage: " << argv[0] << " [--system] <object_path> [<destination>]" << std::endl << std::endl;
}
else
{
path = argv[1];
service = argc > 1 ? argv[2] : 0;
if(strcmp(argv[1], "--system"))
{
systembus = false;
path = argv[1];
service = argc > 1 ? argv[2] : 0;
}
else
{
systembus = true;
path = argv[2];
service = argc > 2 ? argv[3] : 0;
}
DBus::default_dispatcher = &dispatcher;

View file

@ -205,13 +205,13 @@ void generate_proxy( Xml::Document& doc, const char* filename )
std::string filestring = filename;
underscorize(filestring);
std::string cond_comp = "__dbusxx__" + filestring + "__CLIENT_MARSHAL_H";
std::string cond_comp = "__dbusxx__" + filestring + "__PROXY_MARSHAL_H";
file << "#ifndef " << cond_comp << endl;
file << "#define " << cond_comp << endl;
file << dbus_includes;
#if 0
Xml::Node& root = *(doc.root);
Xml::Nodes interfaces = root["interface"];
@ -220,14 +220,42 @@ void generate_proxy( Xml::Document& doc, const char* filename )
Xml::Node& iface = **i;
Xml::Nodes methods = iface["method"];
Xml::Nodes signals = iface["signal"];
Xml::Nodes properties = iface["property"];
Xml::Nodes ms;
ms.insert(ms.end(), methods.begin(), methods.end());
ms.insert(ms.end(), signals.begin(), signals.end());
std::string ifacename = iface.get("name");
std::string ifaceclass = ifacename;
underscorize(ifaceclass);
if(ifacename == "org.freedesktop.DBus.Introspectable"
||ifacename == "org.freedesktop.DBus.Properties")
{
cerr << "skipping interface " << ifacename << endl;
continue;
}
std::istringstream ss(ifacename);
string nspace;
size_t nspaces = 0;
while(ss.str().find('.', ss.tellg()) != string::npos)
{
getline(ss, nspace, '.');
file << "namespace " << nspace << " {" << endl;
++nspaces;
}
file << endl;
std::string ifaceclass;
getline(ss, ifaceclass);
cerr << "generating code for interface " << ifacename << "..." << endl;
file << "class " << ifaceclass << " : public ::DBus::InterfaceProxy" << endl
file << "class " << ifaceclass << endl
<< " : public ::DBus::InterfaceProxy" << endl
<< "{" << endl
<< "public:" << endl
<< endl
@ -241,63 +269,70 @@ void generate_proxy( Xml::Document& doc, const char* filename )
std::string marshname = "_" + signal.get("name") + "_stub";
file << tab << tab << "connect_signal(" << ifaceclass << ", " << marshname << ");" << endl;
file << tab << tab << "connect_signal("
<< ifaceclass << ", " << signal.get("name") << ", " << stub_name(signal.get("name"))
<< ");" << endl;
}
file << tab << "}" << endl
<< endl;
for(Xml::Nodes::iterator j = methods.begin(); j != methods.end(); ++j)
{
Xml::Node& method = **j;
std::string methodname = method.get("name");
std::string marshname = "_" + methodname + "_stub";
file << "public:" << endl
<< endl
<< tab << "/* methods exported by this interface," << endl
<< tab << " * this functions will invoke the corresponding methods on the remote objects" << endl
<< tab << " */" << endl;
for(Xml::Nodes::iterator mi = methods.begin(); mi != methods.end(); ++mi)
{
Xml::Node& method = **mi;
Xml::Nodes args = method["arg"];
Xml::Nodes args_in = args.select("direction","in");
Xml::Nodes args_out = args.select("direction","out");
file << endl;
if(args_out.size() == 1)
if(args_out.size() == 0 || args_out.size() > 1 )
{
std::string ret_type = args_out.front()->get("type");
std::string ret_sig;
if(is_atomic_type(ret_type))
{
ret_sig = atomic_type_to_string(ret_type[0]);
}
else
{
}
file << tab << ret_sig << " " << methodname << "( ";
for(Xml::Nodes::iterator ai = args_in.begin(); ai != args_in.end(); ++ai)
{
Xml::Node& a = **ai;
file << "const ";
if(is_atomic_type(a.get("type")))
{
file << atomic_type_to_string(a.get("type")[0]);
}
else
{
}
file << "& " << a.get("name") << ( ai+1 != args_in.end() ? ", " : " " );
}
file << ")" << endl;
file << tab << "void ";
}
else
else if(args_out.size() == 1)
{
file << tab << "void " << methodname << "( args )" << endl;
file << tab << signature_to_type(args_out.front()->get("type")) << " ";
}
file << method.get("name") << "( ";
unsigned int i = 0;
for(Xml::Nodes::iterator ai = args_in.begin(); ai != args_in.end(); ++ai, ++i)
{
Xml::Node& arg = **ai;
file << "const " << signature_to_type(arg.get("type")) << "& ";
std::string arg_name = arg.get("name");
if(arg_name.length())
file << arg_name;
if((i+1 != args_in.size() || args_out.size() > 1))
file << ", ";
}
if(args_out.size() > 1)
{
unsigned int i = 0;
for(Xml::Nodes::iterator ao = args_out.begin(); ao != args_out.end(); ++ao, ++i)
{
Xml::Node& arg = **ao;
file << signature_to_type(arg.get("type")) << "&";
std::string arg_name = arg.get("name");
if(arg_name.length())
file << " " << arg_name;
if(i+1 != args_out.size())
file << ", ";
}
}
file << " )" << endl;
file << tab << "{" << endl
<< tab << tab << "::DBus::CallMessage call;" << endl
<< tab << tab << "::DBus::MessageIter wi = call.writer();" << endl
@ -308,7 +343,7 @@ void generate_proxy( Xml::Document& doc, const char* filename )
Xml::Node& arg = **ai;
}
file << tab << tab << "call.member(\"" << methodname << "\");" << endl
file << tab << tab << "call.member(\"" << method.get("name") << "\");" << endl
<< tab << tab << "::DBus::Message ret = invoke_method(call);" << endl
<< tab << tab << "::DBus::MessageIter ri = ret.reader();" << endl
<< endl;
@ -321,7 +356,7 @@ void generate_proxy( Xml::Document& doc, const char* filename )
file << "};" << endl
<< endl;
}
#endif
file << "#endif//" << cond_comp << endl;
file.close();