feat: add gamepad buttons support android (#2066)

* feat: add support gamepad buttons

* feat: add support gamepad with github repo

* feat: add gitmodules dependency

* feat: add submodule qtgamepad

* chore: update qtgamepad submodule to commit 4e57142e563b931766056b4c7507c16892260222

* fix: update qtgamepad with standard CMake and private headers support

Update qtgamepad to commit f72b3e0 which:
- Replaces qt_add_library with standard add_library to avoid Qt 6.10 macro conflicts
- Copies private headers to build include tree for Android backend
- Creates Qt:: and Qt6:: namespace aliases for proper linking
This commit is contained in:
NickVs2015
2026-02-05 17:57:15 +03:00
committed by GitHub
parent 7960d8015d
commit 9f0ae75a2f
6 changed files with 112 additions and 1 deletions
+15 -1
View File
@@ -39,6 +39,11 @@ endif()
find_package(Qt6 REQUIRED COMPONENTS ${PACKAGES})
# Android: Qt private modules (like CorePrivate) are needed by qtgamepad
if(ANDROID)
find_package(Qt6CorePrivate CONFIG REQUIRED)
endif()
set(LIBS ${LIBS}
Qt6::Core Qt6::Gui
Qt6::Network Qt6::Xml Qt6::RemoteObjects
@@ -228,4 +233,13 @@ if(NOT IOS AND NOT ANDROID AND NOT MACOS_NE)
endif()
target_sources(${PROJECT} PRIVATE ${SOURCES} ${HEADERS} ${RESOURCES} ${QRC} ${I18NQRC})
qt_finalize_target(${PROJECT})
# Finalize the executable so Qt can gather/deploy QML modules and plugins correctly (Android needs this).
if(COMMAND qt_import_qml_plugins)
qt_import_qml_plugins(${PROJECT})
endif()
if(COMMAND qt_finalize_executable)
qt_finalize_executable(${PROJECT})
else()
qt_finalize_target(${PROJECT})
endif()