2018-03-24 18:13:48 +00:00
|
|
|
add_library(inputcommon
|
|
|
|
InputConfig.cpp
|
2018-04-14 04:51:32 +00:00
|
|
|
InputProfile.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerEmu/ControllerEmu.cpp
|
2018-12-21 22:11:00 +00:00
|
|
|
ControllerEmu/StickGate.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerEmu/Control/Control.cpp
|
|
|
|
ControllerEmu/Control/Input.cpp
|
|
|
|
ControllerEmu/Control/Output.cpp
|
|
|
|
ControllerEmu/ControlGroup/AnalogStick.cpp
|
2019-01-01 14:32:39 +00:00
|
|
|
ControllerEmu/ControlGroup/Attachments.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerEmu/ControlGroup/Buttons.cpp
|
|
|
|
ControllerEmu/ControlGroup/ControlGroup.cpp
|
|
|
|
ControllerEmu/ControlGroup/Cursor.cpp
|
|
|
|
ControllerEmu/ControlGroup/Force.cpp
|
|
|
|
ControllerEmu/ControlGroup/MixedTriggers.cpp
|
|
|
|
ControllerEmu/ControlGroup/ModifySettingsButton.cpp
|
|
|
|
ControllerEmu/ControlGroup/Slider.cpp
|
|
|
|
ControllerEmu/ControlGroup/Tilt.cpp
|
|
|
|
ControllerEmu/ControlGroup/Triggers.cpp
|
2017-02-26 20:00:24 +00:00
|
|
|
ControllerEmu/Setting/NumericSetting.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/ControllerInterface.cpp
|
|
|
|
ControllerInterface/Device.cpp
|
|
|
|
ControlReference/ControlReference.cpp
|
|
|
|
ControlReference/ExpressionParser.cpp
|
2016-10-12 00:48:38 +00:00
|
|
|
)
|
2018-03-24 18:13:48 +00:00
|
|
|
|
|
|
|
target_link_libraries(inputcommon PUBLIC
|
|
|
|
common
|
|
|
|
)
|
2014-08-02 06:23:52 +00:00
|
|
|
|
2010-11-01 15:47:02 +00:00
|
|
|
if(WIN32)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/DInput/DInput.cpp
|
|
|
|
ControllerInterface/DInput/DInputJoystick.cpp
|
|
|
|
ControllerInterface/DInput/DInputKeyboardMouse.cpp
|
|
|
|
ControllerInterface/DInput/XInputFilter.cpp
|
2017-11-10 17:56:13 +00:00
|
|
|
ControllerInterface/Win32/Win32.cpp
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/XInput/XInput.cpp
|
|
|
|
ControllerInterface/ForceFeedback/ForceFeedbackDevice.cpp
|
|
|
|
)
|
2015-01-03 12:17:57 +00:00
|
|
|
elseif(APPLE)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/OSX/OSX.mm
|
|
|
|
ControllerInterface/OSX/OSXJoystick.mm
|
|
|
|
ControllerInterface/Quartz/Quartz.mm
|
|
|
|
ControllerInterface/Quartz/QuartzKeyboardAndMouse.mm
|
|
|
|
ControllerInterface/ForceFeedback/ForceFeedbackDevice.cpp
|
|
|
|
)
|
2018-03-29 15:53:19 +00:00
|
|
|
target_link_libraries(inputcommon PRIVATE
|
2018-03-24 18:13:48 +00:00
|
|
|
${COREFOUNDATION_LIBRARY}
|
|
|
|
${CARBON_LIBRARY}
|
|
|
|
${COCOA_LIBRARY}
|
2018-03-29 15:53:19 +00:00
|
|
|
${FORCEFEEDBACK_LIBRARY}
|
2018-03-30 19:43:49 +00:00
|
|
|
${IOK_LIBRARY}
|
2018-03-24 18:13:48 +00:00
|
|
|
)
|
2010-11-01 15:47:02 +00:00
|
|
|
elseif(X11_FOUND)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/Xlib/XInput2.cpp
|
|
|
|
)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_link_libraries(inputcommon PUBLIC
|
|
|
|
${X11_LIBRARIES}
|
|
|
|
${X11_INPUT_LIBRARIES}
|
|
|
|
)
|
2013-04-15 04:02:53 +00:00
|
|
|
elseif(ANDROID)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_compile_definitions(inputcommon PRIVATE -DCIFACE_USE_ANDROID)
|
|
|
|
target_sources(inputcommon PRIVATE
|
2017-03-01 12:43:43 +00:00
|
|
|
ControllerInterface/Android/Android.cpp
|
|
|
|
)
|
2010-11-01 15:47:02 +00:00
|
|
|
endif()
|
|
|
|
|
2016-09-28 17:32:13 +00:00
|
|
|
if(ANDROID)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE GCAdapter_Android.cpp)
|
2016-01-06 06:57:08 +00:00
|
|
|
else()
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE GCAdapter.cpp)
|
|
|
|
target_link_libraries(inputcommon PUBLIC ${LIBUSB_LIBRARIES})
|
2016-09-28 17:32:13 +00:00
|
|
|
endif()
|
2015-12-31 16:27:51 +00:00
|
|
|
|
2015-06-29 00:17:35 +00:00
|
|
|
if(LIBEVDEV_FOUND AND LIBUDEV_FOUND)
|
2018-04-10 13:53:08 +00:00
|
|
|
target_sources(inputcommon
|
|
|
|
PRIVATE
|
2018-03-24 18:13:48 +00:00
|
|
|
ControllerInterface/evdev/evdev.cpp
|
|
|
|
)
|
2018-04-10 13:33:00 +00:00
|
|
|
target_include_directories(inputcommon
|
|
|
|
PRIVATE
|
|
|
|
${LIBEVDEV_INCLUDE_DIR}
|
|
|
|
${LIBUDEV_INCLUDE_DIR}
|
|
|
|
)
|
2018-04-10 13:53:08 +00:00
|
|
|
target_link_libraries(inputcommon
|
|
|
|
PRIVATE
|
2018-03-24 18:13:48 +00:00
|
|
|
${LIBEVDEV_LIBRARY}
|
|
|
|
${LIBUDEV_LIBRARY}
|
|
|
|
)
|
2015-06-29 00:17:35 +00:00
|
|
|
endif()
|
|
|
|
|
2015-10-25 03:20:03 +00:00
|
|
|
if(UNIX)
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE
|
|
|
|
ControllerInterface/Pipes/Pipes.cpp
|
|
|
|
)
|
2015-10-25 03:20:03 +00:00
|
|
|
endif()
|
|
|
|
|
2017-02-07 04:59:56 +00:00
|
|
|
if(ENABLE_SDL)
|
2017-01-30 03:50:17 +00:00
|
|
|
find_package(SDL2)
|
|
|
|
if(SDL2_FOUND)
|
|
|
|
message(STATUS "Using shared SDL2")
|
|
|
|
set(SDL_TARGET SDL2::SDL2)
|
|
|
|
else()
|
|
|
|
# SDL2 not found, try SDL
|
|
|
|
find_package(SDL)
|
|
|
|
if(SDL_FOUND)
|
|
|
|
message(STATUS "Using shared SDL")
|
|
|
|
add_library(System_SDL INTERFACE)
|
|
|
|
target_include_directories(System_SDL INTERFACE ${SDL_INCLUDE_DIR})
|
|
|
|
target_link_libraries(System_SDL INTERFACE ${SDL_LIBRARY})
|
|
|
|
set(SDL_TARGET System_SDL)
|
|
|
|
endif()
|
|
|
|
endif()
|
|
|
|
if(SDL_TARGET AND TARGET ${SDL_TARGET})
|
2018-03-24 18:13:48 +00:00
|
|
|
target_sources(inputcommon PRIVATE ControllerInterface/SDL/SDL.cpp)
|
2017-11-09 21:52:33 +00:00
|
|
|
target_link_libraries(inputcommon PRIVATE ${SDL_TARGET})
|
|
|
|
target_compile_definitions(inputcommon PRIVATE "CIFACE_USE_SDL=1")
|
2017-01-30 03:50:17 +00:00
|
|
|
else()
|
|
|
|
message(STATUS "SDL NOT found, disabling SDL input")
|
|
|
|
endif()
|
2017-01-25 23:21:54 +00:00
|
|
|
endif()
|