diff options
author | Sam Lantinga <slouken@libsdl.org> | 2020-11-11 19:37:47 -0800 |
---|---|---|
committer | Sam Lantinga <slouken@libsdl.org> | 2020-11-11 19:37:47 -0800 |
commit | 1c42fd8b0cbf5ec30bc42981386d7a2f68f6bb1d (patch) | |
tree | 4f2da9ea5e7b5e805317c84fcc92b2d665f3e0f2 /configure.ac | |
parent | 76a10f5aab8e5b5366b21a325b86df7eb50c90e8 (diff) | |
download | sdl-1c42fd8b0cbf5ec30bc42981386d7a2f68f6bb1d.tar.gz |
Fixed bug 5346 - Add FreeBSD evdev KBIO keyboard input driver
wahil1976
This patch adds the KBIO text input driver for FreeBSD, which allows text input to fully work without text spilling out into the console. It also supports accented input, AltGr keys and Alt Lock combinations.
Tested with US accent keys layout and various AltGr layouts.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index ebc7a8ab8..76393e607 100644 --- a/configure.ac +++ b/configure.ac @@ -2643,6 +2643,28 @@ CheckInputKD() fi } + +dnl See if we can use the FreeBSD kernel kbio.h header +CheckInputKBIO() +{ + AC_MSG_CHECKING(for FreeBSD kbio.h) + use_input_kbio=no + AC_TRY_COMPILE([ + #include <sys/kbio.h> + #include <sys/ioctl.h> + ],[ + accentmap_t accTable; + ioctl(0, KDENABIO, 1); + ],[ + use_input_kbio=yes + ]) + AC_MSG_RESULT($use_input_kbio) + if test x$use_input_kbio = xyes; then + AC_DEFINE(SDL_INPUT_FBSDKBIO, 1, [ ]) + SUMMARY_input="${SUMMARY_input} fbsdkbio" + fi +} + dnl See if the platform offers libudev for device enumeration and hotplugging. CheckLibUDev() { @@ -3524,6 +3546,9 @@ case "$host" in linux) CheckInputKD ;; + freebsd) + CheckInputKBIO + ;; esac CheckTslib CheckUSBHID @@ -3660,6 +3685,7 @@ case "$host" in if test x$use_input_events = xyes; then SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev.c" SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev_kbd.c" + SOURCES="$SOURCES $srcdir/src/core/freebsd/SDL_evdev_kbd_freebsd.c" fi # Set up other core UNIX files SOURCES="$SOURCES $srcdir/src/core/linux/SDL_evdev_capabilities.c" |