[Mesa-dev] [PATCH v2 15/15] docs: Human edits to the website code for clarity.

Laura Ekstrand laura at jlekstrand.net
Wed May 30 22:53:27 UTC 2018


There's a lot here.  If you're interested, it's mostly whitespace fixes,
switching variable names and function names to the Sphinx orange variable
highlight style, and naming code blocks to take advantage of Pygments
syntax highlighting.
---
 docs/application-issues.rst |   8 +-
 docs/autoconf.rst           |   9 +-
 docs/codingstyle.rst        |  36 +++----
 docs/conf.py                |   2 +-
 docs/conform.rst            |   2 +-
 docs/debugging.rst          |  12 +--
 docs/devinfo.rst            |  26 ++---
 docs/download.rst           |   6 +-
 docs/egl.rst                |   2 +-
 docs/extensions.rst         |  42 ++++----
 docs/faq.rst                |  38 +++----
 docs/helpwanted.rst         |  14 +--
 docs/index.rst              | 240 +++++++++++++++++++++++---------------------
 docs/install.rst            |  64 ++++++------
 docs/intro.rst              | 124 +++++++++++------------
 docs/license.rst            |  12 +--
 docs/llvmpipe.rst           |  65 +++++-------
 docs/mangling.rst           |   4 +-
 docs/meson.rst              |  18 ++--
 docs/osmesa.rst             |  12 +--
 docs/perf.rst               |  85 +++++++++++-----
 docs/postprocess.rst        |  11 +-
 docs/precompiled.rst        |   6 +-
 docs/release-calendar.rst   | 158 ++++++++++-------------------
 docs/releasing.rst          | 158 ++++++++++++++---------------
 docs/repository.rst         |  59 ++++++-----
 docs/shading.rst            |  99 ++++++++++++------
 docs/sourcetree.rst         |  12 +--
 docs/submittingpatches.rst  | 123 ++++++++++++-----------
 docs/thanks.rst             |   2 +-
 docs/versions.rst           |   8 +-
 docs/viewperf.rst           |  94 ++++++++---------
 docs/vmware-guest.rst       | 146 +++++++++++++--------------
 docs/xlibdriver.rst         |  60 +++++------
 34 files changed, 882 insertions(+), 875 deletions(-)

diff --git a/docs/application-issues.rst b/docs/application-issues.rst
index 3ab4da4fc9..7c9096875b 100644
--- a/docs/application-issues.rst
+++ b/docs/application-issues.rst
@@ -24,18 +24,18 @@ Some old OpenGL games (approx. ten years or older) may crash during
 start-up because of an extension string buffer-overflow problem.
 
 The problem is a modern OpenGL driver will return a very long string for
-the glGetString(GL\_EXTENSIONS) query and if the application naively
+the ``glGetString(GL_EXTENSIONS)`` query and if the application naively
 copies the string into a fixed-size buffer it can overflow the buffer
 and crash the application.
 
-The work-around is to set the MESA\_EXTENSION\_MAX\_YEAR environment
+The work-around is to set the ``MESA_EXTENSION_MAX_YEAR`` environment
 variable to the approximate release year of the game. This will cause
-the glGetString(GL\_EXTENSIONS) query to only report extensions older
+the ``glGetString(GL_EXTENSIONS)`` query to only report extensions older
 than the given year.
 
 For example, if the game was released in 2001, do
 
-::
+.. code-block:: bash
 
     export MESA_EXTENSION_MAX_YEAR=2001
 
diff --git a/docs/autoconf.rst b/docs/autoconf.rst
index 25ba71cf66..d972babc6d 100644
--- a/docs/autoconf.rst
+++ b/docs/autoconf.rst
@@ -16,7 +16,7 @@ The autoconf generated configure script can be used to guess your
 platform and change various options for building Mesa. To use the
 configure script, type:
 
-::
+.. code-block:: bash
 
         ./configure
 
@@ -28,7 +28,7 @@ can pass them to ``autogen.sh``. It will run ``configure`` with these
 options after it is generated. Once you have run ``configure`` and set
 the options to your preference, type:
 
-::
+.. code-block:: bash
 
         make
 
@@ -61,7 +61,10 @@ Some of the generic autoconf options are used with Mesa:
     there's only one config file provided when dri drivers are enabled -
     it's ``drirc``.
 
-``--enable-static, --disable-shared``
+``--enable-static``
+    .. same as below
+
+``--disable-shared``
     By default, Mesa will build shared libraries. Either of these
     options will force static libraries to be built. It is not currently
     possible to build static and shared libraries in a single pass.
diff --git a/docs/codingstyle.rst b/docs/codingstyle.rst
index 026652f0ca..565c3ce1c9 100644
--- a/docs/codingstyle.rst
+++ b/docs/codingstyle.rst
@@ -17,7 +17,7 @@ Basic formatting guidelines
 -  Opening braces go on the same line as the if/for/while statement. For
    example:
 
