summaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/autoconf.html270
-rw-r--r--docs/contents.html1
-rw-r--r--docs/download.html16
-rw-r--r--docs/install.html22
-rw-r--r--docs/osmesa.html11
-rw-r--r--docs/releasing.html116
-rw-r--r--docs/vmware-guest.html12
7 files changed, 49 insertions, 399 deletions
diff --git a/docs/autoconf.html b/docs/autoconf.html
deleted file mode 100644
index 8000b18cd07..00000000000
--- a/docs/autoconf.html
+++ /dev/null
@@ -1,270 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html lang="en">
-<head>
- <meta http-equiv="content-type" content="text/html; charset=utf-8">
- <title>Compilation and Installation using Autoconf</title>
- <link rel="stylesheet" type="text/css" href="mesa.css">
-</head>
-<body>
-
-<div class="header">
- <h1>The Mesa 3D Graphics Library</h1>
-</div>
-
-<iframe src="contents.html"></iframe>
-<div class="content">
-
-<h1>Compilation and Installation using Autoconf</h1>
-
-<ol>
-<li><p><a href="#basic">Basic Usage</a></li>
-<li><p><a href="#driver">Driver Options</a>
- <ul>
- <li><a href="#xlib">Xlib Driver Options</a></li>
- <li><a href="#dri">DRI Driver Options</a></li>
- <li><a href="#osmesa">OSMesa Driver Options</a></li>
- </ul>
-</ol>
-
-<h2>ATTENTION:</h2>
-<p>
- The autotools build is being replaced by the <a href="meson.html">meson</a>
- build system. If you haven't yet now is a good time to try using meson and
- report any issues you run into.
-</p>
-
-<h2 id="basic">1. Basic Usage</h2>
-
-<p>
-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:
-</p>
-
-<pre>
- ./configure
-</pre>
-
-<p>
-To see a short description of all the options, type <code>./configure
---help</code>. If you are using a development snapshot and the configure
-script does not exist, type <code>./autogen.sh</code> to generate it
-first. If you know the options you want to pass to
-<code>configure</code>, you can pass them to <code>autogen.sh</code>. It
-will run <code>configure</code> with these options after it is
-generated. Once you have run <code>configure</code> and set the options
-to your preference, type:
-</p>
-
-<pre>
- make
-</pre>
-
-<p>
-This will produce libGL.so and/or several other libraries depending on the
-options you have chosen. Later, if you want to rebuild for a different
-configuration run <code>make realclean</code> before rebuilding.
-</p>
-
-<p>
-Some of the generic autoconf options are used with Mesa:
-</p>
-<dl>
-<dt><code>--prefix=PREFIX</code></dt>
-<dd><p>This is the root directory where
-files will be installed by <code>make install</code>. The default is
-<code>/usr/local</code>.</p>
-</dd>
-
-<dt><code>--exec-prefix=EPREFIX</code></dt>
-<dd><p>This is the root directory
-where architecture-dependent files will be installed. In Mesa, this is
-only used to derive the directory for the libraries. The default is
-<code>${prefix}</code>.</p>
-</dd>
-
-<dt><code>--libdir=LIBDIR</code></dt>
-<dd><p>This option specifies the directory
-where the GL libraries will be installed. The default is
-<code>${exec_prefix}/lib</code>. It also serves as the name of the
-library staging area in the source tree. For instance, if the option
-<code>--libdir=/usr/local/lib64</code> is used, the libraries will be
-created in a <code>lib64</code> directory at the top of the Mesa source
-tree.</p>
-</dd>
-
-<dt><code>--sysconfdir=DIR</code></dt>
-<dd><p>This option specifies the directory where the configuration
-files will be installed. The default is <code>${prefix}/etc</code>.
-Currently there's only one config file provided when dri drivers are
-enabled - it's <code>drirc</code>.</p>
-</dd>
-
-<dt><code>--datadir=DIR</code></dt>
-<dd><p>This option specifies the directory where the data files will
-be installed. The default is <code>${prefix}/share</code>.
-Currently when dri drivers are enabled, <code>drirc.d/</code> is at
-this place.</p>
-</dd>
-
-<dt><code>--enable-static, --disable-shared</code></dt>
-<dd><p>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.</p>
-</dd>
-
-<dt><code>CC, CFLAGS, CXX, CXXFLAGS</code></dt>
-<dd><p>These environment variables
-control the C and C++ compilers used during the build. By default,
-<code>gcc</code> and <code>g++</code> are used and the debug/optimisation
-level is left unchanged.</p>
-</dd>
-
-<dt><code>LDFLAGS</code></dt>
-<dd><p>An environment variable specifying flags to
-pass when linking programs. These should be empty and
-<code>PKG_CONFIG_PATH</code> is recommended to be used instead. If needed
-it can be used to direct the linker to use libraries in nonstandard
-directories. For example, <code>LDFLAGS="-L/usr/X11R6/lib"</code>.</p>
-</dd>
-
-<dt><code>PKG_CONFIG_PATH</code></dt>
-<dd><p>The
-<code>pkg-config</code> utility is a hard requirement for configuring and
-building mesa. It is used to search for external libraries
-on the system. This environment variable is used to control the search
-path for <code>pkg-config</code>. For instance, setting
-<code>PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig</code> will search for
-package metadata in <code>/usr/X11R6</code> before the standard
-directories.</p>
-</dd>
-</dl>
-
-<p>
-There are also a few general options for altering the Mesa build:
-</p>
-<dl>
-<dt><code>--enable-debug</code></dt>
-<dd><p>This option will set the compiler debug/optimisation levels (if the user
-hasn't already set them via the CFLAGS/CXXFLAGS) and macros to aid in
-debugging the Mesa libraries.</p>
-
-<p>Note that enabling this option can lead to noticeable loss of performance.</p>
-
-<dt><code>--disable-asm</code></dt>
-<dd><p>There are assembly routines
-available for a few architectures. These will be used by default if
-one of these architectures is detected. This option ensures that
-assembly will not be used.</p>
-</dd>
-
-<dt><code>--build=</code></dt>
-<dt><code>--host=</code></dt>
-<dd><p>By default, the build will compile code for the architecture that
-it's running on. In order to build cross-compile Mesa on a x86-64 machine
-that is to run on a i686, one would need to set the options to:</p>
-
-<p><code>--build=x86_64-pc-linux-gnu --host=i686-pc-linux-gnu</code></p>
-
-Note that these can vary from distribution to distribution. For more
-information check with the
-<a href="https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Specifying-Target-Triplets.html">
-autoconf manual</a>.
-Note that you will need to correctly set <code>PKG_CONFIG_PATH</code> as well.
-
-
-<p>In some cases a single compiler is capable of handling both architectures
-(multilib) in that case one would need to set the <code>CC,CXX</code> variables
-appending the correct machine options. Seek your compiler documentation for
-further information -
-<a href="https://gcc.gnu.org/onlinedocs/gcc/Submodel-Options.html"> gcc
-machine dependent options</a></p>
-
-<p>In addition to specifying correct <code>PKG_CONFIG_PATH</code> for the target
-architecture, the following should be sufficient to configure multilib Mesa</p>
-
-<code>./configure CC="gcc -m32" CXX="g++ -m32" --build=x86_64-pc-linux-gnu --host=i686-pc-linux-gnu ...</code>
-</dd>
-</dl>
-
-
-<h2 id="driver">2. GL Driver Options</h2>
-
-<p>
-There are several different driver modes that Mesa can use. These are
-described in more detail in the <a href="install.html">basic
-installation instructions</a>. The Mesa driver is controlled through the
-configure options <code>--enable-glx</code> and <code>--enable-osmesa</code>
-</p>
-
-<h3 id="xlib">Xlib</h3><p>
-It uses Xlib as a software renderer to do all rendering. It corresponds
-to the option <code>--enable-glx=xlib</code> or <code>--enable-glx=gallium-xlib</code>.
-
-<h3 id="dri">DRI</h3><p>This mode uses the DRI hardware drivers for
-accelerated OpenGL rendering. To enable use <code>--enable-glx=dri
---enable-dri</code>.
-
-<!-- DRI specific options -->
-<dl>
-<dt><code>--with-dri-driverdir=DIR</code>
-<dd><p> This option specifies the
-location the DRI drivers will be installed to and the location libGL
-will search for DRI drivers. The default is <code>${libdir}/dri</code>.
-<dt><code>--with-dri-drivers=DRIVER,DRIVER,...</code>
-<dd><p> This option
-allows a specific set of DRI drivers to be built. For example,
-<code>--with-dri-drivers="swrast,i965,radeon,nouveau"</code>. By
-default, the drivers will be chosen depending on the target platform.
-See the directory <code>src/mesa/drivers/dri</code> in the source tree
-for available drivers. Beware that the swrast DRI driver is used by both
-libGL and the X.Org xserver GLX module to do software rendering, so you
-may run into problems if it is not available.
-<!-- This explanation might be totally bogus. Kristian? -->
-<dt><code>--disable-driglx-direct</code>
-<dd><p> Disable direct rendering in
-GLX. Normally, direct hardware rendering through the DRI drivers and
-indirect software rendering are enabled in GLX. This option disables
-direct rendering entirely. It can be useful on architectures where
-kernel DRM modules are not available.
-<dt><code>--enable-glx-tls</code> <dd><p>
-Enable Thread Local Storage (TLS) in
-GLX.
-<dt><code>--with-expat=DIR</code>
-<dd><p><strong>DEPRECATED</strong>, use <code>PKG_CONFIG_PATH</code> instead.</p>
-<p>The DRI-enabled libGL uses expat to
-parse the DRI configuration files in <code>${sysconfdir}/drirc</code> and
-<code>~/.drirc</code>. This option allows a specific expat installation
-to be used. For example, <code>--with-expat=/usr/local</code> will
-search for expat headers and libraries in <code>/usr/local/include</code>
-and <code>/usr/local/lib</code>, respectively.
-</dl>
-
-<h3 id="osmesa">OSMesa </h3><p> No libGL is built in this
-mode. Instead, the driver code is built into the Off-Screen Mesa
-(OSMesa) library. See the <a href="osmesa.html">Off-Screen Rendering</a>
-page for more details. It corresponds to the option
-<code>--enable-osmesa</code>.
-
-<!-- OSMesa specific options -->
-<dl>
-<dt><code>--with-osmesa-bits=BITS</code>
-<dd><p> This option allows the size
-of the color channel in bits to be specified. By default, an 8-bit
-channel will be used, and the driver will be named libOSMesa. Other
-options are 16- and 32-bit color channels, which will add the bit size
-to the library name. For example, <code>--with-osmesa-bits=16</code>
-will create the libOSMesa16 library with a 16-bit color channel.
-</dl>
-
-
-<h2 id="library">3. Library Options</h2>
-
-<p>
-The configure script provides more fine grained control over the libraries
-that will be built.
-
-</div>
-</body>
-</html>
diff --git a/docs/contents.html b/docs/contents.html
index 619ac3d7bb2..605f0f581f0 100644
--- a/docs/contents.html
+++ b/docs/contents.html
@@ -43,7 +43,6 @@
<li><a href="install.html" target="_parent">Compiling / Installing</a>
<ul>
<li><a href="meson.html" target="_parent">Meson</a></li>
- <li><a href="autoconf.html" target="_parent">Autoconf (deprecated)</a></li>
</ul>
</li>
<li><a href="precompiled.html" target="_parent">Precompiled Libraries</a>
diff --git a/docs/download.html b/docs/download.html
index 86b4d5063c5..840f363cdf6 100644
--- a/docs/download.html
+++ b/docs/download.html
@@ -59,22 +59,6 @@ or
<h1>Contents</h1>
<p>
-After unpacking you'll have these files and directories (among others):
-</p>
-<pre>
-autogen.sh - Autoconf script for *nix systems
-scons/ - SCons script for Windows builds
-include/ - GL header (include) files
-bin/ - shell scripts for making shared libraries, etc
-docs/ - documentation
-src/ - source code for libraries
-src/mesa - sources for the main Mesa library and device drivers
-src/gallium - sources for Gallium and Gallium drivers
-src/glx - sources for building libGL with full GLX and DRI support
-</pre>
-
-
-<p>
Proceed to the <a href="install.html">compilation and installation
instructions</a>.
</p>
diff --git a/docs/install.html b/docs/install.html
index b6a75baeeb9..cef62c48f9b 100644
--- a/docs/install.html
+++ b/docs/install.html
@@ -40,10 +40,10 @@ Build system.
</p>
<ul>
-<li><a href="https://mesonbuild.com">meson</a> is recommended when building on *nix platforms.
-<li>Autoconf is another option when building on *nix platforms.
+<li><a href="https://mesonbuild.com">meson</a> is required when building on *nix platforms.
+<li>Autoconf was removed in 19.1.0, use meson instead
<li><a href="http://www.scons.org/">SCons</a> is required for building on
-Windows and optional for Linux (it's an alternative to autoconf/automake or meson.)
+Windows and optional for Linux (it's an alternative to meson.)
</li>
<li>Android Build system when building as native Android component. Autoconf
is used when when building ARC.
@@ -138,21 +138,7 @@ for more information
<h1 id="autoconf">3. Building with autoconf (Linux/Unix/X11)</h1>
<p>
-Although meson is recommended, another supported way to build on *nix systems
-is with autoconf.
-</p>
-
-<p>
-The general approach is the standard:
-</p>
-<pre>
- ./configure
- make
- sudo make install
-</pre>
-<p>
-But please read the <a href="autoconf.html">detailed autoconf instructions</a>
-for more details.
+ Autoconf support was removed in Mesa 19.1.0. Please use meson instead.
</p>
diff --git a/docs/osmesa.html b/docs/osmesa.html
index 848754570df..c20aaa9f808 100644
--- a/docs/osmesa.html
+++ b/docs/osmesa.html
@@ -51,8 +51,8 @@ There are several examples of OSMesa in the mesa/demos repository.
Configure and build Mesa with something like:
<pre>
-configure --enable-osmesa --disable-driglx-direct --disable-dri --with-gallium-drivers=swrast
-make
+meson builddir -Dosmesa=gallium -Dgallium-drivers=swrast -Ddri-drivers= -Dvulkan-drivers= -Dprefix=$PWD/builddir/install
+ninja -C builddir install
</pre>
<p>
@@ -63,13 +63,12 @@ Make sure you have LLVM installed first if you want to use the llvmpipe driver.
When the build is complete you should find:
</p>
<pre>
-lib/libOSMesa.so (swrast-based OSMesa)
-lib/gallium/libOSMsea.so (gallium-based OSMesa)
+$PWD/builddir/install/lib/libOSMesa.so (swrast-based OSMesa)
+$PWD/builddir/install/lib/gallium/libOSMsea.so (gallium-based OSMesa)
</pre>
<p>
-Set your LD_LIBRARY_PATH to point to one directory or the other to select
-the library you want to use.
+Set your LD_LIBRARY_PATH to point to $PWD/builddir/install to use the libraries
</p>
<p>
diff --git a/docs/releasing.html b/docs/releasing.html
index 851bbf58670..25088e5ceb6 100644
--- a/docs/releasing.html
+++ b/docs/releasing.html
@@ -468,96 +468,48 @@ So we do a quick 'touch test'
</p>
<ul>
-<li>make distcheck (you can omit this if you're not using --dist below)
+<li>meson dist
<li>scons (from release tarball)
<li>the produced binaries work
</ul>
<p>
-Here is one solution that I've been using.
+ Here is one solution:
</p>
<pre>
- # Set MAKEFLAGS if you haven't already
- git clean -fXd; git clean -nxd
- read # quick cross check any outstanding files
- export __version=`cat VERSION`
- export __mesa_root=../
- export __build_root=./foo
- chmod 755 -fR $__build_root; rm -rf $__build_root
- mkdir -p $__build_root &amp;&amp; cd $__build_root
-
- # For the native builds - such as distcheck, scons, sanity test, you
- # may want to specify which LLVM to use:
- # export LLVM_CONFIG=/usr/lib/llvm-3.9/bin/llvm-config
-
- # Do a full distcheck
- $__mesa_root/autogen.sh &amp;&amp; make distcheck
-
- # Build check the tarballs (scons, linux)
- tar -xaf mesa-$__version.tar.xz &amp;&amp; cd mesa-$__version
- scons
- cd .. &amp;&amp; rm -rf mesa-$__version
-
- # Build check the tarballs (scons, windows/mingw)
- # Temporary drop LLVM_CONFIG, unless you have a Windows/mingw one.
- # save_LLVM_CONFIG=`echo $LLVM_CONFIG`; unset LLVM_CONFIG
- tar -xaf mesa-$__version.tar.xz &amp;&amp; cd mesa-$__version
- scons platform=windows toolchain=crossmingw
- cd .. &amp;&amp; rm -rf mesa-$__version
-
- # Test the automake binaries
- # Restore LLVM_CONFIG, if applicable:
- # export LLVM_CONFIG=`echo $save_LLVM_CONFIG`; unset save_LLVM_CONFIG
- tar -xaf mesa-$__version.tar.xz &amp;&amp; cd mesa-$__version
- ./configure \
- --with-dri-drivers=i965,swrast \
- --with-gallium-drivers=swrast \
- --with-vulkan-drivers=intel \
- --enable-llvm-shared-libs \
- --enable-llvm \
- --enable-glx-tls \
- --enable-gbm \
- --enable-egl \
- --with-platforms=x11,drm,wayland,surfaceless
- make &amp;&amp; DESTDIR=`pwd`/test make install
-
- # Drop LLVM_CONFIG, if applicable:
- # unset LLVM_CONFIG
-
- __glxinfo_cmd='glxinfo 2&gt;&amp;1 | egrep -o "Mesa.*|Gallium.*|.*dri\.so"'
- __glxgears_cmd='glxgears 2&gt;&amp;1 | grep -v "configuration file"'
- __es2info_cmd='es2_info 2&gt;&amp;1 | egrep "GL_VERSION|GL_RENDERER|.*dri\.so"'
- __es2gears_cmd='es2gears_x11 2&gt;&amp;1 | grep -v "configuration file"'
- test "x$LD_LIBRARY_PATH" != 'x' &amp;&amp; __old_ld="$LD_LIBRARY_PATH"
- export LD_LIBRARY_PATH=`pwd`/test/usr/local/lib/:"${__old_ld}"
- export LIBGL_DRIVERS_PATH=`pwd`/test/usr/local/lib/dri/
- export LIBGL_DEBUG=verbose
- eval $__glxinfo_cmd
- eval $__glxgears_cmd
- eval $__es2info_cmd
- eval $__es2gears_cmd
- export LIBGL_ALWAYS_SOFTWARE=true
- eval $__glxinfo_cmd
- eval $__glxgears_cmd
- eval $__es2info_cmd
- eval $__es2gears_cmd
- export LIBGL_ALWAYS_SOFTWARE=true
- export GALLIUM_DRIVER=softpipe
- eval $__glxinfo_cmd
- eval $__glxgears_cmd
- eval $__es2info_cmd
- eval $__es2gears_cmd
- # Smoke test DOTA2
- unset LD_LIBRARY_PATH
- test "x$__old_ld" != 'x' &amp;&amp; export LD_LIBRARY_PATH="$__old_ld" &amp;&amp; unset __old_ld
- unset LIBGL_DRIVERS_PATH
- unset LIBGL_DEBUG
- unset LIBGL_ALWAYS_SOFTWARE
- unset GALLIUM_DRIVER
- export VK_ICD_FILENAMES=`pwd`/src/intel/vulkan/dev_icd.json
- steam steam://rungameid/570 -vconsole -vulkan
- unset VK_ICD_FILENAMES
+ __glxgears_cmd='glxgears 2&gt;&amp;1 | grep -v "configuration file"'
+ __es2info_cmd='es2_info 2&gt;&amp;1 | egrep "GL_VERSION|GL_RENDERER|.*dri\.so"'
+ __es2gears_cmd='es2gears_x11 2&gt;&amp;1 | grep -v "configuration file"'
+ test "x$LD_LIBRARY_PATH" != 'x' &amp;&amp; __old_ld="$LD_LIBRARY_PATH"
+ export LD_LIBRARY_PATH=`pwd`/test/usr/local/lib/:"${__old_ld}"
+ export LIBGL_DRIVERS_PATH=`pwd`/test/usr/local/lib/dri/
+ export LIBGL_DEBUG=verbose
+ eval $__glxinfo_cmd
+ eval $__glxgears_cmd
+ eval $__es2info_cmd
+ eval $__es2gears_cmd
+ export LIBGL_ALWAYS_SOFTWARE=true
+ eval $__glxinfo_cmd
+ eval $__glxgears_cmd
+ eval $__es2info_cmd
+ eval $__es2gears_cmd
+ export LIBGL_ALWAYS_SOFTWARE=true
+ export GALLIUM_DRIVER=softpipe
+ eval $__glxinfo_cmd
+ eval $__glxgears_cmd
+ eval $__es2info_cmd
+ eval $__es2gears_cmd
+ # Smoke test DOTA2
+ unset LD_LIBRARY_PATH
+ test "x$__old_ld" != 'x' &amp;&amp; export LD_LIBRARY_PATH="$__old_ld" &amp;&amp; unset __old_ld
+ unset LIBGL_DRIVERS_PATH
+ unset LIBGL_DEBUG
+ unset LIBGL_ALWAYS_SOFTWARE
+ unset GALLIUM_DRIVER
+ export VK_ICD_FILENAMES=`pwd`/src/intel/vulkan/dev_icd.json
+ steam steam://rungameid/570 -vconsole -vulkan
+ unset VK_ICD_FILENAMES
</pre>
<h3>Update version in file VERSION</h3>
diff --git a/docs/vmware-guest.html b/docs/vmware-guest.html
index 4e0932e781f..e73f2005f42 100644
--- a/docs/vmware-guest.html
+++ b/docs/vmware-guest.html
@@ -191,9 +191,9 @@ For 64-bit Fedora systems:
<li>Build libdrm:
<pre>
cd $TOP/drm
- ./autogen.sh --prefix=/usr --libdir=${LIBDIR}
- make
- sudo make install
+ meson builddir --prefix=/usr --libdir=${LIBDIR}
+ ninja -C builddir
+ sudo ninja -C builddir install
</pre>
<li>Build Mesa and the vmwgfx_dri.so driver, the vmwgfx_drv.so xorg driver, the X acceleration library libxatracker.
The vmwgfx_dri.so is used by the OpenGL libraries during direct rendering,
@@ -204,9 +204,9 @@ copy and video acceleration:
The following configure options doesn't build the EGL system.
<pre>
cd $TOP/mesa
- ./autogen.sh --prefix=/usr --libdir=${LIBDIR} --with-gallium-drivers=svga --with-dri-drivers=swrast --enable-xa --disable-dri3 --enable-glx-tls
- make
- sudo make install
+ meson builddir --prefix=/usr --libdir=${LIBDIR} -Dgallium-drivers=svga -Ddri-drivers=swrast -Dgallium-xa=true -Ddri3=false
+ ninja -C builddir
+ sudo ninja -C builddir install
</pre>
Note that you may have to install other packages that Mesa depends upon