summaryrefslogtreecommitdiffstats
path: root/flow/audioiosun.cpp
diff options
context:
space:
mode:
authorOBATA Akio <[email protected]>2024-06-20 17:40:24 +0900
committerMichele Calgaro <[email protected]>2024-06-21 15:46:01 +0900
commit210a7151be2cb791b33c3133372b08ed2d09979a (patch)
treece49e8ade036f47eb9d5aad2ec9c60e057425d76 /flow/audioiosun.cpp
parent400717e14469ccad3c8b76bff2137d910cec763c (diff)
downloadarts-210a7151be2cb791b33c3133372b08ed2d09979a.tar.gz
arts-210a7151be2cb791b33c3133372b08ed2d09979a.zip
fix to use AudioIOSun on Solaris and NetBSD
`USE_SOLARIS` is not defined (related to TDE/tde#74). On NetBSD, native audio system audioio(4) i.e. sunaudio is preferred. Signed-off-by: OBATA Akio <[email protected]> (cherry picked from commit 0c717ee493b802d94756b6c5f538cd686943b941)
Diffstat (limited to 'flow/audioiosun.cpp')
-rw-r--r--flow/audioiosun.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/flow/audioiosun.cpp b/flow/audioiosun.cpp
index ed5722c..16dee36 100644
--- a/flow/audioiosun.cpp
+++ b/flow/audioiosun.cpp
@@ -45,9 +45,9 @@
#endif
/*
- * Only compile this AudioIO class if we're on Solaris
+ * Only compile this AudioIO class if we're on Solaris or NetBSD
*/
-#ifdef USE_SOLARIS
+#if defined(__sun) || defined(__NetBSD__)
#include <sys/types.h>
#include <sys/ioctl.h>
@@ -55,8 +55,10 @@
#include <sys/stat.h>
#include <sys/audioio.h>
+#ifdef __sun
#include <stropts.h>
#include <sys/conf.h>
+#endif
#include <assert.h>
#include <errno.h>
@@ -73,6 +75,10 @@
#include "iomanager.h"
#include "dispatcher.h"
+#ifdef __NetBSD__
+typedef u_int uint_t;
+#endif
+
// This looks like the maximum buffer size according to the sys/audio*.h
// files on Solaris7
#define SUN_MAX_BUFFER_SIZE (65536)
@@ -439,4 +445,4 @@ int AudioIOSun::write(void *buffer, int size)
return size;
}
-#endif /* USE_SOLARIS */
+#endif /* defined(__sun) || defined(__NetBSD__) */