gnu: sdl2: Use udev to discover input devices.
Without udev SDL falls back on custom detection code, which blocks every three seconds while checking for new devices. * gnu/packages/sdl.scm (sdl2)[inputs]: Add eudev. [arguments]<#:make-flags>: Add LDFLAGS to include eudev in rpath so that dlopen can find it. Signed-off-by: Marius Bakke <mbakke@fastmail.com>
This commit is contained in:
parent
3ccfa4048a
commit
9d4ed35703
1 changed files with 14 additions and 8 deletions
|
@ -132,20 +132,26 @@ joystick, and graphics hardware.")
|
||||||
"--disable-kmsdrm-shared")
|
"--disable-kmsdrm-shared")
|
||||||
,flags))
|
,flags))
|
||||||
((#:make-flags flags ''())
|
((#:make-flags flags ''())
|
||||||
;; Add the Fcitx header files to GCCs "system header" search path
|
`(cons*
|
||||||
;; in order to suppress compiler warnings induced by those:
|
;; Add the Fcitx header files to GCCs "system header" search path
|
||||||
;; .../include/fcitx-utils/utarray.h:178:9: error: ISO C90 forbids
|
;; in order to suppress compiler warnings induced by those:
|
||||||
;; mixed declarations and code [-Werror=declaration-after-statement]
|
;; .../include/fcitx-utils/utarray.h:178:9: error: ISO C90 forbids
|
||||||
`(append (list (string-append "C_INCLUDE_PATH="
|
;; mixed declarations and code [-Werror=declaration-after-statement]
|
||||||
(assoc-ref %build-inputs "fcitx")
|
(string-append "C_INCLUDE_PATH="
|
||||||
"/include"))
|
(assoc-ref %build-inputs "fcitx") "/include")
|
||||||
,flags))))
|
;; SDL dlopens libudev, so make sure it is in rpath. This overrides
|
||||||
|
;; the LDFLAG set in sdl’s configure-flags, which isn’t necessary
|
||||||
|
;; as sdl2 includes Mesa by default.
|
||||||
|
(string-append "LDFLAGS=-Wl,-rpath,"
|
||||||
|
(assoc-ref %build-inputs "eudev") "/lib")
|
||||||
|
,flags))))
|
||||||
(inputs
|
(inputs
|
||||||
;; SDL2 needs to be built with ibus support otherwise some systems
|
;; SDL2 needs to be built with ibus support otherwise some systems
|
||||||
;; experience a bug where input events are doubled.
|
;; experience a bug where input events are doubled.
|
||||||
;;
|
;;
|
||||||
;; For more information, see: https://dev.solus-project.com/T1721
|
;; For more information, see: https://dev.solus-project.com/T1721
|
||||||
(append `(("dbus" ,dbus)
|
(append `(("dbus" ,dbus)
|
||||||
|
("eudev" ,eudev) ; for discovering input devices
|
||||||
("fcitx" ,fcitx) ; helps with CJK input
|
("fcitx" ,fcitx) ; helps with CJK input
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("ibus" ,ibus)
|
("ibus" ,ibus)
|
||||||
|
|
Reference in a new issue