[build] Autoconfiscate evdev

This commit is contained in:
Bill Currie 2021-09-28 10:57:12 +09:00
parent cacf0be7f6
commit 7fcf6bfef5
5 changed files with 23 additions and 1 deletions

View file

@ -356,6 +356,7 @@ QF_PROCESS_NEED_LIBS(brush, [gl glsl sw vulkan], [libs/models/brush])
QF_PROCESS_NEED_LIBS(iqm, [gl glsl sw vulkan], [libs/models/iqm])
QF_PROCESS_NEED_LIBS(sprite, [gl glsl sw vulkan], [libs/models/sprite])
QF_PROCESS_NEED_LIBS(input, [evdev], [libs/input])
QF_PROCESS_NEED_LIBS(vid, [common sdl svga win x11], [libs/video/targets])
QF_PROCESS_NEED_LIBS(qw, [client common sdl win server], [qw/source], a)
QF_PROCESS_NEED_LIBS(nq, [client common sdl win server], [nq/source], a)

7
config.d/evdev.m4 Normal file
View file

@ -0,0 +1,7 @@
dnl ==================================================================
dnl Checks for evdev
dnl ==================================================================
AC_CHECK_HEADER(linux/input.h,
[QF_NEED(input,[evdev])
AC_DEFINE([HAVE_EVDEV], [1], [Define if you have evdev])])

View file

@ -111,6 +111,7 @@ AC_SUBST(WIN32_LIBS)
m4_include(config.d/sound.m4)
m4_include(config.d/joystick.m4)
m4_include(config.d/evdev.m4)
m4_include(config.d/cdrom.m4)
m4_include(config.d/networking.m4)

View file

@ -1,16 +1,27 @@
lib_LTLIBRARIES += libs/input/libQFinput.la
noinst_LTLIBRARIES += @input_libs@
input_deps = @input_libs@
in_evdev_src= \
libs/input/evdev/hotplug.c \
libs/input/evdev/inputlib.c \
libs/input/in_evdev.c
libs_input_libinput_evdev_la_LDFLAGS= $(lib_ldflags)
libs_input_libinput_evdev_la_LIBADD=
libs_input_libinput_evdev_la_DEPENDENCIES=
libs_input_libinput_evdev_la_CFLAGS=
libs_input_libinput_evdev_la_SOURCES= $(in_evdev_src)
libs_input_libQFinput_la_LDFLAGS= $(lib_ldflags)
libs_input_libQFinput_la_LIBADD= $(input_deps)
libs_input_libQFinput_la_DEPENDENCIES= $(input_deps)
libs_input_libQFinput_la_SOURCES= \
$(in_evdev_src) \
libs/input/keys.c \
libs/input/old_keys.c \
libs/input/in_common.c \
libs/input/in_event.c
EXTRA_LTLIBRARIES += \
libs/input/libinput_evdev.la

View file

@ -395,5 +395,7 @@ IN_ClearStates (void)
Key_ClearStates ();
}
#ifdef HAVE_EVDEV
extern int in_evdev_force_link;
static __attribute__((used)) int *evdev_force_link = &in_evdev_force_link;
#endif