SDL: configure: move CheckLibDecor into CheckWayland

From 9bcb5e7b94663c09525de9d615b6fd530e2d6f47 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Tue, 27 Jul 2021 20:20:28 +0300
Subject: [PATCH] configure: move CheckLibDecor into CheckWayland

---
 configure    | 126 ++++++++++++++++++++++++++-------------------------
 configure.ac |  78 +++++++++++++++----------------
 2 files changed, 104 insertions(+), 100 deletions(-)

diff --git a/configure b/configure
index c256744acd..8a42ba0aca 100755
--- a/configure
+++ b/configure
@@ -859,6 +859,8 @@ enable_libsamplerate
 enable_libsamplerate_shared
 enable_arm_simd
 enable_arm_neon
+enable_libdecor
+enable_libdecor_shared
 enable_video_wayland
 enable_video_wayland_qt_touch
 enable_wayland_shared
@@ -893,8 +895,6 @@ enable_dbus
 enable_ime
 enable_ibus
 enable_fcitx
-enable_libdecor
-enable_libdecor_shared
 enable_joystick_mfi
 enable_pthreads
 enable_pthread_sem
@@ -1638,6 +1638,10 @@ Optional Features:
                           dynamically load libsamplerate [default=yes]
   --enable-arm-simd       use SIMD assembly blitters on ARM [default=no]
   --enable-arm-neon       use NEON assembly blitters on ARM [default=no]
+  --enable-libdecor       use libdecor for Wayland client-side decorations
+                          [default=yes]
+  --enable-libdecor-shared
+                          dynamically load libdecor [default=yes]
   --enable-video-wayland  use Wayland video driver [default=yes]
   --enable-video-wayland-qt-touch
                           QtWayland server support for Wayland video driver
@@ -1684,10 +1688,6 @@ Optional Features:
   --enable-ime            enable IME support [default=yes]
   --enable-ibus           enable IBus support [default=yes]
   --enable-fcitx          enable fcitx support [default=yes]
-  --enable-libdecor       use libdecor for Wayland client-side decorations
-                          [default=yes]
-  --enable-libdecor-shared
-                          dynamically load libdecor [default=yes]
   --enable-joystick-mfi   include macOS MFI joystick support [default=yes]
   --enable-pthreads       use POSIX threads for multi-threading
                           [default=maybe]
@@ -19871,6 +19871,62 @@ $as_echo "$need_gcc_Wno_multichar" >&6; }
     fi
 }
 
+CheckLibDecor()
+{
+    # Check whether --enable-libdecor was given.
+if test "${enable_libdecor+set}" = set; then :
+  enableval=$enable_libdecor;
+else
+  enable_libdecor=yes
+fi
+
+    if test x$enable_libdecor = xyes; then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libdecor support" >&5
+$as_echo_n "checking for libdecor support... " >&6; }
+        if $PKG_CONFIG --exists libdecor-0; then :
+  video_libdecor=yes
+else
+  video_libdecor=no
+fi
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $video_libdecor" >&5
+$as_echo "$video_libdecor" >&6; }
+        if test x$video_libdecor = xyes; then
+            EXTRA_CFLAGS="$EXTRA_CFLAGS `$PKG_CONFIG --cflags libdecor-0`"
+
+$as_echo "#define HAVE_LIBDECOR_H 1" >>confdefs.h
+
+
+            # Check whether --enable-libdecor-shared was given.
+if test "${enable_libdecor_shared+set}" = set; then :
+  enableval=$enable_libdecor_shared;
+else
+  enable_libdecor_shared=yes
+fi
+
+
+            decor_lib=`find_lib "libdecor-0.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`
+
+            if test x$have_loadso != xyes && \
+               test x$enable_libdecor_shared = xyes; then
+                { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic libdecor loading" >&5
+$as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic libdecor loading" >&2;}
+            fi
+
+            if test x$have_loadso = xyes && \
+               test x$enable_libdecor_shared = xyes && test x$decor_lib != x; then
+                echo "-- dynamic libdecor -> $decor_lib"
+
+cat >>confdefs.h <<_ACEOF
+#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR "$decor_lib"
+_ACEOF
+
+            else
+                EXTRA_LDFLAGS="$EXTRA_LDFLAGS `$PKG_CONFIG --libs libdecor-0`"
+            fi
+        fi
+    fi
+}
+
 CheckWayland()
 {
     # Check whether --enable-video-wayland was given.
@@ -19989,6 +20045,8 @@ _ACEOF
                 SUMMARY_video="${SUMMARY_video} wayland"
             fi
             have_video=yes
+
+            CheckLibDecor
         fi
     fi
 }
@@ -23355,61 +23413,6 @@ $as_echo "$have_fcitx" >&6; }
     fi
 }
 