-   ::
+   .. code-block:: c
 
           if (condition) {
              foo;
@@ -30,30 +30,30 @@ Basic formatting guidelines
 -  This GNU indent command generally does the right thing for
    formatting:
 
-   ::
+   .. code-block:: bash
 
           indent -br -i3 -npcs --no-tabs infile.c -o outfile.c
 
--  | Use comments wherever you think it would be helpful for other
-     developers. Several specific cases and style examples follow. Note
-     that we roughly follow
-     `Doxygen <https://www.stack.nl/~dimitri/doxygen/>`__ conventions.
-   | Single-line comments:
+-  Use comments wherever you think it would be helpful for other
+   developers. Several specific cases and style examples follow. Note
+   that we roughly follow
+   `Doxygen <https://www.stack.nl/~dimitri/doxygen/>`__ conventions.
+   Single-line comments:
 
-   ::
+   .. code-block:: c
 
           /* null-out pointer to prevent dangling reference below */
           bufferObj = NULL;
 
    Or,
 
-   ::
+   .. code-block:: c
 
           bufferObj = NULL;  /* prevent dangling reference below */
 
    Multi-line comment:
 
-   ::
+   .. code-block:: c
 
           /* If this is a new buffer object id, or one which was generated but
            * never used before, allocate a buffer object now.
@@ -61,7 +61,7 @@ Basic formatting guidelines
 
    We try to quote the OpenGL specification where prudent:
 
-   ::
+   .. code-block:: c
 
           /* Page 38 of the PDF of the OpenGL ES 3.0 spec says:
            *
@@ -77,7 +77,7 @@ Basic formatting guidelines
 
    Function comment example:
 
-   ::
+   .. code-block:: c
 
           /**
            * Create and initialize a new buffer object.  Called via the
@@ -100,7 +100,7 @@ Basic formatting guidelines
 -  Function names follow various conventions depending on the type of
    function:
 
-   ::
+   .. code-block:: text
 
           glFooBar()       - a public GL entry point (in glapi_dispatch.c)
           _mesa_FooBar()   - the internal immediate mode function
@@ -108,17 +108,17 @@ Basic formatting guidelines
           foo_bar()        - a static (private) function
           _mesa_foo_bar()  - an internal non-static Mesa function
 
--  Constants, macros and enum names are ALL\_UPPERCASE, with \_ between
+-  Constants, macros and enum names are ``ALL_UPPERCASE``, with \_ between
    words.
--  Mesa usually uses camel case for local variables (Ex: "localVarname")
-   while gallium typically uses underscores (Ex: "local\_var\_name").
+-  Mesa usually uses camel case for local variables (Ex: ``localVarname``)
+   while gallium typically uses underscores (Ex: ``local_var_name``).
 -  Global variables are almost never used because Mesa should be
    thread-safe.
 -  Booleans. Places that are not directly visible to the GL API should
    prefer the use of ``bool``, ``true``, and ``false`` over
    ``GLboolean``, ``GL_TRUE``, and ``GL_FALSE``. In C code, this may
    mean that ``#include <stdbool.h>`` needs to be added. The
-   ``try_emit_``\ \* methods in src/mesa/program/ir\_to\_mesa.cpp and
-   src/mesa/state\_tracker/st\_glsl\_to\_tgsi.cpp can serve as examples.
+   ``try_emit_*`` methods in ``src/mesa/program/ir_to_mesa.cpp`` and
+   ``src/mesa/state_tracker/st_glsl_to_tgsi.cpp`` can serve as examples.
 
 
diff --git a/docs/conf.py b/docs/conf.py
index 33bf717a87..c6eac2394d 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -99,7 +99,7 @@ html_theme = 'sphinx_rtd_theme'
 # Add any paths that contain custom static files (such as style sheets) here,
 # relative to this directory. They are copied after the builtin static files,
 # so a file named "default.css" will overwrite the builtin "default.css".
-html_static_path = []
+html_static_path = ['specs/']
 
 
 # -- Options for HTMLHelp output ------------------------------------------
diff --git a/docs/conform.rst b/docs/conform.rst
index fad50e68f9..259d6b0a1f 100644
--- a/docs/conform.rst
+++ b/docs/conform.rst
@@ -16,7 +16,7 @@ Mesa 4.0 and later pass all conformance tests at all path levels. Note
 that this says nothing about the conformance of hardware drivers based
 upon Mesa.
 
-::
+.. code-block:: text
 
     COVERAGE TESTS
     --------------
diff --git a/docs/debugging.rst b/docs/debugging.rst
index e70a70fa6b..6bfa644f45 100644
--- a/docs/debugging.rst
+++ b/docs/debugging.rst
@@ -3,18 +3,18 @@ Debugging Tips
 
 Normally Mesa (and OpenGL) records but does not notify the user of
 errors. It is up to the application to call ``glGetError`` to check for
-errors. Mesa supports an environment variable, MESA\_DEBUG, to help with
-debugging. If MESA\_DEBUG is defined, a message will be printed to
+errors. Mesa supports an environment variable, ``MESA_DEBUG``, to help with
+debugging. If ``MESA_DEBUG`` is defined, a message will be printed to
 stdout whenever an error occurs.
 
 More extensive error checking is done when Mesa is compiled with the
 DEBUG symbol defined. You'll have to edit the Make-config file and add
--DDEBUG to the CFLAGS line for your system configuration. You may also
-want to replace any optimization flags with the -g flag so you can use
-your debugger. After you've edited Make-config type 'make clean' before
+``-DDEBUG`` to the CFLAGS line for your system configuration. You may also
+want to replace any optimization flags with the ``-g`` flag so you can use
+your debugger. After you've edited Make-config type ``make clean`` before
 recompiling.
 
-In your debugger you can set a breakpoint in \_mesa\_error() to trap
+In your debugger you can set a breakpoint in ``_mesa_error()`` to trap
 Mesa errors.
 
 There is a display list printing/debugging facility. See the end of
diff --git a/docs/devinfo.rst b/docs/devinfo.rst
index a48e94697b..d81296c863 100644
--- a/docs/devinfo.rst
+++ b/docs/devinfo.rst
@@ -8,10 +8,10 @@ Adding Extensions
 
 To add a new GL extension to Mesa you have to do at least the following.
 
--  If glext.h doesn't define the extension, edit include/GL/gl.h and add
+-  If ``glext.h`` doesn't define the extension, edit ``include/GL/gl.h`` and add
    code like this:
 
-   ::
+   .. code-block:: c
 
             #ifndef GL_EXT_the_extension_name
             #define GL_EXT_the_extension_name 1
@@ -19,25 +19,25 @@ To add a new GL extension to Mesa you have to do at least the following.
             /* prototype the new functions */
             /* TYPEDEFS for the new functions */
             #endif
-          
 
--  In the src/mapi/glapi/gen/ directory, add the new extension functions
-   and enums to the gl\_API.xml file. Then, a bunch of source files must
+
+-  In the ``src/mapi/glapi/gen/`` directory, add the new extension functions
+   and enums to the ``gl_API.xml`` file. Then, a bunch of source files must
    be regenerated by executing the corresponding Python scripts.
--  Add a new entry to the ``gl_extensions`` struct in mtypes.h if the
+-  Add a new entry to the ``gl_extensions`` struct in ``mtypes.h`` if the
    extension requires driver capabilities not already exposed by another
    extension.
--  Add a new entry to the src/mesa/main/extensions\_table.h file.
+-  Add a new entry to the ``src/mesa/main/extensions_table.h`` file.
 -  From this point, the best way to proceed is to find another
    extension, similar to the new one, that's already implemented in Mesa
    and use it as an example.
--  If the new extension adds new GL state, the functions in get.c,
-   enable.c and attrib.c will most likely require new code.
+-  If the new extension adds new GL state, the functions in ``get.c``,
+   ``enable.c`` and ``attrib.c`` will most likely require new code.
 -  To determine if the new extension is active in the current context,
-   use the auto-generated \_mesa\_has\_##name\_str() function defined in
-   src/mesa/main/extensions.h.
--  The dispatch tests check\_table.cpp and dispatch\_sanity.cpp should
+   use the auto-generated ``_mesa_has_##name_str()`` function defined in
+   ``src/mesa/main/extensions.h``.
+-  The dispatch tests ``check_table.cpp`` and ``dispatch_sanity.cpp`` should
    be updated with details about the new extensions functions. These
-   tests are run using 'make check'
+   tests are run using ``make check``
 
 
diff --git a/docs/download.rst b/docs/download.rst
index a71f3b5cac..e64789ba98 100644
--- a/docs/download.rst
+++ b/docs/download.rst
@@ -23,13 +23,13 @@ Mesa releases are available in two formats: ``.tar.xz`` and ``.tar.gz``.
 
 To unpack the tarball:
 
-::
+.. code-block:: bash
 
        tar xf mesa-Y.N.P.tar.xz
 
 or
 
-::
+.. code-block:: bash
 
        tar xf mesa-Y.N.P.tar.gz
 
@@ -38,7 +38,7 @@ Contents
 
 After unpacking you'll have these files and directories (among others):
 
-::
+.. code-block:: text
 
     autogen.sh - Autoconf script for *nix systems
     scons/      - SCons script for Windows builds
diff --git a/docs/egl.rst b/docs/egl.rst
index 58caf945e9..043571abc2 100644
--- a/docs/egl.rst
+++ b/docs/egl.rst
@@ -18,7 +18,7 @@ Build EGL
 #. Run ``configure`` with the desired client APIs and enable the driver
    for your hardware. For example
 
-   ::
+   .. code-block:: bash
 
          $ ./configure --enable-gles1 --enable-gles2 \
                        --with-dri-drivers=... \
diff --git a/docs/extensions.rst b/docs/extensions.rst
index 7289f337a4..a202880fce 100644
--- a/docs/extensions.rst
+++ b/docs/extensions.rst
@@ -4,28 +4,28 @@ Mesa Extensions
 A number of extensions have been developed especially for Mesa. The
 specifications follow.
 
--  `MESA\_agp\_offset.spec <specs/OLD/MESA_agp_offset.spec>`__
--  `MESA\_copy\_sub\_buffer.spec <specs/MESA_copy_sub_buffer.spec>`__
--  `MESA\_drm\_image.spec <specs/MESA_drm_image.spec>`__
--  `MESA\_multithread\_makecurrent.spec <specs/MESA_multithread_makecurrent.spec>`__
--  `MESA\_packed\_depth\_stencil.spec <specs/OLD/MESA_packed_depth_stencil.spec>`__
+-  `MESA\_agp\_offset.spec <_static/OLD/MESA_agp_offset.spec>`__
+-  `MESA\_copy\_sub\_buffer.spec <_static/MESA_copy_sub_buffer.spec>`__
+-  `MESA\_drm\_image.spec <_static/MESA_drm_image.spec>`__
+-  `MESA\_multithread\_makecurrent.spec <_static/MESA_multithread_makecurrent.spec>`__
+-  `MESA\_packed\_depth\_stencil.spec <_static/OLD/MESA_packed_depth_stencil.spec>`__
    (obsolete)
--  `MESA\_pack\_invert.spec <specs/MESA_pack_invert.spec>`__
--  `MESA\_pixmap\_colormap.spec <specs/MESA_pixmap_colormap.spec>`__
--  `MESA\_program\_debug.spec <specs/OLD/MESA_program_debug.spec>`__
+-  `MESA\_pack\_invert.spec <_static/MESA_pack_invert.spec>`__
+-  `MESA\_pixmap\_colormap.spec <_static/MESA_pixmap_colormap.spec>`__
+-  `MESA\_program\_debug.spec <_static/OLD/MESA_program_debug.spec>`__
    (obsolete)
--  `MESA\_release\_buffers.spec <specs/MESA_release_buffers.spec>`__
--  `MESA\_resize\_buffers.spec <specs/OLD/MESA_resize_buffers.spec>`__
+-  `MESA\_release\_buffers.spec <_static/MESA_release_buffers.spec>`__
+-  `MESA\_resize\_buffers.spec <_static/OLD/MESA_resize_buffers.spec>`__
    (obsolete)
--  `MESA\_set\_3dfx\_mode.spec <specs/OLD/MESA_set_3dfx_mode.spec>`__
--  `MESA\_shader\_debug.spec <specs/MESA_shader_debug.spec>`__
--  `MESA\_sprite\_point.spec <specs/OLD/MESA_sprite_point.spec>`__
+-  `MESA\_set\_3dfx\_mode.spec <_static/OLD/MESA_set_3dfx_mode.spec>`__
+-  `MESA\_shader\_debug.spec <_static/MESA_shader_debug.spec>`__
+-  `MESA\_sprite\_point.spec <_static/OLD/MESA_sprite_point.spec>`__
    (obsolete)
--  `MESA\_swap\_control.spec <specs/MESA_swap_control.spec>`__
--  `MESA\_swap\_frame\_usage.spec <specs/MESA_swap_frame_usage.spec>`__
--  `MESA\_texture\_array.spec <specs/MESA_texture_array.spec>`__
--  `MESA\_texture\_signed\_rgba.spec <specs/MESA_texture_signed_rgba.spec>`__
--  `MESA\_trace.spec <specs/OLD/MESA_trace.spec>`__ (obsolete)
--  `MESA\_window\_pos.spec <specs/MESA_window_pos.spec>`__
--  `MESA\_ycbcr\_texture.spec <specs/MESA_ycbcr_texture.spec>`__
--  `WL\_bind\_wayland\_display.spec <specs/WL_bind_wayland_display.spec>`__
+-  `MESA\_swap\_control.spec <_static/MESA_swap_control.spec>`__
+-  `MESA\_swap\_frame\_usage.spec <_static/MESA_swap_frame_usage.spec>`__
+-  `MESA\_texture\_array.spec <_static/MESA_texture_array.spec>`__
+-  `MESA\_texture\_signed\_rgba.spec <_static/MESA_texture_signed_rgba.spec>`__
+-  `MESA\_trace.spec <_static/OLD/MESA_trace.spec>`__ (obsolete)
+-  `MESA\_window\_pos.spec <_static/MESA_window_pos.spec>`__
+-  `MESA\_ycbcr\_texture.spec <_static/MESA_ycbcr_texture.spec>`__
+-  `WL\_bind\_wayland\_display.spec <_static/WL_bind_wayland_display.spec>`__
diff --git a/docs/faq.rst b/docs/faq.rst
index 543ef548b6..bcb552cc95 100644
--- a/docs/faq.rst
+++ b/docs/faq.rst
@@ -3,15 +3,14 @@ Mesa Frequently Asked Questions
 
 Last updated: 9 October 2012
 
-| 
 
 Index
------
+=====
 
-| `1. High-level Questions and Answers <#part1>`__
-| `2. Compilation and Installation Problems <#part2>`__
-| `3. Runtime / Rendering Problems <#part3>`__
-| `4. Developer Questions <#part4>`__
+   1. `High-level Questions and Answers <#part1>`__
+   2. `Compilation and Installation Problems <#part2>`__
+   3. `Runtime / Rendering Problems <#part3>`__
+   4. `Developer Questions <#part4>`__
 
 1. High-level Questions and Answers
 ===================================
@@ -127,7 +126,6 @@ is an OpenGL subset library for TI graphing calculators.
 There may be other open OpenGL implementations, but Mesa is the most
 popular and feature-complete.
 
-| 
 
 2. Compilation and Installation Problems
 ========================================
@@ -194,8 +192,6 @@ Mesa with
 ``./configure --prefix=/usr --libdir=xxx --with-dri-driverdir=xxx`` and
 then install with ``sudo make install``.
 
-| 
-
 3. Runtime / Rendering Problems
 ===============================
 
@@ -227,40 +223,38 @@ for details.
 
 Mesa uses a 16-bit depth buffer by default which is smaller and faster
 to clear than a 32-bit buffer but not as accurate. If you need a deeper
-you can modify the parameters to `` glXChooseVisual`` in your code.
+you can modify the parameters to ``glXChooseVisual`` in your code.
 
 3.3 Why Isn't depth buffering working at all?
 ---------------------------------------------
 
 Be sure you're requesting a depth buffered-visual. If you set the
-MESA\_DEBUG environment variable it will warn you about trying to enable
+``MESA_DEBUG`` environment variable it will warn you about trying to enable
 depth testing when you don't have a depth buffer.
 
 Specifically, make sure ``glutInitDisplayMode`` is being called with
 ``GLUT_DEPTH`` or ``glXChooseVisual`` is being called with a non-zero
-value for GLX\_DEPTH\_SIZE.
+value for ``GLX_DEPTH_SIZE``.
 
 This discussion applies to stencil buffers, accumulation buffers and
 alpha channels too.
 
-3.4 Why does glGetString() always return NULL?
-----------------------------------------------
+3.4 Why does ``glGetString()`` always return NULL?
+--------------------------------------------------
 
 Be sure you have an active/current OpenGL rendering context before
-calling glGetString.
+calling ``glGetString``.
 
-3.5 GL\_POINTS and GL\_LINES don't touch the right pixels
----------------------------------------------------------
+3.5 ``GL_POINTS`` and ``GL_LINES`` don't touch the right pixels
+---------------------------------------------------------------
 
-If you're trying to draw a filled region by using GL\_POINTS or
-GL\_LINES and seeing holes or gaps it's because of a float-to-int
+If you're trying to draw a filled region by using ``GL_POINTS`` or
+``GL_LINES`` and seeing holes or gaps it's because of a float-to-int
 rounding problem. But this is not a bug. See Appendix H of the OpenGL
 Programming Guide - "OpenGL Correctness Tips". Basically, applying a
 translation of (0.375, 0.375, 0.0) to your coordinates will fix the
 problem.
 
-| 
-
 4. Developer Questions
 ======================
 
@@ -297,7 +291,7 @@ being said, many people have managed to figure out the process.
 Joining the appropriate mailing lists and asking questions (and
 searching the archives) is a good way to get information.
 
-4.3 Why isn't GL\_EXT\_texture\_compression\_s3tc implemented in Mesa?
+4.3 Why isn't ``GL_EXT_texture_compression_s3tc`` implemented in Mesa?
 ----------------------------------------------------------------------
 
 The `specification for the
diff --git a/docs/helpwanted.rst b/docs/helpwanted.rst
index 8d426474a4..15ee1a6478 100644
--- a/docs/helpwanted.rst
+++ b/docs/helpwanted.rst
@@ -12,23 +12,23 @@ specific ideas and areas where help would be appreciated:
    helpful.
 #. **Driver debugging.** There are plenty of open bugs in the `bug
    database <https://bugs.freedesktop.org/describecomponents.cgi?product=Mesa>`__.
-#. **Remove aliasing warnings.** Enable gcc -Wstrict-aliasing=2
-   -fstrict-aliasing and track down aliasing issues in the code.
-#. **Contribute more tests to
-   `Piglit <https://piglit.freedesktop.org/>`__.**
+#. **Remove aliasing warnings.** Enable ``gcc -Wstrict-aliasing=2
+   -fstrict-aliasing`` and track down aliasing issues in the code.
+#. **Contribute more tests to**
+   `Piglit <https://piglit.freedesktop.org/>`__.
 
 You can find some further To-do lists here:
 
 **Common To-Do lists:**
 
--  `**features.txt** <https://cgit.freedesktop.org/mesa/mesa/tree/docs/features.txt>`__
+-  `features.txt <https://cgit.freedesktop.org/mesa/mesa/tree/docs/features.txt>`__
    - Status of OpenGL 3.x / 4.x features in Mesa.
 
 **Legacy Driver specific To-Do lists:**
 
--  `**r600g** <https://dri.freedesktop.org/wiki/R600ToDo>`__ - Driver
+-  `r600g <https://dri.freedesktop.org/wiki/R600ToDo>`__ - Driver
    for ATI/AMD R600 - Northern Island.
--  `**r300g** <https://dri.freedesktop.org/wiki/R300ToDo>`__ - Driver
+-  `r300g <https://dri.freedesktop.org/wiki/R300ToDo>`__ - Driver
    for ATI R300 - R500.
 
 If you want to do something new in Mesa, first join the Mesa developer's
diff --git a/docs/index.rst b/docs/index.rst
index 2e3283063d..0e117818d6 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -126,11 +126,12 @@ release.
 April 18, 2018
 --------------
 
-| `Mesa 17.3.9 <relnotes/17.3.9.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 17.3.9 will be the final release in the
-  17.3 series. Users of 17.3 are encouraged to migrate to the 18.0
-  series in order to obtain future fixes.
+`Mesa 17.3.9 <relnotes/17.3.9.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 17.3.9 will be the final release in the
+   17.3 series. Users of 17.3 are encouraged to migrate to the 18.0
+   series in order to obtain future fixes.
 
 April 03, 2018
 --------------
@@ -184,11 +185,12 @@ release.
 December 22, 2017
 -----------------
 
-| `Mesa 17.2.8 <relnotes/17.2.8.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 17.2.8 will be the final release in the
-  17.2 series. Users of 17.2 are encouraged to migrate to the 17.3
-  series in order to obtain future fixes.
+`Mesa 17.2.8 <relnotes/17.2.8.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 17.2.8 will be the final release in the
+   17.2 series. Users of 17.2 are encouraged to migrate to the 17.3
+   series in order to obtain future fixes.
 
 December 21, 2017
 -----------------
@@ -242,11 +244,12 @@ release.
 September 25, 2017
 ------------------
 
-| `Mesa 17.1.10 <relnotes/17.1.10.html>`__ is released. This is a
-  bug-fix release.
-| NOTE: It is anticipated that 17.1.10 will be the final release in the
-  17.1 series. Users of 17.1 are encouraged to migrate to the 17.2
-  series in order to obtain future fixes.
+`Mesa 17.1.10 <relnotes/17.1.10.html>`__ is released. This is a
+bug-fix release.
+
+   NOTE: It is anticipated that 17.1.10 will be the final release in the
+   17.1 series. Users of 17.1 are encouraged to migrate to the 17.2
+   series in order to obtain future fixes.
 
 September 17, 2017
 ------------------
@@ -312,11 +315,12 @@ release.
 June 1, 2017
 ------------
 
-| `Mesa 17.0.7 <relnotes/17.0.7.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 17.0.7 will be the final release in the
-  17.0 series. Users of 17.0 are encouraged to migrate to the 17.1
-  series in order to obtain future fixes.
+`Mesa 17.0.7 <relnotes/17.0.7.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 17.0.7 will be the final release in the
+   17.0 series. Users of 17.0 are encouraged to migrate to the 17.1
+   series in order to obtain future fixes.
 
 May 25, 2017
 ------------
@@ -358,12 +362,13 @@ release.
 March 20, 2017
 --------------
 
-| `Mesa 13.0.6 <relnotes/13.0.6.html>`__ and `Mesa
-  17.0.2 <relnotes/17.0.2.html>`__ are released. These are bug-fix
-  releases from the 13.0 and 17.0 branches, respectively.
-| NOTE: It is anticipated that 13.0.6 will be the final release in the
-  13.0 series. Users of 13.0 are encouraged to migrate to the 17.0
-  series in order to obtain future fixes.
+`Mesa 13.0.6 <relnotes/13.0.6.html>`__ and `Mesa
+17.0.2 <relnotes/17.0.2.html>`__ are released. These are bug-fix
+releases from the 13.0 and 17.0 branches, respectively.
+
+   NOTE: It is anticipated that 13.0.6 will be the final release in the
+   13.0 series. Users of 13.0 are encouraged to migrate to the 17.0
+   series in order to obtain future fixes.
 
 March 4, 2017
 -------------
@@ -393,12 +398,13 @@ release.
 January 23, 2017
 ----------------
 
-| `Mesa 12.0.6 <relnotes/12.0.6.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: This is an extra release for the 12.0 stable branch, as per
-  developers' feedback. It is anticipated that 12.0.6 will be the final
-  release in the 12.0 series. Users of 12.0 are encouraged to migrate to
-  the 13.0 series in order to obtain future fixes.
+`Mesa 12.0.6 <relnotes/12.0.6.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: This is an extra release for the 12.0 stable branch, as per
+   developers' feedback. It is anticipated that 12.0.6 will be the final
+   release in the 12.0 series. Users of 12.0 are encouraged to migrate to
+   the 13.0 series in order to obtain future fixes.
 
 January 5, 2017
 ---------------
@@ -409,11 +415,12 @@ release.
 December 5, 2016
 ----------------
 
-| `Mesa 12.0.5 <relnotes/12.0.5.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 12.0.5 will be the final release in the
-  12.0 series. Users of 12.0 are encouraged to migrate to the 13.0
-  series in order to obtain future fixes.
+`Mesa 12.0.5 <relnotes/12.0.5.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 12.0.5 will be the final release in the
+   12.0 series. Users of 12.0 are encouraged to migrate to the 13.0
+   series in order to obtain future fixes.
 
 November 28, 2016
 -----------------
@@ -465,12 +472,13 @@ the release.
 May 9, 2016
 -----------
 
-| `Mesa 11.1.4 <relnotes/11.1.4.html>`__ and `Mesa
-  11.2.2 <relnotes/11.2.2.html>`__ are released. These are bug-fix
-  releases from the 11.1 and 11.2 branches, respectively.
-| NOTE: It is anticipated that 11.1.4 will be the final release in the
-  11.1.4 series. Users of 11.1 are encouraged to migrate to the 11.2
-  series in order to obtain future fixes.
+`Mesa 11.1.4 <relnotes/11.1.4.html>`__ and `Mesa
+11.2.2 <relnotes/11.2.2.html>`__ are released. These are bug-fix
+releases from the 11.1 and 11.2 branches, respectively.
+
+   NOTE: It is anticipated that 11.1.4 will be the final release in the
+   11.1.4 series. Users of 11.1 are encouraged to migrate to the 11.2
+   series in order to obtain future fixes.
 
 April 17, 2016
 --------------
@@ -495,11 +503,12 @@ release.
 January 22, 2016
 ----------------
 
-| `Mesa 11.0.9 <relnotes/11.0.9.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 11.0.9 will be the final release in the
-  11.0 series. Users of 11.0 are encouraged to migrate to the 11.1
-  series in order to obtain future fixes.
+`Mesa 11.0.9 <relnotes/11.0.9.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 11.0.9 will be the final release in the
+   11.0 series. Users of 11.0 are encouraged to migrate to the 11.1
+   series in order to obtain future fixes.
 
 January 13, 2016
 ----------------
@@ -558,11 +567,12 @@ release.
 October 3, 2015
 ---------------
 
-| `Mesa 10.6.9 <relnotes/10.6.9.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 10.6.9 will be the final release in the
-  10.6 series. Users of 10.6 are encouraged to migrate to the 11.0
-  series in order to obtain future fixes.
+`Mesa 10.6.9 <relnotes/10.6.9.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 10.6.9 will be the final release in the
+   10.6 series. Users of 10.6 are encouraged to migrate to the 11.0
+   series in order to obtain future fixes.
 
 September 28, 2015
 ------------------
@@ -628,11 +638,12 @@ release.
 July 04, 2015
 -------------
 
-| `Mesa 10.5.9 <relnotes/10.5.9.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: It is anticipated that 10.5.9 will be the final release in the
-  10.5 series. Users of 10.5 are encouraged to migrate to the 10.6
-  series in order to obtain future fixes.
+`Mesa 10.5.9 <relnotes/10.5.9.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: It is anticipated that 10.5.9 will be the final release in the
+   10.5 series. Users of 10.5 are encouraged to migrate to the 10.6
+   series in order to obtain future fixes.
 
 June 29, 2015
 -------------
@@ -735,12 +746,13 @@ release.
 January 12, 2015
 ----------------
 
-| `Mesa 10.3.7 <relnotes/10.3.7.html>`__ and `Mesa
-  10.4.2 <relnotes/10.4.2.html>`__ are released. These are bug-fix
-  releases from the 10.3 and 10.4 branches, respectively.
-| NOTE: It is anticipated that 10.3.7 will be the final release in the
-  10.3 series. Users of 10.3 are encouraged to migrate to the 10.4
-  series in order to obtain future fixes.
+`Mesa 10.3.7 <relnotes/10.3.7.html>`__ and `Mesa
+10.4.2 <relnotes/10.4.2.html>`__ are released. These are bug-fix
+releases from the 10.3 and 10.4 branches, respectively.
+
+   NOTE: It is anticipated that 10.3.7 will be the final release in the
+   10.3 series. Users of 10.3 are encouraged to migrate to the 10.4
+   series in order to obtain future fixes.
 
 December 29, 2014
 -----------------
@@ -783,12 +795,13 @@ release.
 October 12, 2014
 ----------------
 
-| `Mesa 10.2.9 <relnotes/10.2.9.html>`__ and `Mesa
-  10.3.1 <relnotes/10.3.1.html>`__ are released. These are bug-fix
-  releases from the 10.2 and 10.3 branches, respectively.
-| NOTE: It is anticipated that 10.2.9 will be the final release in the
-  10.2 series. Users of 10.2 are encouraged to migrate to the 10.3
-  series in order to obtain future fixes.
+`Mesa 10.2.9 <relnotes/10.2.9.html>`__ and `Mesa
+10.3.1 <relnotes/10.3.1.html>`__ are released. These are bug-fix
+releases from the 10.2 and 10.3 branches, respectively.
+
+   NOTE: It is anticipated that 10.2.9 will be the final release in the
+   10.2 series. Users of 10.2 are encouraged to migrate to the 10.3
+   series in order to obtain future fixes.
 
 September 19, 2014
 ------------------
@@ -891,12 +904,13 @@ release.
 April 18, 2014
 --------------
 
-| `Mesa 10.0.5 <relnotes/10.0.5.html>`__ is released. This is a bug-fix
-  release.
-| NOTE: Since the 10.1.1 release is being released concurrently, it is
-  anticipated that 10.0.5 will be the final release in the 10.0 series.
-  Users of 10.0 are encouraged to migrate to the 10.1 series in order to
-  obtain future fixes.
+`Mesa 10.0.5 <relnotes/10.0.5.html>`__ is released. This is a bug-fix
+release.
+
+   NOTE: Since the 10.1.1 release is being released concurrently, it is
+   anticipated that 10.0.5 will be the final release in the 10.0 series.
+   Users of 10.0 are encouraged to migrate to the 10.1 series in order to
+   obtain future fixes.
 
 March 12, 2014
 --------------
@@ -1356,7 +1370,7 @@ version 6.3.1.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     98192e45ed8d69113688f89f90869346  MesaLib-6.3.2.tar.gz
     0df27701df0924d17ddf41185efa8ce1  MesaLib-6.3.2.tar.bz2
@@ -1371,7 +1385,7 @@ July 20, 2005
 Mesa 6.3 has been released. This is a development release with new
 features, changes and bug fixes.
 
-::
+.. code-block:: text
 
         New:
         - GL_EXT_framebuffer_object extension
@@ -1410,7 +1424,7 @@ features, changes and bug fixes.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     0236f552d37514776945d5a013e5bb7b  MesaLib-6.3.tar.gz
     60e1a8f78c4a8c7750a1e95753190986  MesaLib-6.3.tar.bz2
@@ -1425,7 +1439,7 @@ December 9, 2004
 Mesa 6.2.1 has been released. This is a stable release which just fixes
 bugs since the 6.2 release.
 
-::
+.. code-block:: text
 
         Bug fixes:
         - don't apply regular fog or color sum when using a fragment program
@@ -1444,7 +1458,7 @@ bugs since the 6.2 release.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     80008a92f6e055d3bfdde2cf331ec3fa  MesaLib-6.2.1.tar.gz
     f43228cd2bf70f583ef3275c1c545421  MesaLib-6.2.1.tar.bz2
@@ -1459,7 +1473,7 @@ October 2, 2004
 Mesa 6.2 has been released. This is a stable release which just fixes
 bugs since the 6.1 release.
 
-::
+.. code-block:: text
 
         New:
         - enabled GL_ARB_texture_rectangle (same as GL_NV_texture_rectangle)
@@ -1482,7 +1496,7 @@ bugs since the 6.1 release.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     9e8f34b059272dbb8e1f2c968b33bbf0  MesaLib-6.2.tar.gz
     3d6a6362390b6a37d3cb2e615f3ac7db  MesaLib-6.2.tar.bz2
@@ -1497,7 +1511,7 @@ August 18, 2004
 Mesa 6.1 has been released. This is a new development release (version
 6.2 will be a stabilization release).
 
-::
+.. code-block:: text
 
         New:
         - Revamped Makefile system
@@ -1536,7 +1550,7 @@ Mesa 6.1 has been released. This is a new development release (version
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     c9284d295ebcd2e0486cc3cd54e5863c  MesaLib-6.1.tar.gz
     5de1f53ec0709f60fc68fdfed57351f3  MesaLib-6.1.tar.bz2
@@ -1551,7 +1565,7 @@ April 2, 2004
 Mesa 6.0.1 has been released. This release basically just fixes bugs
 since the 6.0. release.
 
-::
+.. code-block:: text
 
         New:
         - upgraded glext.h to version 22
@@ -1586,7 +1600,7 @@ since the 6.0. release.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     011be0e79666c7a6eb9693fbf9348653  MesaLib-6.0.1.tar.gz
     b7f14088c5c2f14490d2739a91102112  MesaLib-6.0.1.tar.bz2
@@ -1601,7 +1615,7 @@ January 16, 2004
 Mesa 6.0 has been released. This is a stabilization of the 5.1 release
 and primarily just incorporates bug fixes.
 
-::
+.. code-block:: text
 
         New:
         - full OpenGL 1.5 support
@@ -1634,7 +1648,7 @@ Mesa 5.1 has been released. This is a new development release. Mesa 6.0
 will be the next stable release and will support all OpenGL 1.5
 features.
 
-::
+.. code-block:: text
 
         New features:
         - reorganized directory tree
@@ -1676,7 +1690,7 @@ features.
 
 The MD5 checksums are:
 
-::
+.. code-block:: bash
 
     78f452f6c55478471a744f07147612b5  MesaLib-5.1.tar.gz
     67b3b8d3f7f4c8c44904551b851d01af  MesaLib-5.1.tar.bz2
@@ -1693,7 +1707,7 @@ number of automake/libtool problems.
 
 The new MD5 checksums are:
 
-::
+.. code-block:: bash
 
     a9dcf3ff9ad1b7d6ce73a0df7cff8b5b  MesaLib-5.0.2.tar.gz
     7b4bf9261657c2fca03796d4955e6f50  MesaLib-5.0.2.tar.bz2
@@ -1707,7 +1721,7 @@ September 5, 2003
 
 Mesa 5.0.2 has been released. This is a stable, bug-fix release.
 
-::
+.. code-block:: text
 
         Bug fixes:
         - fixed texgen problem causing texcoord's Q to be zero (stex3d)
@@ -1750,7 +1764,7 @@ March 30, 2003
 
 Mesa 5.0.1 has been released. This is a stable, bug-fix release.
 
-::
+.. code-block:: text
 
         New:
         - DOS driver updates from Daniel Borca
@@ -1789,7 +1803,7 @@ Mesa 5.0.1 has been released. This is a stable, bug-fix release.
 
 MD5 checksums follow:
 
-::
+.. code-block:: bash
 
     b80f8b5d53a3e9f19b9fde5af0c542f0  MesaLib-5.0.1.tar.gz
     513b4bbd7d38951f05027179063d876b  MesaLib-5.0.1.tar.bz2
@@ -1814,7 +1828,7 @@ November 13, 2002
 Mesa 5.0 has been released. This is a stable release which implements
 the OpenGL 1.4 specification.
 
-::
+.. code-block:: text
 
     New:
         - OpenGL 1.4 support (glGetString(GL_VERSION) returns "1.4")
@@ -1844,7 +1858,7 @@ October 29, 2002
 Mesa 4.1 has been released. This is a new development release. For a
 stable release, get 4.0.4.
 
-::
+.. code-block:: text
 
     New:
         - GL_NV_vertex_program extension
@@ -1901,7 +1915,7 @@ October 3, 2002
 
 Mesa 4.0.4 has been released. This is a stable bug-fix release.
 
-::
+.. code-block:: text
 
         New:
         - GL_NV_texture_rectangle extension
@@ -1935,7 +1949,7 @@ June 25, 2002
 
 Mesa 4.0.3 has been released. This is a stable bug-fix release.
 
-::
+.. code-block:: text
 
         New:
         - updated GL/glext.h file (version 15)
@@ -1968,7 +1982,7 @@ April 2, 2002
 
 Mesa 4.0.2 has been released. This is a stable bug-fix release.
 
-::
+.. code-block:: text
 
         New:
           - New DOS (DJGPP) driver written by Daniel Borca
@@ -1998,7 +2012,7 @@ December 17, 2001
 
 Mesa 4.0.1 has been released. This is a stable bug-fix release.
 
-::
+.. code-block:: text
 
         New:
           - better sub-pixel sample positions for AA triangles (Ray Tice)
@@ -2031,7 +2045,7 @@ October 22, 2001
 
 Mesa 4.0 has been released. This is a stable release.
 
-::
+.. code-block:: text
 
         New:
           - Mesa 4.0 implements the OpenGL 1.3 specification
@@ -2066,7 +2080,7 @@ June 21, 2001
 
 Mesa 3.5 has been released. This is a new development release.
 
-::
+.. code-block:: text
 
         New:
         - internals of Mesa divided into modular pieces (Keith Whitwell)
@@ -2111,7 +2125,7 @@ May 17, 2001
 Mesa 3.4.2 has been released. This is basically just a bug-fix release.
 Here's what's new:
 
-::
+.. code-block:: text
 
         Bug fixes:
             - deleting the currently bound texture could cause bad problems
@@ -2139,15 +2153,15 @@ April 29, 2001
 
 New Mesa website
 
-| Mark Manning produced the new website.
-| Thanks, Mark!
+   Mark Manning produced the new website.
+   Thanks, Mark!
 
 February 14, 2001
 -----------------
 
 Mesa 3.4.1 has been released. Here's what's new:
 
-::
+.. code-block:: text
 
         New:
             - fixed some Linux build problems
@@ -2179,7 +2193,7 @@ November 3, 2000
 
 Mesa 3.4 has been released. Here's what's new since the 3.3 release:
 
-::
+.. code-block:: text
 
         New:
         - optimized glDrawPixels for glPixelZoom(1,-1)
@@ -2212,7 +2226,7 @@ April 24, 2000
 
 Mesa 3.2 has been released. Here's what's new since the beta release:
 
-::
+.. code-block:: text
 
         Bug fixes:
         - fixed memcpy bugs in span.c
@@ -2238,7 +2252,7 @@ it's mainly just bug fixes.
 
 Here's what's changed:
 
-::
+.. code-block:: text
 
         Bug fixes:
             - mixed drawing of lines and bitmaps sometimes had wrong colors
@@ -2275,9 +2289,9 @@ Here's what's changed:
         Changes:
             - glXCopyContext's mask parameter is now unsigned long, per GLX spec
 
-| Please report any problems with this release ASAP. Bugs should be
-  filed on the Mesa3D website at sourceforge.
-| After 3.2 is wrapped up I hope to release 3.3 beta 1 soon afterward.
+   Please report any problems with this release ASAP. Bugs should be
+   filed on the Mesa3D website at sourceforge.
+   After 3.2 is wrapped up I hope to release 3.3 beta 1 soon afterward.
 
 -- Brian
 
@@ -2378,7 +2392,7 @@ Precision Insight has posted their lowlevel design documents at
 May 13, 1999
 ------------
 
-::
+.. code-block:: text
 
     May 1999 - John Carmack of id Software, Inc. has made a donation of
     US$10,000 to the Mesa project to support its continuing development.
diff --git a/docs/install.rst b/docs/install.rst
index 177e393d56..0fe6773e61 100644
--- a/docs/install.rst
+++ b/docs/install.rst
@@ -41,10 +41,11 @@ you're willing to maintain support for other compiler get in touch.
 -  Microsoft Visual Studio 2013 Update 4 or later is required, for
    building on Windows.
 
-| Third party/extra tools.
-| **Note**: These should not be required, when building from a release
-  tarball. If you think you've spotted a bug let developers know by
-  filing a `bug report <bugs.html>`__.
+Third party/extra tools.
+
+**Note**: These should not be required, when building from a release
+tarball. If you think you've spotted a bug let developers know by
+filing a `bug report <bugs.html>`__.
 
 -  `Python <https://www.python.org/>`__ - Python is required. Version
    2.6.4 or later should work.
@@ -52,26 +53,19 @@ you're willing to maintain support for other compiler get in touch.
    module is required. Version 0.3.4 or later should work.
 -  lex / yacc - for building the Mesa IR and GLSL compiler.
 
-   .. raw:: html
-
-      <div>
-
    On Linux systems, flex and bison versions 2.5.35 and 2.4.1,
    respectively, (or later) should work. On Windows with MinGW, install
    flex and bison with:
-   ::
+
+   .. code-block:: bash
 
        mingw-get install msys-flex msys-bison
 
    For MSVC on Windows, install `Win
    flex-bison <http://winflexbison.sourceforge.net/>`__.
 
-   .. raw:: html
-
-      </div>
-
-**Note**: Some versions can be buggy (eg. flex 2.6.2) so do try others
-if things fail.
+   **Note**: Some versions can be buggy (eg. flex 2.6.2) so do try others
+   if things fail.
 
 1.2 Requirements
 ~~~~~~~~~~~~~~~~
@@ -83,7 +77,7 @@ error message.
 Here are some common ways to retrieve most/all of the dependencies based
 on the packaging tool used by your distro.
 
-::
+.. code-block:: bash
 
       zypper source-install --build-deps-only Mesa # openSUSE/SLED/SLES
       yum-builddep mesa # yum Fedora, OpenSuse(?)
@@ -98,7 +92,7 @@ The primary method to build Mesa on Unix systems is with autoconf.
 
 The general approach is the standard:
 
-::
+.. code-block:: bash
 
       ./configure
       make
@@ -112,25 +106,25 @@ for more details.
 
 To build Mesa with SCons on Linux or Windows do
 
-::
+.. code-block:: bash
 
         scons
 
 The build output will be placed in
-build/\ *platform*-*machine*-*debug*/..., where *platform* is for
-example linux or windows, *machine* is x86 or x86\_64, optionally
-followed by -debug for debug builds.
+``build/platform-machine-debug/...``, where ``platform`` is for
+example linux or windows, ``machine`` is ``x86`` or ``x86_64``, optionally
+followed by ``-debug`` for debug builds.
 
 To build Mesa with SCons for Windows on Linux using the MinGW
 crosscompiler toolchain do
 
-::
+.. code-block:: bash
 
         scons platform=windows toolchain=crossmingw machine=x86 libgl-gdi
 
 This will create:
 
--  build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll — Mesa
+-  ``build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll`` — Mesa
    + Gallium + softpipe (or llvmpipe), binary compatible with Windows's
    opengl32.dll
 
@@ -144,11 +138,11 @@ Currently one can build Mesa for Android as part of the AOSP project,
 yet your experience might vary.
 
 In order to achieve that one should update their local manifest to point
-to the upstream repo, set the appropriate BOARD\_GPU\_DRIVERS and build
-the libGLES\_mesa library.
+to the upstream repo, set the appropriate ``BOARD_GPU_DRIVERS`` and build
+the ``libGLES_mesa`` library.
 
-FINISHME: Improve on the instructions add references to Rob H
-repos/Jenkins, Android-x86 and/or other resources.
+   *FINISHME*: Improve on the instructions add references to Rob H
+   repos/Jenkins, Android-x86 and/or other resources.
 
 5. Library Information
 ======================
@@ -157,7 +151,7 @@ When compilation has finished, look in the top-level ``lib/`` (or
 ``lib64/``) directory. You'll see a set of library files similar to
 this:
 
-::
+.. code-block:: bash
 
     lrwxrwxrwx    1 brian    users          10 Mar 26 07:53 libGL.so -> libGL.so.1*
     lrwxrwxrwx    1 brian    users          19 Mar 26 07:53 libGL.so.1 -> libGL.so.1.5.060100*
@@ -166,12 +160,13 @@ this:
     lrwxrwxrwx    1 brian    users          23 Mar 26 07:53 libOSMesa.so.6 -> libOSMesa.so.6.1.060100*
     -rwxr-xr-x    1 brian    users       23871 Mar 26 07:53 libOSMesa.so.6.1.060100*
 
-| **libGL** is the main OpenGL library (i.e. Mesa).
-| **libOSMesa** is the OSMesa (Off-Screen) interface library.
+**libGL** is the main OpenGL library (i.e. Mesa).
+
+**libOSMesa** is the OSMesa (Off-Screen) interface library.
 
 If you built the DRI hardware drivers, you'll also see the DRI drivers:
 
-::
+.. code-block:: bash
 
     -rwxr-xr-x   1 brian users 16895413 Jul 21 12:11 i915_dri.so
     -rwxr-xr-x   1 brian users 16895413 Jul 21 12:11 i965_dri.so
@@ -185,15 +180,14 @@ Gallium-based versions of libGL and device drivers.
 ===========================================
 
 Running ``make install`` will install package configuration files for
-the pkg-config utility.
+the ``pkg-config`` utility.
 
-When compiling your OpenGL application you can use pkg-config to
+When compiling your OpenGL application you can use ``pkg-config`` to
 determine the proper compiler and linker flags.
 
 For example, compiling and linking a GLUT application can be done with:
 
-::
+.. code-block:: bash
 
        gcc `pkg-config --cflags --libs glut` mydemo.c -o mydemo
 
-| 
diff --git a/docs/intro.rst b/docs/intro.rst
index a85a257fc8..62fcc5abe2 100644
--- a/docs/intro.rst
+++ b/docs/intro.rst
@@ -153,8 +153,8 @@ Version 9.x of Mesa implements the OpenGL 3.1 API. While the driver for
 Intel Sandy Bridge and Ivy Bridge is the only driver to support OpenGL
 3.1, many developers across the open-source community contributed
 features required for OpenGL 3.1. The primary features added since the
-Mesa 8.0 release are GL\_ARB\_texture\_buffer\_object and
-GL\_ARB\_uniform\_buffer\_object.
+Mesa 8.0 release are ``GL_ARB_texture_buffer_object`` and
+``GL_ARB_uniform_buffer_object``.
 
 Version 9.0 of Mesa also included the first release of the Clover state
 tracker for OpenCL.
@@ -178,14 +178,14 @@ Version 6.x features
 Version 6.x of Mesa implements the OpenGL 1.5 API with the following
 extensions incorporated as standard features:
 
--  GL\_ARB\_occlusion\_query
--  GL\_ARB\_vertex\_buffer\_object
--  GL\_EXT\_shadow\_funcs
+-  ``GL_ARB_occlusion_query``
+-  ``GL_ARB_vertex_buffer_object``
+-  ``GL_EXT_shadow_funcs``
 
 Also note that several OpenGL tokens were renamed in OpenGL 1.5 for the
 sake of consistency. The old tokens are still available.
 
-::
+.. code-block:: c
 
     New Token                   Old Token
     ------------------------------------------------------------
@@ -213,23 +213,23 @@ Version 5.x features
 Version 5.x of Mesa implements the OpenGL 1.4 API with the following
 extensions incorporated as standard features:
 
--  GL\_ARB\_depth\_texture
--  GL\_ARB\_shadow
--  GL\_ARB\_texture\_env\_crossbar
--  GL\_ARB\_texture\_mirror\_repeat
--  GL\_ARB\_window\_pos
--  GL\_EXT\_blend\_color
--  GL\_EXT\_blend\_func\_separate
--  GL\_EXT\_blend\_logic\_op
--  GL\_EXT\_blend\_minmax
--  GL\_EXT\_blend\_subtract
--  GL\_EXT\_fog\_coord
--  GL\_EXT\_multi\_draw\_arrays
--  GL\_EXT\_point\_parameters
--  GL\_EXT\_secondary\_color
--  GL\_EXT\_stencil\_wrap
--  GL\_EXT\_texture\_lod\_bias (plus, a per-texture LOD bias parameter)
--  GL\_SGIS\_generate\_mipmap
+-  ``GL_ARB_depth_texture``
+-  ``GL_ARB_shadow``
+-  ``GL_ARB_texture_env_crossbar``
+-  ``GL_ARB_texture_mirror_repeat``
+-  ``GL_ARB_window_pos``
+-  ``GL_EXT_blend_color``
+-  ``GL_EXT_blend_func_separate``
+-  ``GL_EXT_blend_logic_op``
+-  ``GL_EXT_blend_minmax``
+-  ``GL_EXT_blend_subtract``
+-  ``GL_EXT_fog_coord``
+-  ``GL_EXT_multi_draw_arrays``
+-  ``GL_EXT_point_parameters``
+-  ``GL_EXT_secondary_color``
+-  ``GL_EXT_stencil_wrap``
+-  ``GL_EXT_texture_lod_bias`` (plus, a per-texture LOD bias parameter)
+-  ``GL_SGIS_generate_mipmap``
 
 Version 4.x features
 --------------------
@@ -237,15 +237,15 @@ Version 4.x features
 Version 4.x of Mesa implements the OpenGL 1.3 API with the following
 extensions incorporated as standard features:
 
--  GL\_ARB\_multisample
--  GL\_ARB\_multitexture
--  GL\_ARB\_texture\_border\_clamp
--  GL\_ARB\_texture\_compression
--  GL\_ARB\_texture\_cube\_map
--  GL\_ARB\_texture\_env\_add
--  GL\_ARB\_texture\_env\_combine
--  GL\_ARB\_texture\_env\_dot3
--  GL\_ARB\_transpose\_matrix
+-  ``GL_ARB_multisample``
+-  ``GL_ARB_multitexture``
+-  ``GL_ARB_texture_border_clamp``
+-  ``GL_ARB_texture_compression``
+-  ``GL_ARB_texture_cube_map``
+-  ``GL_ARB_texture_env_add``
+-  ``GL_ARB_texture_env_combine``
+-  ``GL_ARB_texture_env_dot3``
+-  ``GL_ARB_transpose_matrix``
 
 Version 3.x features
 --------------------
@@ -255,7 +255,7 @@ features:
 
 -  BGR, BGRA and packed pixel formats
 -  New texture border clamp mode
--  glDrawRangeElements()
+-  ``glDrawRangeElements()``
 -  standard 3-D texturing
 -  advanced MIPMAP control
 -  separate specular color interpolation
@@ -268,41 +268,41 @@ features.
 
 -  Texture mapping:
 
-   -  glAreTexturesResident
-   -  glBindTexture
-   -  glCopyTexImage1D
-   -  glCopyTexImage2D
-   -  glCopyTexSubImage1D
-   -  glCopyTexSubImage2D
-   -  glDeleteTextures
-   -  glGenTextures
-   -  glIsTexture
-   -  glPrioritizeTextures
-   -  glTexSubImage1D
-   -  glTexSubImage2D
+   -  ``glAreTexturesResident``
+   -  ``glBindTexture``
+   -  ``glCopyTexImage1D``
+   -  ``glCopyTexImage2D``
+   -  ``glCopyTexSubImage1D``
+   -  ``glCopyTexSubImage2D``
+   -  ``glDeleteTextures``
+   -  ``glGenTextures``
+   -  ``glIsTexture``
+   -  ``glPrioritizeTextures``
+   -  ``glTexSubImage1D``
+   -  ``glTexSubImage2D``
 
 -  Vertex Arrays:
 
-   -  glArrayElement
-   -  glColorPointer
-   -  glDrawElements
-   -  glEdgeFlagPointer
-   -  glIndexPointer
-   -  glInterleavedArrays
-   -  glNormalPointer
-   -  glTexCoordPointer
-   -  glVertexPointer
+   -  ``glArrayElement``
+   -  ``glColorPointer``
+   -  ``glDrawElements``
+   -  ``glEdgeFlagPointer``
+   -  ``glIndexPointer``
+   -  ``glInterleavedArrays``
+   -  ``glNormalPointer``
+   -  ``glTexCoordPointer``
+   -  ``glVertexPointer``
 
 -  Client state management:
 
-   -  glDisableClientState
-   -  glEnableClientState
-   -  glPopClientAttrib
-   -  glPushClientAttrib
+   -  ``glDisableClientState``
+   -  ``glEnableClientState``
+   -  ``glPopClientAttrib``
+   -  ``glPushClientAttrib``
 
 -  Misc:
 
-   -  glGetPointer
-   -  glIndexub
-   -  glIndexubv
-   -  glPolygonOffset
+   -  ``glGetPointer``
+   -  ``glIndexub``
+   -  ``glIndexubv``
+   -  ``glPolygonOffset``
diff --git a/docs/license.rst b/docs/license.rst
index 40387f4dc2..bad1603175 100644
--- a/docs/license.rst
+++ b/docs/license.rst
@@ -8,17 +8,17 @@ Mesa is a 3-D graphics library with an API which is very similar to that
 of `OpenGL <https://www.opengl.org/>`__.\* To the extent that Mesa
 utilizes the OpenGL command syntax or state machine, it is being used
 with authorization from `Silicon Graphics,
-Inc. <https://www.sgi.com/>`__\ (SGI). However, the author does not
+Inc. <https://en.wikipedia.org/wiki/Silicon_Graphics>`__\ (SGI). However, the author does not
 possess an OpenGL license from SGI, and makes no claim that Mesa is in
 any way a compatible replacement for OpenGL or associated with SGI.
 Those who want a licensed implementation of OpenGL should contact a
 licensed vendor.
 
-| Please do not refer to the library as *MesaGL* (for legal reasons).
-  It's just *Mesa* or *The Mesa 3-D graphics library*.
+   Please do not refer to the library as *MesaGL* (for legal reasons).
+   It's just *Mesa* or *The Mesa 3-D graphics library*.
 
 \* OpenGL is a trademark of `Silicon Graphics
-Incorporated <https://www.sgi.com/>`__.
+Incorporated <https://en.wikipedia.org/wiki/Silicon_Graphics>`__.
 
 License / Copyright Information
 ===============================
@@ -35,7 +35,7 @@ projects.
 
 The default Mesa license is as follows:
 
-::
+.. code-block:: text
 
     Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
 
@@ -68,7 +68,7 @@ respective licenses.
 Mesa Component Licenses
 =======================
 
-::
+.. code-block:: text
 
     Component         Location               License
     ------------------------------------------------------------------
diff --git a/docs/llvmpipe.rst b/docs/llvmpipe.rst
index e88bf3d6a7..ff5eff67de 100644
--- a/docs/llvmpipe.rst
+++ b/docs/llvmpipe.rst
@@ -32,7 +32,7 @@ Requirements
 
    For Linux, on a recent Debian based distribution do:
 
-   ::
+   .. code-block:: bash
 
             aptitude install llvm-dev
 
@@ -43,7 +43,7 @@ Requirements
 
    For a RPM-based distribution do:
 
-   ::
+   .. code-block:: bash
 
             yum install llvm-devel
 
@@ -54,28 +54,18 @@ Requirements
    be built with a matching CRT as Mesa, and you'll need to pass
    ``-DLLVM_USE_CRT_xxx=yyy`` as described below.
 
-   LLVM build-type
+   +---------------+------------------------------------------------------------+
+   |LLVM build-type|                      Mesa build-type                       |
+   |               +------------------------------+-----------------------------+
+   |               |debug,checked                 |release,profile              |
+   +===============+==============================+=============================+
+   |Debug          |``-DLLVM_USE_CRT_DEBUG=MTd``  |``-DLLVM_USE_CRT_DEBUG=MT``  |
+   +---------------+------------------------------+-----------------------------+
+   |Release        |``-DLLVM_USE_CRT_RELEASE=MTd``|``-DLLVM_USE_CRT_RELEASE=MT``|
+   +---------------+------------------------------+-----------------------------+
 
-   Mesa build-type
-
-   debug,checked
-
-   release,profile
-
-   Debug
-
-   ``-DLLVM_USE_CRT_DEBUG=MTd``
-
-   ``-DLLVM_USE_CRT_DEBUG=MT``
-
-   Release
-
-   ``-DLLVM_USE_CRT_RELEASE=MTd``
-
-   ``-DLLVM_USE_CRT_RELEASE=MT``
-
-   You can build only the x86 target by passing
-   -DLLVM\_TARGETS\_TO\_BUILD=X86 to cmake.
+You can build only the x86 target by passing
+``-DLLVM_TARGETS_TO_BUILD=X86`` to cmake.
 
 -  scons (optional)
 
@@ -84,13 +74,13 @@ Building
 
 To build everything on Linux invoke scons as:
 
-::
+.. code-block:: bash
 
       scons build=debug libgl-xlib
 
 Alternatively, you can build it with autoconf/make with:
 
-::
+.. code-block:: bash
 
       ./configure --enable-glx=gallium-xlib --with-gallium-drivers=swrast --disable-dri --disable-gbm --disable-egl
       make
@@ -98,7 +88,7 @@ Alternatively, you can build it with autoconf/make with:
 but the rest of these instructions assume that scons is used. For
 Windows the procedure is similar except the target:
 
-::
+.. code-block:: bash
 
       scons platform=windows build=debug libgl-gdi
 
@@ -108,7 +98,7 @@ Using
 Linux
 -----
 
-On Linux, building will create a drop-in alternative for libGL.so into
+On Linux, building will create a drop-in alternative for ``libGL.so`` into
 
 ::
 
@@ -120,10 +110,10 @@ or
 
       lib/gallium/libGL.so
 
-To use it set the LD\_LIBRARY\_PATH environment variable accordingly.
+To use it set the ``LD_LIBRARY_PATH`` environment variable accordingly.
 
-For performance evaluation pass build=release to scons, and use the
-corresponding lib directory without the "-debug" suffix.
+For performance evaluation pass ``build=release`` to scons, and use the
+corresponding lib directory without the ``-debug`` suffix.
 
 Windows
 -------
@@ -139,12 +129,12 @@ There is however an easy way to replace the OpenGL software renderer
 that comes with Microsoft Windows 7 (or later) with llvmpipe (that is,
 on systems without any OpenGL drivers):
 
--  copy build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll
-   to C:\\Windows\\SysWOW64\\mesadrv.dll
+-  copy ``build/windows-x86-debug/gallium/targets/libgl-gdi/opengl32.dll``
+   to ``C:\\Windows\\SysWOW64\\mesadrv.dll``
 
 -  load this registry settings:
 
-   ::
+   .. code-block:: text
 
        REGEDIT4
 
@@ -163,7 +153,7 @@ Profiling
 
 To profile llvmpipe you should build as
 
-::
+.. code-block:: bash
 
       scons build=profile <same-as-before>
 
@@ -176,10 +166,10 @@ Linux perf integration
 On Linux, it is possible to have symbol resolution of JIT code with
 `Linux perf <https://perf.wiki.kernel.org/>`__:
 
-::
+.. code-block:: bash
 
        perf record -g /my/application
-        perf report
+       perf report
 
 When run inside Linux perf, llvmpipe will create a /tmp/perf-XXXXX.map
 file with symbol address table. It also dumps assembly code to
@@ -203,7 +193,7 @@ build/linux-???-debug/gallium/drivers/llvmpipe:
 Some of these tests can output results and benchmarks to a tab-separated
 file for later analysis, e.g.:
 
-::
+.. code-block:: bash
 
       build/linux-x86_64-debug/gallium/drivers/llvmpipe/lp_test_blend -o blend.tsv
 
@@ -271,7 +261,6 @@ Recommended Reading
       resources <http://www.agner.org/optimize/>`__
    -  `Intel Intrinsics
       Guide <https://software.intel.com/en-us/articles/intel-intrinsics-guide>`__
-   -  
 
 -  LLVM
 
diff --git a/docs/mangling.rst b/docs/mangling.rst
index 1eeffd3c38..4044296936 100644
--- a/docs/mangling.rst
+++ b/docs/mangling.rst
@@ -7,8 +7,8 @@ application at the same time you may find it useful to compile Mesa with
 with **mgl** instead of **gl**.
 
 This option is supported only with the autoconf build. To use it add
---enable-mangling to your configure line.
+``--enable-mangling`` to your configure line.
 
-::
+.. code-block:: bash
 
     ./configure --enable-mangling ...
diff --git a/docs/meson.rst b/docs/meson.rst
index e03949ddd9..e529ab4d1e 100644
--- a/docs/meson.rst
+++ b/docs/meson.rst
@@ -20,7 +20,7 @@ default backend on all operating systems. Meson only supports
 out-of-tree builds, and must be passed a directory to put built and
 generated sources into. We'll call that directory "build" for examples.
 
-::
+.. code-block:: bash
 
         meson build/
 
@@ -31,7 +31,7 @@ defaults and your local settings. Meson does not currently support
 listing options before configure a build directory, but this feature is
 being discussed upstream.
 
-::
+.. code-block:: bash
 
         meson configure build/
 
@@ -39,15 +39,15 @@ With additional arguments ``meson configure`` is used to change options
 on already configured build directory. All options passed to this
 command are in the form ``-D "command"="value"``.
 
-::
+.. code-block:: bash
 
         meson configure build/ -Dprefix=/tmp/install -Dglx=true
 
 Once you've run the initial ``meson`` command successfully you can use
-your configured backend to build the project. With ninja, the -C option
+your configured backend to build the project. With ninja, the ``-C`` option
 can be be used to point at a directory to build.
 
-::
+.. code-block:: bash
 
         ninja -C build/
 
@@ -57,7 +57,7 @@ to rebuild for a different configuration, you should run ``ninja clean``
 before changing the configuration, or create a new out of tree build
 directory for each configuration you want to build `as recommended in
 the
-documentation <http://mesonbuild.com/Using-multiple-build-directories.html>`__
+documentation <http://mesonbuild.com/Using-multiple-build-directories.html>`__.
 
 ``Environment Variables``
     Meson supports the standard CC and CXX environment variables for
@@ -75,7 +75,7 @@ documentation <http://mesonbuild.com/Using-multiple-build-directories.html>`__
     recommended when changing CFLAGS or CXXFLAGS. Meson will never
     change compiler in a configured build directory.
 
-    ::
+    .. code-block:: bash
 
             CC=clang CXX=clang++ meson build-clang
             ninja -C build-clang
@@ -102,9 +102,9 @@ documentation <http://mesonbuild.com/Using-multiple-build-directories.html>`__
 
 One of the oddities of meson is that some options are different when
 passed to the ``meson`` than to ``meson configure``. These options are
-passed as --option=foo to ``meson``, but -Doption=foo to
+passed as ``--option=foo`` to ``meson``, but ``-Doption=foo`` to
 ``meson configure``. Mesa defined options are always passed as
--Doption=foo.
+``-Doption=foo``.
 
 For those coming from autotools be aware of the following:
 
diff --git a/docs/osmesa.rst b/docs/osmesa.rst
index 3317b5ed4e..2205152142 100644
--- a/docs/osmesa.rst
+++ b/docs/osmesa.rst
@@ -3,12 +3,12 @@ Off-screen Rendering
 
 Mesa's off-screen interface is used for rendering into user-allocated
 memory without any sort of window system or operating system
-dependencies. That is, the GL\_FRONT colorbuffer is actually a buffer in
+dependencies. That is, the ``GL_FRONT`` colorbuffer is actually a buffer in
 main memory, rather than a window on your display.
 
 The OSMesa API provides three basic functions for making off-screen
-renderings: OSMesaCreateContext(), OSMesaMakeCurrent(), and
-OSMesaDestroyContext(). See the Mesa/include/GL/osmesa.h header for more
+renderings: ``OSMesaCreateContext()``, ``OSMesaMakeCurrent()``, and
+``OSMesaDestroyContext()``. See the ``Mesa/include/GL/osmesa.h`` header for more
 information about the API functions.
 
 The OSMesa interface may be used with any of three software renderers:
@@ -24,7 +24,7 @@ Building OSMesa
 
 Configure and build Mesa with something like:
 
-::
+.. code-block:: bash
 
     configure --enable-osmesa --disable-driglx-direct --disable-dri --with-gallium-drivers=swrast
     make
@@ -39,7 +39,7 @@ When the build is complete you should find:
     lib/libOSMesa.so  (swrast-based OSMesa)
     lib/gallium/libOSMsea.so  (gallium-based OSMesa)
 
-Set your LD\_LIBRARY\_PATH to point to one directory or the other to
+Set your ``LD_LIBRARY_PATH`` to point to one directory or the other to
 select the library you want to use.
 
-When you link your application, link with -lOSMesa
+When you link your application, link with ``-lOSMesa``.
diff --git a/docs/perf.rst b/docs/perf.rst
index 5907a7fe8b..bf14549db3 100644
--- a/docs/perf.rst
+++ b/docs/perf.rst
@@ -3,42 +3,73 @@ Performance Tips
 
 Performance tips for software rendering:
 
-#. Turn off smooth shading when you don't need it (glShadeModel)
+#. Turn off smooth shading when you don't need it (``glShadeModel``)
 #. Turn off depth buffering when you don't need it.
 #. Turn off dithering when not needed.
 #. Use double buffering as it's often faster than single buffering
 #. Compile in the X Shared Memory extension option if it's supported on
-   your system by adding -DSHM to CFLAGS and -lXext to XLIBS for your
+   your system by adding ``-DSHM`` to CFLAGS and ``-lXext`` to XLIBS for your
    system in the Make-config file.
 #. Recompile Mesa with more optimization if possible.
 #. Try to maximize the amount of drawing done between glBegin/glEnd
    pairs.
-#. Use the MESA\_BACK\_BUFFER variable to find best performance in
+#. Use the ``MESA_BACK_BUFFER`` variable to find best performance in
    double buffered mode. (X users only)
-#. Optimized polygon rasterizers are employed when: rendering into back
-   buffer which is an XImage RGB mode, not grayscale, not monochrome
-   depth buffering is GL\_LESS, or disabled flat or smooth shading
-   dithered or non-dithered no other rasterization operations enabled
-   (blending, stencil, etc)
-#. Optimized line drawing is employed when: rendering into back buffer
-   which is an XImage RGB mode, not grayscale, not monochrome depth
-   buffering is GL\_LESS or disabled flat shading dithered or
-   non-dithered no other rasterization operations enabled (blending,
-   stencil, etc)
-#. Textured polygons are fastest when: using a 3-component (RGB), 2-D
-   texture minification and magnification filters are GL\_NEAREST
-   texture coordinate wrap modes for S and T are GL\_REPEAT GL\_DECAL
-   environment mode glHint( GL\_PERSPECTIVE\_CORRECTION\_HINT,
-   GL\_FASTEST ) depth buffering is GL\_LESS or disabled
-#. Lighting is fastest when: Two-sided lighting is disabled
-   GL\_LIGHT\_MODEL\_LOCAL\_VIEWER is false GL\_COLOR\_MATERIAL is
-   disabled No spot lights are used (all GL\_SPOT\_CUTOFFs are 180.0) No
-   local lights are used (all position W's are 0.0) All material and
-   light coefficients are >= zero
+#. Optimized polygon rasterizers are employed when
+
+   - rendering into back buffer which is an XImage RGB mode,
+     not grayscale, not monochrome
+
+   - depth buffering is ``GL_LESS``, or disabled
+
+   - flat or smooth shading dithered or non-dithered
+
+   - no other rasterization operations enabled
+     (blending, stencil, etc)
+
+#. Optimized line drawing is employed when
+
+   - rendering into back buffer which is an XImage RGB mode,
+     not grayscale, not monochrome depth
+
+   - buffering is ``GL_LESS`` or disabled
+
+   - flat shading dithered or non-dithered
+
+   - no other rasterization operations enabled (blending,
+     stencil, etc)
+
+#. Textured polygons are fastest when
+
+   - using a 3-component (RGB)
+
+   - 2-D texture minification and magnification filters are ``GL_NEAREST``
+
+   - texture coordinate wrap modes for S and T are ``GL_REPEAT`` ``GL_DECAL``
+
+   - environment mode ``glHint( GL_PERSPECTIVE_CORRECTION_HINT,
+     GL_FASTEST )``
+
+   - depth buffering is ``GL_LESS`` or disabled
+
+#. Lighting is fastest when:
+
+   - Two-sided lighting is disabled
+
+   - ``GL_LIGHT_MODEL_LOCAL_VIEWER`` is false
+
+   - ``GL_COLOR_MATERIAL`` is disabled
+
+   - No spot lights are used (all ``GL_SPOT_CUTOFFs`` are 180.0)
+
+   - No local lights are used (all position W's are 0.0)
+
+   - All material and light coefficients are >= zero
+
 #. XFree86 users: if you want to use 24-bit color try starting your X
    server in 32-bit per pixel mode for better performance. That is,
-   start your X server with startx -- -bpp 32 instead of startx -- -bpp
-   24
-#. Try disabling dithering with the MESA\_NO\_DITHER environment
+   start your X server with ``startx -- -bpp 32`` instead of ``startx -- -bpp
+   24``
+#. Try disabling dithering with the ``MESA_NO_DITHER`` environment
    variable. If this env var is defined Mesa will disable dithering and
-   the command glEnable(GL\_DITHER) will be ignored.
+   the command ``glEnable(GL_DITHER)`` will be ignored.
diff --git a/docs/postprocess.rst b/docs/postprocess.rst
index 3135323eec..5a1a43b232 100644
--- a/docs/postprocess.rst
+++ b/docs/postprocess.rst
@@ -14,22 +14,21 @@ Multiple filters can be used together.
 PP environment variables
 ------------------------
 
--  PP\_DEBUG - If defined debug information will be printed to stderr.
+``PP_DEBUG``
+   If defined debug information will be printed to stderr.
 
 Current filters
 ---------------
 
--  pp\_nored, pp\_nogreen, pp\_noblue - set to 1 to remove the
+-  ``pp_nored``, ``pp_nogreen``, ``pp_noblue`` - set to 1 to remove the
    corresponding color channel. These are basic filters for easy testing
    of the PP queue.
--  pp\_jimenezmlaa, pp\_jimenezmlaa\_color - `Jimenez's
+-  ``pp_jimenezmlaa``, ``pp_jimenezmlaa_color`` - `Jimenez's
    MLAA <https://www.iryokufx.com/mlaa/>`__ is a morphological
    antialiasing filter. The two versions use depth and color data,
    respectively. Which works better depends on the app - depth will not
    blur text, but it will miss transparent textures for example. Set to
    a number from 2 to 32, roughly corresponding to quality. Numbers
    higher than 8 see minimizing gains.
--  pp\_celshade - set to 1 to enable cell shading (a more complex color
+-  ``pp_celshade`` - set to 1 to enable cell shading (a more complex color
    filter).
-
-| 
diff --git a/docs/precompiled.rst b/docs/precompiled.rst
index 5197fa4902..5b4ede1539 100644
--- a/docs/precompiled.rst
+++ b/docs/precompiled.rst
@@ -3,9 +3,9 @@ Precompiled Libraries
 
 In general, precompiled Mesa libraries are not available.
 
-| Some Linux distributions closely follow the latest Mesa releases. On
-  others one has to use unofficial channels.
-| There are some general directions:
+Some Linux distributions closely follow the latest Mesa releases. On
+others one has to use unofficial channels.
+There are some general directions:
 
 Debian/Ubuntu based distros - PPA: xorg-edgers, oibaf and padoka
 
diff --git a/docs/release-calendar.rst b/docs/release-calendar.rst
index 1112f6809b..44d4314b60 100644
--- a/docs/release-calendar.rst
+++ b/docs/release-calendar.rst
@@ -3,112 +3,58 @@ Overview
 
 Mesa provides feature/development and stable releases.
 
-| The table below lists the date and release manager that is expected to
-  do the specific release.
-| Take a look `here <submittingpatches.html#criteria>`__ if you'd like
-  to nominate a patch in the next stable release.
+The table below lists the date and release manager that is expected to
+do the specific release.
+Take a look `here <submittingpatches.html#criteria>`__ if you'd like
+to nominate a patch in the next stable release.
 
 Calendar
 ========
-
-Branch
-
-Expected date
-
-Release
-
-Release manager
-
-Notes
-
-18.0
-
-2018-06-01
-
-18.0.5
-
-Juan A. Suarez Romero
-
-Last planned 18.0.x release
-
-18.1
-
-2018-04-20
-
-18.1.0rc1
-
-Dylan Baker
-
-2018-04-27
-
-18.1.0rc2
-
-Dylan Baker
-
-2018-05-04
-
-18.1.0rc3
-
-Dylan Baker
-
-2018-05-11
-
-18.1.0rc4
-
-Dylan Baker
-
-Last planned RC/Final release
-
-TBD
-
-18.1.1
-
-Emil Velikov
-
-TBD
-
-18.1.2
-
-Emil Velikov
-
-TBD
-
-18.1.3
-
-Emil Velikov
-
-TBD
-
-18.1.4
-
-Emil Velikov
-
-Last planned RC/Final release
-
-18.2
-
-2018-07-20
-
-18.2.0rc1
-
-Andres Gomez
-
-2018-07-27
-
-18.2.0rc2
-
-Andres Gomez
-
-2018-08-03
-
-18.2.0rc3
-
-Andres Gomez
-
-2018-08-10
-
-18.2.0rc4
-
-Andres Gomez
-
-Last planned RC/Final release
+====== ============= ========= ===================== =============================
+Branch Expected date Release   Release manager       Notes
+====== ============= ========= ===================== =============================
+18.0   2018-06-01    18.0.5    Juan A. Suarez Romero Last planned 18.0.x release
+18.1   2018-04-20    18.1.0rc1 Dylan Baker           \
+\      2018-04-27    18.1.0rc2 Dylan Baker           \
+\      2018-05-04    18.1.0rc3 Dylan Baker           \
+\      2018-05-11    18.1.0rc4 Dylan Baker           Last planned RC/Final release
+\      TBD           18.1.1    Emil Velikov          \
+\      TBD           18.1.2    Emil Velikov          \
+\      TBD           18.1.3    Emil Velikov          \
+\      TBD           18.1.4    Emil Velikov          Last planned RC/Final release
+18.2   2018-07-20    18.2.0rc1 Andres Gomez          \
+\      2018-07-27    18.2.0rc2 Andres Gomez          \
+\      2018-08-03    18.2.0rc3 Andres Gomez          \
+\      2018-08-10    18.2.0rc4 Andres Gomez          Last planned RC/Final release
+====== ============= ========= ===================== =============================
+
+.. Other table style, in case we end up liking it better.
+   +------+-------------+---------+---------------------+-----------------------------+
+   |Branch|Expected date|Release  |Release manager      |Notes                        |
+   +======+=============+=========+=====================+=============================+
+   |18.0  |2018-06-01   |18.0.5   |Juan A. Suarez Romero|Last planned 18.0.x release  |
+   +------+-------------+---------+---------------------+-----------------------------+
+   |18.1  |2018-04-20   |18.1.0rc1|Dylan Baker          |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-04-27   |18.1.0rc2|Dylan Baker          |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-05-04   |18.1.0rc3|Dylan Baker          |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-05-11   |18.1.0rc4|Dylan Baker          |Last planned RC/Final release|
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |TBD          |18.1.1   |Emil Velikov         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |TBD          |18.1.2   |Emil Velikov         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |TBD          |18.1.3   |Emil Velikov         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |TBD          |18.1.4   |Emil Velikov         |Last planned RC/Final release|
+   +------+-------------+---------+---------------------+-----------------------------+
+   |18.2  |2018-07-20   |18.2.0rc1|Andres Gomez         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-07-27   |18.2.0rc2|Andres Gomez         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-08-03   |18.2.0rc3|Andres Gomez         |                             |
+   |      +-------------+---------+---------------------+-----------------------------+
+   |      |2018-08-10   |18.2.0rc4|Andres Gomez         |Last planned RC/Final release|
+   +------+-------------+---------+---------------------+-----------------------------+
diff --git a/docs/releasing.rst b/docs/releasing.rst
index aa3dec0e8f..9ad72617c0 100644
--- a/docs/releasing.rst
+++ b/docs/releasing.rst
@@ -14,27 +14,27 @@ Releasing process
 Overview
 ========
 
-| This document uses the convention X.Y.Z for the release number with
-  X.Y being the stable branch name.
-| Mesa provides feature and bugfix releases. Former use zero as patch
-  version (Z), while the latter have a non-zero one.
+This document uses the convention X.Y.Z for the release number with
+X.Y being the stable branch name.
+Mesa provides feature and bugfix releases. Former use zero as patch
+version (Z), while the latter have a non-zero one.
 
 For example:
 
-::
+.. code-block:: text
 
        Mesa 10.1.0 - 10.1 branch, feature
-        Mesa 10.1.4 - 10.1 branch, bugfix
-        Mesa 12.0.0 - 12.0 branch, feature
-        Mesa 12.0.2 - 12.0 branch, bugfix
+       Mesa 10.1.4 - 10.1 branch, bugfix
+       Mesa 12.0.0 - 12.0 branch, feature
+       Mesa 12.0.2 - 12.0 branch, bugfix
 
 Release schedule
 ================
 
-| Releases should happen on Fridays. Delays can occur although those
-  should be keep to a minimum.
-| See our `calendar <release-calendar.html>`__ for the date and other
-  details for individual releases.
+Releases should happen on Fridays. Delays can occur although those
+should be keep to a minimum.
+See our `calendar <release-calendar.html>`__ for the date and other
+details for individual releases.
 
 Feature releases
 ----------------
@@ -53,10 +53,10 @@ Stable releases
 -  A `pre-release <#prerelease>`__ announcement should be available
    approximately 48 hours before the actual release.
 
-| Note: There is one or two releases overlap when changing branches. For
-  example:
-| The final release from the 12.0 series Mesa 12.0.5 will be out around
-  the same time (or shortly after) 13.0.1 is out.
+   **Note**: There is one or two releases overlap when changing branches. For
+   example:
+   The final release from the 12.0 series Mesa 12.0.5 will be out around
+   the same time (or shortly after) 13.0.1 is out.
 
 Cherry-picking and testing
 ==========================
@@ -95,24 +95,27 @@ Achieved by combination of local ad-hoc scripts, mingw-w64 cross
 compilation and AppVeyor plus Travis-CI, the latter as part of their
 Github integration.
 
-For Windows related changes, the main contact point is Brian Paul. Jose
-Fonseca can also help as a fallback contact.
+For Windows related changes,
+   the main contact point is Brian Paul. Jose
+   Fonseca can also help as a fallback contact.
 
-For Android related changes, the main contact is Tapani Pälli. Mauro
-Rossi is collaborating with android-x86 and may provide feedback about
-the build status in that project.
+For Android related changes,
+   the main contact is Tapani Pälli. Mauro
+   Rossi is collaborating with android-x86 and may provide feedback about
+   the build status in that project.
 
-For MacOSX related changes, Jeremy Huddleston Sequoia is currently a
-good contact point.
+For MacOSX related changes,
+   Jeremy Huddleston Sequoia is currently a
+   good contact point.
 
-| **Note:** If a patch in the current queue needs any additional
-  fix(es), then they should be squashed together.
-| The commit messages and the ``cherry picked from`` tags must be
-  preserved.
+**Note:** If a patch in the current queue needs any additional
+fix(es), then they should be squashed together.
+The commit messages and the ``cherry picked from`` tags must be
+preserved.
 
 This should be noted in the `pre-announce <#prerelease>`__ email.
 
-::
+.. code-block:: text
 
         git show b10859ec41d09c57663a258f43fe57c12332698e
 
@@ -162,26 +165,26 @@ Making a branchpoint
 A branchpoint is made such that new development can continue in parallel
 to stabilisation and bugfixing.
 
-| Note: Before doing a branch ensure that basic build and ``make check``
-  testing is done and there are little to-no issues.
-| Ideally all of those should be tackled already.
+   **Note**: Before doing a branch ensure that basic build and ``make check``
+   testing is done and there are little to-no issues.
+   Ideally all of those should be tackled already.
 
 Check if the version number is going to remain as, alternatively
-`` git mv docs/relnotes/{current,new}.html `` as appropriate.
+``git mv docs/relnotes/{current,new}.rst`` as appropriate.
 
 To setup the branchpoint:
 
-::
+.. code-block:: bash
 
        git checkout master # make sure we're in master first
-        git tag -s X.Y-branchpoint -m "Mesa X.Y branchpoint"
-        git checkout -b X.Y
-        git checkout master
-        $EDITOR VERSION # bump the version number
-        git commit -as
-        cp docs/relnotes/{X.Y,X.Y+1}.html # copy/create relnotes template
-        git commit -as
-        git push origin X.Y-branchpoint X.Y
+       git tag -s X.Y-branchpoint -m "Mesa X.Y branchpoint"
+       git checkout -b X.Y
+       git checkout master
+       $EDITOR VERSION # bump the version number
+       git commit -as
+       cp docs/relnotes/{X.Y,X.Y+1}.html # copy/create relnotes template
+       git commit -as
+       git push origin X.Y-branchpoint X.Y
-- truncated -- please see branch -- 


More information about the mesa-dev mailing list