Commit Graph

11471 Commits

Author SHA1 Message Date
Dan Nicholson c3b5adaa9a configs: Always use -fPIC for shared libraries, never for static
Mesa currently disables -fPIC for DRI on x86, but most Linux distros are
re-enabling -fPIC for all DRI arches. Let's just do that here since
that's normally what's wanted for shared libraries. Some justification:

http://bugs.gentoo.org/show_bug.cgi?id=110840#c9

On the other hand, position-independent code is only necessary when
building shared libraries, so disable it for the static cases.
2007-10-31 14:19:20 -07:00
Dan Nicholson 013dbcd611 Add -fno-strict-aliasing workaround for Linux GCC targets
Most Linux distros work around aliasing problems in Mesa by compiling
with the GCC option -fno-strict-aliasing. Two examples:

  https://bugs.freedesktop.org/show_bug.cgi?id=6046
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=394311

This makes -fno-strict-aliasing the default with a comment that
developers should consider commenting it out. There is a already a note
about these bugs in docs/helpwanted.html.
2007-10-31 09:47:39 -07:00
Brian 2bdd467dfd GLSL support in i965 driver 2007-10-31 09:57:47 -06:00
Brian 7f80dc1ebe updated list 2007-10-31 09:57:47 -06:00
Brian 5cb203433a check for count==0 in _mesa_validate_DrawArrays() 2007-10-31 09:57:47 -06:00
Michel Dänzer d2f19a554a Fix some build warnings, mostly with XCB. 2007-10-30 17:58:50 +01:00
Brian a7f64635a6 Alias glStencilOpSeparateATI with glStencilOpSeparate. 2007-10-30 10:24:34 -06:00
Brian 8b8a970593 test glStencilFuncSeparateATI() 2007-10-30 10:23:58 -06:00
Brian f70ca96ba9 Finish up ATI_separate_stencil
Add entrypoints to glapi XML file and regenerate files.
Implement glStencilOpSeparateATI().
Consolidate some code in stencil.c
2007-10-30 09:13:58 -06:00
Roland Scheidegger 4c53635aab add missing _mesa_StencilFuncSeparateATI function 2007-10-30 14:09:17 +01:00
Michel Dänzer 3177b4e2cf More vblank cleanups.
* Fix crash at context creation in most drivers supporting vblank.
* Don't pass vblank sequence or flags to functions that get passed the drawable
  private already.
* Attempt to initialize vblank related drawable private fields just once
  per drawable. May need more work in some drivers.
2007-10-30 13:16:50 +01:00
Eric Anholt dc1264970e [i915] Include header to pick up intel_ttm_bo_create_from_handle() proto. 2007-10-29 13:24:29 -07:00
Eric Anholt b0edb9c38a Merge branch 'origin' 2007-10-29 13:24:27 -07:00
Jesse Barnes ad8ee7db3b Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa 2007-10-29 12:06:36 -07:00
Jesse Barnes 38fdb47d26 Refactor and fix core vblank support
Consolidate support for synchronizing to and retrieving vblank counters.  Also
fix the core vblank code to return monotonic MSC counters, which are required
by some GLX extensions.  Adding support for multiple pipes to a low level
driver is fairly easy, the Intel 965 driver provides simple example code (see
intel_buffers.c:intelWindowMoved()).

The new code bumps the media stream counter extension version to 2 and adds a
new getDrawableMSC callback.  This callback takes a drawablePrivate pointer,
which is used to calculate the MSC value seen by clients based on the actual
vblank counter(s) returned from the kernel.  The new drawable private fields
are as follows:
  - vblSeq - used for tracking vblank counts for buffer swapping
  - vblFlags - flags (e.g. current pipe), updated by low level driver
  - msc_base - MSC counter from the last time the current pipe changed
  - vblank_base - kernel DRM vblank counter from the last time the pipe changed

Using the above variables, the core vblank code (in vblank.c) can calculate a
monotonic MSC value.  The low level DRI drivers are responsible for updating
the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags)
along with msc_base and vblank_base whenever the pipe associated with a given
drawable changes (again, see intelWindowMoved for an example of this).

Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to
driDrawableGetMSC32 and add code for pipe switching as outlined above to fully
support the new scheme.
2007-10-29 12:06:00 -07:00
Dan Nicholson 06ca14543e Build xdemos programs by default on linux-dri
Since libglut is no longer hardcoded, we can build the xdemos programs
so long as a GLX enabled libGL and libGLU have been built.
2007-10-29 11:43:20 -07:00
Chris Rankin 1421bffb18 Remember to call XSync() before resetting X error handler. 2007-10-29 14:37:32 -04:00
Dan Nicholson 3b9e28d507 linux-dri-xcb: Fix undefined refs when linking with libGL
GL_LIB_DEPS was missing -lXdamage and -lXfixes, which was causing
linker errors when trying to build the programs.
2007-10-29 11:17:04 -07:00
Brian 40133487db disable ctx->Driver.NewProgram() call in _mesa_new_program()
This was causing infinite recursive calls w/ software drivers.
All vertex/fragment shaders should be allocated by calling
ctx->Driver.NewProgram(), not by calling _mesa_new_program().
2007-10-29 10:01:15 -06:00
Dan Nicholson 162914675a update APP_LIB_DEPS for static library configs (patch 3/3) 2007-10-29 09:05:13 -06:00
Dan Nicholson 9ef1d9f03a simplify APP_LIB_DEPS (patch 2/3) 2007-10-29 09:04:30 -06:00
Dan Nicholson c05aa5ec4c specify app lib dependencies in Makefiles (patch 1/3) 2007-10-29 09:03:01 -06:00
Alan Hourihane b59dbd822f Only set R_MODE with NV_point_sprite 2007-10-28 20:07:37 +00:00
Dan Nicholson 9514209593 configs: Fix linux-static to link correctly
The linux-static target was missing necessary libraries and hardcoding
their location to /usr/X11R6/lib. This makes it comparable to the x86
and x86-64 static targets.
2007-10-26 15:46:37 -07:00
Zou Nan hai 6ef27b88e6 Merge branch '965-glsl'
Conflicts:

	src/mesa/drivers/dri/i965/brw_sf.h
	src/mesa/drivers/dri/i965/intel_context.c
