Commit graph

409 commits

Author SHA1 Message Date
Maarten Bosmans
f36ac546e6 build-sys: Use AX_PTHREAD macro from autoconf archive 2011-06-21 15:12:17 +02:00
Maarten Bosmans
ee9da923e5 build-sys: Use AX_CHECK_DEFINE macro from autoconf archive
It has no new functionality over the existing macro that is relevant for
us, but it is good to have use a macro with a clearly defined upstream.
2011-06-20 16:01:38 +02:00
Maarten Bosmans
2ae6f88cca build-sys: Use AX_TLS macro from autoconf archive
It has no new functionality over the existing macro that is relevant for
us, but it is good to have use a macro with a clearly defined upstream.
2011-06-20 16:01:38 +02:00
Maarten Bosmans
429512dd5f build-sys: Move acx_lirc.m4 contents to configure.ac
The file is so small, that it is clearer just to do it in the main file.
2011-06-20 16:01:38 +02:00
Maarten Bosmans
71d05f553d build-sys: Move some stuff around in configure.ac
For more logical grouping of functionality.
2011-06-20 16:01:38 +02:00
Maarten Bosmans
ce4939d88f build-sys: Clean up configure.ac
Mostly whitespace and other trivial stuff.
2011-06-20 16:01:38 +02:00
Maarten Bosmans
17082e7f3a build-sys: Define PA_CFLAGS at right time
To ensure that all the changes to CFLAGS are also stored into PA_CFLAGS.
2011-06-20 16:01:37 +02:00
Maarten Bosmans
6c3f05574a build-sys: Reset CFLAGS after DBUS check 2011-06-20 16:01:37 +02:00
Maarten Bosmans
6c7039c753 build-sys: Consolidate host_os handling
Use os_is_* shell variables instead of pulse_target_os.
2011-06-20 16:01:37 +02:00
Maarten Bosmans
882320f43f build-sys: Remove unnecessary AC_SUBST calls
These HAVE_* variables are only used as AM_CONDITIONAL, so AC_SUBST is not needed.
2011-06-20 16:01:37 +02:00
Fritz Elfert
a13da4e93e Disable check for pthreads on win32
And do not use sched_get_priority on mingw with win32 pthreads installed
2011-06-18 10:51:00 -07:00
Maarten Bosmans
fc0eebf2c4 win32: define WIN32_LEAN_AND_MEAN
This makes windows.h include less headers.
Otherwise boolean is typedef'ed and that clashes with libjson.
2011-06-12 11:14:59 -07:00
Arun Raghavan
8d076d0990 format: Extend properties to handle lists/ranges
This replaces the simple string used by pa_format_info's proplist with a
JSON string (accessed via new API only). This allows us to express lists
and ranges more cleanly, and embed type information for future
extensibility.

We use json-c for JSON parsing. This is a lightweight depdency (32 KB on
my system) and avoids the hassle of having to reinvent a JSON parser.

Also included is a test which verifies functionality and is
valgrind-clean.
2011-05-15 10:09:35 +05:30
Arun Raghavan
0ac2cfce6d core: Add extended stream API to support compressed formats
This is the beginning of work to support compressed formats natively in
PulseAudio. This adds a pa_stream_new_extended() that takes a format
structure, sends it to the server (=> protocol extension) and has the
server negotiate with the appropropriate sink to figure out what format
it should use.

This is work in progress, and works only with PCM streams. Actual
compressed format support in some sink needs to be implemented, and
extensive testing is required.

More details on how this is supposed to work is available at:
http://pulseaudio.org/wiki/PassthroughSupport
2011-05-02 11:54:43 +05:30
Maarten Bosmans
eea248e233 build-system: Small fixes 2011-04-30 15:34:41 +01:00
Maarten Bosmans
155f2d5b9d build-system: Rearrange database selection 2011-04-30 15:34:24 +01:00
Maarten Bosmans
96d0ecb01b build-system: Replace some more conditionals with AS_IF 2011-04-30 15:33:15 +01:00
Maarten Bosmans
6da83d3cb6 build-system: Move dependency error messages to outer scope 2011-04-30 15:32:22 +01:00
Maarten Bosmans
459b5ef94d build-system: Move AC_DEFINE to separate line with AS_IF 2011-04-30 15:32:11 +01:00
Maarten Bosmans
78d174c29d build-system: Use AS_IF macro for configure output
And add some HAVE_[feature] variables for clarity.
2011-04-30 15:31:58 +01:00
Maarten Bosmans
18e5d0d089 build-system: Simplify AC_ARG_ENABLE usage
Make use of the enable_[feature] variable automatically defined
by AC_ARG_ENABLE instead of defining our own variable.
2011-04-30 15:31:40 +01:00
Arnaud Fontaine
adb16f9ff4 x11: More XCB fixes.
Commit 65ef80b fixed building with xcb-util >= 0.3.8, but the reply is never
checked (possible SIGSEGV if the reply is NULL) nor freed (memory leak at each
call of the functions).

