Bug 4927 - ALC_ALL_DEVICES_SPECIFIER needs alext.h when using system OpenAL-Soft
Status: RESOLVED FIXED
Alias: None
Product: ioquake3
Classification: Unclassified
Component: Sound
Version: GIT MASTER
Hardware: PC Linux
: P3 normal
Assignee: Zachary J. Slater
QA Contact: ioquake3 bugzilla mailing list
URL:
Depends on:
Blocks:
 
Reported: 2011-03-10 19:19 EST by Simon McVittie
Modified: 2011-03-14 12:38:03 EDT
1 user (show)

See Also:


Attachments
If using system OpenAL, include alext.h for ALC_ALL_DEVICES_SPECIFIER (663 bytes, patch)
2011-03-10 19:19 EST, Simon McVittie

Description Simon McVittie 2011-03-10 19:19:16 EST
Created attachment 2632 [details]
If using system OpenAL, include alext.h for ALC_ALL_DEVICES_SPECIFIER

This assumes OpenAL Soft, which more or less supersedes Creative's OpenAL,
as far as I understand it.

(It's what produces libopenal1 in Debian, at least...)
Comment 1 Simon McVittie 2011-03-11 15:02:44 EST
It might also be advantageous to make the same change to the Windows equivalent (about 3 lines up), but I left that alone since I don't know what the favoured OpenAL implementation is on Windows.

The original OpenAL on Unix is the "Sample Implementation" from Creative, but it seems all the major distributions probably use OpenAL-Soft instead these days (details below).

One thing I'm not so sure about is whether Mac OS X has alext.h; if it doesn't, it might need to be conditionalized, if people use the system OpenAL on Mac. (Do they?)

* Debian gained OpenAL-Soft in June 2008 and lost the Sample Implementation
  in August 2008, according to http://packages.qa.debian.org/o/openal.html
  and http://packages.qa.debian.org/o/openal-soft.html; Ubuntu's package
  is identical

* Fedora removed the Sample Implementation in favour of OpenAL-Soft in
  2009, according to http://pkgs.fedoraproject.org/gitweb/?p=openal.git

* Gentoo switched in 2008, according to
  http://gentoo-portage.com/media-libs/openal/ChangeLog

* Mandriva, OpenSUSE and Arch seem to have OpenAL-Soft in recent
  releases, according to http://pkgs.org/package/openal
Comment 2 Ludwig Nussel 2011-03-13 11:48:04 EDT
openSUSE since July 2008 (11.1/SLE11).

Applied, thanks.
Comment 3 Thilo Schulz 2011-03-13 19:53:37 EDT
This will throw a compiler error on the official OpenAL-SDK which does not have an alext.h, but where the needed macro is defined in alc.h
I am inquiring on OpenAL-dev right how to solve this puzzle.
If they don't come up with a satisfactory answer I'll get rid of the alext.h dependency and define the macro myself.
Comment 4 Thilo Schulz 2011-03-14 12:38:03 EDT
(In reply to comment #3)
> This will throw a compiler error on the official OpenAL-SDK which does not have
> an alext.h, but where the needed macro is defined in alc.h
> I am inquiring on OpenAL-dev right how to solve this puzzle.
> If they don't come up with a satisfactory answer I'll get rid of the alext.h
> dependency and define the macro myself.

fixed in r1930