Go to file
Lyude Paul 10cba7d546 meson: Add xkb_bin_dir option
Now that we can actually configure all of the directories xkb uses for
finding things, we can (finally, but only with meson) finally make it so
that with the correct meson configuration the Xserver will "just work"
without any additional changes to the installation prefix after
building.

For the people like me who have since scripted this part out of their
build process and forgotten about it, building and installing the X
server into a non-standard prefix has always required the following (or
something else that makes sure that X has a valid xkbcomp configuration)
commands be run right after doing the installation:

	# start in root of prefix you installed X to
	mkdir -pv share/X11/xkb/rules
	ln -s /usr/share/X11/xkb/rules/evdev share/X11/xkb/rules/
	rm -f bin/xkbcomp
	ln -s /usr/bin/xkbcomp bin/

The one last piece of getting rid of this post-install junk is making
sure that we can control the directory that X uses for finding the
xkbcomp binary from meson so we can point it at the system provided
xkbcomp (/usr/bin/xkbcomp or similar). So, this patch adds a
configuration option for controlling this called xkb_bin_dir.

Signed-off-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-10-12 12:14:47 -04:00
Xext hw/xfree86: unvalidated lengths 2017-10-10 23:33:44 +02:00
Xi Xi: fix wrong extra length check in ProcXIChangeHierarchy (CVE-2017-12178) 2017-10-10 23:33:44 +02:00
composite composite: Make compIsAlternateVisual safe even if Composite is off 2017-08-11 11:15:19 -04:00
config Add a Meson build system alongside autotools. 2017-04-26 15:25:27 -07:00
damageext Add a Meson build system alongside autotools. 2017-04-26 15:25:27 -07:00
dbe dbe: Unvalidated variable-length request in ProcDbeGetVisualInfo (CVE-2017-12177) 2017-10-10 23:33:44 +02:00
dix Unvalidated extra length in ProcEstablishConnection (CVE-2017-12176) 2017-10-10 23:33:44 +02:00
doc Rewrite the byte swapping macros. 2017-04-25 15:01:23 -07:00
dri3 Build: Use dri3proto/libdrm CFLAGS 2017-09-20 13:25:46 -04:00
exa Add a Meson build system alongside autotools. 2017-04-26 15:25:27 -07:00
fb fb: Check whether the window is enabled directly 2017-09-13 11:10:56 -04:00
glamor glamor: Avoid overflow between box32 and box16 box 2017-09-13 11:02:52 -04:00
glx glx: Be a bit more paranoid in glx client cleanup 2017-09-20 14:06:37 -04:00
hw hw/xfree86: unvalidated lengths 2017-10-10 23:33:44 +02:00
include meson: Add xkb_bin_dir option 2017-10-12 12:14:47 -04:00
m4 Add ax_pthread.m4 to m4/ 2016-05-29 19:20:51 -07:00
man Xserver.man: document more transports for -nolisten & -listen options 2015-10-28 14:16:28 -04:00
mi misprite: Clean up some preprocessor abuse 2017-05-18 16:59:02 -04:00
miext sync: Clean up a bit of header formatting. 2017-09-20 13:19:27 -04:00
os os: Make sure big requests have sufficient length. 2017-10-09 17:08:33 -07:00
present present: Check the whole exec queue on event 2017-10-04 15:22:04 -04:00
pseudoramiX Unvalidated lengths 2017-10-10 23:33:34 +02:00
randr Make PixmapDirtyUpdateRec::src a DrawablePtr 2017-08-15 17:01:39 +09:00
record Add a Meson build system alongside autotools. 2017-04-26 15:25:27 -07:00
render Unvalidated lengths 2017-10-10 23:33:34 +02:00
test test: const correctness fix 2017-10-04 11:19:09 -04:00
xfixes xfixes: unvalidated lengths (CVE-2017-12183) 2017-10-10 23:33:44 +02:00
xkb xkb: Handle xkb formated string output safely (CVE-2017-13723) 2017-10-04 21:06:17 +02:00
.appveyor.yml Add an .appveyor.yml for AppVeyor CI 2017-09-18 13:00:59 -04:00
.dir-locals.el Add .dir-locals.el 2013-08-17 12:17:36 +02:00
.gitignore .gitignore: Add new autotools file 'test-driver' 2014-04-21 13:41:42 -07:00
.travis.yml travis: Also build on OSX 2017-09-23 22:47:36 -07:00
COPYING modesetting: Merge modesetting's COPYING into the xserver's. 2014-09-15 12:46:02 -07:00
Makefile.am automake: Add hw/xfree86/xkb/meson.build to EXTRA_DIST 2017-06-29 13:57:37 -04:00
README README: Add link to fd.o CoC 2017-04-11 08:51:34 -04:00
autogen.sh autogen: Set a default subject prefix for patches 2016-02-08 17:41:38 -05:00
configure.ac Build: Use dri3proto/libdrm CFLAGS 2017-09-20 13:25:46 -04:00
devbook.am doc: Create a script to filter xmlto output 2015-01-05 14:24:06 -08:00
docbook.am docbook.am: embed css styles inside the HTML HEAD element 2011-09-21 14:07:49 -07:00
fix-miregion Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-miregion-private Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-patch-whitespace Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
fix-region Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
manpages.am xorg: Change __XCONFIGFILE__ to XCONFIGFILE (and DIR) to fix scan.c. 2017-04-25 15:01:23 -07:00
meson.build meson: Add xkb_bin_dir option 2017-10-12 12:14:47 -04:00
meson_options.txt meson: Add xkb_bin_dir option 2017-10-12 12:14:47 -04:00
xorg-server.m4 macros: clarify documentation 2012-11-05 13:24:57 -06:00
xorg-server.pc.in xfree86: link modules against Xorg symbols on Cygwin 2012-04-05 21:57:07 -05:00
xserver.ent.in doc: relocate xserver.ent in the package root directory 2011-05-14 11:22:26 -07:00

README

					X Server

The X server accepts requests from client applications to create windows,
which are (normally rectangular) "virtual screens" that the client program
can draw into.

Windows are then composed on the actual screen by the X server
(or by a separate composite manager) as directed by the window manager,
which usually communicates with the user via graphical controls such as buttons
and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the
following article:
https://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the
Xorg mailing list:

        https://lists.freedesktop.org/mailman/listinfo/xorg

Please submit bug reports to the Xorg bugzilla:

        https://bugs.freedesktop.org/enter_bug.cgi?product=xorg

The master development code repository can be found at:

        git://anongit.freedesktop.org/git/xorg/xserver

        https://cgit.freedesktop.org/xorg/xserver

For patch submission instructions, see:

	https://www.x.org/wiki/Development/Documentation/SubmittingPatches

For more information on the git code manager, see:

        https://wiki.x.org/wiki/GitPage

As with other projects hosted on freedesktop.org, X.Org follows its
Code of Conduct, based on the Contributor Covenant. Please conduct
yourself in a respectful and civilized manner when using the above
mailing lists, bug trackers, etc:

	https://www.freedesktop.org/wiki/CodeOfConduct