Overview:

	This file is similar in syntax (or more precisly a subset) of what is
	used by the MAINTAINERS file in the linux kernel.  Some fields do not
	apply, for example, in all cases, send patches to:

		mesa-dev@lists.freedesktop.org

	and in all cases the patchwork instance is:

		https://patchwork.freedesktop.org/project/mesa/

	The purpose is not exactly the same the MAINTAINERS file in the linux
	kernel, as there are not official/formal maintainers of different
	subsystems in mesa, but is meant to give an idea of who to CC for
	various patches for review, and to allow the use of
	scripts/get_reviewer.pl as git --cc-cmd.

Usage:

	When sending patches:

		git send-email --cc-cmd ./scripts/get_reviewer.pl ...

	Or to configure as default:

		git config sendemail.cccmd ./scripts/get_reviewer.pl

Descriptions of section entries:

	R: Designated reviewer: FullName <address@domain>
	   These reviewers should be CCed on patches.
	F: Files and directories with wildcard patterns.
	   A trailing slash includes all files and subdirectory files.
	   F:	drivers/net/	all files in and below drivers/net
	   F:	drivers/net/*	all files in drivers/net, but not below
	   F:	*/net/*		all files in "any top level directory"/net
	   One pattern per line.  Multiple F: lines acceptable.
	N: Files and directories with regex patterns.
	   N:	[^a-z]tegra	all files whose path contains the word tegra
	   One pattern per line.  Multiple N: lines acceptable.
	   scripts/get_maintainer.pl has different behavior for files that
	   match F: pattern and matches of N: patterns.  By default,
	   get_maintainer will not look at git log history when an F: pattern
	   match occurs.  When an N: match occurs, git log history is used
	   to also notify the people that have git commit signatures.

Maintainers List (try to look for most precise areas first)

Note: this is an opt-in system, I have not tried to add anyone who hasn't
either asked me or sent a patch to add themselves.

		-----------------------------------

NIR
R:	Jason Ekstrand <jason@jlekstrand.net>
F:	src/compiler/nir/

DOCUMENTATION
R: Emil Velikov <emil.l.velikov@gmail.com>
R: Eric Engestrom <eric@engestrom.ch>
F: docs/
F: doxygen/

COMPATIBILITY HEADERS
R: Emil Velikov <emil.l.velikov@gmail.com>
F: include/c99*

DRI LOADER
R: Emil Velikov <emil.l.velikov@gmail.com>
F: src/loader/

EGL
R: Eric Engestrom <eric@engestrom.ch>
F: src/egl/

HAIKU
R: Alexander von Gluck IV <kallisti5@unixzen.com>
F: include/HaikuGL/
F: src/egl/drivers/haiku/
F: src/gallium/state_trackers/hgl/
F: src/gallium/targets/haiku-softpipe/
F: src/gallium/winsys/sw/hgl/
F: src/hgl/

GALLIUM LOADER
R: Emil Velikov <emil.l.velikov@gmail.com>
F: src/gallium/auxiliary/pipe-loader/
F: src/gallium/auxiliary/target-helpers/

GALLIUM TARGETS
R: Emil Velikov <emil.l.velikov@gmail.com>
F: src/gallium/targets/

AUTOCONF BUILD
R: Emil Velikov <emil.l.velikov@gmail.com>
F: autogen.sh
F: configure.ac
F: */Automake.inc
F: */Makefile.*am
F: */Makefile.sources

SCONS BUILD
F: scons/
F: */SConscript*
F: */Makefile.sources

ANDROID BUILD
R: Emil Velikov <emil.l.velikov@gmail.com>
R: Rob Herring <robh@kernel.org>
F: CleanSpec.mk
F: */Android.*mk
F: */Makefile.sources

MESON BUILD
R: Dylan Baker <dylan@pnwbakers.com>
R: Eric Engestrom <eric@engestrom.ch>
F: */meson.build
F: meson.build
F: meson_options.txt

ANDROID EGL SUPPORT
R: Rob Herring <robh@kernel.org>
R: Tomasz Figa <tfiga@chromium.org>
F: src/egl/drivers/dri2/platform_android.c

WAYLAND EGL SUPPORT
R: Daniel Stone <daniels@collabora.com>
F: src/egl/wayland/*
F: src/egl/drivers/dri2/platform_wayland.c

FREEDRENO
R:	Rob Clark <robclark@freedesktop.org>
F:	src/gallium/drivers/freedreno/

GLX
R: Adam Jackson <ajax@redhat.com>
F: src/glx/