Also, remove include and dependencies on xcb-atom, as it was only meaningful
for xcb_atom_get() and STRING, and depend instead on xcb >= 1.6 for
XCB_ATOM_STRING.
2011-04-30 14:26:45 +01:00
Daniel Mack
9ade504d45 build-sys: Make -isysroot and -mmacosx-version-min configurable 2011-04-23 18:23:38 +01:00
Daniel Mack
2411d9accd thread-posix: Use pthread_(get|set)name_np() if available
Newer generations of libpthread have functions to set and get the thread
names. If available, use them.
2011-04-23 18:23:37 +01:00
Daniel Mack
98f2209663 pulsecore:: Define _POSIX_C_SOURCE locally for rtclock on OSX
Defining this macro on a global level is disadvantageous for other APIs,
and as we need it for clock_gettime() only on Mac OS X, define it
locally in pulsecore/core-rtclock.c only.
2011-04-23 18:23:37 +01:00
Arun Raghavan
f49711c99a build: Bump Orc dependency to 0.4.11
0.4.9 errors out at compile time, and might as well bump to 0.4.11 since
that's the version being tested with and has been around for a while
now. Thanks to Paul Menzel <paulepanter@users.sourceforge.net> for
pointing this out.
2011-03-25 10:59:18 +00:00
Colin Guthrie
ae35ec1ed5 Merge remote-tracking branch 'zonique/osx' 2011-03-24 09:08:05 +00:00
Daniel Mack
85c5a2d749 configure.ac: add --mac-universal directive for OS X
On a system with all depency libs built as multi-arch binaries, this
option can now be used to build fat Mach-O binaries for multiple
architectures.
2011-03-21 00:32:29 +01:00
Colin Guthrie
d7ce59de88 Merge remote-tracking branch 'mkbosmans/mingw32-build' 2011-03-20 11:18:19 +00:00
Maarten Bosmans
c470680e1b Use pulsecore/arpa-inet.h to make arpa/inet.h functionality available
Automatically use replacement function on platforms (win32) where not all arpa/inet.h is available natively.
2011-03-19 13:41:05 +01:00
Maarten Bosmans
1afd233630 Make pulse compile with clang
This fixes the checking of supported compiler flags and the following error message for svolume_mmx:

pulsecore/svolume_mmx.c:157:76: error: invalid use of a cast in a inline asm context requiring an l-value:
  remove the cast or build with -fheinous-gnu-extensions
        : "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
                                                               ~~~~~~~~~~~~^~~~~~~
2011-03-18 09:22:07 +00:00
Maarten Bosmans
33d1de487a configure: Drop some warnings
Drop -Winline and set -Wstrict-aliasing level to its default.
2011-03-02 15:03:18 +00:00
Arun Raghavan
3f6eb652cb introspect: Client-side implementation for has_volume/read_only_volume
This completes the client-side changes to the protocol extension
introduced by commit 99ddca89cd
2011-03-02 11:17:32 +00:00
Colin Guthrie
a3dbdb0446 Merge remote-tracking branch 'mkbosmans/mingw32-build' 2011-02-25 09:24:07 +00:00
Paul Menzel
1f848f82c4 build-sys: Correct typos in configure
s/Console Kit/ConsoleKit/ [1]
s/DBUS/D-Bus/ [2]

Plus some spelling fixes and context in warning sometimes shown to user

[1] http://www.freedesktop.org/wiki/Software/ConsoleKit
[2] http://www.freedesktop.org/wiki/Software/dbus
2011-02-22 10:07:47 +00:00
Maarten Bosmans
f2a9fd779e Give module-waveout a configure switch
- Also disable the scary DBus and udev warnings when building for win32
 - and only install some dbus/x11 specific files when appropriate
