minix/lib/libsys/Makefile
David van Moolenbroek 6b3f4dc157 Input infrastructure, INPUT server, PCKBD driver
This commit separates the low-level keyboard driver from TTY, putting
it in a separate driver (PCKBD). The commit also separates management
of raw input devices from TTY, and puts it in a separate server
(INPUT). All keyboard and mouse input from hardware is sent by drivers
to the INPUT server, which either sends it to a process that has
opened a raw input device, or otherwise forwards it to TTY for
standard processing.

Design by Dirk Vogt. Prototype by Uli Kastlunger.

Additional changes made to the prototype:

- the event communication is now based on USB HID codes; all input
  drivers have to use USB codes to describe events;
- all TTY keymaps have been converted to USB format, with the effect
  that a single keymap covers all keys; there is no (static) escaped
  keymap anymore;
- further keymap tweaks now allow remapping of literally all keys;
- input device renumbering and protocol rewrite;
- INPUT server rewrite, with added support for cancel and select;
- PCKBD reimplementation, including PC/AT-to-USB translation;
- support for manipulating keyboard LEDs has been added;
- keyboard and mouse multiplexer devices have been added to INPUT,
  primarily so that an X server need only open two devices;
- a new "libinputdriver" library abstracts away protocol details from
  input drivers, and should be used by all future input drivers;
- both INPUT and PCKBD can be restarted;
- TTY is now scheduled by KERNEL, so that it won't be punished for
  running a lot; without this, simply running "yes" on the console
  kills the system;
- the KIOCBELL IOCTL has been moved to /dev/console;
- support for the SCANCODES termios setting has been removed;
- obsolete keymap compression has been removed;
- the obsolete Olivetti M24 keymap has been removed.

Change-Id: I3a672fb8c4fd566734e4b46d3994b4b7fc96d578
2014-03-01 09:04:55 +01:00

130 lines
1.9 KiB
Makefile

# Makefile for libsys
.include <bsd.own.mk>
LIB= sys
.include "arch/${MACHINE_ARCH}/Makefile.inc"
SRCS+= \
alloc_util.c \
assert.c \
asynsend.c \
ds.c \
env_get_prm.c \
env_panic.c \
env_parse.c \
env_prefix.c \
fkey_ctl.c \
getticks.c \
getsysinfo.c \
getuptime.c \
kernel_call.c \
kprintf.c \
kputc.c \
kputs.c \
optset.c \
panic.c \
safecopies.c \
sched_start.c \
sched_stop.c \
sef.c \
sef_init.c \
sef_liveupdate.c \
sef_ping.c \
sef_signal.c \
sqrt_approx.c \
stacktrace.c \
sys_abort.c \
sys_clear.c \
sys_cprof.c \
sys_diagctl.c \
sys_endsig.c \
sys_exec.c \
sys_exit.c \
sys_fork.c \
sys_getinfo.c \
sys_getsig.c \
sys_hz.c \
sys_irqctl.c \
sys_kill.c \
sys_mcontext.c \
sys_memset.c \
sys_padconf.c \
sys_physcopy.c \
sys_privctl.c \
sys_profbuf.c \
sys_runctl.c \
sys_safecopy.c \
sys_safememset.c \
sys_schedctl.c \
sys_schedule.c \
sys_setalarm.c \
sys_setgrant.c \
sys_settime.c \
sys_sigreturn.c \
sys_sigsend.c \
sys_sprof.c \
sys_statectl.c \
sys_stime.c \
sys_times.c \
sys_trace.c \
sys_umap.c \
sys_update.c \
sys_vircopy.c \
sys_vmctl.c \
sys_vsafecopy.c \
sys_vtimer.c \
sys_vumap.c \
taskcall.c \
tickdelay.c \
timers.c \
vm_brk.c \
vm_cache.c \
vm_exit.c \
vm_fork.c \
vm_info.c \
vm_map_phys.c \
vm_notify_sig.c \
vm_umap.c \
vm_procctl.c \
vprintf.c
.if ${MKPCI} != "no"
SRCS+= pci_attr_r16.c \
pci_attr_r32.c \
pci_attr_r8.c \
pci_attr_w16.c \
pci_attr_w32.c \
pci_attr_w8.c \
pci_del_acl.c \
pci_dev_name.c \
pci_find_dev.c \
pci_first_dev.c \
pci_get_bar.c \
pci_ids.c \
pci_init.c \
pci_next_dev.c \
pci_rescan_bus.c \
pci_reserve.c \
pci_set_acl.c \
pci_slot_name.c
.endif
.if ${MKCOVERAGE} != "no"
SRCS+= gcov.c \
sef_gcov.c
CPPFLAGS+= -DUSE_COVERAGE
.endif
.if ${USE_LIVEUPDATE} != "no"
CPPFLAGS+= -DUSE_LIVEUPDATE
.endif
.if ${USE_SYSDEBUG} != "no"
CPPFLAGS+= -DUSE_SYSDEBUG
.endif
CPPFLAGS.sched_start.c+= -I${NETBSDSRCDIR}
.include <bsd.lib.mk>