On Tue, 04/10 13:40, Peter Xu wrote:
> SDL has the same problem as GTK that we might get warnings on SDL ABI
> version even if SDL is disabled. Fix that by only probing SDL if SDL is
> enabled. Also this should let configure be a little bit faster since we
> don't really need to probe SDL stuff when it's off.
>
> CC: Paolo Bonzini
> CC: Gerd Hoffmann
> CC: Peter Maydell
> CC: Daniel P. Berrange
> CC: Fam Zheng
> CC: "Philippe Mathieu-Daudé"
> Signed-off-by: Peter Xu
> ---
> configure | 83
> ++-
> 1 file changed, 45 insertions(+), 38 deletions(-)
>
> diff --git a/configure b/configure
> index 752dd9ef32..f647026b8d 100755
> --- a/configure
> +++ b/configure
> @@ -2836,49 +2836,52 @@ fi
> # Look for sdl configuration program (pkg-config or sdl-config). Try
> # sdl-config even without cross prefix, and favour pkg-config over
> sdl-config.
>
> -if test "$sdlabi" = ""; then
> -if $pkg_config --exists "sdl2"; then
> -sdlabi=2.0
> -elif $pkg_config --exists "sdl"; then
> -sdlabi=1.2
> -else
> -sdlabi=2.0
> -fi
> -fi
> +sdl_probe ()
> +{
We have had
function_name()
{
...
and
function_name() {
...
and
function_name () {
...
finally you invent the last in the family:
function_name ()
{
:)
.
> + sdl_too_old=no
> + if test "$sdlabi" = ""; then
> + if $pkg_config --exists "sdl2"; then
> + sdlabi=2.0
> + elif $pkg_config --exists "sdl"; then
> + sdlabi=1.2
> + else
> + sdlabi=2.0
> + fi
> + fi
>
> -if test $sdlabi = "2.0"; then
> -sdl_config=$sdl2_config
> -sdlname=sdl2
> -sdlconfigname=sdl2_config
> -elif test $sdlabi = "1.2"; then
> -sdlname=sdl
> -sdlconfigname=sdl_config
> -else
> -error_exit "Unknown sdlabi $sdlabi, must be 1.2 or 2.0"
> -fi
> + if test $sdlabi = "2.0"; then
> + sdl_config=$sdl2_config
> + sdlname=sdl2
> + sdlconfigname=sdl2_config
> + elif test $sdlabi = "1.2"; then
> + sdlname=sdl
> + sdlconfigname=sdl_config
> + else
> + error_exit "Unknown sdlabi $sdlabi, must be 1.2 or 2.0"
> + fi
>
> -if test "$(basename $sdl_config)" != $sdlconfigname && ! has ${sdl_config};
> then
> - sdl_config=$sdlconfigname
> -fi
> + if test "$(basename $sdl_config)" != $sdlconfigname && ! has
> ${sdl_config}; then
> +sdl_config=$sdlconfigname
> + fi
>
> -if $pkg_config $sdlname --exists; then
> - sdlconfig="$pkg_config $sdlname"
> - sdlversion=$($sdlconfig --modversion 2>/dev/null)
> -elif has ${sdl_config}; then
> - sdlconfig="$sdl_config"
> - sdlversion=$($sdlconfig --version)
> -else
> - if test "$sdl" = "yes" ; then
> -feature_not_found "sdl" "Install SDL2-devel"
> + if $pkg_config $sdlname --exists; then
> +sdlconfig="$pkg_config $sdlname"
> +sdlversion=$($sdlconfig --modversion 2>/dev/null)
> + elif has ${sdl_config}; then
> +sdlconfig="$sdl_config"
> +sdlversion=$($sdlconfig --version)
> + else
> +if test "$sdl" = "yes" ; then
> + feature_not_found "sdl" "Install SDL2-devel"
> +fi
> +sdl=no
> +# no need to do the rest
> +return
> + fi
> + if test -n "$cross_prefix" && test "$(basename "$sdlconfig")" =
> sdl-config; then
> +echo warning: using "\"$sdlconfig\"" to detect cross-compiled sdl >&2
>fi
> - sdl=no
> -fi
> -if test -n "$cross_prefix" && test "$(basename "$sdlconfig")" = sdl-config;
> then
> - echo warning: using "\"$sdlconfig\"" to detect cross-compiled sdl >&2
> -fi
>
> -sdl_too_old=no
> -if test "$sdl" != "no" ; then
>cat > $TMPC << EOF
> #include
> #undef main /* We don't want SDL to override our main() */
> @@ -2920,6 +2923,10 @@ EOF
> fi
> sdl=no
>fi # sdl compile test
> +}
> +
> +if test "$sdl" != "no" ; then
> + sdl_probe
> fi
>
> if test "$sdl" = "yes" ; then
> --
> 2.14.3
>
Reviewed-by: Fam Zheng