Make the BSD PC speaker driver work on FreeBSD.

Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 1113
This commit is contained in:
Simon Howard 2008-04-15 23:16:16 +00:00
parent 46a5fbdc25
commit 125f86e18b
3 changed files with 26 additions and 5 deletions

View file

@ -24,7 +24,7 @@ then
CFLAGS="-O$OPT_LEVEL -g -Wall $orig_CFLAGS"
fi
AC_CHECK_HEADERS([linux/kd.h dev/isa/spkrio.h])
AC_CHECK_HEADERS([linux/kd.h dev/isa/spkrio.h dev/speaker/speaker.h])
AM_PATH_SDL(1.1.3)

View file

@ -31,11 +31,19 @@
#include "pcsound.h"
#include "pcsound_internal.h"
#ifdef HAVE_DEV_ISA_SPKRIO_H
#define HAVE_BSD_SPEAKER
#endif
#ifdef HAVE_DEV_SPEAKER_SPEAKER_H
#define HAVE_BSD_SPEAKER
#endif
#ifdef _WIN32
extern pcsound_driver_t pcsound_win32_driver;
#endif
#ifdef HAVE_DEV_ISA_SPKRIO_H
#ifdef HAVE_BSD_SPEAKER
extern pcsound_driver_t pcsound_bsd_driver;
#endif
@ -50,7 +58,7 @@ static pcsound_driver_t *drivers[] =
#ifdef HAVE_LINUX_KD_H
&pcsound_linux_driver,
#endif
#ifdef HAVE_DEV_ISA_SPKRIO_H
#ifdef HAVE_BSD_SPEAKER
&pcsound_bsd_driver,
#endif
#ifdef _WIN32

View file

@ -26,14 +26,27 @@
#include "config.h"
// OpenBSD/NetBSD:
#ifdef HAVE_DEV_ISA_SPKRIO_H
#define HAVE_BSD_SPEAKER
#include <dev/isa/spkrio.h>
#endif
// FreeBSD
#ifdef HAVE_DEV_SPEAKER_SPEAKER_H
#define HAVE_BSD_SPEAKER
#include <dev/speaker/speaker.h>
#endif
#ifdef HAVE_BSD_SPEAKER
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <signal.h>
#include <dev/isa/spkrio.h>
#include <sys/ioctl.h>
#include <sys/signal.h>
#include <sys/socket.h>
@ -310,5 +323,5 @@ pcsound_driver_t pcsound_bsd_driver =
PCSound_BSD_Shutdown,
};
#endif /* #ifdef HAVE_DEV_ISA_SPKRIO_H */
#endif /* #ifdef HAVE_BSD_SPEAKER */