diff --git a/channels/Makefile b/channels/Makefile
index aca979f52f..0b4ddacc3f 100644
--- a/channels/Makefile
+++ b/channels/Makefile
@@ -103,15 +103,10 @@ ringtone.h: gentone
./gentone ringtone 440 480
chan_oss.o: chan_oss.c busy.h ringtone.h
+ $(CC) -c -o $@ $(CFLAGS) $(OSSAUDIO_INCLUDE) $<
-ifeq ($(OSARCH),OpenBSD)
chan_oss.so: chan_oss.o
- $(CC) $(SOLINK) -o $@ chan_oss.o -lossaudio
-endif
-ifeq ($(OSARCH),NetBSD)
-chan_oss.so: chan_oss.o
- $(CC) $(SOLINK) -o $@ chan_oss.o -lossaudio
-endif
+ $(CC) $(SOLINK) -o $@ chan_oss.o $(OSSAUDIO_LIB)
chan_iax2.so: chan_iax2.o iax2-parser.o iax2-provision.o
$(CC) $(SOLINK) -o $@ $< iax2-parser.o iax2-provision.o
diff --git a/channels/chan_oss.c b/channels/chan_oss.c
index 09b4b43bb6..8e9bbe4f3f 100644
--- a/channels/chan_oss.c
+++ b/channels/chan_oss.c
@@ -33,7 +33,7 @@
*/
/*** MODULEINFO
- osssound
+ ossaudio
***/
#include
diff --git a/configure.ac b/configure.ac
index b90d5d32e8..39967212cf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -174,14 +174,25 @@ AST_EXT_LIB([tds], [tds_version], [tds.h], [FREETDS], [FreeTDS])
AST_EXT_LIB([vorbis], [vorbis_info_init], [vorbis/codec.h], [VORBIS], [Vorbis], [-lm -lvorbisenc])
AST_EXT_LIB([z], [compress], [zlib.h], [ZLIB], [zlib])
+PBX_LIBossaudio=0
if test "x${PBX_OSTYPE}" = "xLinux" ; then
- AST_EXT_LIB([ossaudio], [oss_ioctl_mixer], [linux/soundcard.h], [OSS], [Open Sound System])
+ AC_CHECK_HEADER([linux/soundcard.h],
+ [PBX_LIBossaudio=1
+ AC_DEFINE_UNQUOTED([HAVE_OSS], 1, [Define to indicate the Open Sound System library])
+ ])
elif test "x${PBX_OSTYPE}" = "xFreeBSD" ; then
- AST_EXT_LIB([ossaudio], [oss_ioctl_mixer], [sys/soundcard.h], [OSS], [Open Sound System])
-else
+ AC_CHECK_HEADER([sys/soundcard.h],
+ [PBX_LIBossaudio=1
+ AC_DEFINE_UNQUOTED([HAVE_OSS], 1, [Define to indicate the Open Sound System library])
+ ])
+elif test "x${PBX_OSTYPE}" = "xOpenBSD" ; then
+ AST_EXT_LIB([ossaudio], [oss_ioctl_mixer], [soundcard.h], [OSS], [Open Sound System])
+elif test "x${PBX_OSTYPE}" = "xNetBSD" ; then
AST_EXT_LIB([ossaudio], [oss_ioctl_mixer], [soundcard.h], [OSS], [Open Sound System])
fi
+AC_SUBST([PBX_LIBossaudio])
+
if test "x${PBX_OSTYPE}" = "xLinux" ; then
AST_EXT_LIB([tonezone], [tone_zone_find], [linux/zaptel.h], [ZAPTEL], [Zaptel])
else