Commit Graph

1678 Commits

Author SHA1 Message Date
Ian Romanick 711555d1e3 Convert all instances of XTHREADS to USE_XTHREADS. This fixes one of
serveral things that are broken when building on a system with X.org 7.0rc0
installed.
2005-08-03 23:05:25 +00:00
Dave Airlie 7f5925d57c Add color tiling support to miniglx for radeon
(Stephane Marchesin + Dave Airlie)
2005-08-03 10:22:31 +00:00
Ian Romanick 7adcedcd54 Fix build problems related to finding Xthreads.h. 2005-08-01 16:30:24 +00:00
Ian Romanick 29206ae569 Remove unused structures and data fields. These had been left in because
DRI drivers using the "old" interface relied on certain fields being at
certain offsets.  Removing the structures would break that.  Now that the
old interface is no longer supported, the dead data can finally die.
2005-07-29 17:30:18 +00:00
Ian Romanick dc6e2c778a Add a new config called linux-indirect. This build the GLX libGL just like
linux-dri, but it disables support for direct-rendering in it.  This config
mainly exists so that I can verify that changes to libGL haven't broken
builds on non-DRI platforms.
2005-07-29 17:25:50 +00:00
Jon Smirl 4ce390b933 Commit Ian's fixes from Bug 3877
I have tested these on miniglx and they seem to be working.
I'm sure Dave will give them a better test.
2005-07-29 00:48:12 +00:00
Ian Romanick 1585c234e0 Major rip-up of internal function insertion interface. The old
_glapi_add_entrypoint has been replaced by a new routine called
_glapi_add_dispatch.  This new routine dynamically assignes dispatch offsets
to functions added.  This allows IHVs to add support for extension functions
that do not have assigned dispatch offsets.

It also means that a driver has no idea what offset will be assigned to a
function.  The vast majority of the changes in this commit account for that.
An additional table, driDispatchRemapTable, is added.  Functions not in the
Linux OpenGL ABI (i.e., anything not in GL 1.2 + ARB_multitexture) has a
fixed offset in this new table.  The entry in this table specifies the
offset in of the function in the real dispatch table.

The internal interface was also bumped from version 20050725 to 20050727.

This has been tested with various programs in progs/demos on:

radeon (Radeon Mobility M6)
r128 (Rage 128 Pro)
mga (G400)
2005-07-28 00:29:51 +00:00
Ian Romanick ab7c6ffadc Remove the last remnants of GLX_BUILT_IN_XMESA. This allows the removal of
the evil, ugly GLX_PREFIX macro as well.
2005-07-26 22:53:38 +00:00
Ian Romanick 5c6fd3dd4c No, really, get rid of all the remaining references to DRI_USE_NEW_INTERFACE.
A couple other remnants of the old interfaces hit the dust too.  Thanks
Jon. :)
2005-07-26 05:57:24 +00:00
Ian Romanick a08d8a095c Quote $(CC) and $(CXX) so that 'CC=ccache gcc' and 'CXX=ccache g++' will
work again.
2005-07-26 05:55:56 +00:00
Ian Romanick 5f1ba3e21b Fixes the glXGetProcAddress portion of the interface. Most of the functions
that are currently obtained via glXGetProcAddress and all of the XF86DRI
functions are replaced with a funciton table.  This table will be passed to
__driCreateNewScreen.

One of the functions in the table is getProcAddress.  This allows some
loaders to expose functionality not in all loaders.  This will be immediatly
used for glxEnableExtension (formerly known to drivers as
__glXScrEnableExtension).  libGL (and in the future libglx) expose this
function so that drivers can enable GLX extensions.  libEGL should exposed
eglEnableExtension to enable EGL extensions.  The same function cannot be
used for both because the extensions have different names and (possibly)
different semantics.  Drivers can optionally use one, both, or neither.

The key parts are in the __DRIinterfaceMethodsRec structure in
dri_interface.h.  A pointer to one of these structures is passed into
__driCreateNewScreen.  Because of this, the version of the API is bumped to
20050725.  Since the previous version(s) were never in a release, their
existance is erased.

I was actually a little surprised by how much code this cuts from the
drivers.  A lot of glXGetProcAddress calls disappear, and a lot of
version checks go with them.  Nice.

