DBus Daemon for Windows CE/Windows Mobile 6.5 ============================================= Bugs in upstream for any window version: * MoveFileExA < 0 result check bug * double dbus_free somewhere I forgot where (check in -ugly) * alignment issue * CreateProcess process information handle leak * _dbus_getsid NULL vs INVALID_HANDLE_VALUE * win_account_to_sid Customisation ============= 1) At installation, the following registry value should be set to the installation directory of the dbus installation (the directory containing the bin, etc, share folders): HKLM\Software\freedesktop\DBus\Install Directory 2) Instead of environment variable DBUS_VERBOSE, use HKLM\Software\freedesktop\DBus\Verbose 2) The keyring directory is MYDOCUMENTS\dbus-keyrings, not HOMEPATH\.dbus-keyrings. Compilation =========== ./configure --host=arm-mingw32ce CPPFLAGS=-I/path/to/expat/include LDFLAGS=-L/path/to/expat/lib A recent version of libtool is required, with this change: 2010-02-28 Pierre Ossman <ossman@ossman.lkpg.cendio.se> (tiny change) Ralf Wildenhues <Ralf.Wildenhues@gmx.de> Fix deplibs check fallback for 64-bit Windows and Windows CE. * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats 'pe-arm-wince' and 'pe-x86-64'. Add note about consistency with ... * libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective pattern here; sync pattern from the former. * tests/deplibs-mingw.at (deplibs without file command): New file, new test. * Makefile.am (TESTSUITE_AT): Update. * NEWS: Update. MB vs WCHAR =========== Windows CE only supports the Unicode interface, while DBus Daemon uses the Multi-Byte interface on Windows by default. The glue code does not support multibyte in all cases. In particular, the _mbsrchr function is not correctly implemented. It could be correctly implemented, or dbus daemon could use the wchar interface more consistently on all Windows targets. For now, the Windows CE port will only work for filesystems without some weird characters in file names. Is this a serious limitation? Known Issues ============ Autolaunch is broken so far. Environment variables are faked. Some are punted to the registry, but in any case they can not be used reliably for IPC. The test suite is not ported yet. dbus-pipe.c: * Uses libc file descriptors. Needed for --print-address and --print-pid which probably don't work yet. dbus-sysdeps-win.c: * Backtraces have been disabled. * _dbus_fd_set_close_on_exec Not supported, maybe we should disable the warning. * SearchPathA: Uses HKLM\\Software\\freedesktop\\DBus\\Install Directory to locate binaries.