mesa: added new linux-gallium and linux-gallium-debug configs
Also, remove gallium-related things from configs/default. They're in
linux-gallium now.
So the default builds are the same as they have been for Mesa/master.
gallium: add new aux lib for index list translations
Could this be the ultimate index list translating utility? Maybe, but it
doesn't yet include support for splitting primitives.
Unlike previous attempts, this captures all possible combinations of API
and hardware provoking vertex, supports generated list reuse and various
other tricks. Relies on python-generated code.
r300, amd: Make everything build. (Not necessarily work, mind you.)
Lots of structural work, especially in getting the two parts to talk nicely.
Todo:
- Get damn blitter working.
- Add CS flush.
- Reverse order of above two items.
The pkg-config files have been filled in more thoroughly to allow users
to use mesa more effectively. By adding metadata to Requires.private,
Libs.private and Cflags, we can ensure that all the libraries and
headers will be found in all situations. However, the full substitutions
are only done when using the configure script.
This also fixes the glu pkg-config file to account for using GL or
OSMesa.
Fixes bug 18161.
autoconf: Support Motif widgets in GLw with --enable-motif
Add an --enable-motif option, which will enable the Motif widgets in
libGLw and link it with libXm. The Motif installation information will
be gathered from the motif-config script (this comes with LessTif) or
fallback to the standard autoconf checks.
To allow the location of the Motif headers to be set from configure, the
default setting of -I/usr/include/Motif1.2 has been moved into
configs/default and then passed to the Makefile through the MOTIF_CFLAGS
variable.
Call minstall with $(SHELL) so the user controls the interpreter
Running minstall directly means that /bin/sh is always used as hte
interpreter. If the user needs or wants to use a different shell fo
minstall, they can use the SHELL make variable.
Most make implementations will use /bin/sh as the interpreter for
commands and only use a different shell when the $(SHELL) make variable
is set. This makes the setting explicit and allows $(SHELL) to be used
in the commands themselves.
Set library and header installation directories from configuration
Currently the installation directories for libraries and headers are
resolved within the install commands. For instance, the libraries will
be installed to $(INSTALL_DIR)/$(LIB_DIR). This limits the flexibility
of the installation, such as when the libraries should be installed to a
subdirectory like /usr/lib/tls.
This adds the make variables $(INSTALL_LIB_DIR) and $(INSTALL_INC_DIR)
to define the locations that the libraries and headers are installed.
For the static configs, this resolves exactly as before to
$(INSTALL_DIR)/include and $(INSTALL_DIR)/$(LIB_DIR). For autoconf, they
are derived directly from the --libdir and --includedir settings.
Default DRI driver directory to match X.Org xserver
Since the only valid consumer of the DRI drivers is the X.Org xserver,
this changes the default DRI driver directory to match xorg-server:
${libdir}/dri. The old default of /usr/X11R6/modules/dri was wrong for
nearly all current systems.
Added the make script version.mk to print the various version numbers
from configs/default. This is used to substitute the version in autoconf
rather than duplicating it in both places.
Code reorganization: split gallium and mesa makefiles.
In other words, don't build src/gallium source code from within src/mesa/Makefile.
Also, allow to customize which gallium auxiliary dirs, driver driver, winsys
dirs get built from the config/* files.
Update the Makefiles and includes for the new paths.
Note that there hasn't been no separation of the Makefiles yet, and make is
jumping all over the place. That will be taken care shortly. But for now, make
should work. It was tested with linux and linux-dri. Linux-cell and linux-llvm
might require some minor tweaks.
Put the path to indent and the flags to call it with in configs/default
rather than in the Makefile. This makes it easier to change the values
globally.