2011-02-17 12:02:31 +01:00
Maarten Bosmans
a951c779c6 Use PCRE if POSIX regex.h is not available 2011-02-17 11:58:22 +01:00
Maarten Bosmans
bb12ff8356 Apply #ifdefs around functionality not available on win32
And also the reverse: around some win32 specific functionality
2011-02-17 11:58:22 +01:00
Maarten Bosmans
974af43507 build: Don't include empty Makefile.am in subdirs 2011-01-31 12:40:43 +00:00
Colin Guthrie
a37e0963ef build-sys: Make --disable-dbus actually work.
Previously this argument passed to configure only worked if --disable-hal and
--disable-bluez was also passed which wasn't immediately obvious to the
untrained compiler.

This change simply makes --disable-dbus disable the other two as well
and errors out of specific, incompatible --enable/--disable flags
are provided.

The summary table is also adjusted and intended to try and show the
dependency relationship a little.
2011-01-11 11:26:48 +00:00
Colin Guthrie
0fae3ad2f8 build-sys: Put in specific warnings when there is no udev or DBUS support
Users have often come to me when their build doesn't work and typically
this is when they do not have dev headers for DBUS and udev installed
when building. Put in some specific warnings about these optional,
but critical, elements.

This will likely display this message on platforms where they are not
available, so patches welcome to hide them in a semi-intelligent way.
2011-01-11 10:28:06 +00:00
Arun Raghavan
de706d9cf7 build-sys: Fix a warning during distcheck
This adds a dummy Makefile.am to the dbus module to eliminate missing
directory warnings during distcheck.
2010-12-05 16:00:35 +00:00
Colin Guthrie
3e28f60592 build-sys: Replace dummy Makefiles with proper Makefile.am's
This is needed to better support out of tree builds (including
distcheck) and to ensure the necessary folders are created in the
build tree on configure and also works around an intl-tools bug
(https://bugs.launchpad.net/intltool/+bug/605826)

The Makefile.am's used are minimal (and in some cases completely
blank). At present they do not include anything interesting
with the majority of the real work still done by the monolitic
src/Makefile.am

It may make sense to start splitting out src/Makefile.am into
smaller chunks but this commit makes the minimum changes to address
the issues that result from using make distcheck and other out of
tree builds.

Note: This 'breaks' the ability to type make in e.g. the src/modules
folder and have all of PA rebuilt accordingly (this is because the
static Makefiles previously present just did a "make -C ..") which
was purportedly for use in emacs. But I'm sure there will be a better
and more robust way to configure emacs to do your builds properly if
this behaviour is still desirable.
2010-12-05 15:58:59 +00:00
Lennart Poettering
a754d5a999 build-sys: bump soname 2010-11-28 16:57:34 +00:00
Arun Raghavan
12b900858a volume: Add explicit checks for ARMv6 instructions
This ensures that the build does not fail if the ssat and pkhbt
instructions are not available (armv5te and below).

Fixes: http://www.pulseaudio.org/ticket/790
2010-11-28 16:23:18 +00:00
Colin Guthrie
6828c594e3 version: Drop the micro version number
As per discussions with Lennart, we will be moving to a two-component version
number scheme when the next release is made from git master branch.

This means we will be dropping the micro version component (although
for compatibility, it will remain defined as 0 in version.h).

For more information, please see the announcement here:
 http://thread.gmane.org/gmane.comp.audio.pulseaudio.general/7921
2010-11-28 15:56:20 +00:00
Colin Guthrie
3de129f3ac introspect: Include whether a stream is corked in the info callback. 2010-10-06 09:17:01 +01:00
Arun Raghavan
83d3c8f22b echo-cancel: orc-ify some bits for optimisation
This uses Orc to optimise an inner loop in the core NLMS function of the
Adrian echo canceller.
2010-09-23 17:17:03 +05:30
Colin Guthrie
38778117f8 x11: Partially convert to XCB.
This commit mostly converts the X11 handling to XCB. There are still
some uses of XLib to deal with the X11 session handling modules, however all
client-side code should now be free of XLib and thus this should fix Bug #799

Note that this removes the screen-based changes by Leszek Koltunski
in 65e80, however this will be restored in due course.
2010-09-18 12:04:09 +01:00
Pierre-Louis Bossart
9b6c84ad6e AC3 passthrough support
Second version after Tanu's feedback

TODO:
    - notify client that volume control is disabled
    - change sink rate in passthrough mode if needed
    - automatic detection of passthrough mode instead of hard
    coded profile names

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
2010-08-12 18:20:27 +01:00