]> git.lizzy.rs Git - irrlicht.git/commitdiff
Enable XInput2 by default (and improve CMake detection)
authorsfan5 <sfan5@live.de>
Mon, 18 Jul 2022 19:34:47 +0000 (21:34 +0200)
committersfan5 <sfan5@live.de>
Mon, 18 Jul 2022 19:42:43 +0000 (21:42 +0200)
closes #73

.github/workflows/build.yml
include/IrrCompileConfig.h
source/Irrlicht/CMakeLists.txt

index b45988dc848d7bcafdf71102a1398530aeab61b1..155f20edfe85a0389030a32b6dcd924317b138fe 100644 (file)
@@ -14,7 +14,7 @@ jobs:
       - name: Install deps
         run: |
           sudo apt-get update
-          sudo apt-get install g++ cmake libxxf86vm-dev libgl1-mesa-dev libpng-dev libjpeg-dev zlib1g-dev -qyy
+          sudo apt-get install g++ cmake libxi-dev libgl1-mesa-dev libpng-dev libjpeg-dev zlib1g-dev -qyy
 
       - name: Build
         run: |
@@ -38,7 +38,7 @@ jobs:
       - name: Install deps
         run: |
           sudo apt-get update
-          sudo apt-get install g++ cmake libxxf86vm-dev libgles2-mesa-dev libpng-dev libjpeg-dev zlib1g-dev xvfb -qyy
+          sudo apt-get install g++ cmake libxi-dev libgles2-mesa-dev libpng-dev libjpeg-dev zlib1g-dev xvfb -qyy
 
       - name: Build
         run: |
index 4c1cb7358140dfa8dd8282fe24c97965b24050b5..16ac7e5f8726a286c67ebc537910c774744cf208 100644 (file)
@@ -274,6 +274,7 @@ define out. */
 \r
 #if defined(_IRR_LINUX_PLATFORM_) && defined(_IRR_COMPILE_WITH_X11_)\r
 //! XInput2 (library called Xi) is currently only used to support touch-input.\r
+#define _IRR_LINUX_X11_XINPUT2_\r
 #ifdef NO_IRR_LINUX_X11_XINPUT2_\r
 #undef _IRR_LINUX_X11_XINPUT2_\r
 #endif\r
index 07c10cd6f05af1a8ebe2175f4739eee2c03d71da..9c10d8a59132a516734bc25356e06e7673948be9 100644 (file)
@@ -77,11 +77,8 @@ if(OGL_ENABLED)
        set(OpenGL_GL_PREFERENCE "LEGACY")
        find_package(OpenGL REQUIRED)
 endif()
-if(NOT ANDROID AND NOT APPLE)
+if(UNIX AND NOT ANDROID AND NOT APPLE)
        check_symbol_exists(_IRR_LINUX_X11_XINPUT2_ "IrrCompileConfig.h" XINPUT2_ENABLED)
-       if(XINPUT2_ENABLED)
-               find_library(XINPUT_LIBRARY Xi REQUIRED)
-       endif()
 endif()
 check_symbol_exists(_IRR_COMPILE_WITH_SDL_DEVICE_ "IrrCompileConfig.h" SDL_ENABLED)
 if(SDL_ENABLED)
@@ -102,6 +99,9 @@ elseif(APPLE)
 else()
        # Unix probably
        find_package(X11 REQUIRED)
+       if(XINPUT2_ENABLED AND NOT X11_Xi_FOUND)
+               message(FATAL_ERROR "XInput not found")
+       endif()
 endif()
 
 set(link_includes
@@ -131,7 +131,6 @@ set(link_libs
        ${OPENGLES_LIBRARY}
        ${OPENGLES2_LIBRARIES}
        ${EGL_LIBRARY}
-       ${XINPUT_LIBRARY}
 
        "$<$<PLATFORM_ID:Android>:native_app_glue -landroid -llog>"
        ${COCOA_LIB}
@@ -139,6 +138,7 @@ set(link_libs
        "$<$<PLATFORM_ID:Windows>:gdi32>"
        "$<$<PLATFORM_ID:Windows>:winmm>"
        ${X11_X11_LIB}
+       ${X11_Xi_LIB}
 )
 
 # Source files