Update documentation about autotools
[platform/upstream/kmscon.git] / README
1 = KMSCON =
2 Kmscon is a simple terminal emulator based on linux kernel mode setting (KMS).
3 It is an attempt to replace the in-kernel VT implementation with a userspace
4 console.
5
6 == Requirements ==
7   Kmscon requires the following software:
8     - mesa with:
9       - EGL library
10       - gbm library
11       - GL library
12     - pango with:
13       - glib
14       - cairo
15       - pango
16
17 == Install ==
18   To compile the kmscon binary, run the standard autotools commands:
19     $ ./configure [--enable-debug]
20     $ make
21     $ make install
22   To compile the test applications, run:
23     $ make check
24
25 == License ==
26   This software is licensed under the terms of the MIT license. Please see
27   ./COPYING for further information.
28
29 == FAQ ==
30   === Why didn't you use libvte or similar terminal emulators? ===
31   All existing terminal emulators I found highly depend on X. Also, their code
32   base often is a horrible mess. I haven't had the time to convert them to use
33   other drawing functions than Xlib, yet.
34   If you feel like doing this work, please notify me. I would be glad to adjust
35   my code to work with other terminal emulators.
36
37 == Contact ==
38   This software was written by:
39     David Herrmann <dh.herrmann@googlemail.com>
40   If you have any questions, do not hesitate to contact one of the developers.
41
42 == Code Base ==
43   The kmscon code is split into several independent subsystems:
44     - output:
45       This code manages the KMS/DRI output and provides OpenGL framebuffers.
46     - console:
47       This draws the text on the screen and provides an API for any terminal
48       emulator to visualize its contents.
49     - evdev:
50       All linux input events are captured here and converted to Unicode
51       characters for input handling.
52     - vte:
53       The terminal emulator library.
54     - main:
55       This connects all subsystems into a usable console application.