mirror of https://github.com/encounter/SDL.git
Added configure and cmake support for libsamplerate
This commit is contained in:
parent
c5825b698d
commit
df25258a1e
|
@ -267,8 +267,6 @@ set_option(DISKAUDIO "Support the disk writer audio driver" ON)
|
||||||
set_option(DUMMYAUDIO "Support the dummy audio driver" ON)
|
set_option(DUMMYAUDIO "Support the dummy audio driver" ON)
|
||||||
set_option(VIDEO_DIRECTFB "Use DirectFB video driver" OFF)
|
set_option(VIDEO_DIRECTFB "Use DirectFB video driver" OFF)
|
||||||
dep_option(DIRECTFB_SHARED "Dynamically load directfb support" ON "VIDEO_DIRECTFB" OFF)
|
dep_option(DIRECTFB_SHARED "Dynamically load directfb support" ON "VIDEO_DIRECTFB" OFF)
|
||||||
set_option(FUSIONSOUND "Use FusionSound audio driver" OFF)
|
|
||||||
dep_option(FUSIONSOUND_SHARED "Dynamically load fusionsound audio support" ON "FUSIONSOUND" OFF)
|
|
||||||
set_option(VIDEO_DUMMY "Use dummy video driver" ON)
|
set_option(VIDEO_DUMMY "Use dummy video driver" ON)
|
||||||
set_option(VIDEO_OPENGL "Include OpenGL support" ON)
|
set_option(VIDEO_OPENGL "Include OpenGL support" ON)
|
||||||
set_option(VIDEO_OPENGLES "Include OpenGL ES support" ON)
|
set_option(VIDEO_OPENGLES "Include OpenGL ES support" ON)
|
||||||
|
@ -287,6 +285,10 @@ dep_option(ARTS_SHARED "Dynamically load aRts audio support" ON "ARTS" O
|
||||||
set_option(NAS "Support the NAS audio API" ${UNIX_SYS})
|
set_option(NAS "Support the NAS audio API" ${UNIX_SYS})
|
||||||
set_option(NAS_SHARED "Dynamically load NAS audio API" ${UNIX_SYS})
|
set_option(NAS_SHARED "Dynamically load NAS audio API" ${UNIX_SYS})
|
||||||
set_option(SNDIO "Support the sndio audio API" ${UNIX_SYS})
|
set_option(SNDIO "Support the sndio audio API" ${UNIX_SYS})
|
||||||
|
set_option(FUSIONSOUND "Use FusionSound audio driver" OFF)
|
||||||
|
dep_option(FUSIONSOUND_SHARED "Dynamically load fusionsound audio support" ON "FUSIONSOUND" OFF)
|
||||||
|
set_option(LIBSAMPLERATE "Use libsamplerate for audio rate conversion" ${UNIX_SYS})
|
||||||
|
dep_option(LIBSAMPLERATE_SHARED "Dynamically load libsamplerate" ON "LIBSAMPLERATE" OFF)
|
||||||
set_option(RPATH "Use an rpath when linking SDL" ${UNIX_SYS})
|
set_option(RPATH "Use an rpath when linking SDL" ${UNIX_SYS})
|
||||||
set_option(CLOCK_GETTIME "Use clock_gettime() instead of gettimeofday()" OFF)
|
set_option(CLOCK_GETTIME "Use clock_gettime() instead of gettimeofday()" OFF)
|
||||||
set_option(INPUT_TSLIB "Use the Touchscreen library for input" ${UNIX_SYS})
|
set_option(INPUT_TSLIB "Use the Touchscreen library for input" ${UNIX_SYS})
|
||||||
|
@ -847,6 +849,7 @@ elseif(UNIX AND NOT APPLE)
|
||||||
CheckNAS()
|
CheckNAS()
|
||||||
CheckSNDIO()
|
CheckSNDIO()
|
||||||
CheckFusionSound()
|
CheckFusionSound()
|
||||||
|
CheckLibSampleRate()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(SDL_VIDEO)
|
if(SDL_VIDEO)
|
||||||
|
|
|
@ -315,6 +315,29 @@ macro(CheckFusionSound)
|
||||||
endif()
|
endif()
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
|
# Requires:
|
||||||
|
# - LIBSAMPLERATE
|
||||||
|
# Optional:
|
||||||
|
# - LIBSAMPLERATE_SHARED opt
|
||||||
|
# - HAVE_DLOPEN opt
|
||||||
|
macro(CheckLibSampleRate)
|
||||||
|
if(LIBSAMPLERATE)
|
||||||
|
check_include_file(samplerate.h HAVE_LIBSAMPLERATE_H)
|
||||||
|
if(HAVE_LIBSAMPLERATE_H)
|
||||||
|
if(LIBSAMPLERATE_SHARED)
|
||||||
|
if(NOT HAVE_DLOPEN)
|
||||||
|
message_warn("You must have SDL_LoadObject() support for dynamic libsamplerate loading")
|
||||||
|
else()
|
||||||
|
FindLibraryAndSONAME("samplerate")
|
||||||
|
set(SDL_LIBSAMPLERATE_DYNAMIC "\"${SAMPLERATE_LIB_SONAME}\"")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
list(APPEND EXTRA_LDFLAGS -lsamplerate)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endmacro()
|
||||||
|
|
||||||
# Requires:
|
# Requires:
|
||||||
# - n/a
|
# - n/a
|
||||||
# Optional:
|
# Optional:
|
||||||
|
|
|
@ -818,8 +818,12 @@ enable_nas
|
||||||
enable_nas_shared
|
enable_nas_shared
|
||||||
enable_sndio
|
enable_sndio
|
||||||
enable_sndio_shared
|
enable_sndio_shared
|
||||||
|
enable_fusionsound
|
||||||
|
enable_fusionsound_shared
|
||||||
enable_diskaudio
|
enable_diskaudio
|
||||||
enable_dummyaudio
|
enable_dummyaudio
|
||||||
|
enable_libsamplerate
|
||||||
|
enable_libsamplerate_shared
|
||||||
enable_video_wayland
|
enable_video_wayland
|
||||||
enable_video_wayland_qt_touch
|
enable_video_wayland_qt_touch
|
||||||
enable_wayland_shared
|
enable_wayland_shared
|
||||||
|
@ -840,8 +844,6 @@ enable_video_vivante
|
||||||
enable_video_cocoa
|
enable_video_cocoa
|
||||||
enable_video_directfb
|
enable_video_directfb
|
||||||
enable_directfb_shared
|
enable_directfb_shared
|
||||||
enable_fusionsound
|
|
||||||
enable_fusionsound_shared
|
|
||||||
enable_video_dummy
|
enable_video_dummy
|
||||||
enable_video_opengl
|
enable_video_opengl
|
||||||
enable_video_opengles
|
enable_video_opengles
|
||||||
|
@ -1544,8 +1546,16 @@ Optional Features:
|
||||||
--enable-nas-shared dynamically load NAS audio support [[default=yes]]
|
--enable-nas-shared dynamically load NAS audio support [[default=yes]]
|
||||||
--enable-sndio support the sndio audio API [[default=yes]]
|
--enable-sndio support the sndio audio API [[default=yes]]
|
||||||
--enable-sndio-shared dynamically load sndio audio support [[default=yes]]
|
--enable-sndio-shared dynamically load sndio audio support [[default=yes]]
|
||||||
|
--enable-fusionsound use FusionSound audio driver [[default=no]]
|
||||||
|
--enable-fusionsound-shared
|
||||||
|
dynamically load fusionsound audio support
|
||||||
|
[[default=yes]]
|
||||||
--enable-diskaudio support the disk writer audio driver [[default=yes]]
|
--enable-diskaudio support the disk writer audio driver [[default=yes]]
|
||||||
--enable-dummyaudio support the dummy audio driver [[default=yes]]
|
--enable-dummyaudio support the dummy audio driver [[default=yes]]
|
||||||
|
--enable-libsamplerate use libsamplerate for audio rate conversion
|
||||||
|
[[default=yes]]
|
||||||
|
--enable-libsamplerate-shared
|
||||||
|
dynamically load libsamplerate [[default=yes]]
|
||||||
--enable-video-wayland use Wayland video driver [[default=yes]]
|
--enable-video-wayland use Wayland video driver [[default=yes]]
|
||||||
--enable-video-wayland-qt-touch
|
--enable-video-wayland-qt-touch
|
||||||
QtWayland server support for Wayland video driver
|
QtWayland server support for Wayland video driver
|
||||||
|
@ -1576,10 +1586,6 @@ Optional Features:
|
||||||
--enable-video-directfb use DirectFB video driver [[default=no]]
|
--enable-video-directfb use DirectFB video driver [[default=no]]
|
||||||
--enable-directfb-shared
|
--enable-directfb-shared
|
||||||
dynamically load directfb support [[default=yes]]
|
dynamically load directfb support [[default=yes]]
|
||||||
--enable-fusionsound use FusionSound audio driver [[default=no]]
|
|
||||||
--enable-fusionsound-shared
|
|
||||||
dynamically load fusionsound audio support
|
|
||||||
[[default=yes]]
|
|
||||||
--enable-video-dummy use dummy video driver [[default=yes]]
|
--enable-video-dummy use dummy video driver [[default=yes]]
|
||||||
--enable-video-opengl include OpenGL support [[default=yes]]
|
--enable-video-opengl include OpenGL support [[default=yes]]
|
||||||
--enable-video-opengles include OpenGL ES support [[default=yes]]
|
--enable-video-opengles include OpenGL ES support [[default=yes]]
|
||||||
|
@ -18547,6 +18553,116 @@ $as_echo "#define SDL_AUDIO_DRIVER_SNDIO 1" >>confdefs.h
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CheckFusionSound()
|
||||||
|
{
|
||||||
|
# Check whether --enable-fusionsound was given.
|
||||||
|
if test "${enable_fusionsound+set}" = set; then :
|
||||||
|
enableval=$enable_fusionsound;
|
||||||
|
else
|
||||||
|
enable_fusionsound=no
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then
|
||||||
|
fusionsound=no
|
||||||
|
|
||||||
|
FUSIONSOUND_REQUIRED_VERSION=1.1.1
|
||||||
|
|
||||||
|
# Extract the first word of "pkg-config", so it can be a program name with args.
|
||||||
|
set dummy pkg-config; ac_word=$2
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||||
|
$as_echo_n "checking for $ac_word... " >&6; }
|
||||||
|
if ${ac_cv_path_PKG_CONFIG+:} false; then :
|
||||||
|
$as_echo_n "(cached) " >&6
|
||||||
|
else
|
||||||
|
case $PKG_CONFIG in
|
||||||
|
[\\/]* | ?:[\\/]*)
|
||||||
|
ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||||
|
for as_dir in $PATH
|
||||||
|
do
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
test -z "$as_dir" && as_dir=.
|
||||||
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||||
|
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||||
|
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||||
|
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||||
|
break 2
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
done
|
||||||
|
IFS=$as_save_IFS
|
||||||
|
|
||||||
|
test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
|
||||||
|
if test -n "$PKG_CONFIG"; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
|
||||||
|
$as_echo "$PKG_CONFIG" >&6; }
|
||||||
|
else
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||||
|
$as_echo "no" >&6; }
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support" >&5
|
||||||
|
$as_echo_n "checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support... " >&6; }
|
||||||
|
if test x$PKG_CONFIG != xno; then
|
||||||
|
if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then
|
||||||
|
FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound`
|
||||||
|
FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound`
|
||||||
|
fusionsound=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound" >&5
|
||||||
|
$as_echo "$fusionsound" >&6; }
|
||||||
|
|
||||||
|
if test x$fusionsound = xyes; then
|
||||||
|
|
||||||
|
$as_echo "#define SDL_AUDIO_DRIVER_FUSIONSOUND 1" >>confdefs.h
|
||||||
|
|
||||||
|
SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c"
|
||||||
|
EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS"
|
||||||
|
|
||||||
|
# Check whether --enable-fusionsound-shared was given.
|
||||||
|
if test "${enable_fusionsound_shared+set}" = set; then :
|
||||||
|
enableval=$enable_fusionsound_shared;
|
||||||
|
else
|
||||||
|
enable_fusionsound_shared=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
fusionsound_shared=no
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound dynamic loading support" >&5
|
||||||
|
$as_echo_n "checking for FusionSound dynamic loading support... " >&6; }
|
||||||
|
if test x$have_loadso != xyes && \
|
||||||
|
test x$enable_fusionsound_shared = xyes; then
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&5
|
||||||
|
$as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&2;}
|
||||||
|
fi
|
||||||
|
if test x$have_loadso = xyes && \
|
||||||
|
test x$enable_fusionsound_shared = xyes; then
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC "libfusionsound.so"
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
fusionsound_shared=yes
|
||||||
|
SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)"
|
||||||
|
else
|
||||||
|
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS"
|
||||||
|
SUMMARY_audio="${SUMMARY_audio} fusionsound"
|
||||||
|
fi
|
||||||
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound_shared" >&5
|
||||||
|
$as_echo "$fusionsound_shared" >&6; }
|
||||||
|
|
||||||
|
have_audio=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
CheckDiskAudio()
|
CheckDiskAudio()
|
||||||
{
|
{
|
||||||
# Check whether --enable-diskaudio was given.
|
# Check whether --enable-diskaudio was given.
|
||||||
|
@ -18583,6 +18699,52 @@ $as_echo "#define SDL_AUDIO_DRIVER_DUMMY 1" >>confdefs.h
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CheckLibSampleRate()
|
||||||
|
{
|
||||||
|
# Check whether --enable-libsamplerate was given.
|
||||||
|
if test "${enable_libsamplerate+set}" = set; then :
|
||||||
|
enableval=$enable_libsamplerate;
|
||||||
|
else
|
||||||
|
enable_libsamplerate=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test x$enable_libsamplerate = xyes; then
|
||||||
|
ac_fn_c_check_header_mongrel "$LINENO" "samplerate.h" "ac_cv_header_samplerate_h" "$ac_includes_default"
|
||||||
|
if test "x$ac_cv_header_samplerate_h" = xyes; then :
|
||||||
|
have_samplerate_h_hdr=yes
|
||||||
|
else
|
||||||
|
have_samplerate_h_hdr=no
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if test x$have_samplerate_h_hdr = xyes; then
|
||||||
|
|
||||||
|
$as_echo "#define HAVE_LIBSAMPLERATE_H 1" >>confdefs.h
|
||||||
|
|
||||||
|
|
||||||
|
# Check whether --enable-libsamplerate-shared was given.
|
||||||
|
if test "${enable_libsamplerate_shared+set}" = set; then :
|
||||||
|
enableval=$enable_libsamplerate_shared;
|
||||||
|
else
|
||||||
|
enable_libsamplerate_shared=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if test x$enable_libsamplerate_shared = xyes; then
|
||||||
|
samplerate_lib=`find_lib "libsamplerate.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`
|
||||||
|
if test x$samplerate_lib != x; then
|
||||||
|
echo "-- dynamic samplerate -> $samplerate_lib"
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define SDL_LIBSAMPLERATE_DYNAMIC "$samplerate_lib"
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
CheckVisibilityHidden()
|
CheckVisibilityHidden()
|
||||||
{
|
{
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GCC -fvisibility=hidden option" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GCC -fvisibility=hidden option" >&5
|
||||||
|
@ -20959,116 +21121,6 @@ $as_echo "$directfb_shared" >&6; }
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
CheckFusionSound()
|
|
||||||
{
|
|
||||||
# Check whether --enable-fusionsound was given.
|
|
||||||
if test "${enable_fusionsound+set}" = set; then :
|
|
||||||
enableval=$enable_fusionsound;
|
|
||||||
else
|
|
||||||
enable_fusionsound=no
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then
|
|
||||||
fusionsound=no
|
|
||||||
|
|
||||||
FUSIONSOUND_REQUIRED_VERSION=1.1.1
|
|
||||||
|
|
||||||
# Extract the first word of "pkg-config", so it can be a program name with args.
|
|
||||||
set dummy pkg-config; ac_word=$2
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
|
||||||
$as_echo_n "checking for $ac_word... " >&6; }
|
|
||||||
if ${ac_cv_path_PKG_CONFIG+:} false; then :
|
|
||||||
$as_echo_n "(cached) " >&6
|
|
||||||
else
|
|
||||||
case $PKG_CONFIG in
|
|
||||||
[\\/]* | ?:[\\/]*)
|
|
||||||
ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
|
||||||
for as_dir in $PATH
|
|
||||||
do
|
|
||||||
IFS=$as_save_IFS
|
|
||||||
test -z "$as_dir" && as_dir=.
|
|
||||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
|
||||||
if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
|
||||||
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
|
||||||
$as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
|
||||||
break 2
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
IFS=$as_save_IFS
|
|
||||||
|
|
||||||
test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
|
|
||||||
if test -n "$PKG_CONFIG"; then
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5
|
|
||||||
$as_echo "$PKG_CONFIG" >&6; }
|
|
||||||
else
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
|
||||||
$as_echo "no" >&6; }
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support" >&5
|
|
||||||
$as_echo_n "checking for FusionSound $FUSIONSOUND_REQUIRED_VERSION support... " >&6; }
|
|
||||||
if test x$PKG_CONFIG != xno; then
|
|
||||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then
|
|
||||||
FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound`
|
|
||||||
FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound`
|
|
||||||
fusionsound=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound" >&5
|
|
||||||
$as_echo "$fusionsound" >&6; }
|
|
||||||
|
|
||||||
if test x$fusionsound = xyes; then
|
|
||||||
|
|
||||||
$as_echo "#define SDL_AUDIO_DRIVER_FUSIONSOUND 1" >>confdefs.h
|
|
||||||
|
|
||||||
SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c"
|
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS"
|
|
||||||
|
|
||||||
# Check whether --enable-fusionsound-shared was given.
|
|
||||||
if test "${enable_fusionsound_shared+set}" = set; then :
|
|
||||||
enableval=$enable_fusionsound_shared;
|
|
||||||
else
|
|
||||||
enable_fusionsound_shared=yes
|
|
||||||
fi
|
|
||||||
|
|
||||||
fusionsound_shared=no
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for FusionSound dynamic loading support" >&5
|
|
||||||
$as_echo_n "checking for FusionSound dynamic loading support... " >&6; }
|
|
||||||
if test x$have_loadso != xyes && \
|
|
||||||
test x$enable_fusionsound_shared = xyes; then
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&5
|
|
||||||
$as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic fusionsound loading" >&2;}
|
|
||||||
fi
|
|
||||||
if test x$have_loadso = xyes && \
|
|
||||||
test x$enable_fusionsound_shared = xyes; then
|
|
||||||
|
|
||||||
cat >>confdefs.h <<_ACEOF
|
|
||||||
#define SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC "libfusionsound.so"
|
|
||||||
_ACEOF
|
|
||||||
|
|
||||||
fusionsound_shared=yes
|
|
||||||
SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)"
|
|
||||||
else
|
|
||||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS"
|
|
||||||
SUMMARY_audio="${SUMMARY_audio} fusionsound"
|
|
||||||
fi
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $fusionsound_shared" >&5
|
|
||||||
$as_echo "$fusionsound_shared" >&6; }
|
|
||||||
|
|
||||||
have_audio=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
CheckDummyVideo()
|
CheckDummyVideo()
|
||||||
{
|
{
|
||||||
# Check whether --enable-video-dummy was given.
|
# Check whether --enable-video-dummy was given.
|
||||||
|
@ -23144,9 +23196,10 @@ case "$host" in
|
||||||
CheckESD
|
CheckESD
|
||||||
CheckNAS
|
CheckNAS
|
||||||
CheckSNDIO
|
CheckSNDIO
|
||||||
|
CheckFusionSound
|
||||||
|
CheckLibSampleRate
|
||||||
CheckX11
|
CheckX11
|
||||||
CheckDirectFB
|
CheckDirectFB
|
||||||
CheckFusionSound
|
|
||||||
CheckOpenGLX11
|
CheckOpenGLX11
|
||||||
CheckOpenGLESX11
|
CheckOpenGLESX11
|
||||||
CheckMir
|
CheckMir
|
||||||
|
|
135
configure.in
135
configure.in
|
@ -1049,6 +1049,58 @@ AC_HELP_STRING([--enable-sndio-shared], [dynamically load sndio audio support [[
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dnl Find FusionSound
|
||||||
|
CheckFusionSound()
|
||||||
|
{
|
||||||
|
AC_ARG_ENABLE(fusionsound,
|
||||||
|
AC_HELP_STRING([--enable-fusionsound], [use FusionSound audio driver [[default=no]]]),
|
||||||
|
, enable_fusionsound=no)
|
||||||
|
if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then
|
||||||
|
fusionsound=no
|
||||||
|
|
||||||
|
FUSIONSOUND_REQUIRED_VERSION=1.1.1
|
||||||
|
|
||||||
|
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
|
||||||
|
AC_MSG_CHECKING(for FusionSound $FUSIONSOUND_REQUIRED_VERSION support)
|
||||||
|
if test x$PKG_CONFIG != xno; then
|
||||||
|
if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then
|
||||||
|
FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound`
|
||||||
|
FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound`
|
||||||
|
fusionsound=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($fusionsound)
|
||||||
|
|
||||||
|
if test x$fusionsound = xyes; then
|
||||||
|
AC_DEFINE(SDL_AUDIO_DRIVER_FUSIONSOUND, 1, [ ])
|
||||||
|
SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c"
|
||||||
|
EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS"
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(fusionsound-shared,
|
||||||
|
AC_HELP_STRING([--enable-fusionsound-shared], [dynamically load fusionsound audio support [[default=yes]]]),
|
||||||
|
, enable_fusionsound_shared=yes)
|
||||||
|
fusionsound_shared=no
|
||||||
|
AC_MSG_CHECKING(for FusionSound dynamic loading support)
|
||||||
|
if test x$have_loadso != xyes && \
|
||||||
|
test x$enable_fusionsound_shared = xyes; then
|
||||||
|
AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic fusionsound loading])
|
||||||
|
fi
|
||||||
|
if test x$have_loadso = xyes && \
|
||||||
|
test x$enable_fusionsound_shared = xyes; then
|
||||||
|
AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC, "libfusionsound.so", [ ])
|
||||||
|
fusionsound_shared=yes
|
||||||
|
SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)"
|
||||||
|
else
|
||||||
|
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS"
|
||||||
|
SUMMARY_audio="${SUMMARY_audio} fusionsound"
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($fusionsound_shared)
|
||||||
|
|
||||||
|
have_audio=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
dnl rcg07142001 See if the user wants the disk writer audio driver...
|
dnl rcg07142001 See if the user wants the disk writer audio driver...
|
||||||
CheckDiskAudio()
|
CheckDiskAudio()
|
||||||
{
|
{
|
||||||
|
@ -1075,6 +1127,34 @@ AC_HELP_STRING([--enable-dummyaudio], [support the dummy audio driver [[default=
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dnl See if libsamplerate is available
|
||||||
|
CheckLibSampleRate()
|
||||||
|
{
|
||||||
|
AC_ARG_ENABLE(libsamplerate,
|
||||||
|
AC_HELP_STRING([--enable-libsamplerate], [use libsamplerate for audio rate conversion [[default=yes]]]),
|
||||||
|
, enable_libsamplerate=yes)
|
||||||
|
if test x$enable_libsamplerate = xyes; then
|
||||||
|
AC_CHECK_HEADER(samplerate.h,
|
||||||
|
have_samplerate_h_hdr=yes,
|
||||||
|
have_samplerate_h_hdr=no)
|
||||||
|
if test x$have_samplerate_h_hdr = xyes; then
|
||||||
|
AC_DEFINE(HAVE_LIBSAMPLERATE_H, 1, [ ])
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(libsamplerate-shared,
|
||||||
|
AC_HELP_STRING([--enable-libsamplerate-shared], [dynamically load libsamplerate [[default=yes]]]),
|
||||||
|
, enable_libsamplerate_shared=yes)
|
||||||
|
|
||||||
|
if test x$enable_libsamplerate_shared = xyes; then
|
||||||
|
samplerate_lib=[`find_lib "libsamplerate.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`]
|
||||||
|
if test x$samplerate_lib != x; then
|
||||||
|
echo "-- dynamic samplerate -> $samplerate_lib"
|
||||||
|
AC_DEFINE_UNQUOTED(SDL_LIBSAMPLERATE_DYNAMIC, "$samplerate_lib", [ ])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
dnl See if GCC's -fvisibility=hidden is supported (gcc4 and later, usually).
|
dnl See if GCC's -fvisibility=hidden is supported (gcc4 and later, usually).
|
||||||
dnl Details of this flag are here: http://gcc.gnu.org/wiki/Visibility
|
dnl Details of this flag are here: http://gcc.gnu.org/wiki/Visibility
|
||||||
CheckVisibilityHidden()
|
CheckVisibilityHidden()
|
||||||
|
@ -1904,58 +1984,6 @@ AC_MSG_WARN("directfb $directfb_lib")
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
dnl Find FusionSound
|
|
||||||
CheckFusionSound()
|
|
||||||
{
|
|
||||||
AC_ARG_ENABLE(fusionsound,
|
|
||||||
AC_HELP_STRING([--enable-fusionsound], [use FusionSound audio driver [[default=no]]]),
|
|
||||||
, enable_fusionsound=no)
|
|
||||||
if test x$enable_audio = xyes -a x$enable_fusionsound = xyes; then
|
|
||||||
fusionsound=no
|
|
||||||
|
|
||||||
FUSIONSOUND_REQUIRED_VERSION=1.1.1
|
|
||||||
|
|
||||||
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
|
|
||||||
AC_MSG_CHECKING(for FusionSound $FUSIONSOUND_REQUIRED_VERSION support)
|
|
||||||
if test x$PKG_CONFIG != xno; then
|
|
||||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.7 && $PKG_CONFIG --atleast-version $FUSIONSOUND_REQUIRED_VERSION fusionsound; then
|
|
||||||
FUSIONSOUND_CFLAGS=`$PKG_CONFIG --cflags fusionsound`
|
|
||||||
FUSIONSOUND_LIBS=`$PKG_CONFIG --libs fusionsound`
|
|
||||||
fusionsound=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
AC_MSG_RESULT($fusionsound)
|
|
||||||
|
|
||||||
if test x$fusionsound = xyes; then
|
|
||||||
AC_DEFINE(SDL_AUDIO_DRIVER_FUSIONSOUND, 1, [ ])
|
|
||||||
SOURCES="$SOURCES $srcdir/src/audio/fusionsound/*.c"
|
|
||||||
EXTRA_CFLAGS="$EXTRA_CFLAGS $FUSIONSOUND_CFLAGS"
|
|
||||||
|
|
||||||
AC_ARG_ENABLE(fusionsound-shared,
|
|
||||||
AC_HELP_STRING([--enable-fusionsound-shared], [dynamically load fusionsound audio support [[default=yes]]]),
|
|
||||||
, enable_fusionsound_shared=yes)
|
|
||||||
fusionsound_shared=no
|
|
||||||
AC_MSG_CHECKING(for FusionSound dynamic loading support)
|
|
||||||
if test x$have_loadso != xyes && \
|
|
||||||
test x$enable_fusionsound_shared = xyes; then
|
|
||||||
AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic fusionsound loading])
|
|
||||||
fi
|
|
||||||
if test x$have_loadso = xyes && \
|
|
||||||
test x$enable_fusionsound_shared = xyes; then
|
|
||||||
AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC, "libfusionsound.so", [ ])
|
|
||||||
fusionsound_shared=yes
|
|
||||||
SUMMARY_audio="${SUMMARY_audio} fusionsound(dynamic)"
|
|
||||||
else
|
|
||||||
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $FUSIONSOUND_LIBS"
|
|
||||||
SUMMARY_audio="${SUMMARY_audio} fusionsound"
|
|
||||||
fi
|
|
||||||
AC_MSG_RESULT($fusionsound_shared)
|
|
||||||
|
|
||||||
have_audio=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
dnl rcg04172001 Set up the Null video driver.
|
dnl rcg04172001 Set up the Null video driver.
|
||||||
CheckDummyVideo()
|
CheckDummyVideo()
|
||||||
{
|
{
|
||||||
|
@ -2968,9 +2996,10 @@ case "$host" in
|
||||||
CheckESD
|
CheckESD
|
||||||
CheckNAS
|
CheckNAS
|
||||||
CheckSNDIO
|
CheckSNDIO
|
||||||
|
CheckFusionSound
|
||||||
|
CheckLibSampleRate
|
||||||
CheckX11
|
CheckX11
|
||||||
CheckDirectFB
|
CheckDirectFB
|
||||||
CheckFusionSound
|
|
||||||
CheckOpenGLX11
|
CheckOpenGLX11
|
||||||
CheckOpenGLESX11
|
CheckOpenGLESX11
|
||||||
CheckMir
|
CheckMir
|
||||||
|
|
|
@ -83,6 +83,7 @@
|
||||||
#cmakedefine HAVE_DBUS_DBUS_H 1
|
#cmakedefine HAVE_DBUS_DBUS_H 1
|
||||||
#cmakedefine HAVE_IBUS_IBUS_H 1
|
#cmakedefine HAVE_IBUS_IBUS_H 1
|
||||||
#cmakedefine HAVE_FCITX_FRONTEND_H 1
|
#cmakedefine HAVE_FCITX_FRONTEND_H 1
|
||||||
|
#cmakedefine HAVE_LIBSAMPLERATE_H 1
|
||||||
|
|
||||||
/* C library functions */
|
/* C library functions */
|
||||||
#cmakedefine HAVE_MALLOC 1
|
#cmakedefine HAVE_MALLOC 1
|
||||||
|
@ -358,6 +359,8 @@
|
||||||
#cmakedefine SDL_ASSEMBLY_ROUTINES @SDL_ASSEMBLY_ROUTINES@
|
#cmakedefine SDL_ASSEMBLY_ROUTINES @SDL_ASSEMBLY_ROUTINES@
|
||||||
#cmakedefine SDL_ALTIVEC_BLITTERS @SDL_ALTIVEC_BLITTERS@
|
#cmakedefine SDL_ALTIVEC_BLITTERS @SDL_ALTIVEC_BLITTERS@
|
||||||
|
|
||||||
|
/* Enable dynamic libsamplerate support */
|
||||||
|
#cmakedefine SDL_LIBSAMPLERATE_DYNAMIC @SDL_LIBSAMPLERATE_DYNAMIC@
|
||||||
|
|
||||||
/* Platform specific definitions */
|
/* Platform specific definitions */
|
||||||
#if !defined(__WIN32__)
|
#if !defined(__WIN32__)
|
||||||
|
|
|
@ -83,6 +83,7 @@
|
||||||
#undef HAVE_DBUS_DBUS_H
|
#undef HAVE_DBUS_DBUS_H
|
||||||
#undef HAVE_IBUS_IBUS_H
|
#undef HAVE_IBUS_IBUS_H
|
||||||
#undef HAVE_FCITX_FRONTEND_H
|
#undef HAVE_FCITX_FRONTEND_H
|
||||||
|
#undef HAVE_LIBSAMPLERATE_H
|
||||||
|
|
||||||
/* C library functions */
|
/* C library functions */
|
||||||
#undef HAVE_MALLOC
|
#undef HAVE_MALLOC
|
||||||
|
@ -363,4 +364,7 @@
|
||||||
/* Enable dynamic udev support */
|
/* Enable dynamic udev support */
|
||||||
#undef SDL_UDEV_DYNAMIC
|
#undef SDL_UDEV_DYNAMIC
|
||||||
|
|
||||||
|
/* Enable dynamic libsamplerate support */
|
||||||
|
#undef SDL_LIBSAMPLERATE_DYNAMIC
|
||||||
|
|
||||||
#endif /* SDL_config_h_ */
|
#endif /* SDL_config_h_ */
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
#include "SDL_assert.h"
|
#include "SDL_assert.h"
|
||||||
#include "../SDL_dataqueue.h"
|
#include "../SDL_dataqueue.h"
|
||||||
|
|
||||||
#ifdef HAVE_LIBSAMPLERATE
|
#if HAVE_LIBSAMPLERATE_H
|
||||||
#include "samplerate.h"
|
#include "samplerate.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -633,7 +633,7 @@ struct SDL_AudioStream
|
||||||
SDL_CleanupAudioStreamResamplerFunc cleanup_resampler_func;
|
SDL_CleanupAudioStreamResamplerFunc cleanup_resampler_func;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef HAVE_LIBSAMPLERATE
|
#ifdef HAVE_LIBSAMPLERATE_H
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
@ -651,8 +651,8 @@ typedef struct
|
||||||
static SDL_bool
|
static SDL_bool
|
||||||
LoadLibSampleRate(SDL_AudioStreamResamplerState_SRC *state)
|
LoadLibSampleRate(SDL_AudioStreamResamplerState_SRC *state)
|
||||||
{
|
{
|
||||||
#ifdef LIBSAMPLERATE_DYNAMIC
|
#ifdef SDL_LIBSAMPLERATE_DYNAMIC
|
||||||
state->SRC_lib = SDL_LoadObject(LIBSAMPLERATE_DYNAMIC);
|
state->SRC_lib = SDL_LoadObject(SDL_LIBSAMPLERATE_DYNAMIC);
|
||||||
if (!state->SRC_lib) {
|
if (!state->SRC_lib) {
|
||||||
return SDL_FALSE;
|
return SDL_FALSE;
|
||||||
}
|
}
|
||||||
|
@ -676,7 +676,7 @@ SDL_ResampleAudioStream_SRC(SDL_AudioStream *stream, const float *inbuf, const i
|
||||||
SRC_DATA data;
|
SRC_DATA data;
|
||||||
int result;
|
int result;
|
||||||
|
|
||||||
data.data_in = inbuf;
|
data.data_in = (float *)inbuf; /* Older versions of libsamplerate had a non-const pointer, but didn't write to it */
|
||||||
data.input_frames = inbuflen / ( sizeof(float) * stream->pre_resample_channels );
|
data.input_frames = inbuflen / ( sizeof(float) * stream->pre_resample_channels );
|
||||||
data.input_frames_used = 0;
|
data.input_frames_used = 0;
|
||||||
|
|
||||||
|
@ -752,7 +752,7 @@ SetupLibSampleRateResampling(SDL_AudioStream *stream)
|
||||||
return SDL_TRUE;
|
return SDL_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* HAVE_LIBSAMPLERATE */
|
#endif /* HAVE_LIBSAMPLERATE_H */
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
@ -873,7 +873,7 @@ SDL_AudioStream *SDL_NewAudioStream(const SDL_AudioFormat src_format,
|
||||||
return NULL; /* SDL_BuildAudioCVT should have called SDL_SetError. */
|
return NULL; /* SDL_BuildAudioCVT should have called SDL_SetError. */
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HAVE_LIBSAMPLERATE
|
#ifdef HAVE_LIBSAMPLERATE_H
|
||||||
SetupLibSampleRateResampling(retval);
|
SetupLibSampleRateResampling(retval);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue