aboutsummaryrefslogtreecommitdiff
path: root/games/retroarch/files/patch-input_drivers_udev__input.c
diff options
context:
space:
mode:
Diffstat (limited to 'games/retroarch/files/patch-input_drivers_udev__input.c')
-rw-r--r--games/retroarch/files/patch-input_drivers_udev__input.c73
1 files changed, 73 insertions, 0 deletions
diff --git a/games/retroarch/files/patch-input_drivers_udev__input.c b/games/retroarch/files/patch-input_drivers_udev__input.c
new file mode 100644
index 000000000000..2adc11c44d4f
--- /dev/null
+++ b/games/retroarch/files/patch-input_drivers_udev__input.c
@@ -0,0 +1,73 @@
+--- input/drivers/udev_input.c.orig 2025-05-01 00:17:50 UTC
++++ input/drivers/udev_input.c
+@@ -71,7 +71,9 @@
+
+ #include "../input_keymaps.h"
+
++#ifdef __linux__
+ #include "../common/linux_common.h"
++#endif
+
+ #include "../../configuration.h"
+ #include "../../retroarch.h"
+@@ -570,7 +572,9 @@ typedef struct udev_input
+ bool xkb_handling;
+ #endif
+
++#ifdef __linux__
+ linux_illuminance_sensor_t *illuminance_sensor;
++#endif
+ } udev_input_t;
+
+ #ifdef UDEV_XKB_HANDLING
+@@ -3952,7 +3956,9 @@ static void udev_input_free(void *data)
+
+ udev_input_kb_free(udev);
+
++#ifdef __linux__
+ linux_close_illuminance_sensor(udev->illuminance_sensor);
++#endif
+
+ free(udev);
+ }
+@@ -3968,13 +3974,16 @@ static bool udev_set_sensor_state(void *data, unsigned
+ {
+ case RETRO_SENSOR_ILLUMINANCE_DISABLE:
+ /* If already disabled, then do nothing */
++#ifdef __linux__
+ linux_close_illuminance_sensor(udev->illuminance_sensor); /* noop if NULL */
+ udev->illuminance_sensor = NULL;
++#endif
+ case RETRO_SENSOR_GYROSCOPE_DISABLE:
+ case RETRO_SENSOR_ACCELEROMETER_DISABLE:
+ /** Unimplemented sensor actions that probably shouldn't fail */
+ return true;
+
++#ifdef __linux__
+ case RETRO_SENSOR_ILLUMINANCE_ENABLE:
+ if (udev->illuminance_sensor)
+ /* If we already have a sensor, just set the rate */
+@@ -3983,6 +3992,7 @@ static bool udev_set_sensor_state(void *data, unsigned
+ udev->illuminance_sensor = linux_open_illuminance_sensor(rate);
+
+ return udev->illuminance_sensor != NULL;
++#endif
+ default:
+ break;
+ }
+@@ -3992,6 +4002,7 @@ static float udev_get_sensor_input(void *data, unsigne
+
+ static float udev_get_sensor_input(void *data, unsigned port, unsigned id)
+ {
++#ifdef __linux__
+ udev_input_t *udev = (udev_input_t*)data;
+
+ if (!udev)
+@@ -4005,6 +4016,7 @@ static float udev_get_sensor_input(void *data, unsigne
+ default:
+ break;
+ }
++#endif
+
+ return 0.0f;
+ }