From a0c4815433ccd57322f4f7703ca35e9ccfa59250 Mon Sep 17 00:00:00 2001
From: marha
+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:
+
+To see a short description of all the options, type
+This will produce libGL.so and several other libraries depending on the
+options you have chosen. Later, if you want to rebuild for a different
+configuration run
+Some of the generic autoconf options are used with Mesa:
+
+Compilation and Installation using Autoconf
+
+
+
+
+
+1. Basic Usage
+
+
+ ./configure
+
+
+./configure
+--help
. If you are using a development snapshot and the configure
+script does not exist, type ./autogen.sh
to generate it
+first. If you know the options you want to pass to
+configure
, you 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:
+
+ make
+
+
+make realclean
before rebuilding.
+
+
+--prefix=PREFIX
- This is the root directory where
+files will be installed by make install
. The default is
+/usr/local
.
+--exec-prefix=EPREFIX
- 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
+${prefix}
.
+--libdir=LIBDIR
- This option specifies the directory
+where the GL libraries will be installed. The default is
+${exec_prefix}/lib
. It also serves as the name of the
+library staging area in the source tree. For instance, if the option
+--libdir=/usr/local/lib64
is used, the libraries will be
+created in a lib64
directory at the top of the Mesa source
+tree.
+--enable-static, --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.
+CC, CFLAGS, CXX, CXXFLAGS
- These environment variables
+control the C and C++ compilers used during the build. By default,
+gcc
and g++
are used with the options
+"-g -O2"
.
+LDFLAGS
- An environment variable specifying flags to
+pass when linking programs. These are normally empty, but can be used
+to direct the linker to use libraries in nonstandard directories. For
+example, LDFLAGS="-L/usr/X11R6/lib"
.
+PKG_CONFIG_PATH
- When available, the
+pkg-config
utility is used to search for external libraries
+on the system. This environment variable is used to control the search
+path for pkg-config
. For instance, setting
+PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig
will search for
+package metadata in /usr/X11R6
before the standard
+directories.
+
+There are also a few general options for altering the Mesa build: +
--with-x
- When the X11 development libraries are
+needed, the pkg-config
utility will
+be used for locating them. If they cannot be found through
+pkg-config
a fallback routing using imake
will
+be used. In this case, the --with-x
,
+--x-includes
and --x-libraries
options can
+control the use of X for Mesa.
+--enable-gl-osmesa
- The OSMesa
+library can be built on top of libGL for drivers that provide it.
+This option controls whether to build libOSMesa. By default, this is
+enabled for the Xlib driver and disabled otherwise. Note that this
+option is different than using OSMesa as the driver.
+--enable-debug
- This option will enable compiler
+options and macros to aid in debugging the Mesa libraries.
+--disable-asm
- 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.
+--enable-32-bit, --enable-64-bit
- By default, the
+build will compile code as directed by the environment variables
+CC
, CFLAGS
, etc. If the compiler is
+gcc
, these options offer a helper to add the compiler flags
+to force 32- or 64-bit code generation as used on the x86 and x86_64
+architectures.
++There are several different driver modes that Mesa can use. These are +described in more detail in the basic +installation instructions. The Mesa driver is controlled through the +configure option --with-driver. There are currently three supported +options in the configure script. +
+ +--with-driver=xlib
. The libX11 and libXext
+libraries, as well as the X11 development headers, will be need to
+support the Xlib driver.
+--with-driver=dri
. See the basic
+installation instructions for details on prerequisites for the DRI
+drivers.
++
--with-dri-driverdir=DIR
- This option specifies the
+location the DRI drivers will be installed to and the location libGL
+will search for DRI drivers. The default is ${libdir}/dri
.
+--with-dri-drivers=DRIVER,DRIVER,...
- This option
+allows a specific set of DRI drivers to be built. For example,
+--with-dri-drivers="swrast,i965,radeon,nouveau"
. By
+default, the drivers will be chosen depending on the target platform.
+See the directory src/mesa/drivers/dri
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.--disable-driglx-direct
- 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.
+--enable-glx-tls
- Enable Thread Local Storage (TLS) in
+GLX.
+--with-expat=DIR
- The DRI-enabled libGL uses expat to
+parse the DRI configuration files in /etc/drirc
and
+~/.drirc
. This option allows a specific expat installation
+to be used. For example, --with-expat=/usr/local
will
+search for expat headers and libraries in /usr/local/include
+and /usr/local/lib
, respectively.
++
--with-osmesa-bits=BITS
- 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, --with-osmesa-bits=16
+will create the libOSMesa16 library with a 16-bit color channel.
++The configure script provides more fine grained control over the GL +libraries that will be built. More details on the specific GL libraries +can be found in the basic installation +instructions. + +
--disable-glu
.
+--disable-glw
.
+--disable-glut
.
+
+There are many demonstration programs in the MesaDemos tarball. If the
+programs are available when ./configure
is run, a subset of
+the programs will be built depending on the driver and library options
+chosen. See the directory progs
for the full set of demos.
+
+
--with-demos=DEMOS,DEMOS,...
- This option allows a
+specific set of demo programs to be built. For example,
+--with-demos="xdemos,slang"
. Beware that if this option is
+used, it will not be ensured that the necessary GL libraries will be
+available.
+--without-demos
- This completely disables building the
+demo programs. It is equivalent to --with-demos=no
.
+