Adapt SolarisOutputPlugin.cxx to be usable on NetBSD.

This commit is contained in:
Thomas Klausner 2020-02-29 09:56:10 +01:00 committed by Max Kellermann
parent d5468dfe89
commit 7a68b1e71f
2 changed files with 10 additions and 3 deletions

2
NEWS
View File

@ -1,6 +1,8 @@
ver 0.21.21 (not yet released)
* decoder
- gme: ignore empty tags
* output
- solaris: port to NetBSD
ver 0.21.20 (2020/02/16)
* decoder

View File

@ -22,22 +22,23 @@
#include "system/FileDescriptor.hxx"
#include "system/Error.hxx"
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#ifdef __sun
#if defined(__sun)
#include <sys/audio.h>
#include <sys/stropts.h>
#elif defined(__NetBSD__)
#include <sys/audioio.h>
#else
/* some fake declarations that allow build this plugin on systems
other than Solaris, just to see if it compiles */
#include <sys/ioctl.h>
#ifndef I_FLUSH
#define I_FLUSH 0
#endif
@ -147,7 +148,11 @@ SolarisOutput::Play(const void *chunk, size_t size)
void
SolarisOutput::Cancel() noexcept
{
#if defined(AUDIO_FLUSH)
ioctl(fd.Get(), AUDIO_FLUSH);
#elif defined(I_FLUSH)
ioctl(fd.Get(), I_FLUSH);
#endif
}
const struct AudioOutputPlugin solaris_output_plugin = {