Dan Nicholson [Wed, 12 Dec 2007 16:48:30 +0000 (08:48 -0800)]
autoconf: More informative errors when pkg-config macros undefined
Added a check that PKG_PROG_PKG_CONFIG is defined before calling it so
the user can see a proper error. Without it, the generated configure
script will just pass on to the next statement and bomb with a strange
shell syntax error.
Dan Nicholson [Tue, 11 Dec 2007 16:21:51 +0000 (08:21 -0800)]
autoconf: Replace configs/current symlink from configure
Rather than having the user run `make autoconf' and have the Makefile
setup the configs/current -> autoconf symlink, we can just do that in
configure. This allows the user to just run `make' to build.
Dan Nicholson [Tue, 11 Dec 2007 16:13:45 +0000 (08:13 -0800)]
autoconf: Replace install-sh with symlink to minstall
Since install-sh is only used to satisfy an autoconf requirement, we
don't need the actual script. Instead, it's now just a symlink to
minstall, which provides a similar install wrapper script.
Dan Nicholson [Sat, 8 Dec 2007 03:11:01 +0000 (19:11 -0800)]
autoconf: Clearer help text for the enable/disable options
Make it clearer what the defaults for the AC_ARG_ENABLE options are and
how to change them.
Dan Nicholson [Fri, 7 Dec 2007 19:25:08 +0000 (11:25 -0800)]
autoconf: Since default DRI drivers to build with master
Sync the default DRI_DIRS with the configs in master. Added some of the
comments from there, too.
Dan Nicholson [Fri, 7 Dec 2007 19:12:20 +0000 (11:12 -0800)]
autoconf: glut doesn't need Xt
Don't link glut with libXt since it's not needed.
(see commit
ce98779571eee3f51d9f571fecf8deb83dd60f78)
Dan Nicholson [Fri, 30 Nov 2007 16:49:57 +0000 (08:49 -0800)]
autoconf: Output summary information from configure
Report some of the common settings back to the user after configure
has completed.
Dan Nicholson [Thu, 15 Nov 2007 16:59:57 +0000 (08:59 -0800)]
autoconf: Configurable DRI drivers
The user can request specific DRI drivers to build rather than the
default of "all that build on this platform". This allows the list of
drivers to be easily slimmed down.
This is controlled through the option --with-dri-drivers. For example:
./configure --with-driver=dri --with-dri-drivers="i965,nouveau"
Unfortunately, using this setting means the DRI drivers aren't filtered
by platform anymore and you might try to build something that doesn't
work.
Dan Nicholson [Thu, 15 Nov 2007 16:59:57 +0000 (08:59 -0800)]
autoconf: Allow static library builds
Allow the user to specify that they want static libraries through the
--{enable,disable}-{static,shared} switches like libtool. The mesa build
only allows for one at a time, so static will be chosen if someone has
passed --enable-static or --disable-shared.
This also allows the mklib options to be set at build time. This allows
-static to be set for mklib, but any platform specific settings are
allowed by setting MKLIB_OPTIONS for configure.
Handling of the program libraries through the APP_LIB_DEPS variable is
pretty ugly, but it seems to work.
Dan Nicholson [Thu, 15 Nov 2007 16:59:57 +0000 (08:59 -0800)]
autoconf: Configurable demos directories
The user can request specific demos directories to build in. For
example:
./configure --with-demos="demos,xdemos"
The drawback is that we don't check for the necessary libararies in
that case, only that the directory in progs/ exists.
Dan Nicholson [Thu, 6 Dec 2007 05:04:15 +0000 (21:04 -0800)]
autoconf: Configure the osmesa channel size for OSMesa16 and OSMesa32
Allow the user to specify channel bits of 16 or 32 to enable OSMesa16 or
OSMesa32 instead of the default OSMesa. This option is controlled
through the option --with-osmesa-bits=BITS and is only honored when the
driver is osmesa.
The osdemos are not enabled in the 16 or 32 bit case because the
Makefile is currently hardcoded to link to -lOSMesa.
Dan Nicholson [Thu, 6 Dec 2007 02:47:01 +0000 (18:47 -0800)]
autoconf: Add support for osmesa-only builds
Added autoconf support for using OSMesa as the driver instead linking
it to libGL. This is enabled through --with-driver=osmesa.
To differentiate these cases, another option --enable-x11-osmesa is used
to enable or disable building OSMesa when the driver is x11.
Dan Nicholson [Thu, 6 Dec 2007 02:47:01 +0000 (18:47 -0800)]
autoconf: Add support for shared DRI build on linux and freebsd
Added autoconf bits to allow using DRI as the driver through the option
--with-dri-driver=DRIVER. The options are x11 (default) and dri. Three
DRI specific options for controlling the driver directory, direct
rendering and TLS are also added.
The DRI will probably not work for platforms besides linux and freebsd.
Dan Nicholson [Thu, 6 Dec 2007 01:23:00 +0000 (17:23 -0800)]
autoconf: Include necessary files for the tarballs
Add targets to the top Makefile so that configure and the necessary
scripts are added to the tarball for distribution.
Variables are used for autoconf and aclocal in case anyone needs to use
a specific version or pass any extra flags.
Dan Nicholson [Tue, 23 Oct 2007 16:25:58 +0000 (09:25 -0700)]
autoconf: Initial support for an autoconf configuration
This adds the initial support for using autoconf configuration. Support
is available for shared Xlib driver builds. Later this will be extended
to dri and osmesa-only builds and possibly targetting non-X backends.
Support for static library builds will also be added.
The configure script fills in the autoconf config. This is then used by
running `make autoconf' after ./configure.
Testing has been done on Linux/GNU. The configure script tries to
faithfully reproduce the current configs/linux* and configs/freebsd*.
Other platforms can be handled later by adding similar statements and
feature tests.
Pkg-config is used to search for packages when possible. This makes the
build much more flexible and robust to the user's configuration. This
requires that the pkg-config autoconf macros pkg.m4 are included in
aclocal.m4. This requires autoconf and aclocal from autoconf and
automake, respectively.
Dan Nicholson [Wed, 5 Dec 2007 18:25:39 +0000 (10:25 -0800)]
autoconf: Add support files required for autoconf use
The standard autoconf initialization macros require that config.guess,
config.sub and install-sh exist. The config.* scripts are from gnulib
HEAD, and the install-sh script is from automake HEAD.
Dan Nicholson [Thu, 6 Dec 2007 04:34:59 +0000 (20:34 -0800)]
Make osdemos linking like other programs
Most of the programs list their dependencies on the Mesa libraries in
their Makefiles. This works with the default configuration where
APP_LIB_DEPS only lists external libraries. This changes the
linux-osmesa configs and the osdemos Makefile to follow that convention.
Some cleanup of the Makefile is also added to refer to the GL libraries
through the existing variables rather than hardcoding their names.
Dan Nicholson [Thu, 1 Nov 2007 00:12:07 +0000 (17:12 -0700)]
configs: Fix linking with static libGL and --as-needed
Linking of the programs breaks when using a static libGL and the GNU ld
option --as-needed. This is because libXext is needed for the XShm
functions.
Xiang, Haihao [Fri, 7 Dec 2007 09:33:18 +0000 (17:33 +0800)]
i915: fix the error in the previos commit.
Xiang, Haihao [Fri, 7 Dec 2007 09:26:38 +0000 (17:26 +0800)]
i915: Check the program size when uploading a program. fix bug 13494
Michel Dänzer [Thu, 6 Dec 2007 09:19:22 +0000 (10:19 +0100)]
Minor followup fixes for the previous commit.
George Nassas [Thu, 6 Dec 2007 09:11:05 +0000 (10:11 +0100)]
Always call dlopen in DriverOpen.
This increases the reference count for the driver binary, preventing it from
getting unloaded prematurely in driDestroyDisplay. See
https://bugs.freedesktop.org/show_bug.cgi?id=13541 .
Eric Anholt [Thu, 6 Dec 2007 00:57:27 +0000 (16:57 -0800)]
Revert "[965] Add missing flagging of new stage programs for updating stage state."
I had forgotten part of brw_state_cache.c that made this fix not relevant for
master (last_addr comparison and flagging based on cache id).
This reverts commit
a4642f3d18bdaebaba31e5dee72fe5de9d890ffb.
Eric Anholt [Wed, 5 Dec 2007 23:52:13 +0000 (15:52 -0800)]
[965] Add missing flagging of new stage programs for updating stage state.
Otherwise, choosing a new program wouldn't necessarily update the state, and
and an old program could be executed, leading to various sorts of pretty
pictures or hangs.
Brian [Wed, 5 Dec 2007 22:06:23 +0000 (15:06 -0700)]
Fix endianness bug in _mesa_texstore_argb8888()
On big-endian, storing in _mesa_texformat_argb8888 format produced wrong res
Also, clean-up nearby code to match.
picked from gallium-0.1 branch
Xiang, Haihao [Wed, 5 Dec 2007 02:31:35 +0000 (10:31 +0800)]
Don't Swap buffer if a DRIDrawable is entirely obscured
by another window.
Brian [Wed, 5 Dec 2007 01:44:40 +0000 (18:44 -0700)]
Undo changes made to the toyball shaders in commit
d19d0596daf004b56d80f78fa1a329b43c2ebf94
This demo produces the expected results again.
Brian [Tue, 4 Dec 2007 21:06:10 +0000 (14:06 -0700)]
fix span->facing computation and gl_FrontFacing initialization
Brian [Tue, 4 Dec 2007 21:05:26 +0000 (14:05 -0700)]
Fix gl_FrontFacing compilation problem
Brian [Tue, 4 Dec 2007 17:48:05 +0000 (10:48 -0700)]
added culling/wireframe options
Michel Dänzer [Tue, 4 Dec 2007 09:46:45 +0000 (10:46 +0100)]
Use -Bsymbolic for linking all shared objects.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10132 .
Also remove comment about SONAME, as SONAME only applies to shared libraries.
Eric Anholt [Mon, 3 Dec 2007 18:58:08 +0000 (10:58 -0800)]
[965] Change constant buffer from state structs to plain batch emission.
Reduces diff to branch which has a relocation in this state emit.
Brian [Mon, 3 Dec 2007 21:14:16 +0000 (14:14 -0700)]
fix DD_TRI_LIGHT_TWOSIDE bug (#13368)
Dan Nicholson [Mon, 3 Dec 2007 19:57:14 +0000 (11:57 -0800)]
Fix the library name in glw.pc
Fix a copy and paste error s/GLU/GLw/ in glw.pc.
Brian [Mon, 3 Dec 2007 18:58:55 +0000 (11:58 -0700)]
glut doesn't need -lXt
Brian [Mon, 3 Dec 2007 18:57:56 +0000 (11:57 -0700)]
added missing quote char
Michel Dänzer [Fri, 30 Nov 2007 10:40:06 +0000 (11:40 +0100)]
i915: Fix up state changes for i8xx.
Eric Anholt [Sat, 1 Dec 2007 02:17:12 +0000 (18:17 -0800)]
[intel] Move batch bo_unmap from TTM code to shared, and add more asserts.
Eric Anholt [Sat, 1 Dec 2007 02:12:23 +0000 (18:12 -0800)]
[intel] Add failure path printfs to relocation code and some comments.
Eric Anholt [Sat, 1 Dec 2007 02:08:17 +0000 (18:08 -0800)]
[intel] Simplify TTM relocation code by passing around bufmgr struct.
Eric Anholt [Fri, 30 Nov 2007 22:15:36 +0000 (14:15 -0800)]
[intel] Fix the type and naming of the flags/mask args to TTM functions.
The uint64_t flags (as defined by drm.h) were being used as unsigned ints in
many places.
Eric Anholt [Fri, 30 Nov 2007 22:14:11 +0000 (14:14 -0800)]
[intel] intel_bufmgr_ttm style sanity
Brian [Fri, 30 Nov 2007 22:52:27 +0000 (15:52 -0700)]
fix-build: remove ctx->_Facing assignment
Brian [Fri, 30 Nov 2007 20:01:57 +0000 (13:01 -0700)]
fix broken two-sided stencil
Brian [Fri, 30 Nov 2007 16:07:39 +0000 (09:07 -0700)]
better front-plane clip test
joukj [Fri, 30 Nov 2007 12:16:05 +0000 (13:16 +0100)]
Updates of some OpenVMS makefiles.
joukj [Fri, 30 Nov 2007 10:12:41 +0000 (11:12 +0100)]
Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa
Xiang, Haihao [Fri, 30 Nov 2007 04:04:04 +0000 (12:04 +0800)]
i965: if source depth to render target is set,
it should be handled in fb_write.
Xiang, Haihao [Fri, 30 Nov 2007 03:50:08 +0000 (11:50 +0800)]
i965: use uncompressed instruction to ensure only
Pixel Mask Copy is modified as the pixel shader thread
turns off pixels based on kill instructions.
Eric Anholt [Thu, 29 Nov 2007 21:00:34 +0000 (13:00 -0800)]
[i915] Make INTEL_DEBUG=bufmgr actually do things for bufmgr_fake.
Brian [Thu, 29 Nov 2007 15:12:33 +0000 (08:12 -0700)]
New ctx->Driver.Map/UnmapTexture() functions for accessing textures from t_vb_program.c
Brian [Wed, 28 Nov 2007 22:55:57 +0000 (15:55 -0700)]
cleanups, comments
Brian [Wed, 28 Nov 2007 22:19:46 +0000 (15:19 -0700)]
Move _mesa_load_tracked_matrices() from TNL module to prog_statevars.c
Michel Dänzer [Wed, 28 Nov 2007 09:20:04 +0000 (10:20 +0100)]
r200: Fix texture format regression on big endian systems.
See https://bugs.freedesktop.org/show_bug.cgi?id=13324 .
Also use tx_table_be for VALID_FORMAT, in case r200SetTexImages ever gets
called for MESA_FORMAT_RGB888.
Xiang, Haihao [Wed, 28 Nov 2007 01:46:43 +0000 (09:46 +0800)]
i965: update RefCount when using Vertex/Fragment program.
It makes quake4-demo works well on 965.
WuNian [Wed, 28 Nov 2007 01:22:42 +0000 (18:22 -0700)]
remove drawable from hash table when window is deleted (see bug 13091)
Delle [Wed, 28 Nov 2007 01:18:25 +0000 (18:18 -0700)]
use DEFAULT_SOFTWARE_DEPTH_BITS
Brian [Tue, 27 Nov 2007 17:31:05 +0000 (10:31 -0700)]
minor additions to avoid FAQs
Brian [Tue, 27 Nov 2007 17:27:55 +0000 (10:27 -0700)]
document GLSL float f/F suffix bug
Brian [Tue, 27 Nov 2007 17:16:51 +0000 (10:16 -0700)]
set fp->UsesKill when emitting OPCODE_KIL
Brian [Mon, 26 Nov 2007 18:39:17 +0000 (11:39 -0700)]
add a few more logicop modes, simplify code
Brian [Mon, 26 Nov 2007 16:35:39 +0000 (09:35 -0700)]
improve 24-bit Z to 32-bit Z conversion
Xiang, Haihao [Tue, 27 Nov 2007 01:45:32 +0000 (09:45 +0800)]
i965: The jump instruction count is added
to IP pre-increment, and should point to
the first instruction after the do instruction
of the do-while block of code
Keith Whitwell [Thu, 15 Nov 2007 09:59:33 +0000 (09:59 +0000)]
i915: Catch cases where not all state is emitted for a new batchbuffer.
This could lead to incorrect rendering or even lockups.
Michel Dänzer [Fri, 9 Nov 2007 17:46:55 +0000 (18:46 +0100)]
i915: Some additional blit fixes and assertions.
Michel Dänzer [Sun, 25 Nov 2007 13:20:36 +0000 (14:20 +0100)]
libGL: Make sure a valid value is returned for GLX_BIND_TO_MIPMAP_TEXTURE_EXT.
If the server didn't send a value, assume it's not supported.
A more generic solution might be better for this kind of problem, but an
attempt for this failed (see https://bugs.freedesktop.org/show_bug.cgi?id=9264)
and this allows compiz to work with drivers that support
GL_EXT_framebuffer_object.
Michel Dänzer [Sun, 25 Nov 2007 13:17:02 +0000 (14:17 +0100)]
intel: Fix relative symlinks.
Brian [Fri, 23 Nov 2007 23:19:25 +0000 (16:19 -0700)]
better test of point attenuation
Brian [Fri, 23 Nov 2007 21:35:46 +0000 (14:35 -0700)]
#define GL_GLEXT_PROTOTYPES to silence warning
Brian [Fri, 23 Nov 2007 19:01:57 +0000 (12:01 -0700)]
Consolidate texture fetch code and use partial derivatives when possible.
Brian [Fri, 23 Nov 2007 17:25:48 +0000 (10:25 -0700)]
Fix parsing of gl_FrontLightModelProduct.sceneColor, don't segfault on variable array indexes.
Brian [Fri, 23 Nov 2007 16:14:39 +0000 (09:14 -0700)]
need to check border width in sample_linear_2d() - fixes failed assertion in texwrap.c test
Brian [Thu, 22 Nov 2007 16:31:16 +0000 (09:31 -0700)]
Consolidate point size computation, clamping in get_size().
Also, apply user-defined clamp limits to point size even when not using
attentuation or program-computed size.
Brian [Thu, 22 Nov 2007 16:29:38 +0000 (09:29 -0700)]
Print point/line size range limits
Roland Scheidegger [Thu, 22 Nov 2007 01:49:11 +0000 (02:49 +0100)]
fix z buffer read/write issue with rv100-like chips and old ddx
Eric Anholt [Mon, 5 Nov 2007 22:55:52 +0000 (14:55 -0800)]
[965] Replace 965 texture format code with common code.
The only functional difference should be that 965 now gets the optimization
where textures default to 16bpp when the screen is 16bpp.
Eric Anholt [Fri, 9 Nov 2007 19:45:25 +0000 (11:45 -0800)]
[965] Remove dead exec vfmt code which was replaced by generic vbo code.
Brian [Mon, 19 Nov 2007 20:05:00 +0000 (13:05 -0700)]
clamp lambda to Min/MaxLod
Eric Anholt [Mon, 19 Nov 2007 22:37:14 +0000 (14:37 -0800)]
[965] Add INTEL_DEBUG=fall debugging output.
Eric Anholt [Mon, 19 Nov 2007 23:26:14 +0000 (15:26 -0800)]
[965] Convert DBG macro to use FILE_DEBUG_FLAG like i915.
Brian [Mon, 19 Nov 2007 17:37:54 +0000 (10:37 -0700)]
fix some texture format assertions, etc
Brian [Mon, 19 Nov 2007 16:55:17 +0000 (09:55 -0700)]
fix out-of-bounds array index (ix=-1)
Eric Anholt [Sat, 17 Nov 2007 00:43:45 +0000 (16:43 -0800)]
[intel] Add 965 support to shared intel_blit.c
This requires that regions grow a marker of whether they are tiled or not,
because fence (surface) registers are ignored by the 965 2D engine.
Eric Anholt [Sat, 17 Nov 2007 00:14:42 +0000 (16:14 -0800)]
[i915] Pass static region names in so debugging says more than "static region".
Eric Anholt [Sat, 17 Nov 2007 00:05:11 +0000 (16:05 -0800)]
[intel] Move additional code to be shared from intel_context.h to intel/.
Eric Anholt [Fri, 16 Nov 2007 23:51:34 +0000 (15:51 -0800)]
[intel] Move intel_tex.h into place, forgotten in the previous commit.
Eric Anholt [Thu, 25 Oct 2007 22:37:13 +0000 (15:37 -0700)]
[965] Add batchbuffer decode for several more packets.
Eric Anholt [Fri, 16 Nov 2007 23:01:48 +0000 (15:01 -0800)]
[intel] Fix typos in intel_chipset.h macros.
Eric Anholt [Fri, 16 Nov 2007 22:56:26 +0000 (14:56 -0800)]
[i915] Add INTEL_DEBUG=sync debug flag to wait for fences after making them.
Eric Anholt [Thu, 25 Oct 2007 18:31:15 +0000 (11:31 -0700)]
[i915] Reenable batchbuffer debug under INTEL_DEBUG=bat.
Eric Anholt [Thu, 15 Nov 2007 22:00:17 +0000 (14:00 -0800)]
[intel] Add some doxygen notes on what the bufmgr_fake block members mean.
Eric Anholt [Fri, 16 Nov 2007 22:45:26 +0000 (14:45 -0800)]
[intel] Add a simple relocation cache to the fake buffer manager.
This is required for 965 performance, as it avoids a lot of repeated data
uploads of the state caches due to surface offsets in them.
Eric Anholt [Fri, 16 Nov 2007 22:38:09 +0000 (14:38 -0800)]
[intel] Assert against 0-sized buffers in dri_bufmgr_fake.c.
They shouldn't be created, and this often helps catch stupid issues.
Eric Anholt [Fri, 16 Nov 2007 22:20:24 +0000 (14:20 -0800)]
[intel] Add support for multiple levels of relocation in bufmgr_fake.
This is required for 965 support, which has relocations in other places than
just the batchbuffer.
Eric Anholt [Sat, 10 Nov 2007 00:43:21 +0000 (16:43 -0800)]
[i915] Push locking in intelClearWithTris down inside meta_draw_poly.
The lock coverage and checks for cliprects were unneeded since the batchbuffer
will have INTEL_BATCH_CLIPRECTS anyway. It appeared to be a leftover from
intelClearWithBlit.
This makes the locking requirements of i915 meta_draw_quad match i965
meta_draw_quad.
Brian [Fri, 16 Nov 2007 22:18:30 +0000 (15:18 -0700)]
added z/s keys to reset/step rotation
Brian [Fri, 16 Nov 2007 22:17:37 +0000 (15:17 -0700)]
Only emit texcoords for enabled units. Enable/disable units with 0..7 keys.
Also, asst. clean-ups.
Roland Scheidegger [Thu, 15 Nov 2007 00:13:16 +0000 (01:13 +0100)]
fix bogus assumption if ddx has set up surface reg for z buffer
this is wrong since even if ddx has not set up a surface reg to cover the z
buffer we should pretend it has on those rv100 chips since they presumably do
not do z buffer tiling if not using hyperz, so we can use linear addressing
just the same. Doesn't seem to fix #13080, but it's wrong anyway and the bug
almost certainly broke newer non-tcl chips.
Roland Scheidegger [Wed, 14 Nov 2007 23:52:38 +0000 (00:52 +0100)]
fix position invariant vertex programs for sw-tnl
do the same math as for fixed function pipe, including
user clip planes.
(mostly resurrected from the dead t_vb_arbprogram.c code)
Brian [Mon, 12 Nov 2007 15:02:09 +0000 (08:02 -0700)]
remove dependency on libGLU