2007-10-26 15:39:50 +08:00
Brian ff042bfdee use grep -q 2007-10-25 14:47:14 -06:00
Dan Nicholson 8578534f48 Ignore new programs 2007-10-25 11:34:16 -07:00
Brian 6dcf65ff0d simplify/fix the ASM_FLAGS tests (bug 12931) 2007-10-25 11:10:10 -06:00
Alex Neundorf cae5b7f1e3 added catamount-osmesa-pgi config 2007-10-24 16:31:22 -06:00
Brian 26479fa3b3 don't build x86, x86-64 dirs if not needed 2007-10-24 16:24:06 -06:00
Brian 55d4f32fc2 fix assorted bugs, works now 2007-10-24 13:55:22 -06:00
Brian 5e9272c748 add to git 2007-10-24 12:43:02 -06:00
Brian e48f0b09ab Implement gl_PointCoord attribute for GLSL fragment shaders.
Contains the normalized fragment position within a point sprite.
2007-10-24 11:37:05 -06:00
Brian c9d495c6f0 properly init dst reg's CondMask/Swizzle fields 2007-10-23 10:55:24 -06:00
Brian 2a8e9bb00f bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many instructions 2007-10-23 10:24:53 -06:00
Brian e90dd4bf8f add directfb glut sources to tarball 2007-10-23 08:22:21 -06:00
Brian 2667e5642f don't apply ColorMask to main gc 2007-10-22 17:50:59 -06:00
Kristian Høgsberg a074857cdc glxinfo: Try creating a GLX context using an fbconfig if no visuals are available. 2007-10-18 15:19:38 -04:00
Michel Dänzer 950fff0f9a i915: Add some sanity checks to blit command debugging code. 2007-10-18 18:30:15 +02:00
Ian Romanick a663e846b6 Framework for supporting z24_s8 and z32 depth textures on r300. 2007-10-17 16:25:39 -07:00
Ian Romanick 42a4386a4c Initial support for ARB_depth_texture
Currently only GL_DEPTH_COMPONENT16 are supported.  I don't know what the
hardware bits are to select the other formats, but it shouldn't be too hard
to figure out.
2007-10-17 16:25:39 -07:00
Ian Romanick b961eccc92 Support cards that have ARB_fp but not ARB_shadow. 2007-10-17 16:25:39 -07:00
Ian Romanick 374158b044 mga: Enable (trivial) support for GL_APPLE_vertex_array_object, bump DRIVER_DATE 2007-10-17 16:25:39 -07:00
Ian Romanick 366b2c6902 mga: Enable (trivial) support for GL_EXT_gpu_program_parameters. 2007-10-17 16:25:38 -07:00
Kristian Høgsberg aad5c0fdc7 pbutil: Do not require GLX_SGIX_pbuffer for fbconfig only-functions. 2007-10-17 17:04:59 -04:00
Brian ad053d90f0 Replace repeat_remainder() with a simpler macro that just casts args to unsigned. 2007-10-17 14:30:44 -06:00
Kristian Høgsberg 6c753ad51d Pull workaround for unset GLX_DRAWABLE_TYPE back in.
The old version just set GLX_DRAWABLE_TYPE to GLX_WINDOW_BIT for
configs received through glXGetVisualConfigs and to
GLX_WINDOW_BIT | GLX_PIXMAP_BIT for configs received as FBConfigs.
The X server needs to send this info, but keep the workaround for now.

Fixes #12835.
2007-10-17 15:06:11 -04:00
Kristian Høgsberg a5b4bb393f glxinfo: Also print number of fbconfigs. 2007-10-17 15:06:11 -04:00
Michel Dänzer 86b81ef5aa Don't call the driver clear hook when the effective scissor rectangle is empty. 2007-10-17 18:37:19 +02:00
Michel Dänzer b453112133 i915: Don't emit 'empty' blit rectangles.
The hardware seems to interpret them differently and produce unexpected
results...
2007-10-17 18:37:12 +02:00