-CheckLibDecor()
-{
-    # Check whether --enable-libdecor was given.
-if test "${enable_libdecor+set}" = set; then :
-  enableval=$enable_libdecor;
-else
-  enable_libdecor=yes
-fi
-
-    if test x$enable_libdecor = xyes; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libdecor support" >&5
-$as_echo_n "checking for libdecor support... " >&6; }
-        if $PKG_CONFIG --exists libdecor-0; then :
-  video_libdecor=yes
-else
-  video_libdecor=no
-fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $video_libdecor" >&5
-$as_echo "$video_libdecor" >&6; }
-        if test x$video_libdecor = xyes; then
-            EXTRA_CFLAGS="$EXTRA_CFLAGS `$PKG_CONFIG --cflags libdecor-0`"
-
-$as_echo "#define HAVE_LIBDECOR_H 1" >>confdefs.h
-
-
-            # Check whether --enable-libdecor-shared was given.
-if test "${enable_libdecor_shared+set}" = set; then :
-  enableval=$enable_libdecor_shared;
-else
-  enable_libdecor_shared=yes
-fi
-
-
-            decor_lib=`find_lib "libdecor-0.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`
-
-            if test x$have_loadso != xyes && \
-               test x$enable_libdecor_shared = xyes; then
-                { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You must have SDL_LoadObject() support for dynamic libdecor loading" >&5
-$as_echo "$as_me: WARNING: You must have SDL_LoadObject() support for dynamic libdecor loading" >&2;}
-            fi
-            if test x$have_loadso = xyes && \
-               test x$enable_libdecor_shared = xyes && test x$decor_lib != x; then
-                echo "-- dynamic libdecor -> $decor_lib"
-
-cat >>confdefs.h <<_ACEOF
-#define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR "$decor_lib"
-_ACEOF
-
-            else
-                EXTRA_LDFLAGS="$EXTRA_LDFLAGS `$PKG_CONFIG --libs libdecor-0`"
-            fi
-        fi
-    fi
-}
-
 CheckJoystickMFI()
 {
     # Check whether --enable-joystick-mfi was given.
@@ -25018,7 +25021,6 @@ $as_echo "#define SDL_VIDEO_DRIVER_ANDROID 1" >>confdefs.h
         CheckInotify
         CheckIBus
         CheckFcitx
-        CheckLibDecor
         case $ARCH in
           linux)
               CheckInputKD
diff --git a/configure.ac b/configure.ac
index 615048e41a..40cfc0d3b4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1511,6 +1511,44 @@ CheckWarnAll()
     fi
 }
 
+dnl See if libdecor is available
+CheckLibDecor()
+{
+    AC_ARG_ENABLE(libdecor,
+[AS_HELP_STRING([--enable-libdecor], [use libdecor for Wayland client-side decorations [default=yes]])],
+                  , enable_libdecor=yes)
+    if test x$enable_libdecor = xyes; then
+        AC_MSG_CHECKING(for libdecor support)
+        AS_IF([$PKG_CONFIG --exists libdecor-0],
+              [video_libdecor=yes],
+              [video_libdecor=no])
+        AC_MSG_RESULT($video_libdecor)
+        if test x$video_libdecor = xyes; then
+            EXTRA_CFLAGS="$EXTRA_CFLAGS `$PKG_CONFIG --cflags libdecor-0`"
+            AC_DEFINE(HAVE_LIBDECOR_H, 1, [ ])
+
+            AC_ARG_ENABLE(libdecor-shared,
+[AS_HELP_STRING([--enable-libdecor-shared], [dynamically load libdecor [default=yes]])],
+                 , enable_libdecor_shared=yes)
+
+            decor_lib=[`find_lib "libdecor-0.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`]
+
+            if test x$have_loadso != xyes && \
+               test x$enable_libdecor_shared = xyes; then
+                AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic libdecor loading])
+            fi
+
+            if test x$have_loadso = xyes && \
+               test x$enable_libdecor_shared = xyes && test x$decor_lib != x; then
+                echo "-- dynamic libdecor -> $decor_lib"
+                AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR, "$decor_lib", [ ])
+            else
+                EXTRA_LDFLAGS="$EXTRA_LDFLAGS `$PKG_CONFIG --libs libdecor-0`"
+            fi
+        fi
+    fi
+}
+
 dnl Check for Wayland
 CheckWayland()
 {
@@ -1595,6 +1633,8 @@ CheckWayland()
                 SUMMARY_video="${SUMMARY_video} wayland"
             fi
             have_video=yes
+
+            CheckLibDecor
         fi
     fi
 }
@@ -2777,43 +2817,6 @@ CheckFcitx()
     fi
 }
 
-dnl See if libdecor is available
-CheckLibDecor()
-{
-    AC_ARG_ENABLE(libdecor,
-[AS_HELP_STRING([--enable-libdecor], [use libdecor for Wayland client-side decorations [default=yes]])],
-                  , enable_libdecor=yes)
-    if test x$enable_libdecor = xyes; then
-        AC_MSG_CHECKING(for libdecor support)
-        AS_IF([$PKG_CONFIG --exists libdecor-0],
-              [video_libdecor=yes],
-              [video_libdecor=no])
-        AC_MSG_RESULT($video_libdecor)
-        if test x$video_libdecor = xyes; then
-            EXTRA_CFLAGS="$EXTRA_CFLAGS `$PKG_CONFIG --cflags libdecor-0`"
-            AC_DEFINE(HAVE_LIBDECOR_H, 1, [ ])
-
-            AC_ARG_ENABLE(libdecor-shared,
-[AS_HELP_STRING([--enable-libdecor-shared], [dynamically load libdecor [default=yes]])],
-                          , enable_libdecor_shared=yes)
-
-            decor_lib=[`find_lib "libdecor-0.so.*" "" | sed 's/.*\/\(.*\)/\1/; q'`]
-
-            if test x$have_loadso != xyes && \
-               test x$enable_libdecor_shared = xyes; then
-                AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic libdecor loading])
-            fi
-            if test x$have_loadso = xyes && \
-               test x$enable_libdecor_shared = xyes && test x$decor_lib != x; then
-                echo "-- dynamic libdecor -> $decor_lib"
-                AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR, "$decor_lib", [ ])
-            else
-                EXTRA_LDFLAGS="$EXTRA_LDFLAGS `$PKG_CONFIG --libs libdecor-0`"
-            fi
-        fi
-    fi
-}
-
 dnl Check to see if GameController framework support is desired
 CheckJoystickMFI()
 {
@@ -3609,7 +3612,6 @@ case "$host" in
         CheckInotify
         CheckIBus
         CheckFcitx
-        CheckLibDecor
         case $ARCH in
           linux)
               CheckInputKD