mirror of https://github.com/python/cpython
bpo-46053: Fix OSS audio support on NetBSD (GH-30065)
This commit is contained in:
parent
804ea2da97
commit
2e7e3c4c10
|
@ -0,0 +1 @@
|
|||
Do not use POSIX semaphores on NetBSD
|
|
@ -0,0 +1 @@
|
|||
Fix OSS audio support on NetBSD.
|
|
@ -1226,16 +1226,36 @@ PyInit_ossaudiodev(void)
|
|||
|
||||
/* Expose all the ioctl numbers for masochists who like to do this
|
||||
stuff directly. */
|
||||
#ifdef SNDCTL_COPR_HALT
|
||||
_EXPORT_INT(m, SNDCTL_COPR_HALT);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_LOAD
|
||||
_EXPORT_INT(m, SNDCTL_COPR_LOAD);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_RCODE
|
||||
_EXPORT_INT(m, SNDCTL_COPR_RCODE);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_RCVMSG
|
||||
_EXPORT_INT(m, SNDCTL_COPR_RCVMSG);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_RDATA
|
||||
_EXPORT_INT(m, SNDCTL_COPR_RDATA);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_RESET
|
||||
_EXPORT_INT(m, SNDCTL_COPR_RESET);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_RUN
|
||||
_EXPORT_INT(m, SNDCTL_COPR_RUN);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_SENDMSG
|
||||
_EXPORT_INT(m, SNDCTL_COPR_SENDMSG);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_WCODE
|
||||
_EXPORT_INT(m, SNDCTL_COPR_WCODE);
|
||||
#endif
|
||||
#ifdef SNDCTL_COPR_WDATA
|
||||
_EXPORT_INT(m, SNDCTL_COPR_WDATA);
|
||||
#endif
|
||||
#ifdef SNDCTL_DSP_BIND_CHANNEL
|
||||
_EXPORT_INT(m, SNDCTL_DSP_BIND_CHANNEL);
|
||||
#endif
|
||||
|
@ -1278,46 +1298,104 @@ PyInit_ossaudiodev(void)
|
|||
_EXPORT_INT(m, SNDCTL_DSP_STEREO);
|
||||
_EXPORT_INT(m, SNDCTL_DSP_SUBDIVIDE);
|
||||
_EXPORT_INT(m, SNDCTL_DSP_SYNC);
|
||||
#ifdef SNDCTL_FM_4OP_ENABLE
|
||||
_EXPORT_INT(m, SNDCTL_FM_4OP_ENABLE);
|
||||
#endif
|
||||
#ifdef SNDCTL_FM_LOAD_INSTR
|
||||
_EXPORT_INT(m, SNDCTL_FM_LOAD_INSTR);
|
||||
#endif
|
||||
#ifdef SNDCTL_MIDI_INFO
|
||||
_EXPORT_INT(m, SNDCTL_MIDI_INFO);
|
||||
#endif
|
||||
#ifdef SNDCTL_MIDI_MPUCMD
|
||||
_EXPORT_INT(m, SNDCTL_MIDI_MPUCMD);
|
||||
#endif
|
||||
#ifdef SNDCTL_MIDI_MPUMODE
|
||||
_EXPORT_INT(m, SNDCTL_MIDI_MPUMODE);
|
||||
#endif
|
||||
#ifdef SNDCTL_MIDI_PRETIME
|
||||
_EXPORT_INT(m, SNDCTL_MIDI_PRETIME);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_CTRLRATE
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_CTRLRATE);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_GETINCOUNT
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_GETINCOUNT);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_GETOUTCOUNT
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_GETOUTCOUNT);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_GETTIME
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_GETTIME);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_NRMIDIS
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_NRMIDIS);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_NRSYNTHS
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_NRSYNTHS);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_OUTOFBAND
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_OUTOFBAND);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_PANIC
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_PANIC);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_PERCMODE
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_PERCMODE);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_RESET
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_RESET);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_RESETSAMPLES
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_RESETSAMPLES);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_SYNC
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_SYNC);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_TESTMIDI
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_TESTMIDI);
|
||||
#endif
|
||||
#ifdef SNDCTL_SEQ_THRESHOLD
|
||||
_EXPORT_INT(m, SNDCTL_SEQ_THRESHOLD);
|
||||
#endif
|
||||
#ifdef SNDCTL_SYNTH_CONTROL
|
||||
_EXPORT_INT(m, SNDCTL_SYNTH_CONTROL);
|
||||
#endif
|
||||
#ifdef SNDCTL_SYNTH_ID
|
||||
_EXPORT_INT(m, SNDCTL_SYNTH_ID);
|
||||
#endif
|
||||
#ifdef SNDCTL_SYNTH_INFO
|
||||
_EXPORT_INT(m, SNDCTL_SYNTH_INFO);
|
||||
#endif
|
||||
#ifdef SNDCTL_SYNTH_MEMAVL
|
||||
_EXPORT_INT(m, SNDCTL_SYNTH_MEMAVL);
|
||||
#endif
|
||||
#ifdef SNDCTL_SYNTH_REMOVESAMPLE
|
||||
_EXPORT_INT(m, SNDCTL_SYNTH_REMOVESAMPLE);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_CONTINUE
|
||||
_EXPORT_INT(m, SNDCTL_TMR_CONTINUE);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_METRONOME
|
||||
_EXPORT_INT(m, SNDCTL_TMR_METRONOME);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_SELECT
|
||||
_EXPORT_INT(m, SNDCTL_TMR_SELECT);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_SOURCE
|
||||
_EXPORT_INT(m, SNDCTL_TMR_SOURCE);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_START
|
||||
_EXPORT_INT(m, SNDCTL_TMR_START);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_STOP
|
||||
_EXPORT_INT(m, SNDCTL_TMR_STOP);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_TEMPO
|
||||
_EXPORT_INT(m, SNDCTL_TMR_TEMPO);
|
||||
#endif
|
||||
#ifdef SNDCTL_TMR_TIMEBASE
|
||||
_EXPORT_INT(m, SNDCTL_TMR_TIMEBASE);
|
||||
#endif
|
||||
return m;
|
||||
}
|
||||
|
|
|
@ -12181,6 +12181,14 @@ LIBS=$save_LIBS
|
|||
|
||||
fi
|
||||
|
||||
case $ac_sys_system in #(
|
||||
NetBSD*) :
|
||||
OSSAUDIODEV_LIBS="-lossaudio" ;; #(
|
||||
*) :
|
||||
OSSAUDIODEV_LIBS=""
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
pkg_failed=no
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBSQLITE3" >&5
|
||||
|
@ -23250,7 +23258,7 @@ fi
|
|||
if test "x$py_cv_module_ossaudiodev" = xyes; then :
|
||||
|
||||
|
||||
|
||||
as_fn_append MODULE_BLOCK "MODULE_OSSAUDIODEV_LDFLAGS=$OSSAUDIODEV_LIBS$as_nl"
|
||||
|
||||
fi
|
||||
if test "$py_cv_module_ossaudiodev" = yes; then
|
||||
|
|
|
@ -3553,6 +3553,12 @@ AS_VAR_IF([have_nis], [yes], [
|
|||
])
|
||||
])
|
||||
|
||||
dnl On NetBSD, when using OSS audio, you need to link against libossaudio
|
||||
AS_CASE([$ac_sys_system],
|
||||
[NetBSD*], [OSSAUDIODEV_LIBS="-lossaudio"],
|
||||
[OSSAUDIODEV_LIBS=""]
|
||||
)
|
||||
|
||||
dnl Check for SQLite library. Use pkg-config if available.
|
||||
PKG_CHECK_MODULES(
|
||||
[LIBSQLITE3], [sqlite3 >= 3.7.15], [], [
|
||||
|
@ -6786,7 +6792,8 @@ PY_STDLIB_MOD([_socket],
|
|||
dnl platform specific extensions
|
||||
PY_STDLIB_MOD([grp], [], [test "$ac_cv_func_getgrgid" = yes -o "$ac_cv_func_getgrgid_r" = yes])
|
||||
PY_STDLIB_MOD([ossaudiodev],
|
||||
[], [test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes])
|
||||
[], [test "$ac_cv_header_linux_soundcard_h" = yes -o "$ac_cv_header_sys_soundcard_h" = yes],
|
||||
[], [$OSSAUDIODEV_LIBS])
|
||||
PY_STDLIB_MOD([pwd], [], [test "$ac_cv_func_getpwuid" = yes -o "$ac_cv_func_getpwuid_r" = yes])
|
||||
PY_STDLIB_MOD([resource], [], [test "$ac_cv_header_sys_resource_h" = yes])
|
||||
PY_STDLIB_MOD([_scproxy],
|
||||
|
|
Loading…
Reference in New Issue