[SDL_Tizen] Add pre-rotation environment variable
[platform/upstream/SDL.git] / configure.in
old mode 100644 (file)
new mode 100755 (executable)
index f585d01..ef6ff5a
@@ -1177,9 +1177,9 @@ AC_HELP_STRING([--enable-video-wayland-qt-touch], [QtWayland server support for
         if  test x$PKG_CONFIG != xno && \
             test x$video_opengl_egl = xyes && \
             test x$video_opengles_v2 = xyes; then
-            if $PKG_CONFIG --exists wayland-client wayland-egl wayland-cursor egl xkbcommon ; then
-                WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl wayland-cursor xkbcommon`
-                WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl wayland-cursor xkbcommon`
+            if $PKG_CONFIG --exists wayland-client wayland-egl wayland-cursor egl xkbcommon xdg-shell-client text-client tizen-extension-client ; then
+                WAYLAND_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl wayland-cursor xkbcommon xdg-shell-client text-client tizen-extension-client`
+                WAYLAND_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl wayland-cursor xkbcommon xdg-shell-client text-client tizen-extension-client`
                 video_wayland=yes
             fi
         fi
@@ -1207,6 +1207,9 @@ AC_HELP_STRING([--enable-wayland-shared], [dynamically load Wayland support [[de
                     fi
                     wayland_cursor_lib=[`find_lib "libwayland-cursor.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
                     xkbcommon_lib=[`find_lib "libxkbcommon.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
+                    xdg_shell_client_lib=[`find_lib "libxdg-shell-client.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
+                    text_client_lib=[`find_lib "libtext-client.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
+                    tizen_extension_client_lib=[`find_lib "libtizen-extension-client.so.*" "$WAYLAND_LIBS" | sed 's/.*\/\(.*\)/\1/; q'`]
                     ;;
             esac
 
@@ -1223,15 +1226,24 @@ AC_HELP_STRING([--enable-wayland-shared], [dynamically load Wayland support [[de
                test x$wayland_client_lib != x && \
                test x$wayland_egl_lib != x && \
                test x$wayland_cursor_lib != x && \
+               test x$xdg_shell_client_lib != x && \
+               test x$text_client_lib != x && \
+               test x$tizen_extension_client_lib != x && \
                test x$xkbcommon_lib != x; then
                 echo "-- dynamic libwayland-client -> $wayland_client_lib"
                 echo "-- dynamic libwayland-egl -> $wayland_egl_lib"
                 echo "-- dynamic libwayland-cursor -> $wayland_cursor_lib"
                 echo "-- dynamic libxkbcommon -> $xkbcommon_lib"
+                echo "-- dynamic libxdg_shell_client -> $xdg_shell_client_lib"
+                echo "-- dynamic libtext_client -> $xtext_client_lib"
+                echo "-- dynamic libtizen_extension_client -> $xtizen_extension_client_lib"
                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC, "$wayland_client_lib", [ ])
                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL, "$wayland_egl_lib", [ ])
                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR, "$wayland_cursor_lib", [ ])
                 AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON, "$xkbcommon_lib", [ ])
+                AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XDGSHELLCLIENT, "$xdg_shell_client_lib", [ ])
+                AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_TEXTCLIENT, "$text_client_lib", [ ])
+                AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_TIZENEXTENSIONCLIENT, "$tizen_extension_client_lib", [ ])
                 SUMMARY_video="${SUMMARY_video} wayland(dynamic)"
             else
                 enable_wayland_shared=no
@@ -1243,6 +1255,53 @@ AC_HELP_STRING([--enable-wayland-shared], [dynamically load Wayland support [[de
     fi
 }
 
+dnl Check for Tizen
+CheckTizen()
+{
+    AC_ARG_ENABLE(video-tizen,
+                               AC_HELP_STRING([--enable-video-tizen], [use tizen video driver [[default=yes]]]),
+                               ,enable_video_tizen=yes)
+
+    if test x$enable_video = xyes -a x$enable_video_tizen = xyes; then
+        AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
+        AC_MSG_CHECKING(for Tizen support)
+        video_tizen=no
+        if  test x$PKG_CONFIG != xno && \
+            test x$video_opengl_egl = xyes && \
+            test x$video_opengles_v2 = xyes; then
+            if $PKG_CONFIG --exists wayland-client wayland-egl ecore ecore-wayland eina capi-appfw-application capi-system-system-settings ecore-input dlog ecore-imf libdrm ecore-ipc tizen-remote-surface-client; then
+                TIZEN_CFLAGS=`$PKG_CONFIG --cflags wayland-client wayland-egl ecore ecore-wayland eina capi-appfw-application capi-system-system-settings ecore-input dlog ecore-imf libdrm aul ecore-ipc tizen-remote-surface-client`
+                TIZEN_LIBS=`$PKG_CONFIG --libs wayland-client wayland-egl ecore ecore-wayland eina capi-appfw-application capi-system-system-settings ecore-input dlog ecore-imf libdrm aul ecore-ipc tizen-remote-surface-client`
+                video_tizen=yes
+            fi
+        fi
+
+        AC_MSG_RESULT($video_tizen)
+
+        if test x$video_tizen = xyes; then
+            AC_DEFINE(SDL_VIDEO_DRIVER_TIZEN, 1, [ ])
+            SOURCES="$SOURCES $srcdir/src/video/tizen/*.c"
+            SOURCES="$SOURCES $srcdir/src/core/tizen/*.c"
+            SDLMAIN_SOURCES="$srcdir/src/main/tizen/*.c"
+
+            SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main"
+            SDL_LIBS="-lSDL2main $SDL_LIBS"
+
+            EXTRA_CFLAGS="$EXTRA_CFLAGS $TIZEN_CFLAGS -DTIZEN"
+            EXTRA_LDFLAGS="$EXTRA_LDFLAGS $TIZEN_LIBS"
+            SUMMARY_video="${SUMMARY_video} tizen"
+            have_video=yes
+        fi
+    fi
+
+    if test x$enable_joystick = xyes; then
+        SUMMARY="${SUMMARY}SDL2 tizen joystick in:\n"
+        AC_DEFINE(SDL_JOYSTICK_TIZEN, 1, [ ])
+        SOURCES="$SOURCES $srcdir/src/joystick/tizen/*.c"
+        have_joystick=yes
+    fi
+}
+
 dnl Check for Mir
 CheckMir()
 {
@@ -1978,6 +2037,10 @@ AC_HELP_STRING([--enable-video-opengles1], [include OpenGL ES 1.1 support [[defa
 AC_ARG_ENABLE(video-opengles2,
 AC_HELP_STRING([--enable-video-opengles2], [include OpenGL ES 2.0 support [[default=yes]]]),
               , enable_video_opengles2=yes)
+AC_ARG_ENABLE(video-vulkan,
+AC_HELP_STRING([--enable-video-vulkan], [include Vulkan support [[default=yes]]]),
+              , enable_video_vulkan=yes)
+
 
 dnl Find OpenGL ES
 CheckOpenGLESX11()
@@ -2144,6 +2207,28 @@ CheckEmscriptenGLES()
     fi
 }
 
+dnl Check for Tizen Vulkan
+CheckVulkanTizen()
+{
+    if test x$enable_video = xyes -a x$enable_video_vulkan = xyes; then
+        AC_MSG_CHECKING(for Vulkan support)
+        video_vulkan=no
+        AC_TRY_COMPILE([
+         #include <vulkan/vulkan.h>
+        ],[
+          uint32_t instance_layer_count = 0;
+          vkEnumerateInstanceLayerProperties(&instance_layer_count, NULL);
+        ],[
+        video_vulkan=yes
+        ])
+        AC_MSG_RESULT($video_vulkan)
+        if test x$video_vulkan = xyes; then
+            AC_DEFINE(SDL_VIDEO_VULKAN, 1, [ ])
+            SUMMARY_video="${SUMMARY_video} vulkan"
+        fi
+    fi
+}
+
 dnl See if we can use the new unified event interface in Linux 2.4
 CheckInputEvents()
 {
@@ -2886,8 +2971,10 @@ case "$host" in
         CheckFusionSound
         CheckOpenGLX11
         CheckOpenGLESX11
+        CheckVulkanTizen
         CheckMir
         CheckWayland
+        CheckTizen
         CheckLibUDev
         CheckDBus
         CheckIBus
@@ -2931,19 +3018,21 @@ case "$host" in
           esac
         fi
         # Set up files for the joystick library
-        if test x$enable_joystick = xyes; then
-          case $ARCH in
-            linux)
-                AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
-                SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
-                have_joystick=yes
-            ;;
-            android)
-                AC_DEFINE(SDL_JOYSTICK_ANDROID, 1, [ ])
-                SOURCES="$SOURCES $srcdir/src/joystick/android/*.c"
-                have_joystick=yes
-            ;;
-          esac
+        if test x$have_joystick != xyes; then
+            if test x$enable_joystick = xyes; then
+              case $ARCH in
+                linux)
+                    AC_DEFINE(SDL_JOYSTICK_LINUX, 1, [ ])
+                    SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c"
+                    have_joystick=yes
+                ;;
+                android)
+                    AC_DEFINE(SDL_JOYSTICK_ANDROID, 1, [ ])
+                    SOURCES="$SOURCES $srcdir/src/joystick/android/*.c"
+                    have_joystick=yes
+                ;;
+              esac
+            fi
         fi
         # Set up files for the haptic library
         if test x$enable_haptic = xyes; then
@@ -3553,7 +3642,7 @@ AC_CONFIG_FILES([
 ])
 AC_CONFIG_COMMANDS([sdl2_config],[chmod a+x sdl2-config])
 
-SUMMARY="SDL2 Configure Summary:\n"
+SUMMARY="${SUMMARY}SDL2 Configure Summary:\n"
 if test x$enable_shared = xyes; then
     SUMMARY="${SUMMARY}Building Shared Libraries\n"
 fi