This patch series makes Pulseaudio compile for Windows using mingw. Moverover, pacat and pactl actually work on Windows. A running daemon is something to do another time. (Pierre, are you still interested in this?) It should be farily noncontroversial, as most changes should not affect operation on Linux. Maarten Maarten Bosmans (10): Clean up <poll.h> includes Use <pulsecore/socket.h> instead of <sys/socket.h> Adapt win32 specific code to current API Use pa_* instead of generic functions to improve portability Apply #ifdefs around functionality not available on win32 Use PCRE if POSIX regex.h is not available Fix dependencies and include necessary headers Add AM_LDFLAGS more consistently to all commands Implement some functions for win32 Repair some typos configure.ac | 10 ++- src/Makefile.am | 64 +++++++++++------ src/daemon/daemon-conf.c | 5 ++ src/daemon/dumpmodules.c | 2 + src/daemon/main.c | 12 ++-- src/modules/bluetooth/module-bluetooth-device.c | 3 +- src/modules/module-augment-properties.c | 2 + src/modules/module-cli.c | 6 ++- src/modules/module-esound-sink.c | 14 +++- src/modules/module-match.c | 7 ++- src/modules/module-pipe-sink.c | 2 +- src/modules/module-pipe-source.c | 2 +- src/modules/module-protocol-stub.c | 5 +- src/modules/module-sine-source.c | 2 - src/modules/oss/module-oss.c | 2 +- src/modules/rtp/module-rtp-recv.c | 2 +- src/pulse/context.c | 14 ++-- src/pulse/mainloop.c | 2 +- src/pulse/thread-mainloop.c | 9 +-- src/pulse/timeval.c | 1 - src/pulse/util.c | 19 +++--- src/pulsecore/authkey.c | 2 +- src/pulsecore/core-rtclock.c | 2 + src/pulsecore/core-rtclock.h | 2 + src/pulsecore/core-util.c | 83 +++++++++++++++++++++-- src/pulsecore/core-util.h | 2 +- src/pulsecore/creds.h | 4 +- src/pulsecore/inet_ntop.c | 10 +-- src/pulsecore/inet_ntop.h | 6 +-- src/pulsecore/inet_pton.c | 9 +-- src/pulsecore/inet_pton.h | 6 +-- src/pulsecore/iochannel.c | 7 +-- src/pulsecore/ioline.c | 2 +- src/pulsecore/ipacl.c | 5 +- src/pulsecore/lock-autospawn.c | 6 ++- src/pulsecore/memtrap.c | 7 ++ src/pulsecore/mutex-win32.c | 25 +++++++- src/pulsecore/parseaddr.c | 5 +- src/pulsecore/pipe.c | 7 +-- src/pulsecore/poll.c | 3 +- src/pulsecore/proplist-util.c | 2 +- src/pulsecore/pstream.c | 6 +-- src/pulsecore/rtpoll.c | 1 - src/pulsecore/socket-client.c | 9 +-- src/pulsecore/socket-server.c | 6 +-- src/pulsecore/socket-util.c | 6 +-- src/pulsecore/socket-util.h | 2 +- src/pulsecore/socket.h | 31 +++++++++ src/pulsecore/start-child.c | 3 + src/pulsecore/tagstruct.c | 2 +- src/pulsecore/thread-win32.c | 5 +- src/pulsecore/winsock.h | 26 ------- src/tests/asyncq-test.c | 2 +- src/tests/ipacl-test.c | 9 +-- src/tests/rtstutter.c | 30 ++++++-- 55 files changed, 322 insertions(+), 196 deletions(-) create mode 100644 src/pulsecore/socket.h delete mode 100644 src/pulsecore/winsock.h