Win32 Port

Ralf Habacker ralf.habacker at
Tue May 9 03:19:10 PDT 2006

Hi everyone,

I have uploaded an updated dbus snapshot for windows using mingw on

from the news:

- uses last patches from Tor Lillequist 
- uses cmake build system for windows
- extended _dbus_verbose - it prints now the function name (gcc limited) 
- changes behavior of environment variable DBUS_VERBOSE - message are only printed if DBUS_VERBOSE=1, 
  makes it able to disable message printing using set DBUS_VERBOSE=0
- more testapplication are running (dbus-test,bus-test)
- qt bindings are now build 
- added non gui related qt examples 
- fix returning user homedir in case domain controller isn't available
- seg fault fix accessing user_info in dbus/dbus-sysdeps.c:fill_win32_user_info_homedir()
- added new win32 related function dbus/dbus-sysdeps.c:_dbus_lm_strerror() for returning lan manager error messages
- added usage to qt/examples/dbus.cpp
- added service activation example

The binaries works well for me and seems to be usable as initial dbus environment for KDE 4 on windows at least for a specific time until a better solution will be ready. 

>From my point of view there is now the question how all the already done and still required work could be directed into the mainstream. 

Relating topics are 

- build system on windows - cmake or other ? (This would be an area where I can help) 
- how and when to accomplish Tor Lillequists and Martin Kosinas work into a full working port ? 
	- There was a statement that this should happen in release 1.2, when will this happens ? 
	- How to coordinate the windows port in the meantime ? 
	- I don't know how if Martin had used Tor's patches too or if he had used another approach 

- How should the different transport protocol implementations be located ? The options are 
	- leave it all in dbus-transport-unix.c and use ifdefs 
	- split into platform independent and platform depending files 
	- split into protocol orientated files 

- where to place other win32 related functions ? 


Tor Lillequist's Patch overview 

- added support for string/integer gid, uid, 

dbus-bus.c - dbus_bus_get_unix_user disabled 

dbus-hash.c - added support for table defined key and value free function, win32 independent  

dbus-internals.c - removed obsolate message 

dbus-mainloop.c - fd reencapsulation

	- reimplemenation of _dbus_server_new_for_domain_socket
	- _dbus_close() usage

	- envp added to some functions

	- new implementation using threads

	- vsnprintf patch 

	- major patch relating to fd's

	- many win32 patches, need to be probably splitted into platform depending 
	- minor patches relating to fd and sids cache

	- mior uid_t related patches, independent from win32

	- minor fixes 
	- added support for string/integer gid, uid

bus\activation.c     - minor changes platform uid_t related 
bus\config-parser.c  - split uid, at console and gid
bus\connection.c     - uid_t related changes
bus\desktop-file.c   - new var: real_end
bus\dispatch.c       - minor changes, many pings 
bus\driver.c         - type fixes 
bus\main.c           - minor changes, signals and fd related
bus\policy.c         - uid/gid type changes
bus\test-main.c      - stdout relates changes

More information about the dbus mailing list