The one thing I'm not sure of is removing __glXInitialize.  For some
reason that function was in the glXGetProcAddress table, but *nothing*
in the Mesa tree used it.  Did something with DRI conf. use this
function?  It seems odd...
2005-07-26 02:44:01 +00:00
Brian Paul 8dcc6736ab Added -linker option to mklib, used to specify a particular program for
linking, if relevant.
Updated Makefiles to use -linker option instead of setting CC, CXX env vars.
2005-07-25 22:59:58 +00:00
Ian Romanick e9dbe58b8b Gut a few more dead bits. Replace uses of the CreateNewScreenFunc typedef
(from glxclient.h) with PFNCREATENEWSCREEN (from dri_interface.h).

Remove the prototype for __driCreateScreen and fix the prototype for
__driCreateNewScreen (append the API version) in dri_interface.h.
2005-07-24 07:38:23 +00:00
Ian Romanick c39bf5e273 All elements of pre-DRI_NEW_INTERFACE_ONLY are removed. This allows
1,402 lines of code to be removed from Mesa (drivers and libGL).  The
big winner is dri_util.c.

Primary changes are:

1. Remove all "deprecated" entry-points from the various structures in
dri_interface.h.

2. Rename the remaining fields to removed "version numbers."  So,
bindContext3 becomes bindContext.  Functions with "New" in the name
(e.g., CreateNewContext) were *not* changed, but that is an option.
Having "New" in the name is less annoying to me than having "3" in the name.

3. Remove all compatibility code that handles cases where the driver or
the loader is too old to support the latest interfaces.

4. Append the API version to the __driCreateNewScreen function name.
This is currently done by hand.  In the future (i.e., the next time we
make an incompatible change to the interface) we'll want to come up with
a better way to do this.  This prevents old loaders from being able to load
new (incompatible) drivers.

5. Bump the API version to 20050722.  All drivers (by way of dri_util.c)
require this version.

6. All drivers are *required* to expose GLX_SGIX_fbconfig and
GLX_OML_swap_method (or the moral equivalents).  Support for these
functions in implicit in the use of the "new" interface.

7. Some cases still exist that need to be compiled differently in a loader
or core Mesa versus in a driver.  These are identified by the define
IN_DRI_DRIVER.
2005-07-24 06:29:14 +00:00
Adam Jackson 7d40d230fa Add two aliases for some PointParameters entrypoints for libglx compatibility.
Doing this here rather than on the GLX side since the X monolith hasn't had
Mesa 6.3 imported yet.

idr, I know this is touching a generated file, but I haven't figured out what
needs changing in the generator scripts to make this change happen.  If you
could add that I'd appreciate it.
2005-07-23 02:09:58 +00:00
Ian Romanick f0ff50d4ed Add support for assembly (static) dispatch functions on x86-64. This
is basically patch #2939 from X.org bugzilla #3379.  This does *not*
fix the bug as it does not dynamically generate stubs at run-time.  It
just gets things one step closer.
2005-07-02 08:29:57 +00:00
Ian Romanick 5aafea03af Fix non-x86 specific builds. The changes from glTexImage3DEXT to
glTexImage3D that caused me so many problems during the re-development
of the API scripts reared its ugly head again.  This has been fixed by
tracking the parameter string for each entry-point individually.

