From 0329edd1791e3c8fbed33f266d86cae6b91a5556 Mon Sep 17 00:00:00 2001 From: Finn Thain Date: Thu, 26 Feb 2009 16:48:58 +1100 Subject: revive solaris module Hi All, This patch fixes the solaris audio device source and sink, and fixes some portability issues that break the build on solaris. Questions and comments welcomed. I've tested this patch only with OpenSolaris Express snv 103. Eventually I hope to be able to test a few older releases and older hardware (though it is hard to say whether there is much interest in those). This is my first brush with pulseaudio and so I read the wiki docs and some of the source code but I'm still unsure of a few things. In particular I'm wondering about rewind processing, corking and what (if anything) the module needs for those. I'm also unclear on the implications of thread_info.buffer_size, .fragment_size and .max_request, and whether my code is correct or not. This patch disables link map/library versioning unless ld is GNU ld. Another approach for solaris would be to use that linker's -M option, but I couldn't make that work (due to undefined mainloop, browse and simple symbols when linking pacat. I can post the errors if anyone is intested.) Thanks, Finn Thain --- src/modules/module-solaris.c | 957 +++++++++++++++++++++++++++-------------- src/modules/raop/raop_client.c | 5 + src/modules/rtp/rtsp_client.c | 7 +- 3 files changed, 635 insertions(+), 334 deletions(-) (limited to 'src/modules') diff --git a/src/modules/module-solaris.c b/src/modules/module-solaris.c index 738115c5..783c2440 100644 --- a/src/modules/module-solaris.c +++ b/src/modules/module-solaris.c @@ -3,6 +3,7 @@ Copyright 2006 Lennart Poettering Copyright 2006-2007 Pierre Ossman for Cendio AB + Copyright 2009 Finn Thain PulseAudio is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published @@ -44,6 +45,7 @@ #include #include #include +#include #include #include @@ -57,22 +59,25 @@ #include #include #include +#include #include "module-solaris-symdef.h" -PA_MODULE_AUTHOR("Pierre Ossman") -PA_MODULE_DESCRIPTION("Solaris Sink/Source") -PA_MODULE_VERSION(PACKAGE_VERSION) +PA_MODULE_AUTHOR("Pierre Ossman"); +PA_MODULE_DESCRIPTION("Solaris Sink/Source"); +PA_MODULE_VERSION(PACKAGE_VERSION); PA_MODULE_USAGE( "sink_name= " "source_name= " - "device= record= " + "device=