This has the annoying side-effect that the names of the parameters in
all aliases of a function must be the same or gl_apitemp.py will
generate bad code. :(  The changes in
src/mesa/glapi/{gl_API.xml,glapitable.h} and src/glx/x11/* are caused
by fixing the parameter names in various function aliases that didn't
match.

Reported by: Eric Anholt, Jacob Jansen
2005-06-24 18:35:31 +00:00
Jeremy Kolb 3fb86eefe8 Fixed the XCB implementation when always_array is true, thanks to Ian Romanick for pointing it out. Please review. 2005-06-24 02:28:02 +00:00
Ian Romanick 2636e853f6 Mark GenQueriesARB at 'always_array="true"'. This eliminates the need
to special-case the handling of that function in glX_proto_send.py.
2005-06-22 17:11:20 +00:00
Jeremy Kolb 814e5360b0 Fixed a bug where GenQueriesARB was generating the wrong code for XCB and wouldn't compile. Not sure how that slipped through before but it should work now. 2005-06-22 02:36:23 +00:00
Ian Romanick 66a5548fbb Mammoth update to the Python code generator scripts that live in
src/mesa/glapi.  Basically, the scripts that did simple things (like
gl_offsets.py) were simple, and the scripts that did more complicated things
(like glX_proto_send.py) were getting progressively more and more out of
control.  So, I re-write the foundation classes on which everything is based.

One problem with the existing code is that the division between the GL API
database representation and the way the output code is generated was either
blury or nonexistant.  The new code somewhat follows the
Model-View-Controller pattern, minus the Controller.  There is a distinct
set of classes that model the API data, and there is a distinct set of
classes that generate code from that data.

One big change is in the class that represents GL functions (was glFunction,
is now gl_function).  There used to be an instance of this calls for each
function and for each alias to that function.  For example, there was an
instance for PointParameterivSGIS, PointParameterivEXT, PointParameterivARB,
and PointParameteriv.  In the new code, there is one instance.  Each
instance has a list of entrypoint names for the function. In the next
revision, this will allow a couple useful things.  The script will be able
to verify that the parameters, return type, and GLX protocol for a function
and all it's aliases match.

It will also allow aliases to be represented in the XML more compactly.
Instead of repeating all the information, an alias can be listed as:

     <function name="PointParameterivARB" alias="PointParameterivEXT"/>

Because the data representation was changed, the order that the alias
functions are processed by the scripts also changed.  This accounts for at
least 2,700 of the ~3,600 lines of diffs in the generated code.

Most of the remaining ~900 lines of diffs are the result of bugs *fixed* by
the new scripts.  The old scripts also generated code with some bugs in it.
These bugs were discovered while the new code was being written.

These changes were discussed on the mesa3d-dev mailing list back at the end
of May:

http://marc.theaimsgroup.com/?t=111714569000004&r=1&w=2

Xorg bug: 3197, 3208
2005-06-21 23:42:43 +00:00
Jeremy Kolb a6a3e01b09 ran "make" after update to glX_proto_send.py. 2005-06-20 03:18:16 +00:00
Dave Airlie 22b0a42465 use shared-core 2005-05-28 10:55:23 +00:00
Ian Romanick 249db89b00 Make a couple minor corrections to gl_API.xml. Fixes the name of an
extension that was missing the GL_ part and uses the core GL type names for
vertex buffer object functions instead of the ARB names.

Also commits the resulting changes to the generated code.  Some how, the
#if sequence disappeared in the 1.52 version of glapi_x86.S.
2005-05-26 16:24:35 +00:00
Ian Romanick f387c83ec1 Commit the changes propagated from Jeremy Kolb's changes to the Python
scripts in src/mesa/glapi.
2005-05-25 03:30:06 +00:00
Brian Paul 2eb147e7f5 Patches for XCB (Jeremy Kolb) 2005-05-07 17:14:50 +00:00
Ian Romanick 02986cb2cc Add support for pthreads and TLS to libGL for __glXLock / __glXUnlock and
for tracking the current GLX context.

This fixes bug #3024.
2005-04-18 16:59:53 +00:00
Ian Romanick 2e823f29e4 Send GL_PACK_INVERT_MESA state to the server. This fixes bug #2538. 2005-04-18 16:40:36 +00:00
Ian Romanick f434e07a6a Add missing includes of indirect.h. 2005-04-14 20:35:33 +00:00
Ian Romanick 25fe93f0a1 Add TLS support to libGL and, by virtue of using glthread.h and GL_CALL, all
DRI drivers.  A TLS enabled libGL can load a TLS or a non-TLS DRI driver,
but a TLS DRI driver requires a TLS enabled libGL.

This fixes bug #1822.
2005-04-13 20:59:15 +00:00
Ian Romanick a657c1aee8 Use the same dispatch.c source file for "normal" Mesa builds and DRI
libGL builds.
2005-04-07 23:58:51 +00:00
Ian Romanick c51ed8c236 Follow the GLX_SGIX_fbconfig spec and return the complete list of
available fbconfigs if attrList is NULL.  This fixes bug #2917.
2005-04-07 00:05:55 +00:00
Ian Romanick 979f35fb78 Minor vertex array support tweaks. These are in preparation for the
(eventual) addition of support for ARB_vertex_buffer_object.  Elminitate the
need for array_state_vector::large_header.  Make some very minor tweaks to
the handling of the indices pointer in emit_DrawElements_old.
2005-03-17 20:36:20 +00:00
Ian Romanick b81efaaa1a Minor vertex array support tweaks. Most of these are in preparation for the
(eventual) addition of support for ARB_vertex_buffer_object.

Move all the private vertex array data structures out of
indirect_vertex_array.c and into indirect_va_private.h.

Rename array_state_vector::enabled_array_count to
array_state_vector::enabled_client_array_count.

Make sure that both the GL extension string and the server GL version are
available when __glXInitVertexState is called.

Make sure that array_state::normalized is set correctly in the array's
gl*Pointer function.
2005-03-17 20:13:09 +00:00
Ian Romanick 3f35fbbf66 Fix the handling of zero-sized output parameters (i.e., those with type
'GLvoid *').  This fixes the GLX protocol for glGetProgramStringARB.  This
fixes bugzilla #2747.

Remove the 'ignore="true"' from glVertexAttrib4bvARB.  This fixes bugzilla
#2746.
2005-03-17 01:48:11 +00:00
Ian Romanick 9eae0b9f19 Hard-code the client-side maximum GL version. It turns out that there are
some flaws in the calculation code when the highest version listed in
known_gl_extensions is supported.  This code would also have some problems
with some of the new features (that don't have an associated extension) on
GL 2.0.
2005-03-17 01:36:24 +00:00
Ian Romanick 91c219d906 Add support for ARB_draw_buffers and ARB_occlusion_query. The GLX protocol
for these extensions (as well as ARB_vertex_program and ARB_matrix_palette)
was just approved by the ARB on 8-Mar-2005.  Now the only extension missing
for 1.5 support is ARB_vertex_buffer_object.

The opcodes for ARB_matrix_palette were also added to gl_API.xml.  Since
this extension isn't supported by Mesa, no code is generated for it.  Some
tabs were also converted to spaces in the comment for
GetCompressedTexImageARB.
2005-03-11 20:55:03 +00:00
Ian Romanick 0bd5373d94 Actually *use* the count_scale value associated with a parameter. 2005-03-06 08:55:39 +00:00
Dave Airlie 1bb14ad90c fix for solo to set the mode, and make solo gcc2 friendly...
From: Stephane Marchesin
2005-03-05 04:00:09 +00:00
Ian Romanick b47731f24d Import fixes from X.org tree (Søren Sandmann <sandmann@redhat.com>). 2005-03-04 17:53:24 +00:00
Ian Romanick fdb5a87f91 Fix some errors in the parameter descriptions in serveral vertex / fragment
program related functions.
2005-03-03 21:22:46 +00:00
Ian Romanick 03dc437363 Clean-up some warnings caused by the addition of vertex / fragment program
protocol support (reported by Adam Jackson).  Added code to validate the
'type' parameter to the draw element functions.
2005-02-28 19:37:10 +00:00
Ian Romanick 4e262cfb07 Accidentally committed wrong version with the previous commit set. 2005-02-25 23:02:33 +00:00
Ian Romanick 40af76bbaa Add GLX protocol support for ARB_fragement_program,
ARB_fragment_program_shadow, ARB_vertex_program, NV_fragment_program,
NV_fragment_program_option, NV_fragment_program2, NV_vertex_program,
NV_vertex_program1_1, NV_vertex_program2, NV_vertex_program2_option,
NV_vertex_program3, and ATI_text_fragment_shader.
2005-02-25 22:46:30 +00:00
Ian Romanick 1fd3bbc42e Convert the static functions read_pixel_reply, read_reply,
setup_single_request, and setup_vendor_request to the global functions
__glXReadPixelReply, __glXReadReply, __glXSetupSingleRequest, and
__glXSetupVendorRequest.  This will make it easier to add handcoded Single /
VendorPrivate / VendorPrivteWithReply functions.
2005-02-25 01:48:25 +00:00
Ian Romanick 365a0a7c15 Missed the commit of glxext.c yesterday.
Fixed a flow control problem in glGet*v that could result in the display
not being unlocked.  This also resulted in refactoring a lot more code
out of the glGet*v routines into get_array_data, which was renamed to
get_client_data.
2005-02-23 20:06:52 +00:00
Ian Romanick 6614766f3e Corrected the value for X_GLrop_SecondaryColor3svEXT. 2005-02-23 00:47:11 +00:00
Ian Romanick 57b5e8538e Missed the Makefile with the previous commit. 2005-02-23 00:24:18 +00:00
Ian Romanick fdb07636f2 Added __glExtensionBiIsEnabled and __GLXcontext::gl_extension_bits. This
enables libGL to query which extension are exported to applications.

Refactored array-query functionality (from glGet*v) in src/glx/x11/single2.c.

Massive re-write of indirect vertex array support.  The most noticable
effect is that glDrawElements now generates DrawArrays protocol.  The
side-effects (and the main reasons for the re-work) are that it is much
easier to add support for new arrays (e.g., GL_VERTEX_ATTRIB_ARRAY,
GL_WEIGHT_ARRAY_ARB, etc.) and it is much easier to add support for the new
DrawArrays protocol (required to support ARB_vertex_buffer_object).

These changes were primarilly tested with progs/demos/isosurf.
2005-02-22 22:36:31 +00:00
Dave Airlie dee1c795c2 add more functionality to miniglx for glitz 2005-02-20 10:46:34 +00:00
Dave Airlie 09298228c6 add EnableExtension so r200 enables all its extensions, add mesa memory
extension entry points
2005-02-15 08:40:24 +00:00
Ian Romanick d863424032 Generate GLX protocol for pixel single commands. 2005-02-09 03:11:23 +00:00
Ian Romanick a02b83115a Fix some mixed spaces / tabs issues in generated code. Commit generated
files that have been trivially changed by other recent commits.
2005-02-05 00:59:57 +00:00
Ian Romanick 0a755ade51 Enable client-side GLX support for texture compression extensions. 2005-02-04 19:29:30 +00:00
Ian Romanick 94a20cbadf Added a bunch of extensions that were previously supported but weren't
in the gl_API.xml database.  Add "official" support for SGI_color_matrix
and SGI_texture_color_table.  These were previously supported only by
way of ARB_imaging.
2005-02-03 00:38:40 +00:00
Ian Romanick 16c3c74018 Refactor the code to emit multiple-inclusion protection to
FilterGLAPISpecBase.  Since the size_h mode of glX_proto_size.py will be
used to generate multiple header files, add an option to specify the define
that is used for multiple-inclusion protection.

The changes to the header files in this commit are just a side-effect of the
changes to the Python scripts.
2005-01-28 19:00:54 +00:00
Ian Romanick 20b8d9c1b9 Fix some get / set errors with COLOR_TABLE_*. SCALE and BIAS can be
parameters to GetColorTableParameter[if]v.  FORMAT, WIDTH, and the SIZE
enums cannot be parameters to ColorTableParameter[if]v.
2005-01-28 17:58:58 +00:00
Ian Romanick 6398a97aff Mark a couple more function parameters as counters. 2005-01-27 19:50:59 +00:00
Ian Romanick 82e22f50f1 Add numerous 'get'-type functions to most of the enums supported by the
server-side GLX implementation.

Correct the protocol for EXT_convolution.  Several functions were
incorrectly listed as 'sop' that should have been 'vendorpriv'.

Remove TexParameter[if]v from the list of functions associated with
TEXTURE_RESIDENT.  The state associated with this enum is read-only.

Sort the enums by value for each particular size.  This ensures that the
signature is the same no matter what the ordering is of the enums in the XML
file.  The side effect is that there are some extra changes in
indirect_size.c.
2005-01-27 19:39:16 +00:00
Adam Jackson 999534216d HAVE_ALIAS was never defined anywhere, add some logic to turn it on
automagically.
2005-01-23 03:54:38 +00:00
Keith Whitwell 520e56f232 Depend tweaks 2005-01-19 11:10:27 +00:00
Ian Romanick 591b72b6a9 Added a couple missing proxy types. 2005-01-11 23:50:01 +00:00
Ian Romanick d24e49f301 Put quotes around the CC and CXX variables passed to mklib. This make
them work with multi-work compiler names (e.g., "ccache gcc").
2005-01-11 22:43:45 +00:00
Adam Jackson 1074eae704 Enable libGL to be built with DRI_NEW_INTERFACE_ONLY (but don't do it yet). 2005-01-08 03:54:38 +00:00
Ian Romanick 70d2f152f8 Refactor the code that converts a transpose-matrix enum to a
regular-matrix enum.
2005-01-07 02:53:04 +00:00
Ian Romanick 5f1f229f8d Pixel oriented render functions are now generated by the
glX_proto_send.py script.  This eliminates ~600 lines of non-generated
code.  With proper compiler optimization settings, it also decreases the
size of libGL.so by about 3KB.
2005-01-07 02:39:09 +00:00
Ian Romanick 3385d7cec3 The generic_*_byte functions did not rount the command size to a
multiple of 4 correctly in some cases.
2005-01-07 02:29:42 +00:00
Alan Hourihane 1e21673ea1 support 720x480 and 960x540 modes 2005-01-05 22:40:34 +00:00
Ian Romanick 3276c192b7 The opcode and command length fields of RenderLarge commands were
mistakenly emitted in the wrong order.
2005-01-03 21:03:03 +00:00
Ian Romanick 83fcf49647 Fixed two problems with the handling of GLX protocol replies. The logic
for determining when extra data needed to be read after a reply (to ensure
4-byte alignment) and the logic to determine whether or not to read reply
data after the SingleReply packet were both slightly wrong.
2004-12-27 08:29:54 +00:00
Ian Romanick 990dec7ea0 Used GCC's __builtin_expect when available. Change the way code is
generated for commands that can use RenderLarge packets.  Tweak the code for
__glXFlushRenderBuffer slightly.
2004-12-21 23:06:02 +00:00
Ian Romanick 0d84c68313 Use GLX protocol code generated by glX_proto_send.py. 2004-12-20 04:53:00 +00:00
Adam Jackson 4890f2605e Mark the XF86DRI client-side extension API as PUBLIC. 2004-12-15 23:07:55 +00:00
Adam Jackson 489ccef398 Fix up glx/x11 to work when built with -fvisibility=hidden. 2004-12-15 17:18:06 +00:00
Keith Whitwell fc23672327 Improve the behaviour of the build system wrt depend files.
- Remove the -Y option for makedepend, so that the standard
	  directories are searched
	- No longer pipe the multiple errors that the -Y option caused
	  into /dev/null -- we want to know about these failures.
	- Fix up a few other misc makedepend failures.
2004-12-08 15:16:36 +00:00
Dave Airlie 23b033ad28 From: Stephane Marchesin <marchesin@icps.u-strasbg.fr>
Attached is a patch that adds pci init code for mesa solo on radeon. It's been
tested on an itanium 2 with a radeon 7000 and it works here.
The patch adds a new field in the miniglx.conf config file, to choose between
pci and agp.
2004-12-08 06:15:01 +00:00
Ian Romanick 00d153eb72 Corrected a problem with the sizes of the MAP[12]_* enums. 2004-12-01 23:53:43 +00:00
Ian Romanick 77e297c368 Refactor ExtractDir and OpenDriver to be a bit more clear. 2004-12-01 09:41:14 +00:00
Ian Romanick 9bba1cfc39 Use indirect_size.c and indirect_size.h generated by using
src/mesa/glapi/glX_proto_send.py with the '-m size_c' and '-m size_h'
options.
2004-12-01 09:11:04 +00:00
Ian Romanick 548435215d Use the indirect_init.c generate by using src/mesa/glapi/glX_proto_send.py
with the '-m init_c' option.
2004-12-01 08:49:41 +00:00
Ian Romanick 4f4854a4af Make the transition to script-genereated GLX code easier.
Convert GL 1.4 function names to EXT_blend_func_separate names.
2004-12-01 08:47:35 +00:00
Ian Romanick 529381ff75 Make the transition to script-genereated GLX code easier.
Convert GL 1.4 / ARB_point_parameter function names to EXT_point_parameter /
NV_point_sprite names.
2004-12-01 08:42:31 +00:00
Ian Romanick 6b89a8363b Make the transition to script-genereated GLX code easier.
Move "handcoded" ARB_window_pos / MESA_window_pos functions to their own
file.  Modify the ARB_window_pos functions to use the MESA_window_pos names.
2004-12-01 08:31:15 +00:00
Ian Romanick bb427b10b1 Make the transition to script-genereated GLX code easier.
Move "handcoded" ARB_transpose_matrix functions to their own file.  From
here on out, such handcoded functions should go in a file named
indirect_FOO.c, where "FOO" is some logical name for the functionality
(e.g., part of the extension name, etc.).
2004-12-01 08:22:44 +00:00
Ian Romanick c8c24d049d Make the transition to script-genereated GLX code easier.
Move EXT_vertex_array wrapper functions from indirect_init.c to vertarr.c.
Fix problems with EXT_multi_draw_arrays function names.
2004-12-01 08:15:01 +00:00
Ian Romanick 345ed3ac8c Make the transition to script-genereated GLX code easier.
Eliminate the need for indirect_wrap.h and NEED_GL_FUNCS_WRAPPED.
Basically, this means prepending __indirect_ to all the definitions and
calls of GL functions that don't already have it.
2004-12-01 08:02:50 +00:00
Ian Romanick 249a5552f1 Make the transition to script-genereated GLX code easier.
Convert GL_ARB_texture_compression related functions to use the extension
version of the names instead of the GL 1.3 versions.
2004-12-01 07:34:25 +00:00
Ian Romanick fc43857cc9 Add trivial support ARB_texture_rectangle and OES_read_format. 2004-12-01 00:20:22 +00:00
Ian Romanick 05f4a2b92d Missed GL_OES_read_format_bit in last commit. 2004-12-01 00:18:01 +00:00
Ian Romanick f1f18cd1b8 Since we know the problem with HP_occlusion_test is / was on the server-side,
re-enable the extension on the client-side.
2004-11-30 23:29:51 +00:00
Brian Paul 55656a53d4 added __glXFindDRIScreen to glXGetProcAddress (bug 1068879) 2004-11-29 17:26:19 +00:00
Adam Jackson ad919c30df Sync with Xorg head: mingw build fixes from Alexander Gottwald. 2004-11-15 15:31:32 +00:00
Adam Jackson 473fe6d6bf constify a few arrays. 2004-11-03 18:55:31 +00:00
Adam Jackson 5dd18e95d9 static char * -> static char [] 2004-11-03 18:55:20 +00:00
Adam Jackson 1cda832fd9 remove a -Werror from testing. 2004-10-25 22:19:43 +00:00
Adam Jackson cb3610e37c Import the GLX client side library, formerly from xc/lib/GL/glx. Build it
by adding 'glx/x11' to SRC_DIRS in your build config.
2004-10-25 21:09:16 +00:00
Dave Airlie 75672d2e94 Fix mesa solo with doublebuffered apps, the drawable index/stamp weren't
being updated properly..
2004-10-01 04:34:01 +00:00
Dave Airlie e520b72e89 Add a solo-x86 config, and make solo use the x86 glapi 2004-09-07 00:41:40 +00:00
Jon Smirl 521ebf670a Fix from Rogelio Serrano for miniglx double buffering 2004-08-09 22:14:57 +00:00
Jon Smirl dc8a7603a3 Miniglx clients now authorize with server DRM 2004-07-16 04:27:00 +00:00
Jon Smirl 1e7ce9f6f1 Convert miniglx to use xf86drm from dri/drm/libdrm instead of src/mesa/drivers/dri/dri_client 2004-07-05 23:51:48 +00:00
Jon Smirl 5500094413 Convert miniglx to use Ian's fancy new driver config code.
This removes the miniglx driver function InitContextModes().
All of the server directories were edited to remove the implementations.
2004-07-05 23:42:02 +00:00
Jon Smirl c61c7cb8e4 This should make most linux-solo drivers work again. Mainly a fix
for changing SAREA size form DRM_PAGE_SIZE to SAREA_MAX. fb driver
is still broken.
2004-06-29 04:50:29 +00:00
Jon Smirl c2bffec91a Mesa-solo builds with these changes. There are still more fixups needed to
get individual drivers working again. This converts miniglx to the new
dri interface. Thanks to Erdi Chen for the new interface code.
2004-06-26 17:16:42 +00:00
Ian Romanick 9eecb03226 Make sure mklib sees the definition of CC and CXX. Make mklib respect
the definitions of CC and CXX on Linux.  This fixed build issues with
sunos5-gcc and build issues on GCC 2.x Linux when CC and CXX are set
to a GCC 3.x compiler.
2004-06-25 22:51:39 +00:00
Jon Smirl ba3d643c49 kill __driRegisterExtensions(), none of the functions did anything 2004-06-03 01:56:07 +00:00
Eric Anholt f016e2509e Missed in last commit:
Build fixing for FreeBSD.  GNU make is installed as gmake, so make a MAKE
variable (defaults to "make") and use that.  Use the MKDEP and MKDEP_OPTIONS
more.  Our shell isn't bash, so change the instances of ">& /dev/null" to a more
compatible "> /dev/null 2>&1".
2004-06-01 00:39:34 +00:00
Eric Anholt 2fb5d15ce3 Build fixing for FreeBSD. GNU make is installed as gmake, so make a MAKE
variable (defaults to "make") and use that.  Use the MKDEP and MKDEP_OPTIONS
more.  Our shell isn't bash, so change the instances of ">& /dev/null" to a more
compatible "> /dev/null 2>&1".
2004-06-01 00:06:14 +00:00
Brian Paul 5726a238d4 remove the last line of the previous patch 2004-05-12 14:51:51 +00:00
Brian Paul 86c7541f9b fix red/green/blueBits typos 2004-05-12 14:48:39 +00:00
Brian Paul 751c9d096d obsolete in favor of regular Makefiles 2004-05-12 14:04:29 +00:00
Dave Airlie 377ced2bf1 Add agpmode to the example config file 2004-04-14 02:14:15 +00:00
Dave Airlie 5d8f7b1197 add agpmode to miniglx config file 2004-04-14 01:33:27 +00:00
Jon Smirl c0b0b48e5b Add DRM_SOURCE_PATH to make system.
Needed for linux-solo to build
2004-04-13 04:11:32 +00:00
Brian Paul 78c3edc174 don't include GL/gl.h, rely on glheader.h 2004-04-08 21:10:31 +00:00
Brian Paul bb16df1767 move 'id' declaration so it's C compliant 2004-04-08 21:10:07 +00:00
Brian Paul de0ee3187c New Makefile system 2004-03-26 15:19:11 +00:00
Brian Paul fda7215db3 rename class to c_class if using C++ (bug 922294) 2004-03-24 15:59:44 +00:00
Dave Airlie aae2fde0e6 remove version number faking, shouldn't be needed anymore 2004-03-15 23:27:33 +00:00
Jon Smirl ae4a1cc066 Adjustments to make everything use IOCTL/sarea defines in DRM instead
of glx/mini. removes glx/mini/drm.h glx/mini/sarea.h
2004-03-11 20:35:38 +00:00
Brian Paul 5102075330 change PFNGLXGETUSTPROC's argument from uint64_t to int64_t to match the DRI 2004-01-27 22:44:35 +00:00
Brian Paul 520ef4b5bc new makefiles 2003-12-12 15:33:51 +00:00
Keith Whitwell 48383f10c9 Remove $Id tag 2003-12-09 11:54:50 +00:00
Brian Paul fde2b9750e basic API work for FBConfigs & Pbuffers 2003-12-06 17:17:42 +00:00
Jon Smirl b55921db48 Fix for missing GLAPIENTRYP definition 2003-10-24 20:44:55 +00:00
Jon Smirl bcc6eddd33 Update DRI drivers to current DRI CVS and make them work. 2003-10-21 06:05:39 +00:00
Brian Paul 5fd77da4f6 improved 'clean' targets (Otto Solares) 2003-10-03 14:03:14 +00:00
Brian Paul 5df82c82bd patch to import Jon Smirl's work from Bitkeeper 2003-08-22 20:11:43 +00:00