Compare commits

...

3597 Commits

Author SHA1 Message Date
Julien Cristau
d39147a8a1 Fix FTBFS on amd64.
Set LIB_DIR and EXTRA_LIB_PATH in configs/debian-default to override
settings in configs/linux-x86-64. This fixes a FTBFS on amd64, thanks to
Marc 'HE' Brockschmidt for the report (closes: #410118).
2007-02-07 23:13:59 +01:00
Julien Cristau
7991f7e936 * Add myself to Uploaders. 2007-02-04 21:17:18 +01:00
Julien Cristau
10011efcd7 Add bug closer for #409638. 2007-02-04 17:21:57 +01:00
Julien Cristau
0058815c8f Re-add src/glut/mini/ which was deleted by mistake. 2007-02-04 15:21:46 +01:00
Julien Cristau
02048984b7 Delete directories not included in the mesa tarballs. 2007-02-04 15:15:43 +01:00
Julien Cristau
544601e9f4 Fix FTBFS on non-i386 archs.
Build architecture-independant debs in binary-indep, and use the debhelper -s
option for commands in binary-arch, because architectures other than i386
don't have to build libgl1-mesa-swx11-i686.
2007-02-04 14:05:23 +01:00
Julien Cristau
2634f06c20 Merge branch 'upstream-experimental' into debian-experimental
Conflicts:

	progs/util/README
	progs/util/glstate.c
	progs/util/glstate.h
	progs/util/sampleMakefile
	src/glu/sgi/libnurbs/interface/bezierEval.h
	src/glu/sgi/libnurbs/interface/bezierPatch.cc
	src/glu/sgi/libnurbs/interface/bezierPatch.h
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.cc
	src/glu/sgi/libnurbs/interface/bezierPatchMesh.h
	src/glu/sgi/libnurbs/interface/glcurveval.cc
	src/glu/sgi/libnurbs/interface/glimports.h
	src/glu/sgi/libnurbs/interface/glinterface.cc
	src/glu/sgi/libnurbs/interface/glrenderer.h
	src/glu/sgi/libnurbs/interface/incurveeval.cc
	src/glu/sgi/libnurbs/interface/insurfeval.cc
	src/glu/sgi/libnurbs/interface/mystdio.h
	src/glu/sgi/libnurbs/interface/mystdlib.h
	src/glu/sgi/libnurbs/internals/arc.h
	src/glu/sgi/libnurbs/internals/arcsorter.cc
	src/glu/sgi/libnurbs/internals/arcsorter.h
	src/glu/sgi/libnurbs/internals/arctess.h
	src/glu/sgi/libnurbs/internals/backend.cc
	src/glu/sgi/libnurbs/internals/backend.h
	src/glu/sgi/libnurbs/internals/basiccrveval.h
	src/glu/sgi/libnurbs/internals/basicsurfeval.h
	src/glu/sgi/libnurbs/internals/bezierarc.h
	src/glu/sgi/libnurbs/internals/bin.cc
	src/glu/sgi/libnurbs/internals/bin.h
	src/glu/sgi/libnurbs/internals/bufpool.cc
	src/glu/sgi/libnurbs/internals/bufpool.h
	src/glu/sgi/libnurbs/internals/cachingeval.cc
	src/glu/sgi/libnurbs/internals/cachingeval.h
	src/glu/sgi/libnurbs/internals/ccw.cc
	src/glu/sgi/libnurbs/internals/coveandtiler.h
	src/glu/sgi/libnurbs/internals/curve.cc
	src/glu/sgi/libnurbs/internals/curve.h
	src/glu/sgi/libnurbs/internals/curvelist.cc
	src/glu/sgi/libnurbs/internals/curvelist.h
	src/glu/sgi/libnurbs/internals/curvesub.cc
	src/glu/sgi/libnurbs/internals/dataTransform.cc
	src/glu/sgi/libnurbs/internals/dataTransform.h
	src/glu/sgi/libnurbs/internals/defines.h
	src/glu/sgi/libnurbs/internals/displaylist.cc
	src/glu/sgi/libnurbs/internals/displaylist.h
	src/glu/sgi/libnurbs/internals/displaymode.h
	src/glu/sgi/libnurbs/internals/flist.cc
	src/glu/sgi/libnurbs/internals/flist.h
	src/glu/sgi/libnurbs/internals/flistsorter.cc
	src/glu/sgi/libnurbs/internals/flistsorter.h
	src/glu/sgi/libnurbs/internals/gridline.h
	src/glu/sgi/libnurbs/internals/gridtrimvertex.h
	src/glu/sgi/libnurbs/internals/gridvertex.h
	src/glu/sgi/libnurbs/internals/hull.cc
	src/glu/sgi/libnurbs/internals/hull.h
	src/glu/sgi/libnurbs/internals/intersect.cc
	src/glu/sgi/libnurbs/internals/jarcloc.h
	src/glu/sgi/libnurbs/internals/knotvector.h
	src/glu/sgi/libnurbs/internals/mapdesc.cc
	src/glu/sgi/libnurbs/internals/mapdesc.h
	src/glu/sgi/libnurbs/internals/mapdescv.cc
	src/glu/sgi/libnurbs/internals/maplist.cc
	src/glu/sgi/libnurbs/internals/maplist.h
	src/glu/sgi/libnurbs/internals/mesher.cc
	src/glu/sgi/libnurbs/internals/mesher.h
	src/glu/sgi/libnurbs/internals/monoTriangulationBackend.cc
	src/glu/sgi/libnurbs/internals/monotonizer.cc
	src/glu/sgi/libnurbs/internals/monotonizer.h
	src/glu/sgi/libnurbs/internals/myassert.h
	src/glu/sgi/libnurbs/internals/mycode.cc
	src/glu/sgi/libnurbs/internals/mystring.h
	src/glu/sgi/libnurbs/internals/nurbsconsts.h
	src/glu/sgi/libnurbs/internals/nurbstess.cc
	src/glu/sgi/libnurbs/internals/patch.cc
	src/glu/sgi/libnurbs/internals/patch.h
	src/glu/sgi/libnurbs/internals/patchlist.cc
	src/glu/sgi/libnurbs/internals/patchlist.h
	src/glu/sgi/libnurbs/internals/pwlarc.h
	src/glu/sgi/libnurbs/internals/quilt.cc
	src/glu/sgi/libnurbs/internals/quilt.h
	src/glu/sgi/libnurbs/internals/reader.cc
	src/glu/sgi/libnurbs/internals/reader.h
	src/glu/sgi/libnurbs/internals/renderhints.cc
	src/glu/sgi/libnurbs/internals/renderhints.h
	src/glu/sgi/libnurbs/internals/simplemath.h
	src/glu/sgi/libnurbs/internals/slicer.cc
	src/glu/sgi/libnurbs/internals/slicer.h
	src/glu/sgi/libnurbs/internals/sorter.cc
	src/glu/sgi/libnurbs/internals/sorter.h
	src/glu/sgi/libnurbs/internals/splitarcs.cc
	src/glu/sgi/libnurbs/internals/subdivider.h
	src/glu/sgi/libnurbs/internals/tobezier.cc
	src/glu/sgi/libnurbs/internals/trimline.cc
	src/glu/sgi/libnurbs/internals/trimline.h
	src/glu/sgi/libnurbs/internals/trimregion.cc
	src/glu/sgi/libnurbs/internals/trimregion.h
	src/glu/sgi/libnurbs/internals/trimvertex.h
	src/glu/sgi/libnurbs/internals/trimvertpool.cc
	src/glu/sgi/libnurbs/internals/trimvertpool.h
	src/glu/sgi/libnurbs/internals/types.h
	src/glu/sgi/libnurbs/internals/uarray.cc
	src/glu/sgi/libnurbs/internals/uarray.h
	src/glu/sgi/libnurbs/internals/varray.cc
	src/glu/sgi/libnurbs/internals/varray.h
	src/glu/sgi/libnurbs/nurbtess/definitions.h
	src/glu/sgi/libnurbs/nurbtess/directedLine.h
	src/glu/sgi/libnurbs/nurbtess/glimports.h
	src/glu/sgi/libnurbs/nurbtess/gridWrap.cc
	src/glu/sgi/libnurbs/nurbtess/gridWrap.h
	src/glu/sgi/libnurbs/nurbtess/monoChain.cc
	src/glu/sgi/libnurbs/nurbtess/monoChain.h
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.cc
	src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h
	src/glu/sgi/libnurbs/nurbtess/mystdio.h
	src/glu/sgi/libnurbs/nurbtess/mystdlib.h
	src/glu/sgi/libnurbs/nurbtess/partitionX.cc
	src/glu/sgi/libnurbs/nurbtess/partitionX.h
	src/glu/sgi/libnurbs/nurbtess/partitionY.cc
	src/glu/sgi/libnurbs/nurbtess/partitionY.h
	src/glu/sgi/libnurbs/nurbtess/polyDBG.h
	src/glu/sgi/libnurbs/nurbtess/polyUtil.cc
	src/glu/sgi/libnurbs/nurbtess/polyUtil.h
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.cc
	src/glu/sgi/libnurbs/nurbtess/primitiveStream.h
	src/glu/sgi/libnurbs/nurbtess/quicksort.cc
	src/glu/sgi/libnurbs/nurbtess/quicksort.h
	src/glu/sgi/libnurbs/nurbtess/rectBlock.cc
	src/glu/sgi/libnurbs/nurbtess/rectBlock.h
	src/glu/sgi/libnurbs/nurbtess/sampleComp.cc
	src/glu/sgi/libnurbs/nurbtess/sampleComp.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.cc
	src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.cc
	src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h
	src/glu/sgi/libnurbs/nurbtess/sampledLine.cc
	src/glu/sgi/libnurbs/nurbtess/sampledLine.h
	src/glu/sgi/libnurbs/nurbtess/searchTree.cc
	src/glu/sgi/libnurbs/nurbtess/searchTree.h
	src/glu/sgi/libnurbs/nurbtess/zlassert.h
	src/glu/sgi/libtess/README
	src/glu/sgi/libtess/alg-outline
	src/glu/sgi/libtess/dict-list.h
	src/glu/sgi/libtess/dict.c
	src/glu/sgi/libtess/dict.h
	src/glu/sgi/libtess/geom.c
	src/glu/sgi/libtess/memalloc.c
	src/glu/sgi/libtess/memalloc.h
	src/glu/sgi/libtess/mesh.c
	src/glu/sgi/libtess/mesh.h
	src/glu/sgi/libtess/normal.h
	src/glu/sgi/libtess/priorityq-heap.c
	src/glu/sgi/libtess/priorityq-heap.h
	src/glu/sgi/libtess/priorityq-sort.h
	src/glu/sgi/libtess/priorityq.c
	src/glu/sgi/libtess/priorityq.h
	src/glu/sgi/libtess/render.c
	src/glu/sgi/libtess/render.h
	src/glu/sgi/libtess/sweep.h
	src/glu/sgi/libtess/tess.h
	src/glu/sgi/libtess/tessmono.c
	src/glu/sgi/libtess/tessmono.h
	src/glu/sgi/libutil/error.c
	src/glu/sgi/libutil/glue.c
	src/glu/sgi/libutil/gluint.h
	src/glu/sgi/libutil/project.c
	src/glu/sgi/libutil/registry.c
2007-02-01 11:50:36 +01:00
Julien Cristau
7549426a16 Sync Section and Priority for all packages with the override. 2007-01-28 18:18:38 +01:00
Thierry Reding
6dcb9a3434 Give credit where credit is due. 2007-01-11 15:09:23 +01:00
Thierry Reding
e5a31c00ec libosmesa6{,-dev} replace libgl1-mesa-swx11{,-dev} and mesa-common-dev.
libosmesa6 and libosmesa6-dev are now the only packages to contain OSMesa
libraries and header files so they can be installed independent of which libGL
is installed. They statically link in the software rasterization code.
2007-01-11 15:06:42 +01:00
Thierry Reding
00295242fd mesa-common-dev needs to replace libgl1-mesa-swx11-dev and libgl1-mesa-dev.
The GLX headers were previously shipped in both packages and have been moved
to mesa-common-dev.
2007-01-11 14:56:48 +01:00
Thierry Reding
21b6ed7c29 Build the DRI modules with the default optimization flags. 2007-01-11 14:40:10 +01:00
Thierry Reding
01894cbf10 Revert the previous changes to the libgl1-mesa-{glx,swx11} shlibs. 2007-01-10 15:23:29 +01:00
Thierry Reding
28cad2b9d9 Bump libgl1-mesa-glx, libgl1-mesa-swx11 and libosmesa6 shlibs files. 2007-01-10 13:55:19 +01:00
Thierry Reding
71d7b7dbe7 Drop noop line. 2007-01-08 13:36:25 +01:00
Thierry Reding
4563723db1 Make sure all files in the mesa-swx11-source package have permissions 0644. 2007-01-08 13:36:16 +01:00
Thierry Reding
0bce6a1899 Compile with -O2 optimization instead of -O3 which might lead to problems. 2007-01-08 11:43:25 +01:00
Thierry Reding
e71d6dbd9c Make debugging symbol packages depend on the corresponding binary package and
put them into the libdevel section.
2007-01-08 11:41:02 +01:00
Thierry Reding
132ecd19f3 Do not build any linux*-static configuration with -fPIC. 2007-01-08 10:07:08 +01:00
Thierry Reding
a404143f4c Add patches 04_cleanup-osmesa-configs and 05_static-nonpic.
04_cleanup-osmesa-configs makes the OSMesa configurations behave as expected.
That is respect the OPT_FLAGS, PIC_FLAGS, ARCH_FLAGS and DEFINES variables.
The patch also makes the files more consistent by inheriting from more general
configurations.

05_static-nonpic fixes the linux-static configuration to not use -fPIC for
compiling code because it would violate Debian policy.
2007-01-08 08:35:42 +01:00
Julien Cristau
44467ca45e * Drop obsolete depends on xlibs. 2007-01-05 15:44:51 +01:00
Julien Cristau
f70ea0747d Import changelog entry from the 6.5.1-0.5 NMU. 2007-01-04 21:30:49 +01:00
Thierry Reding
c619abf18a Hijack the package (set XSF as maintainer, add myself to uploaders). \o/ 2007-01-04 16:35:14 +01:00
Thierry Reding
6eeb18fc68 Build the i915tex DRI module on the i386 and amd64 architectures. 2006-12-05 00:45:42 +00:00
Thierry Reding
01c90575b4 Add missing changelog entry and bug closer. 2006-12-04 07:23:14 +00:00
Thierry Reding
32e9cb0275 Update to new upstream release (6.5.2). 2006-12-02 23:46:07 +00:00
Brian Paul
eb667b979b remove directfbgl.h file 2006-12-02 18:20:53 +00:00
Brian Paul
b98c1e4a4b remove bogus link 2006-12-02 18:18:55 +00:00
Brian Paul
f10acf8b78 6.5.2 release updates 2006-12-02 18:18:41 +00:00
Gary Wong
50a81669ba Add i915tex and i965. 2006-12-02 02:20:05 +00:00
Gary Wong
7a43a6b4ff Structure CopyPixels similarly to i915 do_texture_copypixels, to ease future unification. 2006-12-02 01:13:06 +00:00
Claudio Ciccani
e99d6746ed Be aware that the surface storage can change between locks. 2006-12-01 20:58:26 +00:00
Claudio Ciccani
73fdecca9f Remove DirectFBGL header from Mesa bacause since 1.0.0 DirectFB installs its own header.
Updated to the current DirectFBGL interface (i.e. added GetProcAddress()).
2006-12-01 14:12:05 +00:00
Thomas Hellström
682393944c Fix an infinite loop error that may occur when many contexts are bound
to the same drawable in a multithreading environment. This one slipped out
of the texman merge.
2006-12-01 12:41:43 +00:00
Claudio Ciccani
40dc5902d3 Fixed compilation errors/warnings.
Duplicate destination surface to avoid saving/restoring the rendering state during each Clear.
2006-12-01 11:42:58 +00:00
Thierry Reding
017bade93c Update to latest upstream release candidate (6.5.2 RC3). 2006-12-01 00:16:33 +00:00
Sean D'Epagnier
10cbd089ae the following improvements to linux-fbdev:
1. updated makefiles to build libOSMesa as well as libGL

these are improvements to fbdev-glut
1. mouse cursor will timeout and be invisible if not being used
2. do not restore colormaps to truecolor targets, this causes problems at
   exit on my g450
3. fixed a crash when cleaning up from failure by munmaping what had not
   yet been mmaped
4. Resize event handling is improved, the resize function is not invoked
   from a signal handler now.
5. The main loop can detect if it is running very fast (greater than 2khz)
6. keyboard up and special up events are generated from stdin input mode
   and if it is also not redrawing, it sleeps
7. corrections in escape sequences for function keys for stdin input
2006-11-30 03:25:28 +00:00
Roland Scheidegger
21cf414489 fix mixed conventional / generic vertex arrays which caused a wrong array order leading to very bogus rendering (for instance WoW intro screen mentioned in #8250). 2006-11-30 00:52:54 +00:00
Roland Scheidegger
e731d8aafa check for target instead of program->Target in _tnl_program_string, avoids segfault if program is NULL 2006-11-29 22:16:16 +00:00
Roland Scheidegger
ac8620f375 fix a bug in the sanity code when outputting vertex progs 2006-11-29 19:18:50 +00:00
Thierry Reding
c9c79e7cae Add manpages to the mesa-utils package. 2006-11-29 18:07:26 +00:00
Roland Scheidegger
5785e328e0 call Driver.ProgramStringNotify if a ati_fragment_shader changes and pick up the change in the r200 driver accordingly. 2006-11-29 16:41:28 +00:00
Eric Anholt
3cd06cf8c5 Add accelerated CopyPixels for non-overlapping, 1:1 blits.
Submitted by Gary Wong <gtw@gnu.org>
2006-11-29 01:16:12 +00:00
Brian Paul
716091a6a0 indent, comments, etc 2006-11-28 15:46:50 +00:00
Dave Airlie
c058f69daa add support to miniglx for updating drawables ..
requires hacks to DRM to remove MASTER from UPDATE_DRAW and ADD_DRAW
2006-11-28 04:50:54 +00:00
Dave Airlie
4a6f47c23b Update miniglx support for new memory manager 2006-11-28 04:50:07 +00:00
Brian Paul
d9a8cc430d comments 2006-11-27 17:48:59 +00:00
Brian Paul
c0815bc01f remove assertions to match i915tex code (bug 8726) 2006-11-27 17:40:07 +00:00
Brian Paul
744c3a367b get rid of meaningless XFree86LOADER test (bug 9144) 2006-11-27 16:50:10 +00:00
Brian Paul
3e6ef125f0 replace check for XFree86LOADER and IN_MODULE with XFree86Server (bug 9144) 2006-11-27 16:33:43 +00:00
Tilman Sauerbeck
85365e6aa4 Bug #6044: actually delete the texture object in mgaDeleteTexture 2006-11-26 09:39:21 +00:00
Thierry Reding
777d41dd07 Mark the latest changelog entries as NMUs. 2006-11-26 02:40:01 +00:00
Thierry Reding
6238c30913 Revert maintainer and uploaders fields. Integrate latest NMUs into the
changelog and be a little more verbose in the debian/rules rewrite
changelog entries.
2006-11-26 02:38:31 +00:00
Brian Paul
16e7ca9d72 call slang_variable_construct() inside slang_variable_scope_grow() 2006-11-24 19:21:42 +00:00
Brian Paul
e49d06e619 new slang_variable_scope_grow() function 2006-11-24 19:01:14 +00:00
Brian Paul
d4c4bdfa1e const correctness, clean-ups 2006-11-23 16:56:55 +00:00
Brian Paul
f6ed86a1a5 indent 2006-11-23 16:52:18 +00:00
Brian Paul
308b85f29f fix several program-related bugs (bug 9136) 2006-11-23 15:58:30 +00:00
Keith Whitwell
897b9c5cb2 Haihao Xiang's edgeflag patch. 2006-11-23 10:13:22 +00:00
Keith Whitwell
c4649208f0 Haihao Xiang's pointsize initialization patch. 2006-11-23 10:12:05 +00:00
Dave Airlie
50b3f5654e realign some of the i830 code from the i915 2006-11-23 01:12:41 +00:00
Brian Paul
17e97ea869 fix typo 2006-11-23 00:44:14 +00:00
Brian Paul
ba02b07c75 fix indirect glMap* bugs 2006-11-23 00:43:23 +00:00
Brian Paul
14c427573e s/ource/source/ 2006-11-23 00:42:25 +00:00
Brian Paul
d426c13e46 move comments 2006-11-23 00:41:44 +00:00
Brian Paul
dfc98c0bec indent 2006-11-23 00:38:50 +00:00
Dave Airlie
d98e1f3761 fixup draw/depth region handling in i830 along lines of i915 2006-11-23 00:09:16 +00:00
Brian Paul
6ab6518735 clean-up, comments 2006-11-23 00:09:00 +00:00
Brian Paul
0cb0a04eca indent 2006-11-22 23:58:47 +00:00
Roland Scheidegger
46e454863e decrease the current vertex count by 1 if an uneven number of vertices is copied by _tnl_copy_vertices. Otherwise, since in this case it will copy an extra vertex to avoid problems with vertex order in the new buffer, one triangle will be drawn twice. This fixes bug #9062. 2006-11-22 22:07:35 +00:00
Brian Paul
40c7cb7e17 const correctness 2006-11-22 21:59:28 +00:00
Brian Paul
98ea0a3f1f new comments 2006-11-22 21:49:14 +00:00
Brian Paul
f9f4625367 clean-up, comments 2006-11-22 21:34:47 +00:00
Brian Paul
958a8af3b0 reindent 2006-11-22 21:34:30 +00:00
Brian Paul
982ceb6773 fix comments 2006-11-22 21:33:44 +00:00
Thierry Reding
db164ab514 Update to latest upstream release candidate. 2006-11-22 19:50:34 +00:00
Thierry Reding
c72ef17731 Add libOSMesa16 and libOSMesa32 entries to libosmesa6.shlibs so packages
linking against those libraries will get the correct dependencies.
2006-11-22 19:47:56 +00:00
Roland Scheidegger
22b74ff2b7 fix the gl version test 2006-11-22 19:37:21 +00:00
Ian Romanick
b0d8b13777 Add tdfx updates to release notes. 2006-11-22 19:05:20 +00:00
Roland Scheidegger
7f9afedeb5 remove unneded call to _tnl_invalidate_state() in _tnl_need_projected_coords(). Connected to bug #9103, though that bug got fixed without this change too. 2006-11-22 17:54:31 +00:00
Brian Paul
9540c9c04f GLX protocol fixes for glMap* functions (bug 8899) 2006-11-22 16:01:48 +00:00
Keith Whitwell
96c0a6de25 Prune incoming state to the atoms of interest. Hopefully this will
prevent driver-initiated statechanges in the middle of
DrawElements/DrawArrays from disturbing this code.
2006-11-22 15:27:58 +00:00
Keith Whitwell
b72fbcbe63 Another fix 2006-11-22 13:53:21 +00:00
Keith Whitwell
96228d952d Set _NEW_LIGHT when materials are present in display lists also. 2006-11-22 09:35:19 +00:00
Keith Whitwell
c8238aa0ff Move setting of _NEW_LIGHT to only occur when materials are present. 2006-11-22 09:34:55 +00:00
Roland Scheidegger
49a3ea8110 fix segfault with ATI_fs when trying to use a not enabled texture unit (bug #9110). 2006-11-21 23:37:21 +00:00
Brian Paul
8f008056b2 list header files in sources files (Dan Nicholson) 2006-11-21 16:04:22 +00:00
Keith Whitwell
f332da515c blend, logicop changes for intelEmitCopyBlit backported to i915 2006-11-21 14:43:30 +00:00
Keith Whitwell
b1c102d37b More fixes, glean seems to run now. 2006-11-21 13:22:34 +00:00
Alan Hourihane
33d2835182 Don't define as const's to avoid compiler optimization & warning. 2006-11-21 10:59:31 +00:00
Keith Whitwell
64920ed10a Fix more typos. 2006-11-21 10:50:01 +00:00
Keith Whitwell
46c04525d2 Gary Wong's patches for CopyPixels Logiop (enable) and Blend
(disallow).  Slightly cleaned to disallow on all blend states for code
consiseness and turn a table lookup into a function to match other
code in the driver.
2006-11-21 10:43:16 +00:00
Keith Whitwell
f58ec215c5 Gary Wong's fix for 64 bit cleanness of vertex program inputs bitmask. 2006-11-21 10:16:37 +00:00
Keith Whitwell
d6f89107ba Commit Gary Wong & Keith Packard's changes for bug 8867 -- adjust code
after repositioning of INDEX value in BRW_ATTRIB enum.
2006-11-21 10:11:02 +00:00
Sean D'Epagnier
0570fcfd93 Added correct include files to files,
No longer modify cmap if the device is truecolor (messes up dual monitors
	with vt switching)
2006-11-21 09:35:49 +00:00
Sean D'Epagnier
0337e5635f glTexCoord3dv was not using third coordinate 2006-11-21 08:48:44 +00:00
Rune Petersen
25e495d605 Disable fragment program debug messages. 2006-11-20 19:57:10 +00:00
Brian Paul
b24320bb30 added new 'sources' file to tarball (might not get used though) 2006-11-20 17:09:04 +00:00
Keith Whitwell
479aca6bf1 Fix typos that meant vbos were never unmapped 2006-11-20 15:15:24 +00:00
Brian Paul
7cc5522f86 fix glPopAttrib/color material bug #9091 2006-11-20 15:14:35 +00:00
Jouk Jansen
d2fc1c8384 Committing in .
Solve small definition problem for OpenVMS

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
2006-11-20 14:04:04 +00:00
Keith Whitwell
87f602dd82 Don't perform dangling attribute check on POS attribute. It can't by
definition dangle (every vertex has a position).  However
save->currentsz isn't properly maintained for this attribute, as there
is no current position value to track.  Reported by Haihao Xiang.
2006-11-20 11:45:34 +00:00
Thierry Reding
8dbee7867f Use the new upstream minstall utility to install files and directories. Using
/usr/bin/install would result in a symlink's target being copied instead of
the symlink.
2006-11-18 21:28:07 +00:00
Thierry Reding
f403108f5f Fix typo in changelog. libdrm2-dev is not a package. 2006-11-18 21:22:52 +00:00
Thierry Reding
223a97f92a Bump build-dependency on libdrm-dev (>= 2.2.0). 2006-11-18 21:21:18 +00:00
Thierry Reding
bb44a8ae1f Update to latest upstream release candidate.
Update patches.
2006-11-18 17:59:25 +00:00
Thierry Reding
b5a5062176 Target the mesa package at experimental until etch is released. 2006-11-18 17:50:44 +00:00
Brian Paul
2164cf7730 move fix-up code into new slang_fixup_save() function 2006-11-18 17:45:01 +00:00
Brian Paul
4d4373bb0f delete shader objects when destroying shared context state 2006-11-18 17:44:28 +00:00
Brian Paul
a89e063149 comments 2006-11-18 17:23:30 +00:00
Brian Paul
61068ba46b reindent 2006-11-18 17:22:44 +00:00
Brian Paul
63c119f771 additional fixes for mipmap building (Greg McGarragh) 2006-11-18 16:58:14 +00:00
Brian Paul
c478f0d25b name mangling update/fix 2006-11-18 16:44:30 +00:00
Brian Paul
bdb1c3882f need to specify Xlibs with APP_LIB_DEPS 2006-11-18 16:43:13 +00:00
Brian Paul
1e04ff1741 fix mgl name mangling problem 2006-11-18 16:40:09 +00:00
Rune Petersen
6c9cc81601 fragment.position support
World position is calculated in the vertex shader and passed to the
fragment shader via an unused texcoord.
2006-11-17 19:12:42 +00:00
Rune Petersen
0f614df797 r300_select_vertex_shader4:
Makes the vertex program output from the fragment input.
It makes the driver capable of catching output-input mismatches safely. Primarily
based on some of Aapo Tahkola's code.
2006-11-17 19:08:05 +00:00
Brian Paul
08d64dfbf6 reindent, doxygen-style comments 2006-11-17 19:06:32 +00:00
Michal Krol
83f52ffc52 Comment and indent the atom functions. 2006-11-17 18:55:34 +00:00
Brian Paul
c15f6a991d gluBuild2DMipmaps() fixes 2006-11-17 15:59:19 +00:00
Brian Paul
8f28453987 fix some gluBuild2DMipmap bugs (Greg McGarragh) 2006-11-17 15:57:31 +00:00
Brian Paul
a4806c994e add STATE_INTERNAL_DRIVER, etc (Rune Petersen) 2006-11-17 15:23:32 +00:00
Brian Paul
7984c70070 revert prev check-in 2006-11-16 23:34:02 +00:00
Brian Paul
523f5cfeb5 Add a lot of const qualifiers for const-correctness.
New comments, misc clean-ups.
2006-11-16 22:31:34 +00:00
Brian Paul
1f0c86ee35 reindent 2006-11-16 21:58:35 +00:00
Brian Paul
01a5a9afd8 remove unused imesa local var to silence warnings 2006-11-16 21:40:54 +00:00
Brian Paul
3dedeaa055 Initial implementation work for CAL, RET, and BRA instructions for fragment
programs.
2006-11-16 21:28:35 +00:00
Brian Paul
fa941e4267 disable yesterday's _mesa_add_named_constant() change for now 2006-11-16 20:59:11 +00:00
Brian Paul
cba90c17ad fix bug 9046 2006-11-16 20:58:26 +00:00
Brian Paul
f7436f4c8a regenerate from gl.h 2006-11-16 16:13:55 +00:00
Brian Paul
bb69d3af36 remove obsolete GL_MESA_trace stuff 2006-11-16 16:13:43 +00:00
Brian Paul
7438a78cf4 use LONGSTRING to silence warning 2006-11-16 16:12:10 +00:00
Brian Paul
ebe4c893f8 fix glDrawPixels(GL_COLOR_INDEX, GL_BITMAP) bug 9044 2006-11-16 14:44:23 +00:00
Keith Whitwell
b979479721 Make sure vbo's are mapped before accessing their contents in
api_arrayelt.c.  Reported by Haihao Xiang.
2006-11-16 02:33:38 +00:00
Brian Paul
82eeb62a31 reindent, clean-up 2006-11-16 00:58:44 +00:00
Brian Paul
0c6723aee5 Add a size parameter to _mesa_add_unnamed_constant() and
_mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4).
Always 4 for now...
2006-11-15 23:38:02 +00:00
Brian Paul
699a33ea77 Add new _mesa_lookup_parameter_constant() to search for a GLfloat4 constant
in a parameter list.
Use it in _mesa_add_named_constant() and _mesa_add_unnamed_constant() to
avoid duplication of identical constants.
2006-11-15 23:19:52 +00:00
Brian Paul
408e01b939 reindent, add some comments 2006-11-15 21:52:20 +00:00
Brian Paul
4a12160e8f reindent 2006-11-15 21:41:24 +00:00
Brian Paul
adbbf94fa4 indent, comments 2006-11-15 21:39:57 +00:00
Brian Paul
2d376a61f0 s/int/GLboolean/ 2006-11-15 21:39:32 +00:00
Brian Paul
82a9ba92b4 improved error mesages 2006-11-15 21:38:26 +00:00
Brian Paul
7c279f4dd7 fix casts to silence warnings 2006-11-15 21:35:06 +00:00
Brian Paul
11a54c38f7 #define LONGSTRING __extension__ in imports.h and use it to silence gcc
warnings about long string literals.
2006-11-15 19:54:25 +00:00
Brian Paul
12e710c850 Comments for operations. 2006-11-15 18:56:48 +00:00
Jerome Glisse
8f6a50a49c Remove use of GetBufferSize (depreciated). 2006-11-15 17:45:05 +00:00
Brian Paul
222930461f more bug fixes 2006-11-15 14:59:05 +00:00
Keith Whitwell
6cc5a82206 Make sure RENDER_FINISH is called on the zero pixel case. Reported by
Haihao Xiang.
2006-11-14 14:22:43 +00:00
Ian Romanick
efa91b9a8f Enable GLX_SGI_make_current_read for tdfx.
Implement GLX_SGI_make_current_read for tdfx.  Remove annoying debug
printf in tdfxSwapBuffers.  Updated a comment in drirenderbuffer.h to
note that the tdfx driver uses a flag that was previously only used by
s3v.

This code was tested with glxgears, wincopy, and manywin.
2006-11-14 00:10:34 +00:00
Ian Romanick
0b69e4837e Clean-up compiler warnings. 2006-11-13 23:34:35 +00:00
Ian Romanick
37ce9b30e9 Implement GL_ARB_occlusion_query.
Based on the old code that implemented GL_HP_occlusion_test, implement
GL_ARB_occlusion_query.  This code passes progs/demo/arbocclude.
2006-11-13 22:54:43 +00:00
Ian Romanick
ce526de6ff tdfxDDWriteDepthPixels can be called with mask == NULL.
Via depth_test_pixels (swrast/s_depth.c), tdfxDDWriteDepthPixels can
be called with mask == NULL.  Test for this condition in the places
where mask might be dereference.  This matches the behavior of several
other functions in this file with a 'const GLubyte mask[]' parameter.
2006-11-13 22:51:11 +00:00
Ian Romanick
038bd400e2 Major clean-up of tdfxDDGetString. 2006-11-13 21:53:04 +00:00
Ian Romanick
7fbe6a5c51 Eliminate use of deprecated GetBufferSize interface. 2006-11-13 21:21:40 +00:00
Ian Romanick
e7ad10587a Fix "3D driver claims to not support visual ..." warnings.
In 16-bit color modes the 3D driver was erroneously creating fbconfigs
with 16-bits of accumulation alpha.  Since the 2D driver always
generates modes with zero bits of alpha, the lists of fbconfigs did
not match and warnings were generated by libGL.
2006-11-13 20:54:51 +00:00
Ian Romanick
466d4a1dd0 Added information about added GLX_SGI_make_current_read support 2006-11-10 21:11:39 +00:00
Ian Romanick
ded5517bd5 Bump driver date. 2006-11-10 21:06:23 +00:00
Ian Romanick
5c38472152 Refactor savageXMesaSet{Back,Front}ClipRects.
Refactor savageXMesaSetBackClipRects and savageXMesaSetFrontClipRects
into a single new routine called savageXMesaSetClipRects.  This allows
a few cleanups in the code.
2006-11-10 18:57:30 +00:00
Ian Romanick
6e2c952537 Enable GLX_SGI_make_current_read.
Eliminate use of deprecated GetBufferSize interface.  Keep framebuffer
state associated with the read-drawable and the draw-drawable up to
date.

Tested with progs/demos/wincopy.
2006-11-10 18:47:22 +00:00
Brian Paul
0a3a1c6ae9 fix -noprefix option for Solaris (bug 7722) 2006-11-10 12:47:56 +00:00
Thierry Reding
50faa32ce3 Move the code to choose which configurations to build to a separate script in
order to keep debian/rules cleaner.
2006-11-10 09:00:00 +00:00
Thierry Reding
b6caed527c Also add release notes of version 6.5.1 and the release notes index. 2006-11-10 08:50:35 +00:00
Thierry Reding
d5ef77353b Build Mesa utility programs (glxdemo, glxgears, glxheads, glxinfo) together
with the DRI/GLX-enabled libGL. Don't build the utilities on CPU-optimized
configurations.
2006-11-10 08:40:03 +00:00
Dave Airlie
2862316309 Fix up texture compression at least Get and TexImage, not too sure about
how to fix SubTexImage with compressed textures
2006-11-10 00:32:35 +00:00
Ian Romanick
d7815f5913 Implement GLX_SGI_make_current_read
Discontinue use of the old GetBuffeSize interface.  Track both the
current read-drawable and the current draw-drawable.  After moving
some context state to via_rednerbuffer, GLX_SGI_make_current_read can
be enabled.

The extension works, but the wincopy test prodcues a black window for
the destination window.  After messing around with the window and
looking at the code, I believe the problem is in the handling of
buffer swap requests on a drawable that isn't the current draw-drawable.
2006-11-10 00:14:30 +00:00
Ian Romanick
3ce4adaa8f Remove unnecessary setting of GetBufferSize to NULL. 2006-11-09 22:28:09 +00:00
Adam Jackson
c6f1d4c3a0 Fix some && (logical) that should clearly have been & (bitwise). 2006-11-09 20:47:22 +00:00
Dave Airlie
4bb39f5899 remove drm stuff from libGL, this is now in libdrm 2.3.0 2006-11-08 22:25:52 +00:00
Roland Scheidegger
0ddd50c8ae fix vp lockups due to incorrectly set up / emitted attrib inputs. 2006-11-05 23:13:19 +00:00
Roland Scheidegger
aee30f3f9d fix using VERT_ATTRIB_WEIGHT instead of VERT_BIT_WEIGHT when assigning vp inputs. 2006-11-05 22:21:11 +00:00
Brian Paul
831d13bc42 reindent 2006-11-05 15:30:41 +00:00
Jerome Glisse
e330a69ee5 Add sin instruction to fragment program.
There is a bug somewhere in fragment program.
tri-cos and tri-sin show the bug. Also we
should not emit multiple time the same constant.
for sin,cos,lit have to fix that.
2006-11-05 00:47:27 +00:00
Jerome Glisse
0056ea5417 Add cos instruction and remove left over debug. 2006-11-04 23:50:27 +00:00
Brian Paul
120584a1e6 Fix for glGetVertexAttribfvNV, bug 8883 2006-11-04 17:31:45 +00:00
Brian Paul
adf3a64b03 fix error msg 2006-11-04 17:31:21 +00:00
Brian Paul
590b557b10 fix for glGetVertexAttribfvARB, bug 8883 2006-11-04 17:28:38 +00:00
Brian Paul
64d952c92c #define _glapi_Dispatch _mglapi_Dispatch when USE_MGL_NAMESPACE is set. 2006-11-03 23:43:14 +00:00
Brian Paul
c9365b7ca4 Fix _mesa_IsProgram() and _mesa_IsShader() 2006-11-03 23:32:30 +00:00
Brian Paul
2fbaddfa69 check for USE_MGL_NAMESPACE 2006-11-03 23:28:36 +00:00
Brian Paul
d2f80777e8 implement _mesa_GetShaderiv() 2006-11-03 22:23:47 +00:00
Brian Paul
3bef600024 implement _mesa_GetProgramiv() 2006-11-03 22:15:43 +00:00
Brian Paul
7e6701cef1 Simplify GET_CURRENT_LINKED_PROGRAM() macro and calling code. 2006-11-03 21:51:58 +00:00
Brian Paul
2659ee9dfb Use inlined uniform() helper function in all the glUniform*() function to
reduce duplicated code.
Finish up _program_ReadUniform() for non-float types.
Implement _mesa_GetUniformivARB().
Simplify the _program_WriteUniform() function a bit.
2006-11-03 21:30:16 +00:00
Brian Paul
c64a062918 plug in 2.0, 2.1 functions 2006-11-03 20:25:44 +00:00
Brian Paul
39cc8e8a06 Added OpenGL 2.1 entrypoints. 2006-11-03 20:20:28 +00:00
Brian Paul
33748aaad8 Set DO_DEBUG=0 2006-11-03 19:55:01 +00:00
Brian Paul
3c1ce571ed only enabled memcpy timing if DO_DEBUG=1 2006-11-03 19:54:40 +00:00
Brian Paul
d00ef005fe replace CONFIG_H with MESA_CONFIG_H_INCLUDED 2006-11-03 18:35:52 +00:00
Brian Paul
9e4a06a482 added 1.3/1.4 function mangling 2006-11-03 18:29:39 +00:00
Brian Paul
07bec141ac assorted updates for 6.5.2 2006-11-03 17:43:20 +00:00
Brian Paul
bdb251bcbf Added OpenGL 2.1 glUniformMatrix* functions.
Refactor the _mesa_UniformMatrix() functions to use a helper function.
Implement GetUniformfv function (might need more work someday).
2006-11-03 17:29:31 +00:00
Brian Paul
e90e827824 reformat comments in Doxygen style 2006-11-03 17:18:05 +00:00
Brian Paul
4d5744e66d reindent 2006-11-03 16:50:22 +00:00
Brian Paul
61fd687c74 Minor changes to get ready for OpenGL 2.1. 2006-11-03 15:18:17 +00:00
Roland Scheidegger
029d18cd3d enable generic arrays for r200 hw vertex programs by assigning unused color and texture inputs to them. Not widely tested yet. This should eliminate all fallbacks due to vertex programs, except writes to back facing colors, or when exceeding a hw limit (12 temps, 12 attribs etc.). 2006-11-03 12:48:18 +00:00
Roland Scheidegger
e7b71f6919 remove setting some driver funcs explicitly to NULL, as they are no longer set up later. Thix fixes a segfault in _mesa_Bitmap(). 2006-11-03 02:07:34 +00:00
Brian Paul
4b43054c4b added fsligght 2006-11-03 00:16:12 +00:00
Brian Paul
24ea2c2cef yet another deriviative of the fplight.c demo for OpenGL 2.0 shading language 2006-11-03 00:04:06 +00:00
Brian Paul
83a5c2bf63 Update gl_API.xml with OpenGL 2.0 functions, regenerate derived files. 2006-11-02 23:58:27 +00:00
Brian Paul
7a28779b2e minor change in _mesa_ResizeBuffersMESA() 2006-11-02 23:56:08 +00:00
Brian Paul
fc69beecb6 include utils.h to silence warning 2006-11-02 23:43:22 +00:00
Brian Paul
ce55bbe9ef s/GLuint/int/ to silence warnings 2006-11-02 23:41:37 +00:00
Brian Paul
7941474a21 casting, type changes to silence warnings 2006-11-02 23:40:24 +00:00
Brian Paul
15193e78c9 s/GLint/GLuint/ to fix sign warnings 2006-11-02 23:34:02 +00:00
Brian Paul
071db86299 fix typo, silence warnings 2006-11-02 23:29:03 +00:00
Brian Paul
dd0830228b Fix GL_EXT_packed_depth_stencil crash, but shadowtex still broken 2006-11-02 23:16:18 +00:00
Brian Paul
05267501af comment about a valgrind error 2006-11-02 22:56:27 +00:00
Brian Paul
71f71c2c8a s/GLchan/GLubyte/ in debug code 2006-11-02 22:55:59 +00:00
Brian Paul
959571f835 init SecondaryRasterColor 2006-11-02 22:54:18 +00:00
Brian Paul
e441427f40 Added GL_STENCIL_BACK_WRITEMASK 2006-11-02 22:53:32 +00:00
Brian Paul
af864bb0da check for shader extensions for OpenGL 2.0 2006-11-02 22:40:43 +00:00
Brian Paul
e812081253 Undo some of yesterday's ATI_separate_stencil changes. The ATI extension
doesn't exactly match OpenGL 2.0.
2006-11-02 22:39:29 +00:00
Brian Paul
d78f65cd6c Fix fragment program fog problems found with Glean.
1. add PROGRAM_CONSTANT to switch() in src_vector().
2. use _mesa_append_fog_code() to handle fog options in i915ProgramStringNotify().
3. Re-enable some vertex attribute emit code that was previously disabled in i915ValidateFragmentProgram().
2006-11-02 21:43:06 +00:00
Brian Paul
67a101759e Call _mesa_problem() from i915_program_error() so we get a nice error message. 2006-11-02 21:39:20 +00:00
Thierry Reding
336beba81b Update Debian changelog. 2006-11-02 21:20:33 +00:00
Thierry Reding
5d23a7905c Add code to provide a mesa-utils package since those utilities are shipped in
the MesaDemos tarball.
2006-11-02 21:05:29 +00:00
Jerome Glisse
b6c2a6a0f2 Add requested size to r300RefillCurrentDmaRegion.
This way we no longuer have the fixed RADEON_BUFFER_SIZE.
Anyway function calling AllocDmaRegion should check if this
succeed and fail gracefuly if not (see bug 8348).
2006-11-02 20:02:26 +00:00
Brian Paul
94249ca333 remove GetBufferSize = NULL; assignment 2006-11-02 19:23:41 +00:00
Brian Paul
df5edb21f8 Fixes Glean vertex/fragment test failures. Those tests never called
glViewport so the viewport was 0 by 0 pixels.
2006-11-02 19:18:09 +00:00
Brian Paul
c97bc619d6 remove GetBufferSize code 2006-11-02 19:16:08 +00:00
Brian Paul
6f676f4871 always load frag prog state params for now (see comments) 2006-11-02 18:35:19 +00:00
Brian Paul
51b115d5ae remove unneeded extern declaration of lockMutex 2006-11-02 18:15:26 +00:00
Brian Paul
29ed894633 bump driver date 2006-11-02 18:13:40 +00:00
Brian Paul
7a9c7c1133 Use RGBA_LOGICOP_ENABLED() instead of ctx->Color._LogicOpEnabled since we often
need to check for this condition before the later field has been computed.
Fixes logicop bug #8860.
2006-11-02 17:51:04 +00:00
Brian Paul
abc73d9cba new RGBA_LOGICOP_ENABLED() macro 2006-11-02 17:49:47 +00:00
Brian Paul
12fe1b3a58 s/_mesa_IsProgram2/_mesa_IsProgram/ 2006-11-02 16:21:04 +00:00
Brian Paul
f49c0d0dfb Rename _mesa_IsProgram() to _mesa_IsProgramARB() to avoid collision with the
OpenGL 2.0 function of the same name.
2006-11-02 16:20:29 +00:00
Brian Paul
f961d394e3 OpenGL 2.0 entrypoints 2006-11-02 16:11:31 +00:00
Brian Paul
e71e4c9e47 run indent on the code 2006-11-02 16:09:10 +00:00
Brian Paul
036173e0d8 test OpenGL 2.0 stencil funcs 2006-11-02 15:47:30 +00:00
Brian Paul
467c773f79 Add ATI_separate_stencil and use it in preference to EXT_stencil_two_side
since the former is what's used for OpenGL 2.0.
2006-11-02 00:41:40 +00:00
Brian Paul
faba58c447 update _mesa_select_tex_image() and _mesa_get_tex_image() 2006-11-01 22:28:54 +00:00
Brian Paul
92c99bc51b update comments 2006-11-01 20:48:00 +00:00
Brian Paul
a5676795cf Remove x/y/width/height parameters from Clear functions. 2006-11-01 19:35:22 +00:00
Brian Paul
533e5a73ee comment-out unused var 2006-11-01 19:26:18 +00:00
Brian Paul
6a92324cf0 remove unused vars 2006-11-01 19:25:43 +00:00
Brian Paul
d972c86876 fix _mesa_select_tex_image() calls 2006-11-01 19:25:19 +00:00
Michal Krol
7d08e3a117 Write back gl_FragDepth to span->array->z. 2006-11-01 19:02:27 +00:00
Brian Paul
9669804fe4 Don't use the x/y/width/height params passed to Clear(). Get them
after locking.  Next: remove the params altogether.
2006-11-01 18:51:43 +00:00
Brian Paul
26b5904d70 disable debug printf 2006-11-01 18:49:41 +00:00
Brian Paul
4db0c89d25 disable debug printfs 2006-11-01 18:48:28 +00:00
Jerome Glisse
361d137587 Correct a little bug, radeon->glCtx is a pointer. 2006-11-01 16:21:14 +00:00
Jerome Glisse
8d87196c12 Remove deprecated GetBufferSize interface. 2006-11-01 16:18:08 +00:00
Brian Paul
351feae130 recent updates/fixes 2006-11-01 15:24:47 +00:00
Keith Whitwell
57f09b6e5e fix compiler warnings 2006-11-01 15:23:50 +00:00
Keith Whitwell
8665b828fe Patch from <haihao.xiang@intel.com> -- pass program string
notification callback through to tnl/ module, fixes glean crash.
2006-11-01 15:20:23 +00:00
Keith Whitwell
48e6fff3a9 merge the (rest of) texmem branch 2006-11-01 14:26:10 +00:00
Keith Whitwell
5ac93f8621 Merge texmem-0-3-branch. 2006-11-01 14:21:57 +00:00
Jerome Glisse
232a489b41 Add LIT instruction to fragment program. 2006-11-01 12:03:36 +00:00
Keith Whitwell
6b9e31f3eb Import texmem i915 driver to its new location as i915tex. 2006-11-01 12:03:11 +00:00
Jerome Glisse
3c6e99ce95 Add CMPH instruction to fragprog
CMPH a0, a1, a2 -> if a2 > 0.5 return a1 else return a0
Guessed by examinating LIT instruction handling of FGLRX.
2006-11-01 11:58:16 +00:00
Keith Whitwell
fd60b2d536 Patch from <haihao.xiang@intel.com> -- pass program string
notification callback through to tnl/ module, fixes glean crash.
2006-11-01 09:35:26 +00:00
Thierry Reding
143dfcc904 Make mesa-common-dev depend on libx11-dev to provide Xlib.h and Xutil.h needed
by the GLX headers.
2006-11-01 07:54:40 +00:00
Brian Paul
d106195ad2 change DEBUG_FRAG conditions 2006-11-01 00:14:04 +00:00
Brian Paul
e6f47d1855 fix some bugs in interpolate_specular() 2006-11-01 00:13:16 +00:00
Brian Paul
90fcf6ccc3 Added a few new ctx->Const. fields for shader-related limits. 2006-11-01 00:12:41 +00:00
Brian Paul
5050b565de make use of Parameters->StateFlags in _swrast_update_fragment_program() 2006-10-31 19:53:38 +00:00
Brian Paul
ef987aa1d7 minor clean-ups, simplifications and new comments 2006-10-31 19:53:03 +00:00
Brian Paul
7e75f51b27 fix MINGW32 problems 2006-10-31 19:14:27 +00:00
Brian Paul
4e9e0aff79 We need to call _mesa_load_state_parameters() whenever a fragment program
is enabled and we've changed any GL state that might be referenced by a
fragment program (such as state.fog.params).  Do this during swrast
validation, not in _swrast_exec_fragment_program().
2006-10-31 16:02:56 +00:00
Brian Paul
72f49657e8 signal _NEW_LIGHT in _tnl_copy_to_current() 2006-10-31 16:01:11 +00:00
Brian Paul
ecd1743a0c In TEX instructions, use precomputed lambda only if using fragment.texcoord[k]
to sample texture[k].  Use zero otherwise.  Not foolproof, but a good
compromise.
2006-10-31 14:29:01 +00:00
Brian Paul
256c96136c For TEX instructions use lambda=0. When sampling from texture unit K we
were using the partial derivatives of texcoord[K] but the coordinate used
for texture sampling may be something totally different (and texcoord[K]
might not be a real texture coord at all).  Net result was a bogus LOD is
sometimes used, often resulting in using the smallest mipmap level (a
constant color).
Just use zero for now (undef LAMBDA_ZERO to override).
Plus, some additional debug code.
2006-10-31 01:22:38 +00:00
Ian Romanick
b14bae8466 Fix bug #8799.
Properly resize bith the drawable and the readable in mgaUpdateRects.
Eliminate the use of the deprecated GetBufferSize interface.  Bump
driver date.
2006-10-30 23:44:54 +00:00
Ian Romanick
86a465412d Refactor mgaXMesaSetFrontClipRects and mgaXMesaSetBackClipRects.
Combine mgaXMesaSetFrontClipRects and mgaXMesaSetBackClipRects into a
single new function called mga_set_cliprects.  This enables a small
refactor in mgaDDDrawBuffer.
2006-10-30 22:17:39 +00:00
Ian Romanick
5af5260f3c Get DRI drawable from framebuffer object.
In the software rasterization fallbacks, get the __DRIdrawablePrivate
pointer from the driRenderbuffer that is passed in.  This eliminates
the need for the mesa_drawable pointer in MGA context structure.

This partially fixes bug #8799.  wincopy no longer produces a black
window for the destination window, but it does produce incorrect
results if the destination window is resized.
2006-10-30 22:07:00 +00:00
Brian Paul
075fae5200 code tweaks, remove old comments 2006-10-30 00:22:28 +00:00
Brian Paul
0f8405365f fix _mesa_problem() text 2006-10-30 00:13:31 +00:00
Brian Paul
a23e668d40 Move gl_vertex_program_machine struct out of mtypes.h and put into nvvertexec.h.
Massage nvvertexec.c code to work more like s_nvfragprog.c - another step
toward unifying vertex/fragment program execution.
2006-10-30 00:12:05 +00:00
Brian Paul
0781339b39 remove debug code 2006-10-30 00:07:22 +00:00
Brian Paul
e998c34647 Rather than always allocating 100 instructions, put instructions into a
temporary buffer, then copy into a malloc'd array of the correct size.
According to Glean texCombine, we never need more than 21 instructions.
2006-10-29 21:17:18 +00:00
Brian Paul
ebcedd2d89 New _mesa_exec_vertex_state_program() function. Start of some re-org. 2006-10-29 18:33:14 +00:00
Brian Paul
abb1430c79 fix wrong inequality 2006-10-29 18:14:00 +00:00
Brian Paul
d6272e0617 Change _mesa_init_instruction() to initialize an array of instructions. 2006-10-29 18:03:16 +00:00
Brian Paul
efd95c1084 Program instructions are initialized before parsing so no need to set
Abs, NegateAbs, CondMask and CondSwizzle fields to defaults here.
CondMask was getting mis-set.  Removing the incorrect assignment improves
fragment program speed by 15%.
2006-10-29 17:55:16 +00:00
Brian Paul
a90ab5290c Added PROGRAM_CONSTANT to get_register_pointer().
More DEBUG_FRAG code.
2006-10-28 23:10:17 +00:00
Brian Paul
8ed319796f special case END in _mesa_print_instruction() 2006-10-28 23:08:07 +00:00
Brian Paul
f5eea0cc7a Implement _mesa_append_fog_code() for fragment program fog options. 2006-10-28 17:14:47 +00:00
Brian Paul
db5529573f If DEBUG, check that all array indices really do fall in [start,end] in
the DrawRangeElements() call.  Warn the user if that's not true.
2006-10-26 20:54:28 +00:00
Roland Scheidegger
b55a0ab7ab remove code for inserting mvp transform into position-invariant vertex progs and instead use _mesa_insert_mvp_code(). 2006-10-26 12:09:07 +00:00
Brian Paul
fe457474d4 Previously, if a fragment program referenced fragment.fogcoord but the
program didn't use the ARB_fog_linear option, the fragment program's
fragment.fogcoord register wasn't loaded properly.
2006-10-25 23:10:14 +00:00
Roland Scheidegger
e9b923182e change some bogus comments regarding the base e exponential function used for fog in vertex programs. 2006-10-25 12:14:26 +00:00
Thierry Reding
e076cd42f0 Bug #387706 should also be closed because we move libOSMesa to libosmesa6 and
statically link in the software rasterization code.
2006-10-25 00:17:42 +00:00
Roland Scheidegger
fc606f7db9 fix (per-vertex) fog when using ARB_vp by incorporating fog factor computation into the vertex program (not yet fixed for swtnl). Simplify (and correct) the VTX_TCL_OUTPUT_VTXFMT handling when using vertex programs, turns out it's solely driven by the needs of the past-vertex stage of the pipeline, this should fix lockups with ill-specified applications using vertex programs (for instance applications enabling fog but not writing to fog coord output will now get (conformant) undefined results instead of lockups). 2006-10-24 22:37:51 +00:00
Ian Romanick
e4298b9492 Add missing call to glutInit. 2006-10-24 20:50:08 +00:00
Thierry Reding
5bed38974e Close 392715 because we now ship the contents of the three Mesa tarballs in
the original source.
2006-10-24 14:45:18 +00:00
Thierry Reding
35bc4b82ff Since the original tarball is repackaged to include the three upstream
tarballs (MesaDemos, MesaGLUT and MesaLib), remove files that are not supposed
to be there.

Note that when importing initially, some files were not even added to the SVN
repository because SVN ignored them. These were configs/diffs~ and
docs/RELNOTES-6.1~. I removed those from the tarball as well.
2006-10-24 14:33:30 +00:00
Thierry Reding
4e5d870f72 Make libosmesa6-dev binNMU-safe again (mesa-common-dev is Architecture: all). 2006-10-24 14:29:11 +00:00
Brian Paul
6340d6bf22 s/GLchan/GLubyte/ 2006-10-24 13:46:39 +00:00
Brian Paul
59e1f3ddd8 whitespace clean-up 2006-10-24 13:45:08 +00:00
Thierry Reding
83def94db5 Make libgl1-mesa-dev Architecture: all, because all we ship with it is a
symbolic link. Make it binNMU-safe by making it depend on libgl1-mesa-glx and
libgl1-mesa-dri both >= ${Source-Version} instead of exact versions.

Add packages containing debugging symbols for libgl1-mesa-swx11,
libgl1-mesa-glx and libgl1-mesa-dri.
2006-10-24 12:16:16 +00:00
Thierry Reding
9d74c1ef2a -fno-strict-aliasing actually *does* fix #394311 according to the submitter. 2006-10-24 10:31:28 +00:00
Thierry Reding
6023d4bdb5 Build with -fno-strict-aliasing, which should fix bug #394311. 2006-10-24 10:29:21 +00:00
Thierry Reding
5e38f566f2 Provide libgl-dev as alternative to the mesa-common-dev dependency of the
libosmesa6-dev package.
2006-10-23 16:45:00 +00:00
Thierry Reding
b57341a78b Move the glx*.h headers from libgl1-mesa(-swx11)-dev into mesa-common-dev
because both packages provide identical files.
2006-10-23 16:43:41 +00:00
Thierry Reding
910c32c0e9 Install the osmesa.h header in the libosmesa6-dev package where it belongs,
now that all OSMesa libraries have been split off into libosmesa6{,-dev}.

Don't make libosmesa6-dev depend on libgl1-mesa-swx11-dev anymore because it
no longer needs a libGL, only the gl.h header provided by mesa-common-dev.
2006-10-23 16:02:22 +00:00
Thierry Reding
e49456d8d8 Don't force -fPIC everywhere, because it seems only unused on x86 which we
build with assembler optimizations by default, resulting in non-PIC libraries
anyway.
2006-10-23 14:40:10 +00:00
Keith Whitwell
759facb4d8 Emit cliprects in the userspace driver as required, rather than
passing them to the kernel.  This works because all drawing commands
in the 965 driver are emitted with the lock held and the batchbuffer
is always flushed prior to releasing the lock.  This allows multiple
cliprects to be dealt with, without replaying entire batchbuffers and
redundantly re-emitting state.
2006-10-23 08:43:26 +00:00
Thierry Reding
c46becc9b3 Move the libOSMesa shlibs entry from libgl1-mesa-swx11 to libosmesa6 because
that's where libOSMesa is now installed.
2006-10-23 08:30:53 +00:00
Thierry Reding
b6e637106f Add the static libGLw and the corresponding headers to the
libgl1-mesa-swx11-dev package again.
2006-10-23 08:23:27 +00:00
Thierry Reding
787cffe3d0 Always force -fPIC. 2006-10-23 08:22:25 +00:00
Brian Paul
b9786cfaae assorted clean-ups 2006-10-22 23:21:45 +00:00
Brian Paul
49a5a09ada don't save color/z if fragment is killed 2006-10-22 22:58:42 +00:00
Brian Paul
73dd09fdd3 add minstall script to MAIN_FILES (bug 8720) 2006-10-22 22:37:30 +00:00
Brian Paul
a632128ffa minor tweaks good for about 12% faster execution 2006-10-22 22:36:24 +00:00
Brian Paul
ec9bbac7c7 silence used var warnings 2006-10-22 22:25:46 +00:00
Brian Paul
0b26e826bd Color clamping fixes. 2006-10-22 17:18:50 +00:00
Brian Paul
919cd2c3ba move/improve comments, clean up code in a few places 2006-10-21 23:21:35 +00:00
Brian Paul
ed324db249 fix another logic error in computing deferredTexture 2006-10-21 22:56:21 +00:00
Brian Paul
bb19e64d12 For deferredTexture, need to check if the fragment program/shader writes
the fragment Z.
2006-10-21 22:43:15 +00:00
Brian Paul
828d15a6e0 move interpolate_varying() call 2006-10-21 21:14:20 +00:00
Brian Paul
4676b6260f don't use params passed to Clear() 2006-10-21 21:13:40 +00:00
Brian Paul
f614a61905 Move interpolate_texcoords() and interpolate_varying() calls into shade_texture_span().
Added some INLINE hints.
2006-10-21 00:20:16 +00:00
Thierry Reding
9d914e6809 Make sure the install-source.sh script is executable before trying to run it. 2006-10-20 20:56:41 +00:00
Thierry Reding
4e183c66e9 Add comments to patches and enable the previously disabled patches. 2006-10-20 19:41:00 +00:00
Thierry Reding
b1630fcbe8 Add build-dependency on lesstif2-dev needed to build the GLw libraries. 2006-10-20 19:17:34 +00:00
Thierry Reding
cd44f730cc Enable building the GLw libraries. 2006-10-20 19:07:36 +00:00
Thierry Reding
ce5a39559e Install several documents from the docs subdirectory into the mesa-common-dev
package.
2006-10-20 17:51:36 +00:00
Thierry Reding
ccffaef603 Build architecture-specific static libraries where available. 2006-10-20 12:15:29 +00:00
Thierry Reding
ae41f3a3ee Don't make libgl1-mesa-swx11-dev depend on lesstif2-dev anymore because we
don't ship anything related to LessTif in that package.
2006-10-20 12:06:20 +00:00
Thierry Reding
c7e576d6bf No longer install the default build of libOSMesa in the libgl1-mesa-swx11
package, but in the libosmesa6 package.

Modify the 01_fix-makefile patch to not build libOSMesa on stand-alone builds,
so that it is only created when building OSMesa explicitly.

Build libOSMesa with 8 bits per color channel (the default) in dynamic and
static versions separately from the software rasterization libGL with the
software rasterization code linked in statically so that libOSMesa can run in
parallel with any libGL. This should fix the problem Yann Dirson mentioned a
while ago.

Use the install-source.sh script to install the Mesa sources needed for the
mesa-swx11-source package instead of doing it in the debian/rules file itself.
2006-10-20 07:56:11 +00:00
Thierry Reding
f069b2812e Add a set of files to enable an i686 optimized build of the DRI/GLX-enabled
libGL and the DRI drivers. Disabled for now.
2006-10-20 07:47:37 +00:00
Thierry Reding
f20ff6213e Add a shell script to install the Mesa sources for the mesa-swx11-source
package.
2006-10-20 07:45:39 +00:00
Thierry Reding
24ff74bdcb Add configurations to build static versions of the default OSMesa library.
In all Debian-specific configurations, include the Debian defaults
configuration after the Mesa configurations and drop the 'override' for all
variables because it is no longer needed.
2006-10-20 07:43:50 +00:00
Brian Paul
61c89be313 Consolidate some code into shade_texture_span().
Clean up logic for deferred texturing/shading.
2006-10-19 22:27:44 +00:00
Brian Paul
cd5a623386 fixed Fixed/Int bug 2006-10-19 22:26:29 +00:00
Brian Paul
7c76028937 remove temp code 2006-10-19 22:13:31 +00:00
Brian Paul
79b5d3e539 remove some debug/test changes 2006-10-19 20:11:15 +00:00
Brian Paul
464fcd0dd8 New bin/minstall script - a minimal replacement for 'install'.
Correctly handles symlinks so we can get rid of the COPY_LIBS stuff.
2006-10-19 20:09:05 +00:00
Brian Paul
c351858de8 fix problem when CHAN_BITS == 32 (bug 8704), remove unneeded assertion 2006-10-19 14:02:42 +00:00
Michal Krol
a79d4e75c3 Fix nonportable pointer+unsigned arithmetic. Use pointer+int. 2006-10-19 08:07:00 +00:00
Brian Paul
31293910b4 added clamp_colors(), updated assertions 2006-10-18 23:14:02 +00:00
Brian Paul
ff07d6de4c minor re-org, doxygen comments 2006-10-18 22:38:13 +00:00
Brian Paul
fee08575cd Changed install filenames to libGL* and libOSMesa* so things work on Darwin
where GL_LIB_NAME = libGL.dylib but the other library name is libGL.1.dylib
Unlike other platforms, the version number is in the middle of the name,
not at the end.
See bug 8671
2006-10-18 22:05:13 +00:00
Ian Romanick
3beaff1e3c Enable GLX_SGI_make_current_read for radeon.
Added code to track the drawable bound to the context for reading.  In
addition, when a drawable is initially bound (for reading or drawing)
or when the size of the drawable changes, update the size of the
framebuffer object that back the drawable (for software fallbacks).

Deprecate the old GetBufferSize interface.

Bump the driver date.

These changes were tested with wincopy on both direct rendering and
accelerated indirect rendering (AIGLX).
2006-10-18 20:27:11 +00:00
Brian Paul
ec99e716a2 Don't use x/y/w/h params given to Clear(). 2006-10-18 20:03:20 +00:00
Brian Paul
446972bc27 Want to stop passing x/y/width/height to Clear() function.
The coordinates need to be computed after we've got the hw lock.
Code updated to:
1. Ignore all/x/y/width/height/ params passed to Clear func.
2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
2006-10-18 20:02:42 +00:00
Brian Paul
ccb64bbb2a Don't pass x/y/width/height to ctx->Driver.Accum().
Compute the region after we've locked (and possibly updated the buffer's size).
Same thing is needed for ctx->Driver.Clear().
2006-10-18 18:35:09 +00:00
Brian Paul
4e4c0bbef7 glDrawPixels, line clipping bug fixes 2006-10-18 18:03:54 +00:00
Brian Paul
a1a0a29a5a Fix broken line clipping.
When both ends of the line were clipped, we were using the new v0 instead
of the original v0 when computing the location of the second vertex. Thus,
the second vertex's position was incorrect.
Thanks to Heath Feather for finding a test case.
2006-10-18 18:02:05 +00:00
Brian Paul
ff893a83f1 Fix a dangerous use of ASSERT in an else-clause not enclosed in braces.
We've been lucky if this hasn't been causing line rendering bugs.
2006-10-18 17:36:57 +00:00
Brian Paul
c3caaa3dd4 Always convert colors to float before running a fragment shader/program. 2006-10-17 22:23:32 +00:00
Brian Paul
32c3243e4d fix fog color bug 2006-10-17 22:22:42 +00:00
Brian Paul
c2074645cd Move struct atifs_machine into s_atifragshader.c
Add support for runtime colorbuffer types.
2006-10-17 21:12:32 +00:00
Brian Paul
e9d7190bb2 Seperate interpolate_colors() and interpolate_specular().
Fix bugs in apply_aa_coverage().
2006-10-17 20:40:22 +00:00
Brian Paul
b88af5b468 apply_aa_coverage() for ubyte/ushort/float 2006-10-17 20:22:53 +00:00
Brian Paul
0c6c8d5f1c new assertions - one of which is currently failing with arbfslight.c 2006-10-17 19:57:25 +00:00
Thierry Reding
230e79916f Merge in the old Debian changelog entries and the old copyright file. 2006-10-17 19:35:35 +00:00
Thierry Reding
9f14b4db35 Use -march in favor of the deprecated -mcpu. 2006-10-17 19:13:27 +00:00
Brian Paul
1c1c7fb361 remove obsolete intelBufferSize(), bump driver date 2006-10-17 18:54:19 +00:00
Brian Paul
42b26f688d Remove get_buffer_size()
Always check window size in XMesaMakeCurrent() in case glViewport is not
called.
2006-10-17 17:51:39 +00:00
Brian Paul
544b94e156 Lots of fixes/changes to select color depth at runtime. 2006-10-17 17:44:43 +00:00
Brian Paul
55e42e5b72 check if ctx->Driver.GetBufferSize==NULL and no-op 2006-10-17 17:43:47 +00:00
Brian Paul
af52ff0c99 include x86-64.h to silence warning 2006-10-17 17:03:21 +00:00
Brian Paul
1e3223c02a Fix CHAN_BITS=32 issues.
Save/restore array->ChanType in case colors are converted.
2006-10-17 17:03:00 +00:00
Brian Paul
8dff54e71d Added -clip option to test glCopyPixels beyond window bounds.
Clear dest window to black before copying.
Use glWindowPos2iARB().
2006-10-16 23:22:44 +00:00
Brian Paul
d40f20aebc Init _UseTexEnvProgram to fix failed assertion in i915_render_start() - this may be temporary 2006-10-16 22:02:33 +00:00
Brian Paul
16345022de Updates to intelWindowMoved():
Only need to call _mesa_resize_framebuffer() when we've detected a window
size change.
Set the drawFb->Initalized flag to GL_TRUE to avoid obsolete
Driver.GetBufferSize/ResizeBuffer calls in the Mesa code.
2006-10-16 21:39:34 +00:00
Ian Romanick
7b1ff32607 Track the currently bound read drawable and make sure its info is up
to date.
2006-10-16 20:59:53 +00:00
Ian Romanick
8c5ae80916 Fix build when DEBUG is defined but DEBUG_MATH is not.
A couple places attempted to call _math_test_all_*_functions when
DEBUG was defined.  These routines only exist when DEBUG_MATH is
defined.
2006-10-16 20:57:09 +00:00
Brian Paul
28081ae6c0 s/X86_SOURCES/ASM_SOURCES/ in ALL_SOURCES to try to fix make depend warnings (bug 8669) 2006-10-16 20:51:50 +00:00
Ian Romanick
6ae157f9e7 Fix bug #8563.
Fixes a GLX protocol problem when binding an indirect rendering context
after a direct rendering context.  In this case, the oldContetTag sent to
the server should be None, but the currectContextTag stored in the direct
rendering context (i.e., -1) was sent instead.
2006-10-16 17:50:19 +00:00
Brian Paul
041d64812e Set _NEW_BUFFERS in _mesa_resize_framebuffer(). This makes sure the swrast
module updates its state (CLIP_BIT) upon resizes.  The driver could do this
instead, but doing it here is safer.
2006-10-16 17:26:30 +00:00
Brian Paul
dc8a0d1936 remove some old code that could cause infinite recursion 2006-10-16 16:39:54 +00:00
Thierry Reding
ec916398e7 Don't install libOSMesa development files in the libgl1-mesa-swx11 package. 2006-10-16 14:43:43 +00:00
Thierry Reding
6befad112e Actually do rename debian-static to debian-swx11+glu-static. 2006-10-16 13:54:24 +00:00
Thierry Reding
55ce23b8db Beautify IEEE floating point patch. 2006-10-16 13:34:57 +00:00
Thierry Reding
1292ec1ecf Fix typo in the filename of the IEEE FP on s390 and m68k patch. 2006-10-16 13:11:51 +00:00
Thierry Reding
65a324062f Add patches extracted from older Debian diffs but not applied yet because it's
not certain yet that they are needed.
2006-10-16 13:05:42 +00:00
Thierry Reding
c9db617e0b Make the debian-static a subclass of debian-swx11+glu-default, because that's
what it actually is. Rename it accordingly and add it to SWX11_GLU_CONFIGS.

Install the libOSMesa.so symlink and the libOSMesa static library in the
libgl1-mesa-swx11-dev package.

Add .shlibs files for the libgl1-mesa-swx11, libgl1-mesa-glx and libglu1-mesa
packages.
2006-10-16 13:04:29 +00:00
Thierry Reding
b43137d0cc Build libGLU by default for swx11+glu configurations but not in the
configurations targetting specific CPU's because it is unlikely to result in
an increase in performance.
2006-10-16 11:53:06 +00:00
Thierry Reding
eeca642778 Add versioned build-dependency on dpkg-dev (>= 1.13.19) to make sure the
binary:Version and source:Version substitution variables can be used.
2006-10-16 11:49:46 +00:00
Thierry Reding
5cef6ca36a Move the detection of architecture-specific configurations to the debian/rules
file.

Add the configs target to debian/rules for checking whether the correct
configurations will be built.
2006-10-16 10:03:32 +00:00
Thierry Reding
be2b518f7b Also build a static version of libGLU. 2006-10-16 09:53:30 +00:00
Thierry Reding
1b0d29afbc Rename the CPU optimization configurations to make it clear that they only
build swx11 and GLU.

Build architecture-optimized swx11 and GLU where possible.
2006-10-16 09:39:59 +00:00
Thierry Reding
55cf480c0b Drop the libgl1-mesa-swx11-dbg package until there's a decision as to whether
it is really needed.

Allow more than one type of optimization libraries to be built for any given
architecture. Currently optimization configurations are provided for i386
[i686], alpha [ev5], amd64, powerpc [603], ppc64 and sparc [ultrasparc].
However, only i686 and amd64 are enabled for now for safety.

Add the libgl1-mesa-swx11-i686 for i686 optimized libraries.

Drop the debian-common configuration because it is no longer used.

Don't build libGLU in all configurations, only when needed.
2006-10-16 08:58:05 +00:00
Brian Paul
80fcbca7df allow >10 mipmap levels (patch by Benno Schulenberg) (bug 3130) 2006-10-15 22:30:35 +00:00
Brian Paul
cca1a27f77 regenerated to get DRI_CONF_EXCESS_MIPMAP() 2006-10-15 22:29:16 +00:00
Roland Scheidegger
97f47f771a fix handling of textures with a base internal format that does not have all four rgba values set for radeon and r200 (discovered with a modified glean pixelFormats test, noone ever noticed in over 2 years). For radeon, use hw format I8 as previously, and change tex env to make the correct default values appear for both GL_ALPHA and GL_LUMINANCE textures. For r200, which supports GL_LUMINANCE just fine, use the AL88 hw format for GL_ALPHA textures, since it seems like it's probably not worth the effort to fix up the texture environment (certainly complicated in case of ATI_fragment_shader programs). 2006-10-15 21:47:56 +00:00
Brian Paul
4d4add0972 Added #if / #else / #endif around code related to framebuffer initialization
to describe what should be changed in the drivers.
2006-10-15 19:26:43 +00:00
Brian Paul
606108ee4e updated comments, mark GetBufferSize() and ResizeBuffers() as obsolete 2006-10-15 19:20:29 +00:00
Brian Paul
694a5b81a7 minor clean-up: s/intel->driDrawable/dPriv/ 2006-10-15 19:08:11 +00:00
Brian Paul
a7a26503b6 Remove calls to _mesa_ResizeBuffersMESA() - generally replace with code to
check the current window size, then call _mesa_resize_framebuffer().
2006-10-15 18:51:22 +00:00
Brian Paul
a391384bad Remove a bunch of "ctx->Driver.function = _swrast_Function" lines since
default/fallback functions are already plugged in by the call to
_mesa_init_driver_functions().
2006-10-15 18:31:29 +00:00
Jerome Glisse
f0775c7fcc Use endianness test function provided by mesa.
Use the _mesa_little_endian helper function insted
of the MESA_BIG_ENDIAN flag. There is still place
using this flag but we need to find how to submit
16bits elements on big endian computer.
2006-10-15 18:22:28 +00:00
Brian Paul
2b6d2e4dcb Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.
This is already done by the preceeding call to _mesa_init_driver_functions()
which plugs in default functions like that.
2006-10-15 18:18:39 +00:00
Thierry Reding
84db6912f0 Add missing build-dependencies. 2006-10-15 18:02:33 +00:00
Brian Paul
b947377add increate MaxTextureLevels to 11 (bug 3130) 2006-10-15 17:57:53 +00:00
Brian Paul
a20c0f293e check if files exist before installing (Thierry Reding) 2006-10-15 16:38:09 +00:00
Thierry Reding
7495cc28a0 Only build the i810, i915, i965, sis and unichrome DRI drivers on i386 and
amd64.

Only build the ffb DRI driver on sparc.
2006-10-15 16:17:53 +00:00
Thierry Reding
87744f786b Use STAMP_DIR consistently throughout the debian/rules file.
Make the BUILD_STAMPS targets depend on patch so that when they are built
separately the patches will also be applied. Thanks to Michel Dänzer for
catching this.

Make symlinking the source tree idempotent by adding the -f option to cp.
Thanks again Michel Dänzer.
2006-10-15 14:41:12 +00:00
Thierry Reding
5bcfa4c859 Build only optimized versions of the DRI drivers, only using no optimizations
when not supported.

Add configuration to build the DRI drivers on amd64.
2006-10-15 13:30:22 +00:00
Thierry Reding
8ef731bcd1 Add a patch (00_create-libdir) that fixes the upstream build system to make
sure the LIB_DIR is created or bail out.

Update the 01_fix-makefile patch to only install libGL/libOSMesa if they
exist. Don't make installation dependent on which drivers are built.

Build optimized versions of the swx11 libraries in addition to those that
should work on the least-capable supported processor for the given
architecture.

Have most configurations include debian-default instead of debian-common so
that INSTALL_DIR is correctly defined. debian-common can probably be dropped
anyway.
2006-10-15 13:15:56 +00:00
Thierry Reding
8d02f3c68a Add patch to fix upstream build system to correctly install libOSMesa and
variants. This patch also fixes the build system not to install libGL if only
the OSMesa library is built.

Update *.install files to install more files. Pretty much everything except
debugging and optimized libraries is now built and installed.

Enable building static libraries for inclusion in the -dev packages.
2006-10-15 00:49:41 +00:00
Thierry Reding
b1f8b49e8b Add build-dependency on quilt.
Remove shlibs:Depends substitution variable from -dev packages, which doesn't
make sense.
2006-10-15 00:42:25 +00:00
Brian Paul
07fd19f572 allow specifying image size on cmd line 2006-10-14 23:24:45 +00:00
Brian Paul
9cbe0e24ac Some code movement so that the gl_framebuffer is fully initialized before
calling _mesa_make_current() to avoid hitting the initialize_framebuffer_size()
stuff in context.c
2006-10-14 23:02:26 +00:00
Brian Paul
d21fa9cd79 Big re-org of buffer size management.
All buffer resizes now handled by xmesa_check_and_update_buffer_size() which
uses the _mesa_resize_framebuffer() function.
Moved all low-level XImage/Pixmap resizing into xm_buffers.c file.
Also, update lots of comments for Doxygen.
2006-10-14 22:52:17 +00:00
Brian Paul
2b46f4b853 cut and paste error: s/Width/Height/ 2006-10-14 21:33:06 +00:00
Brian Paul
2458aba0e9 build fix: s/Table/TableUB/ 2006-10-14 20:28:36 +00:00
Thierry Reding
6e318e2cd1 Base the Debian OSMesa configurations on linux-osmesa* provided upstream.
Add a configuration for building a static version of OSMesa with 32 bits per
color channel.
2006-10-14 17:04:02 +00:00
Thierry Reding
01e6b84b14 Fix some small inconsistencies involving configuration names. 2006-10-14 16:32:25 +00:00
Thierry Reding
69705d22be Rename the debian-dri-common configuration to debian-dri-default, to make it
consistent with the naming scheme of debian-default.
2006-10-14 16:29:32 +00:00
Thierry Reding
b16d1dcff5 Add a default Debian-specific configuration which overrides settings from the
default Mesa configuration.
2006-10-14 16:28:45 +00:00
Thierry Reding
10c5b5d5ba Comment the Debian-specific configurations. 2006-10-14 16:25:30 +00:00
Thierry Reding
d9c5c170f6 Rename the -default configurations to -any, which is a more appropriate name. 2006-10-14 15:44:15 +00:00
Thierry Reding
32c7138d86 Move the debian/debian-dri configurations to debian-default/debian-dri-default
respectively, and use debian/debian-dri to choose an architecture specific
configuration.
2006-10-14 15:42:59 +00:00
Brian Paul
63f6802077 assorted clean-ups 2006-10-14 15:22:18 +00:00
Thierry Reding
d29244d872 Add OSMesa configurations and made fixed several issues here and there. 2006-10-14 15:11:31 +00:00
Thierry Reding
0fca6eda1e Initial version of a new build system for Mesa. 2006-10-14 04:33:41 +00:00
Thierry Reding
1ddf606332 Import Mesa 6.5.1 (MesaLib, MesaDemos, MesaGLUT). 2006-10-14 03:46:41 +00:00
Roland Scheidegger
cb977ae5f4 implement ARB_point_parameters and ARB_point_sprite on r200. The code is nearly the same as outlined in bug #4707, except it disables perspective correction for point sprites to make them actually work. And, separate the state atom into two as the tcl parameters would overwrite vertex program parameters when active. Also implement the GL_VERTEX_PROGRAM_POINT_SIZE_ARB option to make vertex programs outputting a point size work correctly (untested). Smooth points will still always be size 1. While here, enable gouraud shading for fog when using fog coord. 2006-10-13 22:10:05 +00:00
Brian Paul
40b88fd1f3 remove needless condition 2006-10-13 17:45:08 +00:00
Brian Paul
5b0edff412 Consolidate, move, fix code related to color index and stencil image transfer
operations (shift, offset, table lookup, etc).
2006-10-13 17:41:23 +00:00
Ian Romanick
4616513577 Fix dumb build errors.
I always build with -DGLX_USE_TLS, so I never hit these paths.  glapi.h is
required in some places because _glapi_Dispatch is declared there, but
_glapi_tls_Dispatch is declared in glthread.h.
2006-10-13 17:34:01 +00:00
Brian Paul
176501dfff In _mesa_pack_rgba_span_float() we don't need to make a temporary copy of
incoming colors when applying pixel transfer ops.  In all cases, the
caller either indicates there's no pixel transfer ops, or the incoming
colors are coming from temporary storage already and can be safely
modified.
2006-10-13 16:34:25 +00:00
Brian Paul
8a9b5518fb s/GLuint/GLbitfield/ 2006-10-13 15:11:47 +00:00
Brian Paul
bf8647a58b s/GL_FALSE/0x0/ 2006-10-13 15:10:55 +00:00
Brian Paul
6b998c5584 removed obsolete _mesa_pack_rgba_span_chan() 2006-10-13 15:00:35 +00:00
Brian Paul
c28d0f779a include glapi.h to fix broken build 2006-10-13 13:28:48 +00:00
Keith Whitwell
a2c50b0f4a Upload of interleaved arrays currently assumes that position is the
first element in the interleaved group.  Add a test to catch cases
where this isn't true and use per-array uploads instead.  Fixes compiz
glitches on x64.
2006-10-13 11:21:55 +00:00
Keith Whitwell
fd6341e574 Make sure instructions are zero'd out before use. 2006-10-13 11:20:25 +00:00
Keith Whitwell
e595ce79d6 Use unsigned long batchbuffer offset, fixes x64 warnings. 2006-10-13 11:19:38 +00:00
Keith Whitwell
b236715769 Fix printf warning. 2006-10-13 11:17:37 +00:00
Keith Whitwell
0dceffce33 Use unsigned long cast for checking pointer alignment, fixes x64 warnings. 2006-10-13 11:16:45 +00:00
Keith Whitwell
f06b9e4a8d Use mesa function to get opcode name rather than an internal table. 2006-10-13 11:14:43 +00:00
Michal Krol
201e6b9b75 Indent and cosmetic changes. 2006-10-13 08:44:32 +00:00
Brian Paul
e5a6fcc345 Revamp color table code.
Always store all color tables as both float and ubyte.
2006-10-13 00:44:31 +00:00
Brian Paul
e392c92250 adjust_colors() function replaces old _mesa_chan_to_float_span() function. 2006-10-12 23:48:57 +00:00
Brian Paul
0bfc56d7d3 use _mesa_map_ci8_to_rgba8() instead of _mesa_map_ci8_to_rgba() 2006-10-12 23:47:51 +00:00
Brian Paul
5bc33fe6f1 remove _mesa_chan_to_float_span(), rename _mesa_map_ci8_to_rgba() 2006-10-12 23:47:19 +00:00
Brian Paul
556c2fa3a3 _mesa_map_ci_to_rgba_chan() no longer used 2006-10-12 23:18:05 +00:00
Brian Paul
76e778dce5 Lots of changes to support runtime renderbuffer depths.
_swrast_read_rgba_span() now takes a datatype parameter.
New optimization for glReadPixels(format=GL_RGB).
New glCopyPixels optimization for the simple, common cases.
2006-10-12 23:17:02 +00:00
Brian Paul
4bb9f4115c don't use temp storage in _mesa_convert_colors() when possible 2006-10-12 23:14:19 +00:00
Brian Paul
57d719afb1 remove some debug code invalidated by prev check-in 2006-10-12 15:55:04 +00:00
Ian Romanick
f3f51bc844 Fix bug #4681.
glDeleteTextures and glDeleteTexturesEXT were erroneously listed as
aliases of each other.  For anything /except/ GLX protocol they are
aliases.  This set of changes allows functions that are functionally
identical but have different GLX protocol to be listed as aliases.

When building with GLX_INDIRECT_RENDERING set, different static
functions are used.  These functions determine whether the current
context is direct rendering or not.  If the context is direct
rendering, the aliased function (e.g., glDeleteTextures in the case of
glDeleteTexturesEXT) is called.  If the context is not direct
rendering, the correct GLX protocol is sent.

For a deeper explanation of what is changed, please see:
http://dri.freedesktop.org/wiki/PartiallyAliasedFunctions
2006-10-11 22:37:14 +00:00
Brian Paul
8a5871a98c use GLvoid * for _swrast_write_zoomed_rgb/rgba_span() functions 2006-10-11 22:21:55 +00:00
Brian Paul
55fa6a2fdb rewrite/simplify the fast_draw_pixels() function 2006-10-11 22:07:01 +00:00
Brian Paul
f971e24cf0 use _mesa_convert_colors(), update some assertions 2006-10-11 22:03:34 +00:00
Brian Paul
32a966dad9 Added _mesa_convert_colors().
_mesa_clip_drawpixels() now handles Pixel.ZoomY==-1.
2006-10-11 22:02:36 +00:00
Brian Paul
86f0e0b9cc support for runtime renderbuffer depths 2006-10-11 20:14:08 +00:00
Brian Paul
9440868270 In xmesa_DrawPixels_8R8G8B() check if drawing into a window system buffer,
not a user-created FBO.
2006-10-11 17:45:06 +00:00
Brian Paul
c364c57a1c added shaderobjects_3dlabs.c 2006-10-11 16:34:23 +00:00
Brian Paul
bb252d696f remove 3dlabs.c 2006-10-11 16:26:09 +00:00
Brian Paul
ed52be8c3f sources for X.org xserver build 2006-10-11 16:05:59 +00:00
Brian Paul
d3112d36d7 List of source (.c) files in each directory.
To be included by X.org Makefile.am files so that lists of files don't need
to be hardcoded and frequently updated there.
2006-10-11 15:52:00 +00:00
Brian Paul
81968ec49d a step toward moving run-time vertex program state out of GLcontext 2006-10-10 22:45:50 +00:00
Brian Paul
c61ecf373e fixed NV_position_invariant 2006-10-10 21:44:55 +00:00
Brian Paul
39c4daa6bc Move the fp_machine struct into s_nvfragmprog.c since (except for program
debug) it's only used there.
2006-10-10 21:43:31 +00:00
Brian Paul
97a659337e s/GLuint/GLbitfield/ 2006-10-10 21:25:27 +00:00
Brian Paul
fe6947002f If program is position invariant, set VERT_BIT_POS in InputsRead field.
Fixes broken "OPTION NV_position_invariant".
2006-10-10 21:23:23 +00:00
Keith Whitwell
d886423b3c Use the mesa-provided texenv program rather than rolling our own.
Turn on texture crossbar support.
2006-10-10 08:58:43 +00:00
Ian Romanick
fcd758868b Added dispatch.html.
This new file documents Mesa's implementation of GL function dispatch.  It's
not quite complete, but I think there's enough there to make it useful.
2006-10-09 18:26:03 +00:00
Brian Paul
5ab9dcd761 return void instead of GLvoid for glClearDebugLogMESA(), glGetDebugLogMESA() 2006-10-09 16:09:30 +00:00
Ian Romanick
b8f26126e2 Updates for XCB. Bug 8560. 2006-10-09 15:25:03 +00:00
Brian Paul
d3b257374e added a SyncHandle() call, remove UnlockDisplay() call. (bug 8521) 2006-10-09 14:57:50 +00:00
Brian Paul
0a0cd3a8ae Updates for XCB. Bug 8560. 2006-10-09 14:55:46 +00:00
Ian Romanick
dba173077e Major clean up of MakeContextCurrent
Rearrange most of the internals of MakeContextCurrent.	Put all of the code to
bind the new context up front.	If that is successful, unbind the old context.
This saves a lot of code and removes some locking crazyiness.

This patch has been tested for indirect rendering with glxinfo, glxgears,
manywin, and wincopy.
2006-10-07 02:52:18 +00:00
Roland Scheidegger
fa65447d8c do not import arrays for generic arb attribs if the array is not enabled (same as for generic attribs for nv vp is already done). Since the requested stride is 16, otherwise the code would end up doing lots of unnecessary import work (in doom3, trans_4_GLfloat_4f_raw caused by that was by far the single most time-consuming function in the r200 driver, not importing the disabled arrays caused the cpu time spent in the driver to drop from 45% to 30%, though real-world gain was pretty minimal as it's not really cpu bound here in the first place). 2006-10-07 01:04:49 +00:00
Brian Paul
524bf7bbcf rewrite clear_rgba_buffer_with_masking() 2006-10-06 03:52:01 +00:00
Brian Paul
e18d0f82b6 deal with union/aliasing in convert_color_type() 2006-10-06 03:49:46 +00:00
Brian Paul
6e138dfa36 rewrite of read_fast_rgba_pixels() 2006-10-06 03:48:42 +00:00
Keith Whitwell
fcb48e3422 missing file 2006-10-05 19:16:46 +00:00
Keith Whitwell
68da677ae2 Accelerate glBitmap with a color expand blit. Nice speedup for demos
like 'fire' that display a help message or fps number this way.
2006-10-05 11:35:57 +00:00
Keith Whitwell
1eca12a7d9 Quieten debug message. 2006-10-05 11:34:01 +00:00
Keith Whitwell
496f9ddf35 eliminate rhw divide under some circumstances 2006-10-05 11:28:45 +00:00
Keith Whitwell
e7b0ec9ae7 Quieten debug message. 2006-10-05 11:27:13 +00:00
Ian Romanick
6921063520 Changes to generated code caused by the previous commits. 2006-10-04 22:33:54 +00:00
Ian Romanick
491a16fb0f Fix the ordering of extensions. 2006-10-04 21:59:51 +00:00
Ian Romanick
990c8a9df9 Keep indentation consistent with indent.
Remove code in the Python scripts that keeps the indentation of the
generated code consistent for all cases.  Instead, pass the generated code
through the indent command.  Unix tools for the win!
2006-10-04 21:55:55 +00:00
Ian Romanick
eaeaaf6205 Divide categories into four groups as they are processed from the XML. Add
an iterator to iterate over the categories in order, starting with "core"
versions, then ARB extensions, then numbered non-ARB extensions, and finally
unnumbered extensions.

Use the new iterator in a couple places to ensure that output that is
grouped by catgory is generated in a consistent order.

More changes to the scripts are coming.  The generated files will be
committed one time after all the changes are in.  Too bad we're not using
GIT, or this would be easy. :(
2006-10-04 20:45:59 +00:00
Ian Romanick
553b8334bb Add utility method client_supported_for_indirect.
The new method client_supported_for_indirect is used to determine whether or
not the client-side library supports the function for indirect rendering.
The may or may not have associated protocol that needs to be generated
(e.g., glVertexPointer does not, but glVertex3fv does).
2006-10-04 18:58:10 +00:00
Brian Paul
25e441e8e9 in MakeContextCurrent() use old display pointer for __glXSetupForCommand(), bug 8443 2006-10-04 16:22:24 +00:00
Brian Paul
5ed4e35ba5 use _swrast_span_default_color() in the disabled code too 2006-10-04 15:22:11 +00:00
Brian Paul
9b507639ab call _swrast_span_default_color() to simplify _swrast_Bitmap(), improved comments 2006-10-04 15:21:23 +00:00
Brian Paul
da62bcecfb minor formatting fix 2006-10-04 15:06:27 +00:00
Felix Kuehling
3fd5aa88ea Bugzilla 6242: [mach64] Use private DMA buffers (only)
https://bugs.freedesktop.org/show_bug.cgi?id=6242
Patch by George Sapountzis: https://bugs.freedesktop.org/attachment.cgi?id=6271

Update to new mach64 DRM 2.0.0 with private DMA buffers.
Handle EAGAIN in mach64FireBlitLocked: call drmCommandWrite up to
MACH64_TIMEOUT times when EAGAIN is returned.
Also handle EAGAIN in mach64FlushVerticesLocked.
2006-10-02 20:34:06 +00:00
Brian Paul
346a239f01 return null if no context 2006-10-02 15:20:23 +00:00
Brian Paul
cdb27e8242 New SWspan and SWspanarrays typedefs. 2006-10-01 16:03:05 +00:00
Michel Dänzer
46929c93d8 i915: Fix wait for scheduled swap on secondary display. 2006-09-29 10:22:54 +00:00
Brian Paul
7fa99ed3d8 updated protos for blend funcs 2006-09-29 02:15:23 +00:00
Brian Paul
d92da49bae more changes for runtime renderbuffer depths 2006-09-29 02:12:07 +00:00
Brian Paul
0ce6a2935c include mipmap.h 2006-09-29 01:26:55 +00:00
Brian Paul
24edd90159 Move mipmap generation functions, texture scaling functions into new
mipmap.c file.
2006-09-29 01:24:26 +00:00
Brian Paul
bb4b378c60 updated info about name mangling 2006-09-29 01:22:53 +00:00
Michel Dänzer
af866291da Synchronize drawable to the pipe where the bigger part can be visible.
This requires the DDX driver to set the corresponding fields in the SAREA,
so check its minor version.
2006-09-28 14:10:47 +00:00
Michel Dänzer
4abf2706e9 Add new I830 SAREA fields. 2006-09-28 14:10:07 +00:00
Michel Dänzer
ebc879014c Add helper function that returns the current vblank sequence of a drawable. 2006-09-28 14:09:20 +00:00
Michel Dänzer
638ece315f Add helper function to calculate the area of the intersection of two rectangles. 2006-09-28 14:08:38 +00:00
Michel Dänzer
941c866739 i915: Handle DRM_VBLANK_SECONDARY when scheduling buffer swaps. 2006-09-28 14:07:56 +00:00
Michel Dänzer
c2f1a1857e i915: Attempt to schedule buffer swap on target vertical blank when possible.
This has some advantages over the traditional way of first waiting for the
target vertical blank and then emitting the buffer swap, e.g.

* glXSwapBuffers returns immediately, only the next time the driver needs the
  hardware lock will it block until the target vertical blank. This should
  allow applications that don't intermix rendering and other processing to
  start processing for the next frame right away.
* It's less likely to produce tearing.
2006-09-28 14:07:12 +00:00
Michel Dänzer
7585fc989d Add driGetVBlankInterval() helper function.
This can be used by drivers to determine the current swap interval of a
drawable.
2006-09-28 14:04:19 +00:00
Michel Dänzer
7539fde334 driWaitForVBlank: Add support for secondary vertical blank. 2006-09-28 14:03:41 +00:00
Michel Dänzer
6a2f5c6752 Some restructuring of the driWaitForVBlank() code.
Also some minor fixes for detecting when the deadline is met or missed, in
particular wrt wraparounds of the sequence number.
2006-09-28 14:03:02 +00:00
Michel Dänzer
24bb3b3998 Make driDrawableInitVBlank() initialize the sequence number.
This prevents the first wait for vertical blank from timing out when the X
server has been running for a long time.
2006-09-28 14:02:05 +00:00
Brian Paul
1d914fe465 remove obsolete comment 2006-09-27 14:00:37 +00:00
Jeremy Kolb
07bacc2263 Update to use the new XCB naming convention. 2006-09-26 23:56:20 +00:00
Jeremy Kolb
3d7ee324ad Added function convertStringForXCB. Deals with the recent XCB naming convention switch.
Updated the generated code to use the new XCB naming scheme.
2006-09-26 23:47:04 +00:00
Jeremy Kolb
b68788a1ca Update linux-dr-xcb config file to use LIBDRM_CFLAGS 2006-09-26 23:45:28 +00:00
Jerome Glisse
9e82552c30 Remove r200 dependency
Remove r200 dependency from the code as r200 merged
driver never worked (right ?) and we want to clean
the code.
2006-09-26 17:35:41 +00:00
Jerome Glisse
c67d8678dd Remove r200 dependency.
Remove r200*.h files dependency.
2006-09-26 17:28:40 +00:00
Michal Krol
ea87987dda Prepend #extension 'MESA_shader_debug: require' to each shader. 2006-09-26 16:06:35 +00:00
Michal Krol
27f660c164 Add GLSL preprocessor. 2006-09-26 16:01:11 +00:00
Michal Krol
4303d22739 Fix Windows newlines. 2006-09-26 12:10:33 +00:00
Michal Krol
16647b739b Add syntax files for expression and directive preprocessor.
Fix syntax errors in builtin library 1.2 sources.
All derivative files (*_gc.h and *_syn.h) are generated by Makefile.
2006-09-26 11:43:30 +00:00
Brian Paul
a50b7dbc3b Initial work for supporting different renderbuffer color depths at runtime. 2006-09-25 23:57:39 +00:00
Michel Dänzer
df8632ebd8 Fix and re-enable swizzling paths for big endian platforms. 2006-09-25 16:34:40 +00:00
Keith Whitwell
cbdd7e1094 bring in active_sz mechanism from i965 driver. Fixes bug 8410 2006-09-25 09:14:26 +00:00
Keith Whitwell
f1945796ed Fixup one place where attrsz was being used instead of active_sz 2006-09-25 09:12:25 +00:00
Brian Paul
f515c78a23 Change logicop, blend, masking functions to use the colors/indexes in the
sw_span object, rather than an explicit parameter.
2006-09-24 19:59:30 +00:00
Brian Paul
ba001224a1 Roll the multi_write_rgba_span() code into _swrast_write_rgba_span(). 2006-09-24 19:46:42 +00:00
Brian Paul
0785b6052a use span.array->rgba instead of local var in accum_return() 2006-09-24 16:34:56 +00:00
Brian Paul
f11508c29f use span.arrays for color/indexes instead of a local var when doing masked clears 2006-09-24 16:31:23 +00:00
Sean D'Epagnier
e184bd861c corrected cursor drawing
added handling of SIGWINCH
fixed input of recieving SIGIO while handling SIGIO
corrected input code for return
uncommented normal calculation to models
2006-09-24 10:57:26 +00:00
Brian Paul
1ad12874b3 allocate larger TempImage, use COMBO var to choose test format/type 2006-09-23 16:09:26 +00:00
Brian Paul
7b803d649a fix the broken fallback string/debug stuff 2006-09-22 19:28:36 +00:00
Brian Paul
5174e7c181 remove extra indentation 2006-09-22 19:09:50 +00:00
Brian Paul
43715c711d Get rid of _swrast_mask_rgba_array() and _swrast_mask_index_array(). 2006-09-22 17:44:39 +00:00
Roland Scheidegger
9f819dc014 fix up access to vertex attrib components which don't really exist but are defined to some default value by the spec (fogcoord yzw, normal w, secondary color w), by replacing those components with zero/one respectively using swizzling. 2006-09-22 15:48:50 +00:00
Keith Whitwell
9c5d75e592 Explicit test for +ve pitches in intelEmitCopyBlit() 2006-09-22 14:43:09 +00:00
Roland Scheidegger
8a0fb128c3 don't skip user clip plane clipping when the current vertex program is position invariant. 2006-09-22 13:34:24 +00:00
Keith Whitwell
7e9799ac3d Use _Enabled rather than _Active when checking for fragment shaders 2006-09-22 11:45:21 +00:00
Keith Whitwell
df058298e1 Flush driver, not just tnl module. 2006-09-22 11:40:35 +00:00
Keith Whitwell
f9bfdb1ce4 resize buffers in MakeCurrent 2006-09-22 11:36:30 +00:00
Keith Whitwell
f118b9b40d Remove unused variable. 2006-09-22 11:33:46 +00:00
Jouk Jansen
424749c3d5 Correcting directory name in OpenVMS-Makefile 2006-09-22 11:09:07 +00:00
Brian Paul
57d705d5a9 remove rgb[] array from span_arrays_struct - was only used in a few places 2006-09-21 23:19:40 +00:00
Brian Paul
c7d0fe1c4b new comments, indentation fixes 2006-09-21 23:04:29 +00:00
Brian Paul
4af404038c bump version to 6.5.2 2006-09-21 23:02:21 +00:00
Brian Paul
76785cb70a move a conditional into an assertion 2006-09-21 22:59:50 +00:00
Brian Paul
87c5ec817c updated doxygen info 2006-09-21 22:54:53 +00:00
Brian Paul
bb0862968e updated extension info 2006-09-21 22:53:15 +00:00
Brian Paul
60955d7f96 Re-org of per-release info.
From now on, put all release-specific info into the release-X.Y.Z.html file
rather than scattered between a relnotes file, versions.html and news.html.
2006-09-21 22:51:16 +00:00
Brian Paul
2482007373 replace assert(0) with error report, improved comments, etc 2006-09-21 22:43:51 +00:00
Keith Whitwell
bad5cf056a Fix incorrect byteswap_mapping(). Disable swizzle path on bigEndian
until someone can figure out whats wrong there.
2006-09-21 18:31:36 +00:00
Brian Paul
184b5d8938 use new _mesa_little_endian() function 2006-09-21 15:51:55 +00:00
Brian Paul
32e0efbdbe added _mesa_little_endian() 2006-09-21 15:51:06 +00:00
Brian Paul
81e0d73780 GLUT_FORCE_VISUAL env var to force glut to use a particular visual (debug only) 2006-09-21 15:16:36 +00:00
Brian Paul
b7d9b1e724 new code to init DirectColor colormaps 2006-09-21 15:14:30 +00:00
Keith Whitwell
167ca59fe8 Fix the dstMap for rgb888 and bgr888 texture formats, which are the
opposite to what you'd naively expect.
2006-09-21 12:43:05 +00:00
Keith Whitwell
cac5974bf9 Do a better job of choosing texture formats to avoid image conversions. 2006-09-21 10:20:15 +00:00
Keith Whitwell
afd244d4e8 use the requested internal texture format where possible 2006-09-21 10:07:04 +00:00
Keith Whitwell
76dd385fed Catch a couple of cases where we would have to delete and recreate the
miptree object.
2006-09-21 10:06:18 +00:00
Keith Whitwell
3974cc8c09 Deal with the overloading of _mesa_texstore_rgba, which is actually
used to store all sorts of formats.

Software mesa fails the glean pixelFormats test, but it appears to be
failing even with the swizzle code disabled??
2006-09-20 22:40:34 +00:00
Keith Whitwell
3aea82b396 Extend swizzle support to all remaining source formats and texture
destination formats.
2006-09-20 22:02:48 +00:00
Roland Scheidegger
62d4dfbfe3 try to use a 8888 texture format which will result in only a memcopy in mesa's texstore functions whenever possible for r200 and r300. r200 can use hw formats argb8888, rgba8888 and abgr8888 (or the opposite on big endian), r300 can use argb8888, bgra8888, rgba8888 and abgr8888 regardless of endian, as it supports free component swizzling. 2006-09-20 19:11:56 +00:00
Keith Whitwell
46c3bd29be Support both big and little endian, more source types and more
destination formats through the swizzle path.  It would be great to
see this tested on eg, PPC machines...
2006-09-20 18:56:19 +00:00
Roland Scheidegger
528de982f8 reenable code in _mesa_texstore_rgba8888 to avoid the generic copy path if only swizzling is required as it works just fine (tested with glean pixelFormats test and a hacked up r200 driver which always uses that format). 2006-09-20 18:22:19 +00:00
Keith Whitwell
2e5c686c2b Fix various typos to pass glean pixelFormats test. 2006-09-20 17:41:18 +00:00
Keith Whitwell
fce0d13b4f Enhance compute_component_mapping() to convert to and from any of the
color base formats.
2006-09-20 17:07:13 +00:00
Keith Whitwell
4f17378ec3 Add a comment about the interactions of negative pitches, overlapping
blits and the different ways of specifying a blit on this hardware.
2006-09-20 15:04:05 +00:00
Keith Whitwell
f1d6ad6fe2 remove some dead code 2006-09-20 15:00:24 +00:00
Keith Whitwell
b5d0f6c17f Fix some warnings 2006-09-20 14:58:55 +00:00
Roland Scheidegger
85b6d0c4df fix mixed texgen/non-texgen with texgen modes requiring plane parameters (GL_OBJECT_LINEAR, GL_EYE_LINEAR). This is a chip limitation, try to hack it up regardless or use a tcl fallback in some cases. Might still produce wrong results if fixed up, but so far this corrects celestia ring shadows (in multitexture mode), doom3 (arb renderer), quake4 (arb renderer and some less visible bugs in r200 renderer), and even the remaining texgenmix broken case (this is pure luck though, it is easy to construct artifical cases where it will break). 2006-09-20 14:56:21 +00:00
Keith Whitwell
e38114a5e4 Support ARB_texture_rectangle. 2006-09-20 14:54:49 +00:00
Keith Whitwell
b35121d54d 1) Add a new flag in the sarea (coopting the unused texAge value) to
identify context switches between members of a share group -
ie. multiple contexts in a single application, possibly on different
threads.  In this case the contexts share a bufmgr instance and there
is no need to evict textures - so don't.

2) Use a new flag 'need_flush' to ensure hardware rendering is flushed
prior to starting a software fallback.
2006-09-20 14:44:40 +00:00
Keith Whitwell
3a5319293c Broadwater seems to prefer this style of blitting. 2006-09-20 14:39:53 +00:00
Brian Paul
d41d29b8bd make current GLX context per-thread 2006-09-20 14:39:47 +00:00
Brian Paul
0c54e47c0e fix a memleak in DestroyContext() 2006-09-20 14:39:24 +00:00
Keith Whitwell
83c3f9658d add accelerated glCopyPixels path 2006-09-20 14:36:49 +00:00
Keith Whitwell
187f2cfb4a Add a new internal program parameter value STATE_TEXRECT_SCALE which
provides 1/width and 1/height of the active texture, useful for
implementing ARB_texture_rectangle support on hardware which only
supports ARB_npot-style texturing.
2006-09-20 14:30:22 +00:00
Keith Whitwell
0c9259f3b9 Fix _mesa_swizzle_ubyte_image() to deal with RGBA->RGB->RGBA
conversions, ensuring that the final A value is 0xff in those cases
where we use a RGBA hardware texture format to store RGB textures.
Fix a couple of cases where hardwired texture conversions were
ignoring this restriction.
2006-09-20 14:28:42 +00:00
Keith Whitwell
5658810660 Export _mesa_print_alu_instruction() to allow drivers to roll their
own debug code for programs with driver-private opcodes.

Remove redundant loop in _mesa_num_inst_src_regs().
2006-09-20 12:57:54 +00:00
Keith Whitwell
cb54c056a6 restore debug output after brw_wm_fp compilation stage 2006-09-20 12:53:35 +00:00
Keith Whitwell
285801a9ed Use DEBUG_SYNC to switch between per-primitive and per-frame aubfile dumps. 2006-09-20 12:49:52 +00:00
Brian Paul
408ce7e861 added LIBDRM_CFLAGS (Javier Villavicencio) 2006-09-19 22:43:41 +00:00
Brian Paul
dc4bf43898 fix CFLAGS (bug 8344) 2006-09-19 16:31:37 +00:00
Brian Paul
c42afefda1 change make depend output redirection to 2>&1 (bug 8344) 2006-09-18 22:55:13 +00:00
Brian Paul
876b41bc03 check for n <= 1 in compute_min_mag_ranges(), bug 8320 2006-09-18 15:03:04 +00:00
Brian Paul
f7da4e687c set lambda to zero for textured points (bug 8320) 2006-09-18 15:02:26 +00:00
Brian Paul
3d70f9ff82 6.5.1 md5 sums 2006-09-16 04:23:16 +00:00
Brian Paul
0321dac2cd update 6.5.1 release date 2006-09-16 04:13:20 +00:00
Brian Paul
a3a640171f added #ifdef tests for Windows for int64_t, uint64_t 2006-09-16 04:10:56 +00:00
Brian Paul
8636981646 replace GLAPI w/ static and init var to 0 (Michel Donais) 2006-09-15 19:00:37 +00:00
Keith Whitwell
54d3ab4878 npot version of redbook/mipmap.c 2006-09-15 10:41:54 +00:00
Ian Romanick
a3b99fcb56 Use correct opcodes for GLX_EXT_texture_from_pixmap.
Set the correct opcodes for GLX_EXT_texture_from_pixmap functions.  Changes
to the glproto package and the core X server are also required.
2006-09-14 21:07:17 +00:00
Brian Paul
eee85373c7 set 6.5.1 release date 2006-09-14 20:31:13 +00:00
Jerome Glisse
3dcf23171d Fallback if ColorLogicOp is enabled. Cleanup a bit the fallback
function.
2006-09-14 17:44:58 +00:00
Michel Dänzer
8c9366a807 Remove MESA_LITTLE_ENDIAN guard for code that seems to work fine on big endian. 2006-09-14 16:17:06 +00:00
Keith Whitwell
657f738ea2 VS nr of urb entries is constrained to be one of a fixed set of values,
specifically {8,16,32}.
2006-09-14 10:37:09 +00:00
Roland Scheidegger
6babf624b7 always use argb8888 instead of rgba8888, this is far more likely to hit a faster memcopy path in mesa (at least on little endian systems, possibly on big endian too) 2006-09-13 23:56:09 +00:00
Roland Scheidegger
2e2a981335 detect some more cases which can use straight memcpy for _mesa_texstore_rgba8888 2006-09-13 23:51:39 +00:00
Roland Scheidegger
99e0236046 Always mark tex state atom as dirty when the texture image is dirty, this ensures texture cache gets flushed in case the new texture has the same offset as the old one (fixes glean pixelFormat test at least on r200). 2006-09-13 23:20:10 +00:00
Brian Paul
43aa034084 updated comment 2006-09-13 22:49:48 +00:00
Roland Scheidegger
888b1a9166 don't use derived value _ColorLogicOpEnabled as it's not current by the time we call the blend/logic op functions. Fixes glean logicOp test on r200. 2006-09-13 22:41:46 +00:00
Brian Paul
fd2e402359 added GL_CURRENT_RASTER_SECONDARY_COLOR query (OpenGL 2.1) 2006-09-13 21:02:32 +00:00
Brian Paul
bd5331f9e8 just comments and const qualifiers 2006-09-13 20:26:43 +00:00
Brian Paul
ac1d7370a7 fix broken do_EXP() 2006-09-13 20:14:24 +00:00
Roland Scheidegger
cb08dcbbf2 fix GL_REFLECTION_MAP texgen by not using tex matrix negation when lighting is not enabled (?). This fixes demos/cubemap as well as glean texCube test. 2006-09-13 17:35:44 +00:00
Roland Scheidegger
87d6028f28 make sure we upload the new vertex program if the program string changes. 2006-09-13 17:30:11 +00:00
Brian Paul
25d59d2962 make triangle smoothing a sw fallback (Martign van Oosterhout) 2006-09-13 16:41:25 +00:00
Jerome Glisse
323414940f Fix compilation warning. 2006-09-12 18:52:13 +00:00
Jerome Glisse
6a65e6db3d Removing some of r200 dependency, cleaning up code a bit,
and fixing a couple of warning. More cleanup and shuffle
to come. I have tested this change they might broke things
especialy with r300_texstate.c change (format_x doesn't
seems to be use at all by r300).
2006-09-12 18:34:43 +00:00
Keith Whitwell
b1cb39d8bd quieten debug 2006-09-12 14:27:57 +00:00
Keith Whitwell
16a22a5f4a Potential fix for doom3 lockups. Seems that there is a conflict
between the vertex cache, the vertex shader and the clipping stages,
all of which are competitors for URB entries assigned to the VS unit.
This change reduces the maximum number of clip and VS threads by
enough to ensure that they cannot consume all the available URB
entries, and then reduces the number somewhat more up to an arbitary
amount I discovered by trial and error.  Unfortunately trial and error
solutions don't inspire total confidence...
2006-09-12 13:54:31 +00:00
Keith Whitwell
72e810db9d Disassemble active program when DEBUG_VS is set. 2006-09-12 13:51:09 +00:00
Keith Whitwell
7b8c73460f Add code to tweak aubfile state and primitives on replay. 2006-09-12 13:50:22 +00:00
Keith Whitwell
e1ae10db2c Encode a unique id in the aub header date fields. 2006-09-12 13:43:10 +00:00
Brian Paul
bd38df11f4 Win32 fixes (SF bug 1554931) 2006-09-11 16:39:04 +00:00
Brian Paul
31a66ada72 undo some accidental changes in _mesa_is_legal_format_and_type() 2006-09-11 15:25:49 +00:00
Brian Paul
02aa5fba03 init accum buffer fields in _mesa_update_framebuffer_visual() 2006-09-11 15:04:23 +00:00
Roland Scheidegger
25847f2b5b remove code to deal with non-normalized texture coordinates for tex rect targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles). 2006-09-10 19:19:13 +00:00
Brian Paul
cb53555058 Redefine the BYTE_TO_FLOAT() and SHORT_TO_FLOAT() macros to avoid problems
converting 0 to exactly 0.0
This goes against the OpenGL spec (see table 2.6) but solves problems
when doing byte -> float -> ubyte conversion for particular texture formats.
2006-09-10 17:42:57 +00:00
Brian Paul
ef8244df1a don't use xmesa_DrawPixels_8R8G8B() if there's a software alpha channel 2006-09-10 17:10:36 +00:00
Roland Scheidegger
7998962444 cause a raster fallback if a yuv texture is used on texture unit > 0 as yuv conversion appears only to work on first unit. 2006-09-10 13:48:51 +00:00
Keith Whitwell
02df36f394 Basic facility for playing back captured aubfiles. Requires a small
hack to the drm to disable command verification on the cmd_buffer
ioctl.  Doesn't exactly replay as commands are normally delivered as
batchbuffers but are captured and replayed as commands on the ring.
2006-09-08 10:36:32 +00:00
Roland Scheidegger
a5e73e6887 cause a vtxfmt fallback directly when hitting NewList for radeon and r200 drivers, otherwise we'll mix up tcl and vtxfmt path for some reason. This fixes a warzone2100 asssertion failure. 2006-09-08 00:54:55 +00:00
Keith Whitwell
3e05902d30 Consistent return values from the bm* functions.
Get aubfile generation working again.
2006-09-07 19:58:16 +00:00
Keith Whitwell
493b2ddecb Cope with memory pool fragmentation by allowing a second attempt at
rendering operations to take place after evicting all resident
buffers.

Cope better with memory allocation failures throughout the driver and
improve tracking of failures.
2006-09-07 19:05:40 +00:00
Keith Whitwell
c26f36c830 Add some asserts, fix some not-quite-bugs. 2006-09-07 18:28:35 +00:00
Keith Whitwell
e48db4430f Fix glitch with pool alignments. 2006-09-07 16:29:37 +00:00
Keith Whitwell
1456a0fff6 Use lower alignments where possible. Also pad out allocated blocks to
a multiple of alignment to avoid accumulating unusable free blocks.
2006-09-07 16:23:22 +00:00
Keith Whitwell
133f141680 Make sure bmBufferOffset is called for all active buffers every time
we render.  Currenly requires that some state be re-examined after
every LOCK_HARDWARE().
2006-09-07 16:09:50 +00:00
Roland Scheidegger
c5cb8e2c6f make really sure R200_VAP_PROG_VTX_SHADER_ENABLE is never set when we're already in a tcl fallback, otherwise the chip will instantly lock up when vertex progs are enabled the next time not in a tcl fallback (fixes for instance guaranteed lockup running any program which uses vertex progs with tcl_mode=0 and then later with tcl_mode=1). 2006-09-07 13:34:29 +00:00
Roland Scheidegger
28e7219b96 only allow VERT_ATTRIB_MAX instead of _TNL_ATTRIB_MAX for inputs of vertex programs (fixes a segfault since the result of the shift is undefined otherwise, and it may happen that _TNL_ATTRIB_POINTSIZE will be tried to read, unlike all other attribs this however may be unitialized (might be a bug in itself)). 2006-09-07 13:26:44 +00:00
Eric Anholt
d016d4e70f Fix a leak of the screen's option cache on cleanup (copied from radeon). 2006-09-07 06:02:00 +00:00
Keith Whitwell
14ec34d647 Simplify the immediate and displaylist code. Treat VertexAttrib*ARB
as non-aliasing and cope with the >32 attributes that result, taking
materials into account.
2006-09-06 18:30:00 +00:00
Brian Paul
2216aac8ea comment out EXTRA_LIB_PATH, ?= causes problems on HP-UX 2006-09-06 13:56:26 +00:00
Brian Paul
bb2180dca3 Fixes from Christopher Bell:
Use -O instead of +O3 or +O2.
Remove +Oaggressive.
Replace -Aa with -Ae.
2006-09-06 13:49:17 +00:00
Brian Paul
7d767604c7 remove stray tab 2006-09-06 13:44:57 +00:00
Brian Paul
d9aebd8498 for VERTEX_ATTRIB_WEIGHT, use break, not return 2006-09-06 05:03:47 +00:00
Brian Paul
4a901667e5 document vertex.weight hack 2006-09-05 23:20:58 +00:00
Brian Paul
3a55750d48 Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced in
vertex program, even though it's not really supported.  Results will be
undefined, but Warcraft doesn't actually use the attribute.
2006-09-05 23:15:29 +00:00
Brian Paul
43cc1dc18f fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/ 2006-09-05 23:11:09 +00:00
Brian Paul
a088f160b3 Consolidate common case of _mesa_set_program_error() followed by _mesa_error()
in new program_error() function.
Add const qualifiers in many places.
Reorder some debug code to prevent referencing free'd memory.
2006-09-05 23:08:51 +00:00
Brian Paul
1f03339f1c updated info about glxproto.h 2006-09-05 18:23:21 +00:00
Keith Whitwell
d5cbb49c22 Dynamically allocate instruction store for tnl programs according to
requirements.
2006-09-05 10:01:24 +00:00
Keith Whitwell
74b2166ff8 Fixes for calculating point attenuation 2006-09-04 23:34:36 +00:00
Keith Whitwell
f65ad97469 Don't export NV_vertex_program as it's not supported, it confuses
glean, and we no longer need to export it to keep Mesa happy as we did
at one time.
2006-09-04 18:27:40 +00:00
Rune Petersen
ac7ea94030 Managed to make a commit that can't build... Sorry again... 2006-09-04 16:20:16 +00:00
Brian Paul
c78e895f09 get rid of GL_BOOLEAN definition (bug 8113) 2006-09-04 14:07:04 +00:00
Jouk Jansen
e08557ad8a OpenVMS compile support update
(previous commit did send the wrong file to the CVS)

 Modified Files:
 	Mesa/include/GL/vms_x_fix.h
2006-09-04 06:26:08 +00:00
Jouk Jansen
8cf3c85fd7 OpenVMS compile support update
Modified Files:
 	Mesa/include/GL/vms_x_fix.h
2006-09-04 06:22:39 +00:00
Roland Scheidegger
014bfda235 fog state atom contains (only) fog params necessary for tcl. Must not be emitted if vertex progs are enabled as it overlaps vertex param #94. 2006-09-04 00:57:39 +00:00
Rune Petersen
5300e8242f add missing change to skip low impact RAST fallback...
Sorry.
2006-09-03 20:31:52 +00:00
Roland Scheidegger
5b4e7cdca4 fix the presumably broken check for the allow_large_textures and vblank_mode options (same as bug 8042). 2006-09-01 23:36:30 +00:00
Roland Scheidegger
91650469ae make sure vertex programs are only enabled on the hw when they are really enabled, not just when a program enables vertex progs (could still be not enabled due to some error). Otherwise the hw potentially would try to execute a not valid (not set up at all) vertex program, likely leading to lockups. Hopefully fixes #8060. 2006-09-01 20:21:12 +00:00
Keith Whitwell
6ec2d37ae8 Catch a few more cases of using a message reg as an instruction source
arg.
2006-09-01 14:57:19 +00:00
Keith Whitwell
db0e53af74 fix a couple of cases where a message reg is used as an instruction source. 2006-09-01 14:18:06 +00:00
Ian Romanick
75faa1e19a Add API description for GLX_SGI_swap_control. 2006-08-31 20:50:43 +00:00
Ian Romanick
d6c675f497 Fix problems with vertex program protocol
There were two sets of bugs in the vertex program (ARB and NV)
protocol.  First, several of the ARB functions were missing the
'doubles_in_order="true"' annotation.  Second, after the ARB decided
that glVertexAttrib*ARB functions must not alias fixed-function state
for GLSL, Nvidia re-assigned GLX protocol opcodes for
glVertexAttrib*NV (circa Septeber 2004).  For some reason gl_API.xml
was never updated to reflect this, and the updated version of the
GL_NV_vertex_program spec never made into the registry.
2006-08-31 20:41:16 +00:00
Rune Petersen
934a2dcf0f re-apply shader fix.
appears to have been reverted by mistake.
2006-08-31 18:19:50 +00:00
Brian Paul
d9cb0fc44d version bump 2006-08-31 17:54:31 +00:00
Keith Whitwell
b237d7fa14 When using the old technique to set up the front buffer mapping, there
is no need to add front.offset to sPriv->pFB, it seems.  Fixes several
glean issues and frontbuffer rendering generally.
2006-08-31 17:24:55 +00:00
Brian Paul
6c44c53e06 update link 2006-08-31 15:19:44 +00:00
Brian Paul
c09458c133 remove VERSIONS from tarballs 2006-08-31 15:18:04 +00:00
Brian Paul
761d87485e updated 6.5.1 relnotes link 2006-08-31 15:17:43 +00:00
Brian Paul
e2859ea6ef Convert VERSIONS and RELNOTES-6.5.1 to html, update links to them. 2006-08-31 15:16:10 +00:00
Rune Petersen
3cbfef3917 Give the user posibility to choose speed over correctness.
It does 2 things:
1) Allows you to disable S3TC, wine-games sometimes need S3TC enabled.
2) Disable fallbacks that usually have low impact.
2006-08-31 15:15:29 +00:00
Brian Paul
52e36cd8d9 check if ext->name is null before strcmp() 2006-08-31 13:58:08 +00:00
Roland Scheidegger
901f83f14e do not abort with not supported vertex prog output configuration, fallback instead 2006-08-31 01:10:07 +00:00
Brian Paul
7986cfbee0 remove extension defines/protos that are now in glext.h 2006-08-30 23:50:31 +00:00
Brian Paul
3cd07d2c39 latest version from OpenGL ARB 2006-08-30 23:46:41 +00:00
Karl Schultz
cdb12bd0ae Handle API and dispatch table changes that removed a bunch of extension entry points. 2006-08-30 23:45:32 +00:00
Brian Paul
c6f8176b3f make prog2 a legal program (texture reference fix) 2006-08-30 23:40:53 +00:00
Brian Paul
b7fc1c32f8 Check that we don't try to reference more than one target of a texture unit.
For example, referencing both "texture[0], 2D" and "texture[0], CUBE" in one
program is an error.
2006-08-30 23:38:03 +00:00
Brian Paul
f6de865e56 s/0/VERT_RESULT_HPOS/ 2006-08-30 23:36:52 +00:00
Ian Romanick
a70d56485a Add missing parenthesis so that glXSwapIntervalSGI protocol is
correctly generated.
2006-08-30 23:15:02 +00:00
Michal Krol
c7f571eb7e Add missing vec4 instructions to the interpreter.
Other cosmetic changes.
2006-08-30 22:36:29 +00:00
Brian Paul
8a4366717a fix Xlib driver mem leaks 2006-08-30 22:04:09 +00:00
Brian Paul
6c06ce281a Use XAddExtension() to register an XCloseDisplay() callback function.
When the callback is called, free all Mesa's private visual and buffer
data structures which are tied to the display.
Fixes problems reported by Kitware.
2006-08-30 21:17:51 +00:00
Brian Paul
12a5f812fc init a local var to silence warning 2006-08-30 19:02:45 +00:00
Roland Scheidegger
a974aaaa3e Minor r200 vertex program cleanups. Remove disabled leftovers from r300 vertex program code. Fix authors. Correct slightly wrong check to determine if ran out of temps. Simplify check to determine if ran out of max instructions. Correctly report used native temps. Always kick off program translation when ProgramStringNotify is called (otherwise the reported native resources used queried might be wrong). 2006-08-30 13:44:31 +00:00
Roland Scheidegger
e6de1edaf0 fix initialization of native resource usage of vertex/fragment programs 2006-08-30 11:55:18 +00:00
Roland Scheidegger
ef3f00f67e fix typo causing a segfault when a vertex program uses more than 96 parameters 2006-08-30 10:26:31 +00:00
Brian Paul
8334c8a216 Move call to _swrast_update_rasterflags() since it depends on the
results of _swrast_update_fog_state().
Fixes bug where first frame of progs/samples/fog.c does not show fog.
2006-08-29 22:32:31 +00:00
Brian Paul
f7c4dc007f _mesa_debug() should be a no-op when not compiled with DEBUG defined. 2006-08-29 22:30:58 +00:00
Brian Paul
398471429b set 6.5.1 release to Aug 31 2006-08-29 21:56:59 +00:00
Brian Paul
70c2d51230 remove assertion that referenced &glSetFenceNV for debug test 2006-08-29 21:54:01 +00:00
Brian Paul
0aab798a18 replace abort with _mesa_problem() 2006-08-29 19:09:57 +00:00
Ian Romanick
8d675aa637 Deprecate GL_EXT_vertex_weighting.
Nvidia no longer supports this extension, and they no longer export its
entry points from their libGL.  There's no reason for us to keep dragging it
around either.
2006-08-29 17:44:45 +00:00
Ian Romanick
dfdd0b4f30 More static dispatch function removal.
Make functions for the following extensions available only via
glXGetProcAddress.  In cases where there are other aliases to the same
functions (e.g., between GL_EXT_histogram and GL_ARB_imaging), the alias
functions may still be statically exported.

    - GL_ATI_blend_equation_separate
    - GL_EXT_blend_equation_separate
    - GL_EXT_convolution
    - GL_EXT_color_sub_table
    - GL_EXT_cull_vertex
    - GL_EXT_depth_bounds_test
    - GL_EXT_framebuffer_blit
    - GL_EXT_histogram
    - GL_EXT_multisample
    - GL_EXT_stencil_two_side
    - GL_EXT_timer_query
    - GL_IBM_multimode_draw_arrays
    - GL_INGR_blend_func_separate
    - GL_NV_fence
    - GL_SGI_color_table
    - GL_SGIS_multisample
    - GL_SGIS_pixel_texture
    - GL_SGIS_point_parameters
    - GL_SGIX_pixel_texture
2006-08-29 16:43:44 +00:00
Ian Romanick
fc5b57b713 Clean up GLX function exports.
Make functions for the following extensions only accessable via
glXGetProcAddress:

    - GLX_EXT_texture_from_pixmap
    - GLX_MESA_copy_sub_buffer
    - GLX_MESA_release_buffers
    - GLX_MESA_swap_control
    - GLX_MESA_swap_frame_usage
    - GLX_OML_sync_control
    - GLX_SGI_make_current_read
    - GLX_SGI_swap_control
    - GLX_SGI_video_sync
    - GLX_SGIX_swap_barrier
    - GLX_SGIX_swap_group

Removed all remnants of the following extensions:

    - GLX_MESA_set_3dfx_mode
    - GLX_SGI_cushion
    - GLX_SGIX_dmbuffer
    - GLX_SGIX_video_resize
    - GLX_SGIX_video_source
    - GLX_SUN_get_transparent_index
    -
2006-08-29 15:38:19 +00:00
Roland Scheidegger
af1dc7e487 move initialization code aroudn so glPointParameter isn't called before checking the extension is present 2006-08-28 21:19:34 +00:00
Brian Paul
b5a2fc1255 Check mesa_vp->Base.NumInstructions == 0 instead of mesa_vp->Base.String to
determine if we actually have a program.  See "[r300] TCL fallback with Quake3".
2006-08-28 19:42:41 +00:00
Ian Romanick
258751f4a0 Add two new gl_function methods. dispatch_name returns the name of
the true static dispatch name (either the glFooBar name or the
gl_dispatch_stub_XXX name).  static_name returns the name of the
static function for a specific alias of a GL function.

Adding (and using) these two functions corrects some problems in the
generated code related to functions with multiple aliases where some
of the aliases have true static dispatch functions and some don't.  I
have verified that everything under progs, except xdemos/xdemo,
correctly link.  I did this by doing 'make linux-dri-x86-64
PROGRAM_DIRS="demos redbook samples xdemos tests"'.
2006-08-28 17:40:45 +00:00
Ian Romanick
0bb27c084d Add dependencies for all API XML files. 2006-08-28 17:35:54 +00:00
Brian Paul
e5bc35dd97 remove unused var 2006-08-28 15:16:49 +00:00
Brian Paul
e365b82be1 fix the check for force_s3tc_enable (bug 8042) 2006-08-28 15:16:36 +00:00
Brian Paul
b9ac4afff7 omit installmesa script from tarballs 2006-08-28 15:12:07 +00:00
Brian Paul
a394f546a4 check for GL_ARB_point_parameters 2006-08-28 14:20:19 +00:00
Aapo Tahkola
9cb82f7917 close #6318 2006-08-27 13:24:36 +00:00
Sean D'Epagnier
a38aef93ab The colormap code is now simpler, 15bpp works where it did not before.
The input is fixed so that delete reports '\b' and backspace 127

The vt switching works both right and left.
2006-08-27 01:16:09 +00:00
Ian Romanick
7e9737b370 Explicitly store the names for each function that should have a static
entry point generated.  This allows us to do things like generate a
static entry point for glPointParameterfvARB but not for
glPointParameterfvSGIS.
2006-08-26 21:26:55 +00:00
Alan Hourihane
092d14be92 Fix bug 8010 - locking issues. 2006-08-26 21:21:34 +00:00
Aapo Tahkola
2fd72a7844 fix #8008 2006-08-26 16:24:04 +00:00
Brian Paul
0c46a12365 delete buffers, destroy window upon exit 2006-08-25 22:13:08 +00:00
Brian Paul
6827cf4d9a include texobj.h to silence warning 2006-08-25 22:08:43 +00:00
Brian Paul
96ee800cd4 6.5.1 bug fixes 2006-08-25 22:07:40 +00:00
Brian Paul
4277ea4c0b Error detection/reporting was broken in several places. 2006-08-25 22:06:02 +00:00
Ian Romanick
3fea5910b9 Add a couple of the missing GL 2.0 functions. Enable GLX protocol for
glBlendEquationSeparateEXT.  Add missing enum "get" information for
GL_EXT_texture_filter_anisotropic.
2006-08-25 19:57:37 +00:00
Brian Paul
58d080b025 Free vertex program TnlData, if any. Fixes a mem leak. 2006-08-25 19:46:31 +00:00
Brian Paul
473f1aca7f clamp result.depth to [0,1] if written to 2006-08-25 19:45:31 +00:00
Brian Paul
439d59926a Remove XFree86 CVS keyword. 2006-08-25 18:07:49 +00:00
Brian Paul
a360bc31da Rearrange glBindProgram() code to do all error checking before changing
the binding.  Prevent a potential dangling pointer error.  SF Bug 1544507.
2006-08-25 17:18:56 +00:00
Brian Paul
4bae9a48ec In _save_End(), set CurrentExecPrimitive = PRIM_OUTSIDE_BEGIN_END if
we're in GL_COMPILE_AND_EXECUTE mode.
This fixes bug 7984.
2006-08-25 15:44:09 +00:00
Brian Paul
f38ac5fbac improved comments 2006-08-25 15:42:37 +00:00
Brian Paul
3c54e8376d Rename _mesa_append_modelview_code() to _mesa_insert_mvp_code().
The four DP4 instructions are now inserted at the top of the program
instead of appended to tail.
2006-08-25 15:15:24 +00:00
Brian Paul
383c39e58e use _mesa_alloc_instructions() 2006-08-25 15:14:25 +00:00
Brian Paul
9983a27cbe added _mesa_alloc_instructions() utility function 2006-08-25 15:13:25 +00:00
Ian Romanick
a574c804a0 Add missing enums for GL_SGI_color_table. 2006-08-25 00:56:34 +00:00
Brian Paul
e53e0f47d0 recent bug fixes 2006-08-24 23:37:36 +00:00
Brian Paul
6211a14137 update MAX_INSTRUCTIONS limit 2006-08-24 23:37:13 +00:00
Brian Paul
ebf58ea3a3 According to GL_NV_fragment_program, max frag prog length is 1024 instructions.
Updated MAX_NV_FRAGMENT_PROGRAM_INSTRUCTIONS to 1024.
2006-08-24 23:28:01 +00:00
Brian Paul
77427a1e52 Cg tries to bind NV fragment programs to the GL_FRAGMENT_PROGRAM_ARB target
with glBindProgramARB().  I guess the GL_ARB_fragment_program specification
allows that, but Mesa didn't.
Relaxed the check with a new predicate function: compatible_program_targets().
2006-08-24 23:11:39 +00:00
Brian Paul
e6940f0a33 scalar sources such as 'time.x' weren't accepted by parser 2006-08-24 23:08:01 +00:00
Brian Paul
c6511ab950 Functions for vertex/fragment program transformations, optimizations, etc. 2006-08-24 22:11:40 +00:00
Brian Paul
beb32c4a59 fix bad casts, carry over r200 fix to check for null program string in r300_translate_vertex_shader() 2006-08-24 22:05:35 +00:00
Brian Paul
94ff996cae Check for NULL program string in r200_translate_vertex_program().
Fixes bug reported by Chris Rankin.
Added some new comments.
2006-08-24 22:03:38 +00:00
Brian Paul
a75439093c use _mesa_realloc_instructions() 2006-08-24 21:58:32 +00:00
Brian Paul
3b9b8de9b0 Added _mesa_realloc_instructions() utility function.
Fixed/updated comments for parameter list functions.
2006-08-24 21:57:36 +00:00
Ian Romanick
a5f2206077 GL_EXT_paletted_texture functions should alias GL_SGI_color_table functions.
The functions for GL_EXT_paletted_texture that do not share GLX
protocol with GL_ARB_imaging are supposed to alias the similar
functions from GL_SGI_color_table.  They didn't.  This patch corrects
this problem and enables GLX protocol for both extensions.

Since this removes 3 entries from the dispatch table, this change
creates a lot of changes in the generated files.
2006-08-24 21:42:38 +00:00
Ian Romanick
bf83e652f6 Add a new offset mode to the GL API XML. This mode, called "assign,"
tells the scripts to assign an available offset to the function.  The
important changes are in src/mesa/glapi/gl_XML.py and
src/mesa/glapi/*.xml.

Since the DRI drivers only depend on functions required by the ABI
(e.g., GL 1.2 + ARB_multitexture) having fixed offsets, all functions
not in the ABI use "assign" mode.  This has caused the offset of
basically every function outside the ABI to change.  I have verified
that a libGL with this patch works with a DRI driver without the patch.

Futher, several function were removed from the dispatch tables
altogether.  These are the functions for the following extensions:

	GL_SGIS_texture_filter4
	GL_SGIS_texture4D
	GL_SGIS_detail_texture
	GL_SGIS_sharpen_texture
	GL_SGIX_sprite
	GL_SGIX_instruments
	GL_SGIX_framezoom
	GL_SGIX_tag_sample_buffer
	GL_SGIX_reference_plane
	GL_SGIX_flush_raster
	GL_SGIX_list_priority
	GL_SGIX_fragment_lighting
	GL_PGI_misc_hints
	GL_EXT_index_material
	GL_EXT_index_func
	GL_3DFX_tbuffer

This removes 50 functions from the dispatch table.
2006-08-24 20:14:45 +00:00
Brian Paul
5947f8fd63 fix fragment.position initialization bug 2006-08-24 19:06:02 +00:00
Ian Romanick
ce9767f863 Make sure that _GNU_SOURCE is enabled in the linux configs that set
HAVE_POSIX_MEMALIGN.  This eliminates a compiler warning.  Also,
clean up some crufty linux-sparc* configs.
2006-08-24 18:06:37 +00:00
Keith Whitwell
39f222a421 add point-position.c 2006-08-24 17:49:37 +00:00
Keith Whitwell
28536e6c4f Test for fragment.position in points primitives. Currently renders
incorrectly on software mesa.
2006-08-24 17:48:53 +00:00
Brian Paul
83304326c8 added glut/mini/ sources to glut tarball 2006-08-24 17:01:35 +00:00
Brian Paul
116411d5f0 Check if mesa_vp->Base.Parameters is null before dereferencing (bug report
from Chris Rankin).
Also, fix some bad casts.
2006-08-24 15:57:12 +00:00
Ian Romanick
4169c220bd Fix some problems with the generation of the size tables. Enable
generation of protocol tables for Render.
2006-08-24 00:26:47 +00:00
Brian Paul
a95d5f0f58 silence warning 2006-08-23 23:18:39 +00:00
Brian Paul
4d12a05e6c Added _mesa_lookup_program() and _mesa_lookup_bufferobj() functions to avoid
a lot of casting elsewhere.
Use _mesa_lookup_texture() in tdfx driver, use _mesa_lookup_bufferobj() in r300
driver.
2006-08-23 23:10:14 +00:00
Ian Romanick
261a806f9e New script and API description file to enable generate of GLX protocol
decode tables in the server.
2006-08-23 20:32:48 +00:00
Brian Paul
d21ccb49c0 update glut fbdev sources list 2006-08-23 19:46:17 +00:00
Sean D'Epagnier
bd3e6ec066 VT switching now uses correct keys.
exiting when virtual screen size is larger than regular size doesn't corrupt screen.
colormap is reset when using stdin input on exit.
return is not reported as ctrl-m but '\r' as it should be
backspace keycode was incorrect and not working, fixed
2006-08-23 07:55:48 +00:00
Aapo Tahkola
43c9587ed4 remove duplicate pieces of code. 2006-08-22 22:27:32 +00:00
Aapo Tahkola
cafb0617ea extend some DrawRangeElements cases to support rendering more than 65535 verts in one blast. ut2k4 cases in other words ... 2006-08-22 21:54:50 +00:00
Aapo Tahkola
50eae3af7a fix broken write-only depth setting. use early z where possible. 2006-08-22 21:05:37 +00:00
Ian Romanick
723db7212c Correct the name of the GL_NV_texture_expand_normal extension. 2006-08-22 18:44:58 +00:00
Ian Romanick
d319edff1e The TLS dispatch functions for x86-64 are fixed-size, just like on
x86.  This means that the position of each dispatch function can be
calculated as (dispatch_offset * size_of_function) + glNewList.  This
allows us to not store the function pointers in glprocs_table_t.

This same optimization has been done for quite some time on x86.  We
could probably also do this for some cases of the SPARC dispatch as
well.
2006-08-22 18:22:20 +00:00
Ian Romanick
4e4b5f4008 Add new attribute called static_dispatch to the <function> element. This
boolean attribute, which defaults to true, determines whether or not a
static dispatch function is available in libGL for applications to link
against.

Ideally, any new functions that are not part of the ABI should not have
directly accessable dispatch functions.  This forces applications to use
glXGetProcAddress to access these functions.  By doing this we can
gracefully remove functions from libGL without breaking the linkage of
applications.

Note that the static dispatch functions are still generated.  However, they
are given names like gl_dispatch_stub_820 and are marked with the "hidden"
linker attribute.

All extension functions added since the previous Mesa release (6.5) have
been marked as 'static_dispatch="false"'.
2006-08-22 16:34:38 +00:00
Brian Paul
6423ec9145 move ALL_SOURCES to sources file 2006-08-21 16:05:30 +00:00
Brian Paul
b20814fd7d remove FBDEV_DRIVER_OBJECTS assignment (in sources file) 2006-08-21 15:50:41 +00:00
Brian Paul
d5299bf9a1 various updates 2006-08-21 14:26:06 +00:00
Michal Krol
1d67cad9af More GLSL preprocessor code:
Rename slang_version.syn to slang_pp_version.syn.
The #version directive understands version 120.
Cosmetic changes in version preprocessor.
Checks if requested version is supported by the compiler.
2006-08-21 09:25:11 +00:00
Michal Krol
798ef5ce33 GLSL 1.20 constructors and operators. 2006-08-21 08:47:28 +00:00
Roland Scheidegger
bd4c8ec0ec remove the now confusing option to manually enable software ARB_vp if drm is not new enough on r200 2006-08-19 08:54:03 +00:00
Sean D'Epagnier
c6fc823987 Removed ifeq from makefile, and corrected fbdev driver so it compiles 2006-08-19 00:28:36 +00:00
Brian Paul
cf4d2f7109 updates for 6.5.1 2006-08-18 20:24:54 +00:00
Brian Paul
92c43b110c Fix-ups for linux-fbdev config. No longer build Xlib driver sources. 2006-08-18 20:20:28 +00:00
Sean D'Epagnier
7e4152f0ed The driver now compiles correctly without any x headers or libraries installed
The bitmap and stroke code can't be shared with glx anymore because of this.

The model for the mini teapot is restored and I have tested it to work with
linux-fbdev and linux-solo

The driver recognizes 32bpp where there is no alpha (my radeon 7500)  It also
sets the correct number of cmap entrees (instead of 256 which can be an error)
2006-08-18 10:38:15 +00:00
Alan Hourihane
bd87c303e9 Fix writemasks on texture arb fp instructions.
Cleanup invarient state emission.
2006-08-18 09:04:48 +00:00
Brian Paul
c1c282f36a sort the FEATURE_ defines 2006-08-17 14:27:10 +00:00
Brian Paul
9dc90cd5f3 added FEATURE_EXT_timer_query and tests 2006-08-17 14:25:04 +00:00
Brian Paul
5928718475 change #ifdef to #if 2006-08-17 14:16:03 +00:00
Brian Paul
6206aec90a change tex memory allocation calls (debian bug 383209) 2006-08-16 20:53:39 +00:00
Ian Romanick
a7d0256745 When available, which is most of the time, use posix_memalign to implement
_mesa_align_malloc and friends.
2006-08-16 17:06:08 +00:00
Ian Romanick
ab6cf9dd62 Enable support for GL_EXT_gpu_program_parameters for R300. 2006-08-15 16:48:06 +00:00
Ian Romanick
8c41c757fe Add support for GL_EXT_gpu_program_parameters. Any driver that enables
either GL_ARB_vertex_program or GL_ARB_fragment_program should enable this
extension as well.
2006-08-15 16:47:34 +00:00
Ian Romanick
5208d93a41 Add test for GL_EXT_gpu_program_parameters. 2006-08-15 16:44:32 +00:00
Ian Romanick
daea717634 Remove extraneous trailing semicolon. 2006-08-15 16:26:34 +00:00
Brian Paul
37b5b01217 s/GLvoid/void/ to fix gcc 4.2 issue (bug 7875) 2006-08-15 14:28:03 +00:00
Michel Dänzer
061a3fe340 Bug #7169: Attempt to make libGL symbols visible to drivers.
Some applications end up dlopening libGL without RTLD_GLOBAL, so the libGL
symbols referenced by the driver can't be unresolved when libGL dlopens it.
This attempts to make the libGL symbols visible to the driver by dlopening
libGL (again) with RTLD_GLOBAL before dlopening the driver and dlclosing
the obtained handle afterwards.
2006-08-14 15:53:37 +00:00
Aapo Tahkola
24cd8e22f5 gcc-4.1.1 compile fix 2006-08-12 13:31:15 +00:00
Ian Romanick
357addfc45 Add comments explaining a couple "mystery" bits. 2006-08-12 00:11:05 +00:00
Ian Romanick
32a9e9be0c Fix white-space problem in the prototype for glBlitFramebufferEXT that
prevented gl_mangle.h from picking it up.
2006-08-12 00:05:54 +00:00
Ian Romanick
8fbe16d4dd Fix long standing bug that prevented newer drivers from working with
older libGL.  The data in extension_helper.h erroneous instructed
drivers to expect all functions with establised offsets, even those
not in the ABI, to have a specific offset allocated.  This is just
wrong.  A function is either in the ABI and has a set offset or a
function is not in the ABI and has a re-map offset.
2006-08-11 23:56:37 +00:00
Ian Romanick
56f349515c Convert comment header for __GLcontextModesRec to Doxygen style. 2006-08-11 22:26:49 +00:00
Aapo Tahkola
8ff5e37f58 support shorts as vertex data 2006-08-11 13:59:37 +00:00
Eric Anholt
2332812644 Add padding to match the current xf86-video-intel DDX->DRI interface. 2006-08-10 21:26:50 +00:00
Adam Jackson
3775b566fa mkdir -> mkdir -p, since /usr/include might not exist in the installroot yet 2006-08-10 20:24:50 +00:00
Adam Jackson
be85fde82b linux-indirect target fixes. 2006-08-10 20:19:57 +00:00
Brian Paul
b7a661cf8c 6.5.1 relnotes 2006-08-10 14:57:24 +00:00
Brian Paul
795e83f809 latest updates for 6.5.1 2006-08-10 14:54:19 +00:00
Alan Hourihane
a89b099c74 Fixup more PROGRAM_UNDEFINED problems. 2006-08-10 13:14:24 +00:00
Alan Hourihane
8d97265711 Fix some breakage after the PROGRAM_UNDEFINED change 2006-08-10 13:12:00 +00:00
Sean D'Epagnier
7196cddb3a Added initial multisampling support to glfbdev driver.
Fully implemented glutGameMode, and added vidresize stubs to make
Added support for glutReshapeDisplay to change video mode but not lose
current mesa context.
implementation glut 5 complient.
Fixed many minor bugs
Updated docs
2006-08-10 10:21:17 +00:00
Brian Paul
54e15d6585 finish up texstore for SL8 texture format 2006-08-10 04:14:05 +00:00
Michal Krol
7ba08ac45a GLSL 1.20 built-in library. 2006-08-09 21:22:59 +00:00
Michal Krol
edefc658e4 More GLSL code - more support for vec4 operations on x86 back-end. 2006-08-09 20:05:26 +00:00
Eric Anholt
9f344b3e7d Add Intel i965G/Q DRI driver.
This driver comes from Tungsten Graphics, with a few further modifications by
Intel.
2006-08-09 19:14:05 +00:00
Eric Anholt
7b52bed987 Add PROGRAM_FILE_MAX for i965 driver.
While here, make PROGRAM_UNDEFINED just the next value in the enum.
2006-08-09 19:10:23 +00:00
Brian Paul
46f20579a2 implement some of the sRGB texstore functions 2006-08-09 02:42:25 +00:00
Brian Paul
4b1e6a4b58 remove stray text from previous check-in 2006-08-07 14:09:13 +00:00
Sean D'Epagnier
6545ebbd8d Modified config to use glut/fbdev, added demo and sample directories. 2006-08-05 08:55:10 +00:00
Sean D'Epagnier
288d4b6ebe Modularized code into multiple files.
Added gamemode stubs, iconify support, joystick stubs.

Fixed color index mode, added 8 bit alpha blending, enabled cmaps even
with 15, 16, 24, and 32 depths as some fbdev drivers need this.

Fixed compiling with -ansi

Using SIGIO for keyboard input, so that vt switching is enabled even
if the program is locked.

Fixed numerous small bugs.
2006-08-05 08:24:29 +00:00
Brian Paul
0606ad45f6 fix typo, indentation 2006-08-04 22:09:43 +00:00
Karl Schultz
4818b0bea1 export new _mesa_* functions 2006-08-04 19:45:29 +00:00
Brian Paul
5c488dcab2 fix bug when pushing ReadBuffer state for GL_PIXEL_MODE_BIT 2006-08-04 13:41:25 +00:00
Claudio Ciccani
21dc092324 Handle GLUT_DEVICE_KEY_REPEAT,GLUT_OWN_JOYSTICK,GLUT_JOYSTICK_POLL_RATE in glutDeviceGet(). 2006-08-04 12:43:33 +00:00
Claudio Ciccani
3ab2dd9f91 Moved glutDeviceGet() to events.c.
Implemented glutIgnoreKeyRepeat() and glutSetKeyRepeat().
2006-08-04 10:49:43 +00:00
Brian Paul
0a4be70368 more work for GL_EXT_texture_sRGB. 2006-08-04 03:44:53 +00:00
Brian Paul
2eb00b4388 use WRITE_MASK_* instead of 0x1, 0x2, etc 2006-08-03 17:10:45 +00:00
Brian Paul
3163542841 Added a check to prevent rebuilding Mesa with a different configuration
without first doing 'make realclean'.
2006-08-03 16:58:06 +00:00
Brian Paul
9c3876d7d8 New wrapper functions: _mesa_dlopen(), _mesa_dlsym(), _mesa_dlclose().
Eventually move them into imports.c
2006-08-03 03:59:20 +00:00
Brian Paul
6c071592ab added GL_EXT_texture_sRGB 2006-08-03 03:23:05 +00:00
Brian Paul
8d214bc804 Initial work for GL_EXT_texture_sRGB. 2006-08-03 03:20:52 +00:00
Brian Paul
35fe7cfae4 fix link for Aqsis 2006-08-02 21:26:15 +00:00
Michal Krol
b60a3da43f Enable vec4 extension for x86 back-end. 2006-08-02 14:51:24 +00:00
Michal Krol
1616f5b621 Change fragment shader to utilize faster vec4 operations. 2006-08-02 14:46:50 +00:00
Michal Krol
7a70391575 Add test for vec4 extension. 2006-08-02 14:45:24 +00:00
Michal Krol
3b5e02cc7c Add vec4 extension. 2006-08-02 14:44:46 +00:00
Michal Krol
60ba2d88b3 Fix mmFindBlock function. 2006-08-02 14:22:06 +00:00
Michal Krol
365582dd6f Clean-up FEATURE_ARB_shader_objects #ifdefs. Bug 7492. 2006-08-01 20:07:31 +00:00
Brian Paul
cc738e004f casts and assertions 2006-08-01 20:03:29 +00:00
Brian Paul
f05e7eba95 code to draw engine block 2006-08-01 20:03:05 +00:00
Michal Krol
90d7b9c9eb Move GL_MESA_shader_debug from glext.h to gl.h. 2006-08-01 16:06:08 +00:00
Brian Paul
e724324894 renderbuffer fixes (Sean D'Epagnier) 2006-08-01 14:33:05 +00:00
Claudio Ciccani
9a4f15ee59 Fixed warnings. 2006-08-01 14:32:02 +00:00
Aapo Tahkola
689df543db fix #6991 2006-07-31 23:21:50 +00:00
Brian Paul
667dd3c3e8 added glut fbdev files 2006-07-31 14:25:53 +00:00
Brian Paul
fe3242f00a GLUT on fbdev driver. Sean D'Epagnier 2006-07-31 14:24:21 +00:00
Michal Krol
e8947a5fa0 Add support for GL_MESA_shader_debug. 2006-07-30 15:29:11 +00:00
Michal Krol
91dbc04d5e Commit enums for GL_MESA_shader_debug.spec. 2006-07-30 15:19:19 +00:00
Michal Krol
32bf274f78 Program to convert .syn file to .h headers. 2006-07-30 14:48:01 +00:00
Claudio Ciccani
fc434622b3 Clear window's event mask before enabling handled events. 2006-07-30 14:47:51 +00:00
Michal Krol
4cc87c7248 Add support for GL_MESA_shader_debug. 2006-07-30 14:45:25 +00:00
Michal Krol
c26999fd2c Fix dependencies. 2006-07-30 14:33:53 +00:00
Michal Krol
d2ac9ab6ee More text. 2006-07-30 14:28:38 +00:00
Michal Krol
39dd5196e6 Optimize shaders.
Use frame counter.
2006-07-29 09:42:03 +00:00
Eric Anholt
0e6ef1b1cd Fix build failure in the savage driver. 2006-07-28 21:30:14 +00:00
Jerome Glisse
32d61d0616 r300_emit.h cleanup.
Remove unused macro
Replace LOCAL_VAR, PREFIX*
Indent code
Remove radeon redundant CP type 3 packet
2006-07-27 22:51:14 +00:00
Brian Paul
a7722cb794 load SLANG_FRAGMENT_FIXED_SECONDARYCOLOR 2006-07-21 20:52:43 +00:00
Brian Paul
c28399baa7 just reindent 2006-07-21 20:49:20 +00:00
Brian Paul
a97492f4df added arrayobj.[ch] files 2006-07-21 19:56:52 +00:00
Brian Paul
9d9d7b1dee check for non-nill pwc in WMesaMakeCurrent(), bug 7585 2006-07-21 19:52:59 +00:00
Brian Paul
122629f279 Some structure renaming. Prefix vertex/fragment-related structs with
"gl_" to match other structs.
2006-07-20 16:49:57 +00:00
Brian Paul
459db7bd72 bump MESA_TINY to 1 2006-07-20 04:34:36 +00:00
Brian Paul
a623e008c6 move/update comments 2006-07-20 04:24:42 +00:00
Brian Paul
2f12458fb3 use ctx->Light.ShadeModel instead of ctx->_TriangleCaps 2006-07-20 04:17:11 +00:00
Brian Paul
a1a6ac4af4 Instead of testing ctx->_TriangleCaps for flat/smooth shading, just use ctx->Light.ShadeModel 2006-07-20 04:16:26 +00:00
Brian Paul
4e2de9531e remove unused NEED_TWO_SIDED_LIGHTING() macro 2006-07-20 03:56:16 +00:00
Brian Paul
ad15866ef0 For glGetTexImage(), move the _mesa_validate_pbo_access() error check into
_mesa_GetTexImage() so it's not needed in the fallback or driver functions.
2006-07-19 16:13:15 +00:00
Brian Paul
0749e2723b Several loops over the map1/2 evaluator arrays were incorrect.
There's only 16 evaluator maps.  Define new _TNL_NUM_EVAL constant for
those loops.
Also, fix priority of GL_NV_vertex_program generic maps - they override the
conventional maps.
See bug 7564.
2006-07-19 15:28:29 +00:00
Brian Paul
69ddf6cc41 more 6.5.1 additions 2006-07-19 15:09:42 +00:00
Brian Paul
114ecb9d67 indentation fix 2006-07-18 22:33:14 +00:00
Brian Paul
df926955be add missing 'return' after a few _mesa_error() calls in _mesa_GetTexImage() 2006-07-18 22:27:02 +00:00
Brian Paul
813e56db51 Compute ctx->Color._LogicOpEnabled in one place instead of four places! 2006-07-18 19:15:40 +00:00
Tilman Sauerbeck
f81b1dbe37 fix a memleak (that code block has been commented out for years for unknown reasons) 2006-07-15 12:09:27 +00:00
Rune Petersen
416ac254c2 A small logic error.
We need to call do_swizzle() when the scaler _or_ vector unit have a
swizzle other 000/ZERO/111/ONE.

This ensures that the gloss on banners in ut2004 is not angel-dependent
(since when was banners glossy?).
2006-07-15 10:44:25 +00:00
Brian Paul
f4e46e1a46 define FLT_MAX_EXP to 128 if undefined 2006-07-13 20:21:44 +00:00
Ian Romanick
7ef4a07165 Move initialization of server_support from __glXProcessServerString to
__glXCalcualteUsableExtensions.  By having both callers of
__glXProcessServerString initialize the bit-fields passed in, we guarantee
that the correct amount of data is initialized:

This fixes bugzilla #7353.
2006-07-13 15:27:37 +00:00
Brian Paul
883f9891cb LIB_DIR is now just 'lib' or 'lib64'
Replaced $(LIB_DIR) with $(TOP)/$(LIB_DIR), use LIB_DIR in install targets.
Patch by Hanno Böck.
2006-07-13 02:50:27 +00:00
Brian Paul
d9eff8ba19 download/install updates 2006-07-12 20:14:43 +00:00
Brian Paul
b8528ea55e New config var DRI_DRIVER_SEARCH_DIR to specify where libGL should search
(at runtime) for the DRI drivers.
See bug 2372.
2006-07-12 19:40:59 +00:00
Tilman Sauerbeck
e5c28321b2 fix another memleak 2006-07-12 17:06:49 +00:00
Tilman Sauerbeck
e77875dcbe fix a memleak 2006-07-12 16:49:07 +00:00
Brian Paul
59cfd3cd3f destroy window upon exit, remove CVS log comment 2006-07-12 02:34:43 +00:00
Brian Paul
d8bb5ea967 call glutDestroyWindow() to allow checking for mem leaks upon exit 2006-07-12 02:32:21 +00:00
Brian Paul
c04bb519e1 free array objects properly (bug 7493) 2006-07-11 21:56:43 +00:00
Tilman Sauerbeck
c60bcc8966 free GL2Objects unconditionally 2006-07-11 20:13:28 +00:00
Tilman Sauerbeck
c0eb777cd8 free the ArrayObjects hash table 2006-07-11 19:36:27 +00:00
Tilman Sauerbeck
17b5063c6f only access ss->BufferObjects if it's declared 2006-07-11 19:03:21 +00:00
Tilman Sauerbeck
aead688e7f _mesa_destroy_context() frees radeon->glCtx so we must not access it afterwards 2006-07-11 18:35:24 +00:00
Thomas Hellström
bbe197ec1d Revert the SiS and Unichrome DRM version check changes. 2006-07-11 14:56:20 +00:00
Thomas Hellström
85b4ae0654 The SiS and Unichrome drivers assume that the handle to the
AGP map is equivalent to the AGP physical address. Fix this.
2006-07-10 12:20:24 +00:00
Aapo Tahkola
b9920ba7b7 Fix #7195 2006-07-09 00:04:06 +00:00
Brian Paul
27908d2bcb update comment, APP_LIB_DEPS 2006-07-07 14:32:47 +00:00
Brian Paul
04f43226a8 fixup OSMESA_LIBS and make clean target 2006-07-07 14:32:02 +00:00
Brian Paul
8c140c9c37 remove GLUT dependency 2006-07-07 14:31:28 +00:00
Brian Paul
3ae1905744 remove dependency on GLUT 2006-07-07 14:12:04 +00:00
Kristian Høgsberg
218ba1ff54 Don't include unused header files. 2006-07-06 07:28:25 +00:00
Aapo Tahkola
5906acad08 R300_RR_ROUTE_1 still needs to be initialized. 2006-07-05 13:28:01 +00:00
Brian Paul
1ff8daf21e New animated engine demo. 2006-07-04 21:43:21 +00:00
Jerome Glisse
1ad914575a Add R300_VAP_CNTL 0x2140 and cosmetic cleanup. 2006-07-04 20:50:49 +00:00
Brian Paul
525eb0b621 added linux-osmesa 2006-07-04 16:49:58 +00:00
Brian Paul
f385cf115a simple libOSMesa.so-only config, no X 2006-07-04 16:49:41 +00:00
Brian Paul
c6e1784062 enable hw antialiasing (Martijn van Oosterhout) 2006-07-04 13:37:19 +00:00
Brian Paul
2922aa236f fix linking bug (bug 7405) 2006-07-03 23:12:16 +00:00
Brian Paul
77afb43519 additional clipping/viewport fixes (Martijn van Oosterhout) 2006-07-03 23:08:33 +00:00
Roland Scheidegger
46c1419c93 some minor simplifications (same as in r300 driver) since mesa's internally used swizzle and writemask flags are identical to the bits used on the hardware, use a macro to error out if these assumptions are no longer true. 2006-07-03 22:14:54 +00:00
Roland Scheidegger
bf35d70635 check if radeon_drm.h from libdrm is new enough, otherwise print an error to make it easier to figure out why it won't compile... 2006-07-03 22:11:44 +00:00
Jerome Glisse
69f31f5475 Add copyright header and minor cleanup. 2006-07-03 21:35:07 +00:00
Brian Paul
bfb2729f9e disable a new mem leak check until we're sure it's valid 2006-07-03 13:20:32 +00:00
Brian Paul
a6c72b67f6 fix clipping bug on context change (Martijn van Oosterhout) 2006-07-03 13:17:00 +00:00
Tilman Sauerbeck
527cd2544f initialize offset to avoid bogus warnings from valgrind 2006-07-01 21:27:34 +00:00
Brian Paul
be9282bf0b Vertex/fragment program patches (Rune Petersen) 2006-06-30 17:56:50 +00:00
Brian Paul
0cdf2d7413 clipping fixes (Martijn van Oosterhout) 2006-06-30 17:21:32 +00:00
Brian Paul
f63623779a clean-ups 2006-06-30 16:55:39 +00:00
Brian Paul
2893072967 use _mesa_HashDeleteAll() 2006-06-30 15:58:53 +00:00
Brian Paul
66c9be06f9 remove occlude.c demo since GL_HP_occlusion_test no longer available 2006-06-30 15:57:05 +00:00
Brian Paul
c7e164f091 In free_shared_state(), use new _mesa_HashDeleteAll() function to delete
textures, display lists, programs, VBOs, etc.  Less code and more efficient.
2006-06-30 15:44:30 +00:00
Brian Paul
d179e16501 Added _mesa_delete_list() to delete a display list, but don't remove from
hash table.  Make _mesa_destroy_list() static.
2006-06-30 15:41:55 +00:00
Brian Paul
9f6798d6e1 Added _mesa_HashDeleteAll() to delete all entries in a hash table with a
callback function.
Added _mesa_HashWalk() to walk over all entries in a hash table with callback.
2006-06-30 15:39:23 +00:00
Jerome Glisse
7c583f5d11 Fix typo. 2006-06-29 20:01:35 +00:00
Tilman Sauerbeck
f7f5b2c415 destroy left-over VBOs on shutdown 2006-06-29 18:36:51 +00:00
Tilman Sauerbeck
ff3a5b1842 instead of messing with _TNL_LAST_GENERIC and _TNL_FIRST_GENERIC, use _TNL_NUM_GENERIC. this fixes an off-by-one error (we didn't handle the final attribute) 2006-06-29 16:48:45 +00:00
Tilman Sauerbeck
8ca6250d72 cleanup, avoid magic values 2006-06-29 16:47:09 +00:00
Tilman Sauerbeck
ff5b590382 added _TNL_NUM_GENERIC 2006-06-29 16:45:57 +00:00
Brian Paul
787f4965a2 only assert front/back pitch if double-buffered (bug 7663) 2006-06-29 15:44:13 +00:00
Brian Paul
b10ea9843b added src/glx/x11/depend to DEPEND_FILES 2006-06-28 21:58:47 +00:00
Tilman Sauerbeck
6c33475424 propagate errors from parse_generic_attrib_num in parse_attrib_binding (-> don't segfault when you're trying to access invalid generic attributes 2006-06-28 16:26:20 +00:00
Brian Paul
7a7aa2aabb Don't use nested struct definitions in tnl_clipspace_fastpath.
Make attr_type into a top-level type: tnl_attr_type
See bug 7340.
2006-06-27 20:11:00 +00:00
Ian Romanick
4063b1730d Remove the extraneous GL_ prefix from the enums for GL_EXT_timer_query and
GL_EXT_framebuffer_blit.  Enumerants in the XML schema get the GL_ prefix
added to them automatically.  This resulted in things like
"GL_GL_TIME_ELAPSED_EXT" in enums.c.
2006-06-27 16:13:13 +00:00
Aapo Tahkola
291fd257eb Fix stencil clears that have caused problems with redbook/stencil, tests/stencilwrap and ut2k4 adrenaline pills. 2006-06-27 01:46:11 +00:00
Aapo Tahkola
caf0176472 Fix generic vertex attribs (Rune Petersen) 2006-06-27 01:26:47 +00:00
Brian Paul
4e0617849c use trackball code for mouse rotation 2006-06-26 23:00:15 +00:00
Brian Paul
9671548424 virtual trackball code 2006-06-26 22:59:28 +00:00
Brian Paul
199729ff27 locking fixes (Martijn Van Oosterhout) 2006-06-26 19:59:38 +00:00
Brian Paul
78a6000cf2 Use $(LIB_DIR) instead of $(TOP)/lib since libraries sometimes go into lib64/.
Probably need to fix the install destinations too...
2006-06-26 15:34:21 +00:00
Tilman Sauerbeck
0deb088cf0 more cleanups 2006-06-23 16:47:08 +00:00
Brian Paul
3cb56804ca fix glut/freeglut links 2006-06-23 15:27:32 +00:00
Brian Paul
0e794a1bc6 New 'install' targets in makefile. See bug 2372. 2006-06-22 22:50:48 +00:00
Keith Whitwell
b4517527eb A bunch of tiny tests that I've found helpful bringing up drivers from
scratch.  These exercise single pieces of functionality and provide a
gentler ramp than trying to use the mesa demos to bring up drivers with.
2006-06-22 16:32:19 +00:00
Keith Whitwell
5fb9f80e37 exercise min/max lod 2006-06-21 14:04:04 +00:00
Keith Whitwell
942b5b7bc0 exercise position invarient vertex program 2006-06-21 14:03:39 +00:00
Alan Hourihane
feb0ff11e5 Check for a valid context 2006-06-21 10:58:04 +00:00
Brian Paul
4cd9e5c3c9 rewrite gluErrorString() to be more legible 2006-06-20 15:30:26 +00:00
Brian Paul
bd0bfd1dc2 reorder a few token definitions 2006-06-20 14:52:22 +00:00
Michel Dänzer
c28834bfbb Add M32R architecture to test for USE_IEEE and friends (Kazuhiro Inaoka,
from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=374608).
2006-06-20 09:39:32 +00:00
Brian Paul
1ec9ed4f25 fix span code compilation problems, bug 5858 2006-06-20 03:35:17 +00:00
Ian Romanick
4afcd8aa8b Print the hex value of the errant input when an invalid stencil function is
specified.
2006-06-19 16:39:49 +00:00
Alan Hourihane
161de10ce8 If DrawBuffer isn't set, return immediately 2006-06-19 09:27:04 +00:00
Tilman Sauerbeck
11fceb19d3 no need to handle ARL in a special way, it's a generic scalar operation. only tested on r300. 2006-06-18 14:07:10 +00:00
Aapo Tahkola
16d1024f27 fix broken negate 2006-06-18 12:50:27 +00:00
Aapo Tahkola
e6a17b6052 fix broken address register reads 2006-06-18 12:39:58 +00:00
Brian Paul
385f23edf9 Thread safety for Win32. SourceForge bug #1507315. 2006-06-16 14:50:05 +00:00
Brian Paul
c0168fabed glPush/PopAttrib fix (bug 6891) 2006-06-16 13:45:29 +00:00
Brian Paul
65897c04c8 don't create include/GLES yet 2006-06-16 13:41:05 +00:00
Brian Paul
c97c5f0b6b remove obsolete PointSizePtr 2006-06-16 13:40:06 +00:00
Jouk Jansen
c3c64383ca OpenVMS compile support update
Modified Files:
 	Mesa/src/mesa/main/descrip.mms
 ----------------------------------------------------------------------
2006-06-16 13:14:35 +00:00
Brian Paul
be906fe05e added some comments, braces in _mesa_BindTexture 2006-06-15 15:39:10 +00:00
Brian Paul
2d77b25c27 minor clean-ups 2006-06-15 15:36:06 +00:00
Brian Paul
9960ddcd66 comments for gl_array_object struct 2006-06-15 15:34:13 +00:00
Keith Whitwell
0b994ef589 Call _mesa_resize_framebuffer() within intelWindowMoved(). Fixes
googleearth glitches.
2006-06-15 12:47:29 +00:00
Keith Whitwell
d048b7d36e Protect _swrast_read_rgba_span with RENDER_START/FINISH 2006-06-14 10:48:09 +00:00
Brian Paul
4f68411e77 s/ATTRIBUTE/GENERIC/ 2006-06-14 04:15:16 +00:00
Brian Paul
62e1fae858 A number of vertex buffer fields like NormalPtr, FogCoordPtr, etc are really
just aliases for members of the VB->AttribPtr[] array.
Begin replacing FogCoordPtr with VB->AttribPtr[_TNL_ATTRIB_FOG], and similarly
for NormalPtr, TexCoordPtr, PointSizePtr, etc.
2006-06-14 04:05:17 +00:00
Brian Paul
62dc134771 Rename _TNL_ATTRIB_ATTRIBUTE* to _TNL_ATTRIB_GENERIC* 2006-06-14 03:30:57 +00:00
Brian Paul
3c18d49607 new assertion 2006-06-14 03:29:08 +00:00
Brian Paul
ee06106082 Do a cheesy implementation of glXWait/GetVideoSyncSGI() functions, but
disable reporting the GLX_SGI_video_sync extension anyway.
Google Earth works now.
2006-06-13 23:06:25 +00:00
Brian Paul
2d087480b4 GLX_BAD_CONTEXT checks in video-sync functions 2006-06-13 23:04:41 +00:00
Brian Paul
e49aea9cef remove debug printf 2006-06-13 22:17:41 +00:00
Brian Paul
f9d88c8204 clean-ups and new comments 2006-06-13 17:24:36 +00:00
Brian Paul
4df010b296 fix glVertexAttribPointerARB's normalized behaviour 2006-06-13 17:17:32 +00:00
Brian Paul
34a3779aae remove unused index_attr1fv() 2006-06-13 17:16:56 +00:00
Brian Paul
7dfdf3a5b7 Rename some functions/macros to better reflect their behaviour:
3F -> 3FN because integer types are normalized
4FC -> 3FN because we can normalize non-color attributes
2006-06-13 17:13:15 +00:00
Brian Paul
44b82dffe8 In import_attrib(), use the from->Normalized flag to choose the right
translation function.
Before this fix the 'normalized' flag to glVertexAttribPointerARB() was ignored.
2006-06-13 17:06:44 +00:00
Brian Paul
5c7c5a762e s/0/NULL/ 2006-06-13 17:04:26 +00:00
Brian Paul
1c546ae552 When using an ARB vertex program, the generic vertex arrays do not alias the
conventional arrays.
Typo: s/writeable/writable/
2006-06-13 17:03:25 +00:00
Brian Paul
8bc00c2047 fix size assertions in _mesa_init_teximage_fields() 2006-06-13 16:45:28 +00:00
Brian Paul
212d7e8369 minor simplification in texcoord array import 2006-06-13 14:50:44 +00:00
Michel Dänzer
73e73ffdd5 Fix command line parsing. 2006-06-13 08:37:03 +00:00
Brian Paul
bd1e587ebe remove some unneeded #includes 2006-06-13 03:29:02 +00:00
Brian Paul
0395cc01fd Fix a few conversion bugs. For example, GLshort->GLfloat conversion
didn't work for color arrays.
2006-06-13 03:22:52 +00:00
Kristian Høgsberg
c25eb99f95 Fix all instances of calling __glXSetupForCommand before GetReqExtra. 2006-06-13 01:41:18 +00:00
Brian Paul
18d0efb555 removed incorrect const qualifier 2006-06-13 01:14:48 +00:00
Ian Romanick
9853aac495 Make r300 driver build with GL_APPLE_vertex_array_object changes.
Sorry for the breakage.  These changes are only build tested.
2006-06-12 22:39:49 +00:00
Brian Paul
a3feff414f GL_APPLE_vertex_array_object is new 2006-06-12 20:02:45 +00:00
Brian Paul
48c03d7c9f s/buffer/arrays/ 2006-06-12 20:02:11 +00:00
Brian Paul
d2fb24a671 make do_vertex_attrib_enable() static 2006-06-12 19:59:34 +00:00
Brian Paul
f2ce358331 include glxclient.h to silence missing prototypes warning 2006-06-12 19:56:57 +00:00
Brian Paul
c8f8fbecd7 remove const qualifier from glGenVertexArraysAPPLE() parameter 2006-06-12 19:47:44 +00:00
Brian Paul
0e0e3b05ab include arrayobj.h 2006-06-12 19:46:14 +00:00
Brian Paul
050d39b3f4 remove unused var 2006-06-12 19:45:43 +00:00
Ian Romanick
ee34e6ef71 Add support for GL_APPLE_vertex_array_object. Several test programs
and demos are also added.

Adding basic support to drivers should be as easy as just enabling the
extension, though thorough test would also be required.
2006-06-12 16:26:29 +00:00
Alan Hourihane
6254d59043 fire vertices before context destruction. 2006-06-12 08:52:29 +00:00
Tilman Sauerbeck
51eb359ea9 destroy the memory manager along with the context 2006-06-11 09:12:27 +00:00
Roland Scheidegger
5b90cf2f2f enable arb_vertex_program by default if drm is new enough. Do a fallback when it's a nv_vp as there could be issues. 2006-06-10 00:51:54 +00:00
Claudio Ciccani
da4b01211b Added some notes about this implementation. 2006-06-09 15:20:26 +00:00
Claudio Ciccani
4812a59754 Enable setting invible cursors. 2006-06-09 15:19:05 +00:00
Claudio Ciccani
6acc6dd0c4 Separated joystick pointer coordinates from mouse pointer coordinates. 2006-06-09 15:18:04 +00:00
Roland Scheidegger
52c5d9c5b7 shuffle some code to make some assertions in the _savage_texstore_a111xxxx functions compile without error... 2006-06-09 00:28:53 +00:00
Brian Paul
5dbd0a400a added info about prerequisites for building DRI drivers 2006-06-08 23:42:07 +00:00
Brian Paul
11ea8cb0a2 fix glBegin error test 2006-06-08 23:12:58 +00:00
Brian Paul
ee7e58e111 check for invalid mode in glBegin(), bug 7142 2006-06-08 23:11:35 +00:00
Tilman Sauerbeck
a0daa1220f include tnl/tnl.h for _tnl_program_string() 2006-06-08 21:17:08 +00:00
Tilman Sauerbeck
3ebf0418a9 mark ARL operand as scalar (Roland Scheidegger) 2006-06-08 21:12:21 +00:00
Tilman Sauerbeck
0bc09bdace struct op_names: get rid of the 'output operands' field as it's not used (Roland Scheidegger) 2006-06-08 21:09:17 +00:00
Brian Paul
0c65604eeb links to ClosedGL and S3TC library 2006-06-08 19:59:41 +00:00
Roland Scheidegger
d6213e6023 Improve slightly wrong CMP_SRCS test to avoid unencessary instructions. Clean up the r200 vertex program code a bit. 2006-06-08 17:46:21 +00:00
Brian Paul
808809b061 updated Pixmap vs. XImage info 2006-06-07 14:01:31 +00:00
Aapo Tahkola
37474eca68 prevent possible program mix up with sw vps (Roland Scheidegger) 2006-06-06 23:44:05 +00:00
Aapo Tahkola
9248882ca2 prevent run_arb_vertex_program from running tnl programs unless ctx->_MaintainTnlProgram is set 2006-06-06 22:24:12 +00:00
Aapo Tahkola
9ba2006594 make sure tex format is supported. 2006-06-06 18:37:45 +00:00
Aapo Tahkola
2f42558050 various fixes (Roland Scheidegger) 2006-06-06 18:25:47 +00:00
Brian Paul
4cb9fffa7e Added simple lookup_bufferobj() function to wrap the _mesa_HashLookup() call
and cast.  Simplifies the code a little bit elsewhere.
2006-06-03 15:32:27 +00:00
Brian Paul
3696f0ee1d updates for using libdrm (Hanno Bock) 2006-06-03 15:17:07 +00:00
Brian Paul
6f172f7aba minor clean-ups 2006-06-02 22:51:45 +00:00
Roland Scheidegger
98c791b543 implement arb_vertex_program in hw for r200. Code contains still some hacks, generic attribs cause a fallback, but otherwise it seems to work quite well. Passes all glean vertProg1 tests with the exception of the degnerated LIT case (which is a hw limitation), as well as runs the r200 render path of doom3/quake4 (1.1 patch needed for quake4). The code is heavily borrowed from the r300 driver as vertex programs encoding is almost identical. arb_vertex_program is not yet announced by default and still needs to be enabled via driconf. 2006-06-02 22:47:31 +00:00
Brian Paul
65ced47453 Thomas Sondergaard's API tracer 2006-06-02 14:50:28 +00:00
Brian Paul
21fbdb14e9 set per-context GL_DRAW_BUFFER state regardless of currently bound FBO 2006-06-02 12:51:56 +00:00
Brian Paul
79d8db77b9 fix depth-format rectangular textures 2006-06-02 12:47:42 +00:00
Brian Paul
2b04dd9d2c fix depth-component test to allow rectangular textures 2006-06-02 12:46:53 +00:00
Roland Scheidegger
b302419abe remove code dealing with drmMinor version < 6 since all radeon drivers request at least drmMinor 6 anyway. 2006-06-02 01:52:54 +00:00
Roland Scheidegger
5377ac80dc retry on EBUSY instead of EAGAIN in radeonWaitIrq (it appears this was the intention as drm seems to never return EAGAIN) in all radeon drivers. 2006-06-01 23:21:43 +00:00
Roland Scheidegger
fe57ed4f25 Fix extended swizzling in vertex programs by introducing special swizzle instruction, extend the 2 bit rsw field to 3 bit like used in other places. While here, also fix up rsw (negation), dph and try to fix up rsq with negative values (doesn't work, bug seems elsewhere) in the sse codegen code. 2006-06-01 22:56:40 +00:00
Brian Paul
4d3ab19abf document MESA_TEX/TNL_PROG env vars 2006-06-01 20:22:30 +00:00
Brian Paul
1ec9b5a5a9 fix extension_supported() function, added comments 2006-05-31 20:36:52 +00:00
Tilman Sauerbeck
e689a7fc6a SWZ is nearly identical to MOV. the difference is that SWZ supports per-component negation, which MOV doesn't. as that's handled transparently, we can use the same code for them. 2006-05-31 17:57:14 +00:00
Tilman Sauerbeck
49db174df5 pass src->NegateBase as-is in t_src() now, as the flags are equivalent to r300's VSF_FLAGs now 2006-05-31 17:37:23 +00:00
Claudio Ciccani
9efe17ed91 Updated config file. 2006-05-31 17:06:05 +00:00
Claudio Ciccani
fe94d0b335 Added some example progs using DirectFBGL. 2006-05-31 17:05:11 +00:00
Claudio Ciccani
b18191cf30 Added DirectFB GLUT implementation. 2006-05-31 17:02:45 +00:00
Claudio Ciccani
9400550c16 Fixed bug with multiple contexts.
Added support for ARGB4444 and ARGB2554.
Added hardware accelerated Clear().
2006-05-31 17:00:10 +00:00
Brian Paul
55ad3cc055 fix bug 7077 - mem leak 2006-05-30 22:26:21 +00:00
Brian Paul
a8c4242395 Define new NEGATE_* tokens for setting the src register's NegateBase field.
Before, we were using GL_TRUE/GL_FALSE in a few places.
Note: only the SWZ instruction can negate individual components.
2006-05-30 22:17:35 +00:00
Brian Paul
e4cb9cd167 remove redundant 'const' 2006-05-30 22:15:24 +00:00
Brian Paul
8333012b56 free convolved image / fix mem leak (bug 7077) 2006-05-30 21:58:55 +00:00
Tilman Sauerbeck
1d0fa45bc1 minor code cleanup, no actual changes 2006-05-30 18:49:20 +00:00
Tilman Sauerbeck
6be8127ea4 don't generate GL_INVALID_ENUM if GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB, which is actually handled 2006-05-30 16:57:52 +00:00
Michal Krol
51fec69ea6 Add x86sse.h. 2006-05-30 09:59:05 +00:00
Michal Krol
4decba90be Remove not needed forward declaration. 2006-05-30 09:45:33 +00:00
Michal Krol
23b7c7dc14 Make it running under Linux. 2006-05-30 09:38:16 +00:00
Michal Krol
44d5c8668a First draft. 2006-05-30 09:35:36 +00:00
Tilman Sauerbeck
b20cdf1d28 don't do the check for >= MAX_VERTEX_PROGRAM_ATTRIBS twice, it's already done in parse_generic_attrib_num() 2006-05-29 16:24:28 +00:00
Brian Paul
919f6a070c generic attribute 0 wasn't handled correctly (Jesse Allen) 2006-05-29 14:37:56 +00:00
Roland Scheidegger
76b6e88e56 fix some whitespace in previous commit 2006-05-27 09:09:56 +00:00
Roland Scheidegger
8a61821057 preparation for r200 hw vertex programs. Increase R200_CMD_BUF_SZ to 16k instead of 8k (the reasons why it was exactly 8k are unclear). Add register defines, sanity code, fix potential issue with wrong statechange order when disabling fragment programs. 2006-05-27 09:03:25 +00:00
Brian Paul
04fa003a50 The ctx->_TexEnvProgram that's allocated in update_state() doesn't seem to
be needed (it's set in texenvprogram.c) and is a memory leak according to
valgrind.
Disable with #if 0 / #endif
2006-05-24 03:34:17 +00:00
Brian Paul
65a51c0d62 Roll _mesa_free_parameters() into calling function (the only caller).
Replace assert(0) with _mesa_warning().
Use new _mesa_align_realloc() function.
New comments, clean-ups.
2006-05-24 03:30:31 +00:00
Brian Paul
5a67af97fa fix a small memory leak in _mesa_add_state_reference() 2006-05-24 03:25:22 +00:00
Brian Paul
1798d9a8a4 added _mesa_align_realloc() 2006-05-24 03:15:46 +00:00
Brian Paul
0c1cbd5805 use GLbitfield for StateFlags, improved comments 2006-05-24 03:01:58 +00:00
Brian Paul
d9736db667 Add const qualifiers in a number of places. 2006-05-23 02:44:46 +00:00
Brian Paul
f5a2ac95c3 init mask=0 to silence warning 2006-05-23 02:16:20 +00:00
Brian Paul
fe9026d04a make mgaSetFence() and mgaWaitFence() static 2006-05-23 02:13:53 +00:00
Brian Paul
a6f7f10efa prototype i915_udpate_fog() to silence warning 2006-05-23 02:12:08 +00:00
Brian Paul
b8f2f6fee1 In cache_item(), there was sizeof(void) expression.
Replace void *key parameter with const struct state_key *
2006-05-23 01:55:31 +00:00
Brian Paul
acc9566b86 GL_INDEX_OFFSET fix 2006-05-22 17:41:59 +00:00
Brian Paul
17befff800 GL_INDEX_OFFSET didn't work with CI->RGB mappings.
Added some const qualifiers.
2006-05-22 17:40:07 +00:00
Keith Whitwell
8065c120c4 memory usage fixes for glean/conform, use a better hash function 2006-05-22 16:09:27 +00:00
Keith Whitwell
64da16146f Fix typo 2006-05-22 14:30:58 +00:00
Keith Whitwell
5ddc53f899 Better caching for texenv programs.
Initialize some values correctly.
2006-05-22 14:17:32 +00:00
Keith Whitwell
7e3fa7e837 Speedup the venerable mm.[ch] allocator with doubly linked lists and a
separate list of free segments.
2006-05-22 12:32:35 +00:00
Brian Paul
b0b6d1abe5 In gl_texture_image, replace ImageStride with an ImageOffsets array.
Some hardware lays out 3D mipmaps in a manner that can't be expressed
with a simple image stride.
The ImageOffsets array is allocated and initialized to typical defaults
in the _mesa_init_teximage_fields() function.  If needed, a driver will
then have to replace these offsets.
TexStore and TexelFetch routines updated to use offsets array.
2006-05-20 16:19:48 +00:00
Brian Paul
226d0187b5 glxinfo -l expanded, fixed bug 6863 2006-05-20 15:18:23 +00:00
Brian Paul
04d5d16415 remove some redundant functions, fix-up reference counting 2006-05-20 15:16:45 +00:00
Brian Paul
89ffca52ac use new _mesa_remove_renderbuffer() 2006-05-20 15:12:42 +00:00
Brian Paul
7ac5b7b934 use new _mesa_dereference_frame/renderbuffer() functions 2006-05-20 15:08:25 +00:00
Brian Paul
b52f02121b Added _mesa_remove_renderbuffer() as a counterpart to _mesa_add_renderbuffer().
Added _mesa_dereference_renderbuffer() to encapsulate renderbuffer
reference count decrement, delete, locking.
2006-05-20 15:07:32 +00:00
Brian Paul
2eb88c1752 Added _mesa_dereference_framebuffer() to encapsulate reference count
decrement, delete and locking.
2006-05-20 15:06:35 +00:00
Brian Paul
cbb19930b3 some new comments 2006-05-19 17:31:09 +00:00
Brian Paul
20e11b2332 remove an assertion 2006-05-19 17:27:33 +00:00
Brian Paul
4e470db0b9 print 2D vs 3D in window 2006-05-19 16:48:42 +00:00
Brian Paul
5ec34f0ff9 also test 3D textures (press '2'/'3' to toggle) 2006-05-19 16:42:01 +00:00
Brian Paul
083f8111aa added some CHAN_BITS tests 2006-05-19 03:49:13 +00:00
Brian Paul
68bc7df638 replace FORMAT var with RB_TYPE 2006-05-19 03:47:16 +00:00
Brian Paul
fd02ca7711 Demonstrate rendering 8, 16 and 32-bit/channel images all in one program.
Like older osdemo.c program, but test more OpenGL features like texturing,
blending, lines.
2006-05-19 03:43:39 +00:00
Brian Paul
e35b9058ce updated docs for off-screen rendering 2006-05-19 03:42:16 +00:00
Brian Paul
d44248ca00 Allow rendering 8, 16 and 32-bit/channel images without recompiling.
Uses new renderbuffer adaptors.
2006-05-19 03:41:37 +00:00
Brian Paul
6a74f65c58 install renderbuffer adaptors when color channel sizes need to be reduced 2006-05-19 03:40:29 +00:00
Brian Paul
d2e5598cd3 added rbadaptors.[ch] files 2006-05-19 03:37:41 +00:00
Brian Paul
e2db790a46 added rbadaptors.c 2006-05-19 03:35:38 +00:00
Brian Paul
3c30b35134 Renderbuffer adaptors.
When compiling Mesa with CHAN_BITS=16 or 32, these adaptors allow rendering
into color buffers with smaller channel sizes.
2006-05-19 03:33:50 +00:00
Brian Paul
23a5c57cee minor simplification 2006-05-18 22:31:19 +00:00
Brian Paul
0ca9082cbd texture EnvColor needs to be converted to GLchan, not GLint 2006-05-18 22:11:09 +00:00
Aapo Tahkola
787fd58186 Dont allow 16 tex units to be used at all. 2006-05-18 21:15:26 +00:00
Brian Paul
5e51ebd8eb use -march=i486 instead of -m486 (bug 6954) 2006-05-18 17:04:13 +00:00
Brian Paul
0d957ca400 change initialization of texcoords - not all C compilers support non-constant array initializers 2006-05-18 14:16:43 +00:00
Brian Paul
3d8a791ff9 add extra APP_LIB_DEPS (bug 6954) 2006-05-18 13:55:31 +00:00
Brian Paul
c717ffa146 added solaris-x86-gcc-static 2006-05-17 22:51:44 +00:00
Brian Paul
7d848c3308 generate shared lib, not static 2006-05-17 22:51:23 +00:00
Brian Paul
9cc115e417 formerly known as solaris-x86-gcc 2006-05-17 22:51:08 +00:00
Brian Paul
4c6319db9c call reshape() after init() to set initial projection/viewing transform (see bug 6941) 2006-05-17 22:44:18 +00:00
Tilman Sauerbeck
b99c801f73 unbreak the build 2006-05-17 16:39:40 +00:00
Dave Airlie
cea0c74bcb add texture rectangle support for i815, I wrote the original patch about
2 years ago, I finally dug out an i815 and got it working
2006-05-17 06:26:25 +00:00
Tilman Sauerbeck
601c02f783 bug 6941: fixed initial rendering problems in glxgears 2006-05-16 16:27:54 +00:00
Michal Krol
bd4256acfd Fix typo. 2006-05-16 10:37:16 +00:00
Michal Krol
0b9d7e477a Add functions. 2006-05-16 10:11:29 +00:00
Michal Krol
969c43108e Write attribs to slang machine. 2006-05-16 10:10:56 +00:00
Michal Krol
b4c5905549 Change error message wording. 2006-05-16 10:10:10 +00:00
Michal Krol
b6e92d090c Rename print() to printMESA(). 2006-05-16 10:09:32 +00:00
Michal Krol
563f8ad50a Fix attrib handling. 2006-05-16 10:08:30 +00:00
Michal Krol
21ef956e9a Extend printMESA function to output also to shader's info log.
Fix float-to-int conversion for x86 back-end.
2006-05-16 10:04:24 +00:00
Michal Krol
a67330d157 Cleanup code. Change constructor prototype. 2006-05-16 10:01:07 +00:00
Michal Krol
d1b40400d6 Cleanup code. 2006-05-16 09:53:42 +00:00
Michal Krol
ecf2e5b0a1 Change constructor prototype.
Fix struct field accessing.
2006-05-16 09:52:02 +00:00
Michal Krol
d2b9e1c560 Remove carriage returns. 2006-05-16 09:44:08 +00:00
Michal Krol
d88c67fd81 Add GetInfoLogLength and WriteAttrib functions.
GetInfoLog for shaders if different - it is a concatenation
of compiler output and executor output produced by printMESA.
Fix bugs.
2006-05-16 09:43:09 +00:00
Michal Krol
a1a02e6203 Cleanup GLhandle-to-object translation macros.
Fix minor bugs.
2006-05-16 09:40:30 +00:00
Michal Krol
32c2f939e6 GLSL regression test suite. 2006-05-16 09:32:30 +00:00
Brian Paul
2ca741ad4b added a few extension #ifdef tests 2006-05-15 15:35:38 +00:00
Brian Paul
5e2e96b6f0 Added a check_context_limits() function that checks that the ctx->Const.*
fields are legal.  May catch some driver development bugs.
Called the first time a context is bound.
2006-05-15 15:26:04 +00:00
Brian Paul
c8ea111166 usage() function 2006-05-15 15:14:37 +00:00
Brian Paul
20215ecc7d remove some unused macros 2006-05-14 16:42:20 +00:00
Brian Paul
d77a165eac s/GLbyte/GLubyte/ 2006-05-14 16:27:10 +00:00
Brian Paul
ed875a4cb3 fix typo, remove dead code 2006-05-14 15:56:07 +00:00
Brian Paul
ad7805dfee Expanded output with -l option: vertex/fragment program and vertex/fragment
shader limits.
Misc sync-ups with x.org copy of glxinfo.
2006-05-13 00:18:12 +00:00
Dave Airlie
f1dbacc6ad the r300 should only use 8 until Mesa can deal with this 2006-05-12 06:03:27 +00:00
Dave Airlie
5d7ab75b02 this should use the configured number not the MAX, this has no effect until
the core mesa swrast number is fixed, just spotted this on the way past
2006-05-12 03:50:10 +00:00
Brian Paul
88cf5aa783 In __glXPushArrayState() we weren't pushing the index field.
But later, in __glXPopArrayState(), we were using that field to set
the active_texture_unit.  The value was garbage and could lead to
things blowing up.
See bug 6863.
2006-05-11 16:27:39 +00:00
Brian Paul
fa489dd043 simplify image setup code, added LOD Bias control (l/L keys) 2006-05-11 01:15:48 +00:00
Brian Paul
aecd02b391 simple texture compression test 2006-05-10 22:47:06 +00:00
Brian Paul
932c2fc291 new test image - Delicate Arch, Utah 2006-05-10 22:44:26 +00:00
Brian Paul
bb2dd388d0 Test program for exercising GL_TEXTURE_BASE_LEVEL and GL_TEXTURE_MAX_LEVEL. 2006-05-10 22:37:56 +00:00
Brian Paul
1e7d84e258 move check for event.xbutton.button <= GLUT_MAX_MENUS (see sf bug 1484284) 2006-05-10 19:21:39 +00:00
Brian Paul
700359ca5a check if button >= GLUT_MAX_MENUS in glutAttacheMenu() 2006-05-10 19:21:16 +00:00
Keith Whitwell
adc0490420 Clean up previous change slightly 2006-05-10 09:00:16 +00:00
Keith Whitwell
452be7e7ef Use a (much!) larger executable memory heap so that the glsl x86
allocations succeed.  I'm not sure this is really necessary...
2006-05-10 08:57:34 +00:00
Brian Paul
2b3aab0717 check event button against GLUT_MAX_MENUS (bug 1484284) 2006-05-09 14:51:57 +00:00
Brian Paul
ab13ec10eb 16/32-bit chan fixes, texture compression fixes 2006-05-09 14:41:08 +00:00
Brian Paul
791e7b385a When error-checking 'unit' against num_texture_units, need to use >=, not >.
See bug 6863.
2006-05-09 14:36:58 +00:00
Brian Paul
008ed1df83 Add a new 'all' parameter to _mesa_get_compressed_formats() to indicate whether
all formats or just those without restrictions/limitations should be returned.
We want all when validating the internalFormat parameter to
glCompressedTexImage2D but only want unrestricted formats when handling the
GL_COMPRESSED_TEXTURE_FORMATS query.
2006-05-09 13:51:17 +00:00
Brian Paul
5e4c39dc0e use _mesa_compressed_texture_size() for GL_TEXTURE_COMPRESSED_IMAGE_SIZE query 2006-05-09 00:00:46 +00:00
Brian Paul
a546769733 two more texture compression fixes 2006-05-08 23:59:38 +00:00
Brian Paul
c3c19be8e0 More updates for texture compression.
Added _mesa_compressed_texture_size_glenum() for validating the imageSize
parameter to glCompressedTex[Sub]Image1/2/3() which does _not_ call
ctx->Driver.CompressedTextureSize() - since that could return a padded size.
2006-05-08 23:52:32 +00:00
Brian Paul
5999c5b620 Fix a number of texture compression issues.
Pass the MESA_FORMAT_* token to the _mesa_compressed_row_stride(),
_mesa_compressed_texture_size() and _mesa_compressed_image_address()
functions since we want to use the driver-chosen format, not the user's
internalFormat hint.
Consolidate code related to choosing the texture format in texstoree.c
2006-05-08 19:14:38 +00:00
Brian Paul
c93c18abf1 fix warning 2006-05-08 19:11:21 +00:00
Keith Whitwell
71b2504e03 updates to dri drivers for recent stencil changes 2006-05-08 09:03:35 +00:00
Brian Paul
960973b2ec added CHAN_BITS != 8 test 2006-05-07 16:16:23 +00:00
Brian Paul
85bc17495b misc clean-ups 2006-05-07 16:14:58 +00:00
Brian Paul
ca8b235188 minor clean-ups around DepthScale/Bias 2006-05-07 16:14:13 +00:00
Brian Paul
8a1848bf99 restore -O flag (bug 6814) 2006-05-06 22:39:33 +00:00
Brian Paul
0c7cbf0a7c Check for overflow when converting floating pt Z values to 32-bit GLuint. 2006-05-06 22:30:33 +00:00
Brian Paul
efbf170cfb updated GLX_EXT_texture_from_pixmap tokens (Dave Reveman) 2006-05-05 18:19:54 +00:00
Brian Paul
9b20b68af1 check for float->uint overflow in _mesa_unpack_depth_span() 2006-05-05 14:49:38 +00:00
Keith Whitwell
6717a7aca0 Define VERT_RESULT_EDGE 2006-05-05 09:26:40 +00:00
Dave Airlie
86740f1593 remove temporary code from keithw, this in theory isn't used at the moment
anyways unless INTEL_BATCH is turned on
2006-05-05 06:53:11 +00:00
Dave Airlie
2364d9abd3 Fix i915 driver after stencil changes in Mesa 6.5 2006-05-05 06:52:32 +00:00
Keith Whitwell
ab377ce414 Release temporary 2006-05-05 00:00:46 +00:00
Ian Romanick
6e2ab82f5c Fix some silly spelling errors. 2006-05-03 17:12:12 +00:00
Dave Airlie
ee251d4313 remove some unneeded includes 2006-05-02 08:58:42 +00:00
David Reveman
bea7fe57c1 Update to final EXT_tfp tokens 2006-05-02 08:54:39 +00:00
Dave Airlie
698b04c735 move the pkg config flags for libdrm to the bottom 2006-05-02 08:32:46 +00:00
Adam Jackson
0157624557 Update function signatures for EXT_tfp entrypoints. 2006-05-01 22:25:18 +00:00
Brian Paul
ae7f22f1ef new, faster version of __gluInvertMatrixd(), bug 6748 2006-05-01 16:01:17 +00:00
Jeremy Kolb
0174d894ef Bumped support for xcb 0.9 2006-04-29 16:13:02 +00:00
Tilman Sauerbeck
c5b3343e65 added a trailing newline to pacify gcc 2006-04-28 21:57:32 +00:00
Tilman Sauerbeck
9ecd280f33 fptest1 requires GL_NV_fragment_program 2006-04-28 21:50:41 +00:00
Brian Paul
6a769d97e3 fix second memory leak (bug 5557) 2006-04-28 15:42:15 +00:00
Brian Paul
49a80ca2bc fix first memory leak (bug 5557) 2006-04-28 15:40:11 +00:00
Brian Paul
c4fe46f0b8 fixes for CHAN_BITS!=8 2006-04-27 02:50:31 +00:00
Brian Paul
444cd293fd assorted clean-ups, fixes 2006-04-27 02:47:50 +00:00
Brian Paul
e814d5e89f replace a bunch of casts with GET_XRB macro 2006-04-27 02:46:20 +00:00
Brian Paul
edc16a5f7a fix a few stride computations in _mesa_texstore_rgba() 2006-04-26 18:43:22 +00:00
Aapo Tahkola
e440bcf41a fix warnings. 2006-04-26 12:00:53 +00:00
Aapo Tahkola
d44c3e647f R300_SPAN_DISABLE_LOCKING env var 2006-04-26 11:36:27 +00:00
Brian Paul
a4ebd5f684 remove _glthread_INIT_MUTEX() call 2006-04-26 03:31:59 +00:00
Brian Paul
65dccf377d fix an assertion 2006-04-26 03:29:30 +00:00
Brian Paul
faee3f0f1e minor clean-up 2006-04-26 03:19:54 +00:00
Brian Paul
901ac21938 remove old XFree86 tag 2006-04-26 03:19:37 +00:00
Brian Paul
9c4fd26bca update some tests for visual bit depths to use renderbuffers 2006-04-25 22:55:19 +00:00
Brian Paul
2486267dda use _TNL_FIRST/LAST_MAT indexes 2006-04-25 22:26:21 +00:00
Michal Krol
6acf1e93a2 Remove carriage returns. 2006-04-25 10:11:59 +00:00
Brian Paul
cb0ae25a4e vertex attrib alias change, glPopAttrib/GL_DRAW_BUFFER bug fix 2006-04-25 00:55:47 +00:00
Brian Paul
94b30dc390 Put color index attribute into the 6th attribute slot.
Update a lot of loops, conditionals to use the _TNL_FIRST/LAST_* values
instead of specific vertex attributes.
Remove the EdgeFlagv function from the GLvertexformat struct.
2006-04-25 00:53:25 +00:00
Brian Paul
5bdc6fdebc silence warnings 2006-04-25 00:31:22 +00:00
Brian Paul
095c6699f4 No longer alias generic vertex attribs with conventional attribs for GL_ARB_vertex_program. 2006-04-25 00:21:32 +00:00
Brian Paul
f12ea2d402 extended swizzle (bug 6727) 2006-04-24 16:33:25 +00:00
Brian Paul
9cd1cc0535 fprintf() clean-up (bug 6730) 2006-04-24 16:32:05 +00:00
Brian Paul
263fff44b4 updated assertion 2006-04-23 15:28:54 +00:00
Aapo Tahkola
44a22a2c28 enable feedback rendering 2006-04-23 08:04:50 +00:00
Aapo Tahkola
a55842b9b3 disable hw locking when entering span rendering for now 2006-04-23 07:59:40 +00:00
Aapo Tahkola
95cc7a6dac need to hold before freeing 2006-04-23 07:15:19 +00:00
Benjamin Herrenschmidt
aa93b4ced0 Enable USER_BUFFERS, RADEON_VTXFMT_A and HW_VBOS on big endian by forcing all elts
to 32 bits (it would be possible to do a half word swap for 16 bits if somebody is interested) and by using the input route mecanism to swap ubyte's properly in r300EmitArrays. Tested with cva, varray and quake3
2006-04-23 05:54:06 +00:00
Brian Paul
2f92adb9e0 Fix yet another issue with popping GL_DRAW_BUFFER state with respect to
single vs. multiple outputs and what kind of FBO is currently bound.
2006-04-22 01:20:20 +00:00
Adam Jackson
e60ce392d8 Ensure all GART allocations are freed on context destruction, rather than
waiting for the DRM to reap them at process exit.  Fixes (fatal) allocation
failures in AIGLX configurations.

Reviewed by: Aapo Tahkola
2006-04-21 19:53:52 +00:00
Adam Jackson
ca98203cd9 Fix format strings for LP64 2006-04-21 19:51:29 +00:00
Brian Paul
b87957d59a pass color index as float, not int 2006-04-21 02:44:35 +00:00
Brian Paul
ba999b1a3f depend is not a .PHONY target 2006-04-21 01:13:16 +00:00
Brian Paul
a95dd106e3 fix indentation 2006-04-21 01:02:49 +00:00
Brian Paul
fb87976ef6 use vertex.attrib[3] instead of vertex.color 2006-04-21 01:02:27 +00:00
Brian Paul
8743d00571 s/NV/ARB/ 2006-04-21 01:01:58 +00:00
Aapo Tahkola
34ba50522a limit max program/param length to 255 (spotted by sroland) 2006-04-20 19:43:21 +00:00
Brian Paul
8a97946e0a check glLoadProgramNV len < 0 (bug 6679) 2006-04-20 15:06:40 +00:00
Brian Paul
45e05dccd9 error_attrib() should generate GL_INVALID_VALUE, not GL_INVALID_ENUM.
New doxygen comments, misc clean-ups.
2006-04-20 02:29:26 +00:00
Brian Paul
3538f81513 Make most of the _mesa_noop_*() functions static.
Generate GL_INVALID_VALUE, not GL_INVALID_ENUM when glVertexAttrib is called
with a bad index.
Use _mesa_noop_vtxfmt_init() in DRI drivers to initialize vertex format
struct.
2006-04-20 02:16:55 +00:00
Brian Paul
34b3b40af9 some tentative code for _mesa_update_framebuffer_visual() 2006-04-20 00:45:08 +00:00
Dave Airlie
b5d76b6858 SrcReg->Swizzle is always initialized to SWIZZLE_NOOP, and if the program
specifies a 2/3/4-compontent swizzle suffix, SrcReg->Swizzles is just ORed
against the new component values, without resetting it first.

Attached patch makes tests/vptest2 pass.

From Tilam Sauerbeck bug 6673
2006-04-19 23:15:51 +00:00
Brian Paul
6e542f11c9 minor updates 2006-04-19 16:55:27 +00:00
Brian Paul
53f8b7190e fix invalid free() problem (bug 6658) 2006-04-19 14:42:01 +00:00
Brian Paul
5beff7c6c1 updates for GNU/Hurd (bug 6657) 2006-04-19 14:03:04 +00:00
Brian Paul
12ad488e59 Replace old README.X11 with updated xlibdriver.html 2006-04-19 03:25:06 +00:00
Brian Paul
b3282a3b9d assorted AIX, IRIX fixes from Dan Schikore 2006-04-18 12:56:11 +00:00
Brian Paul
e34bf25d2d -arch AIX64 no longer needed 2006-04-18 12:55:48 +00:00
Michal Krol
2f8496b565 Remove carriage-return chars *ONLY*. 2006-04-18 10:47:19 +00:00
Michal Krol
d55de658b5 Add support for ARB_vertex_shader attrib binding and query.
Clean-up ARB_shaderobjects code a bit.
2006-04-18 10:30:29 +00:00
Kristian Høgsberg
fcdc6a7d24 Add .note.GNU-stack section to assembler files to avoid the default behavior
of requesting executable stacks.
2006-04-17 18:58:24 +00:00
Brian Paul
28bc3cdfba another simple FBO test 2006-04-14 16:25:27 +00:00
Brian Paul
3adee0829b test glReadPixels speed w/ various formats/types, PBOs 2006-04-14 16:20:55 +00:00
Brian Paul
1e1af99132 Use 'file' command in more places to determine the library ABI (IRIX, SunOS,
Darwin), removes need to pass in special -archopt flags.
Restore the -dlopen flag afterall.
2006-04-14 14:14:51 +00:00
Brian Paul
6bef5e7621 Don't have to pass ABI-related flags to mklib anymore. 2006-04-14 14:13:00 +00:00
Brian Paul
9326962f06 Silence a few -pedantic warnings.
Remove ^M chars.
Replace _mesa_get_string() with simpler copy_string().
2006-04-14 03:43:39 +00:00
Brian Paul
a76c216b37 s/MaxTextureUnits/MaxTextureCoordUnits/ 2006-04-14 02:28:26 +00:00
Brian Paul
780155ab31 6.5.1 fixes 2006-04-14 02:26:40 +00:00
Brian Paul
730b26556b When popping GL_DRAW_BUFFER state, need to re-do error checking since
validity depends on whether a window-system FBO or user-created FBO is
currently bound.  glPopAttrib() may generate GL_INVALID_OPERATION because
of this.
2006-04-14 02:25:35 +00:00
Brian Paul
61608ecfa7 silence -pedantic warning 2006-04-14 02:21:04 +00:00
Brian Paul
767ffdcc9f don't need s_depth.h 2006-04-14 02:20:47 +00:00
Brian Paul
ee4e75bd6f Replace ctx->Const.MaxTextureUnits w/ ctx->Const.MaxTexture[Coord/Image]Units
in various places.
Note that ctx->Texture.CurrentUnit needs to be tested against Coord/Image
limits when referenced, not just in glActiveTexture().
2006-04-14 02:20:18 +00:00
Brian Paul
1d886a81ad If the image file is RGB, convert to RGBA (fixes segfault).
Added CheckError() calls.
Remove -ci option.
2006-04-13 19:45:42 +00:00
Brian Paul
da238ee06a Fix comment about MaxTextureUnits, needs to be min of coord and image units.
See bug 5994.
Also add a few assertions.
Use MaxTextureUnits in get.c code.
There's probably other places where we need to clean-up the usage of the
MaxTexture[Coord/Image]Units constants.
2006-04-13 19:21:58 +00:00
Brian Paul
564b2aa2ef silence minor warnings 2006-04-13 19:18:40 +00:00
Brian Paul
13abf91b42 casts to fix some -pedantic warnings 2006-04-13 19:17:13 +00:00
Brian Paul
ad38681a00 Set array normalization flag for normals, colors (Keith) 2006-04-13 15:57:29 +00:00
Brian Paul
56e0ee8efe remove the -dlopen option. Always make both kinds of libs for AIX, Darwin. 2006-04-13 15:17:50 +00:00
Brian Paul
cbed2f8061 more updates (Dan Schikore) 2006-04-13 03:10:16 +00:00
Brian Paul
294d9abf6f add new configs (Dan Schikore) 2006-04-13 03:00:14 +00:00
Brian Paul
cb32dcfa33 new configs, misc updates (Dan Schikore) 2006-04-13 02:59:29 +00:00
Brian Paul
fe14cf6951 Fixes for AIX, SunOS, Darwin. -dlopen flag to build dlopen()'able modules
for AIX, Darwin.  (Dan Schikore)
2006-04-13 02:23:25 +00:00
Brian Paul
ecc0d10d2d Use -I$(INCDIR) to get Mesa, not system headers (Dan Schikore) 2006-04-13 01:54:04 +00:00
Brian Paul
a186c80788 updated tests for defining __FUNCTION__ (Dan Schikore) 2006-04-13 01:52:32 +00:00
Brian Paul
09c8e41955 added 'const' (Dan Schikore) 2006-04-13 01:51:25 +00:00
Brian Paul
c4a4864210 compile fix from Dan Schikore 2006-04-13 01:49:45 +00:00
Aapo Tahkola
c82eadd157 GLboolean cannot hold GLuint! usage of tmus >= 4 no longer lock r300. 2006-04-12 13:51:18 +00:00
Brian Paul
68ad7ca3ba allow rotation w/ mouse 2006-04-11 23:41:40 +00:00
Brian Paul
da21ca988a add missing 'union' keyword 2006-04-11 23:23:36 +00:00
David Reveman
ba23f699f0 FBConfig support for EXT_tfp 2006-04-11 12:21:48 +00:00
David Reveman
ea2b711061 Add attrib_list to glXBindTexImageEXT 2006-04-11 12:19:06 +00:00
David Reveman
c6f8ae1085 Add attrib_list to glXBindTexImageEXT 2006-04-11 12:12:13 +00:00
David Reveman
342d1de38c Fix CreateDrawable 2006-04-11 12:07:41 +00:00
Michal Krol
bb38cadb1c More GLSL code:
- use macros to access and modify render inputs bit-field;
- un-alias generic vertex attributes for ARB vertex calls;
- use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS
  (ARB code) in place of VERT_ATTRIB_MAX;
- define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex
  attributes for ARB_vertex_shader;
- fix generic attribute index range check in arbprogparse.c;
- interface GLSL varyings between vertex and fragment shader;
- use 64-bit optimised bitset (bitset.h) for render inputs;
2006-04-11 11:41:11 +00:00
Aapo Tahkola
d90ad3fd87 get fog going(for real) 2006-04-11 11:20:43 +00:00
Aapo Tahkola
3ed16bd9cc rectangular fp16 fixes (Ewald Snel) 2006-04-11 04:20:25 +00:00
Aapo Tahkola
6c419be402 Fog support (Ewald Snel) 2006-04-11 04:17:50 +00:00
Brian Paul
3a5ec72125 use _mesa_debug() instead of message() - fixes poor formatting of output 2006-04-10 23:36:18 +00:00
Eric Anholt
8c3d15ce28 Destroy the GL context after driDestroyTextureHeap, because the driver's
DestroyTexObj has a dependence on the glCtx and may segfault otherwise.
2006-04-09 17:48:28 +00:00
Aapo Tahkola
83a43aca23 fix some conflict happenings at context destroy by freeing buffers immediately. array locking can be done with vbos for vtxfmt_a so we dont really need to try to reuse them. 2006-04-08 20:05:50 +00:00
Brian Paul
ff2b910dd1 regenerate SPARC assembly dispatch (bug 6484) 2006-04-07 15:20:33 +00:00
Brian Paul
9073c40c7e added sunos5-64-gcc (bug 6484) 2006-04-07 15:16:46 +00:00
Brian Paul
1936019cd1 replace >&/dev/null with >/dev/null so it works with all shells 2006-04-07 15:11:51 +00:00
Brian Paul
9f3bcd87db bump version to 6.5.1 2006-04-07 14:29:52 +00:00
Alan Hourihane
e2af1da1d3 Fix some warnings on x86_64 2006-04-07 08:50:39 +00:00
Dave Airlie
9d3de643d1 make miniglx use libdrm properly 2006-04-07 03:20:56 +00:00
Adam Jackson
d25ad506f2 Coverity #943: Avoid a NULL chase. 2006-04-07 00:05:50 +00:00
Adam Jackson
03593f53e7 Coverity #1083: Fix a use after free case. 2006-04-06 23:50:44 +00:00
Brian Paul
0a605f93db fixed line clipping bug 6512 2006-04-06 22:15:27 +00:00
Brian Paul
51faca1270 Rename CLIP_ALL_BITS to CLIP_FRUSTUM_BITS to reflect the fact that the value
only includes the 6 frustum bits, not the user-clip plane bit, nor the vertex
cull bit.
2006-04-06 22:11:57 +00:00
Brian Paul
f51a32e82a Fix line clipping bug 6512.
This fix is to discard the line if both dot products are negative.
2006-04-06 22:07:01 +00:00
Brian Paul
05529fefa4 minor CFLAGS clean-up 2006-04-06 16:50:38 +00:00
Brian Paul
f4d5b1da7b Set DRIVER_DEFINES instead of DEFINES to fix duplicate flags problem 2006-04-06 16:48:36 +00:00
Brian Paul
0dcab2a86a Replace DEFINES with DRIVER_DEFINES. If a driver needs to set extra flags,
do so with DRIVER_DEFINES.
This eliminates the duplicated flags we were passing to each cc command.
2006-04-06 16:47:51 +00:00
Brian Paul
789eb27870 minor CFLAGS reordering 2006-04-06 16:46:34 +00:00
Brian Paul
c1c954e81b remove unused var 2006-04-06 16:24:01 +00:00
Brian Paul
a1a9858ca3 update a couple MESA_FORMAT_Zxxx occurances 2006-04-06 16:23:40 +00:00
Brian Paul
e099ce85ca re-enable animation 2006-04-06 04:34:09 +00:00
Brian Paul
dc32eb8f93 fix render to depth texture bugs 2006-04-06 04:25:48 +00:00
Brian Paul
a9bcf75103 Replace MESA_FORMAT_DEPTH_COMPONENT_FLOAT32 with 32-bit integer format.
This allows render to depth texture (we don't support floating pt. Z buffers).
Rename MESA_FORMAT_DEPTH_COMPONENT16/32 as MESA_FORMAT_Z16/32.
Software fallback for glCopyTexImage now uses integer temporary image instead
of float, eliminates a lot of float/int conversions.
2006-04-06 04:23:58 +00:00
Brian Paul
762c3618f5 Added render to depth texture support with GL_EXT_framebuffer_object.
Only render the shadow/depth texture when really needed, not every frame.
Remove support for old SGIX shadow extensions.
2006-04-06 04:11:28 +00:00
Brian Paul
5722338ea5 do additional checking for setting up depth/stencil wrappers 2006-04-06 04:09:03 +00:00
Brian Paul
32cd166971 remove duplicated framebuffer attachment test 2006-04-05 19:58:37 +00:00
Brian Paul
f08f233d6f Remove the code that checks for duplicated framebuffer attachments (which
generated the error GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT).
This was removed in version 117 of the GL_EXT_framebuffer_object spec.
2006-04-05 19:58:10 +00:00
Brian Paul
59ebe1ff77 pass -m32 or -m64 to linker for SunOS as needed (bug 6484) 2006-04-05 13:43:02 +00:00
Dave Airlie
e80b9c24f4 add tiling/fence support for the miniglx driver 2006-04-05 07:13:17 +00:00
Dave Airlie
2e7af79f48 don't waste the reserved memory, take an approximation of the pool
allocator from the X.org driver - not as complicated
2006-04-05 06:20:58 +00:00
Brian Paul
c87809c9ed just some comments/docs 2006-04-05 03:29:46 +00:00
Brian Paul
1979b6b2de set the texture border color for the depth texture 2006-04-05 03:26:12 +00:00
Brian Paul
900da88dae first 6.5.1 bug fix - bug 6498 2006-04-05 03:25:05 +00:00
Brian Paul
9ebe3b6d36 Check/use texture border color when sampling depth textures. (bug 6498)
Silence some warnings.
2006-04-05 03:23:44 +00:00
Brian Paul
28b014ee25 Silence minor compiler warnings (-Wextra). 2006-04-05 03:05:17 +00:00
Alan Hourihane
027bb77e02 We always have a back buffer. Fixes visual problems. 2006-04-04 13:03:20 +00:00
Dave Airlie
f8ca99d697 use gart base from drm not try to work it out ourselves.. bump radeon client
to need 1.6 drm where this first appeared.. this fixes r300 on PCIE
2006-04-04 11:17:46 +00:00
Dave Airlie
6a9f0a27c3 switch to card_type rather than IsPCI, doesn't change any functionality yet 2006-04-04 11:04:30 +00:00
Michal Krol
7473d17268 Add bitset.h. 2006-04-04 10:25:23 +00:00
Michal Krol
b7339d7023 Fix texcoord interpolation for fragment shaders. 2006-04-04 10:22:05 +00:00
Michal Krol
b4e9750bf4 More GLSL code:
- add support for varyings;

GLSL fixes:
- pow was wrongly computed in x86 back-end;
2006-04-04 10:18:07 +00:00
Michal Krol
607b61a994 Bit set. 2006-04-04 10:11:12 +00:00
Michal Krol
1a5fecb4d6 Return GLSL version string (1.10). 2006-04-04 10:08:27 +00:00
Michal Krol
ae76be49eb Define MAX_VERTEX_ATTRIBS to 16. 2006-04-04 10:06:39 +00:00
Adam Jackson
3c327c9f3a Fix license header to SGI FreeB. (Eric Kunze, SGI) 2006-04-03 22:23:52 +00:00
Adam Jackson
76a0797c32 Bug #5754: Allocate texture memory correctly. (Richard Drummond) 2006-04-03 21:28:07 +00:00
Karl Schultz
a9cc078b0e Fix problem reported by Bill Newman in read_rgba_pixels for 16 and 32 bit (GDI driver). Bug would cause the wrong pixel to be read if more than one pixel requested and could cause memory access violations. 2006-04-03 16:54:25 +00:00
Brian Paul
ac619f4912 64-bit build for sunos5 w/ gcc 2006-04-03 16:09:53 +00:00
Dave Airlie
edd2702287 add miniglx sources to i915 2006-04-03 07:41:31 +00:00
Dave Airlie
225148ea07 if DDX is -1 don't do DDX check 2006-04-03 07:41:14 +00:00
Dave Airlie
a824813d22 use Width 2006-04-03 07:40:44 +00:00
Dave Airlie
5bb5a1908f add pitch support and use new Width 2006-04-03 07:40:28 +00:00
Dave Airlie
a951c80ae4 setup to use pci access, comment out size bumps,
sest xres from real width, use new -1 ddx version
2006-04-03 07:32:11 +00:00
Dave Airlie
808a678d85 do a drm lock/unlock sequence after the client close 2006-04-03 07:31:27 +00:00
Dave Airlie
d61c1cc7c9 add width to struct for width != virtual width 2006-04-03 07:30:48 +00:00
Dave Airlie
cf69d09202 make miniglx use libdrm and libpciaccess 2006-04-03 07:30:23 +00:00
Adam Jackson
b927a75979 Coverity #459: Silly off-by-one error. 2006-04-03 00:18:03 +00:00
Adam Jackson
5ab5517ba8 Coverity #468: Fill in the rest of the error_list to match the error codes
defined in glxproto.h.  Avoids reading semi-random memory (and probably
crashing) when calling __glXErrorString().
2006-04-03 00:00:53 +00:00
Adam Jackson
05ddc4a6c5 Coverity #476: Avoid walking off the end of ->vtx.attrsz, it's declared to
be _TNL_ATTRIB_MAX long so that's not a valid index (woo zero based
indexing).

This code still looks wrong though, the asymmetry between _tnl_copy_to_current
and _tnl_copy_from_current has me worried.
2006-04-02 23:51:30 +00:00
Adam Jackson
b3208c2de9 Coverity #567: Fix a memory leak on a failure path. 2006-04-02 23:17:49 +00:00
Adam Jackson
1ee92f984b Coverity #650: Fix a memory leak when near OOM. 2006-04-02 23:15:35 +00:00
Daniel Borca
75f81ad5f9 Assorted updates. 2006-04-01 13:38:45 +00:00
Daniel Borca
b100484145 Initialize renderbuffer size. 2006-04-01 13:26:31 +00:00
Dave Airlie
278736ff6f These messages really should be printed all the time, users want to
know this not have to set debug for it
2006-04-01 04:40:01 +00:00
Brian Paul
57b61638af added MD5 checksums for 6.5 files 2006-04-01 02:29:40 +00:00
Brian Paul
09b6b9e9c3 added 6.5 relnotes 2006-04-01 01:49:31 +00:00
Eric Anholt
482d9dd21d Don't index box by the box's index within numClipRects; just dereference it.
Fixes drawing with more than one cliprect. (Keith Packard)
2006-04-01 00:57:57 +00:00
Eric Anholt
9e8659f346 Call driUpdateFramebufferSize when we've found an updated DRI drawable stamp,
like other drivers.  Failure to do so resulted in incorrect buffer sizes for
resized windows.
2006-04-01 00:55:02 +00:00
Brian Paul
e3f41ce611 6.5 updates 2006-03-31 23:10:21 +00:00
Daniel Borca
3a3e63dc4f DMesa now uses OSMesa as a back-end. 2006-03-31 20:53:12 +00:00
Daniel Borca
3a46dff27d Removed empty arrays. 2006-03-31 20:49:55 +00:00
Aapo Tahkola
29d833bd52 Enough testing already 2006-03-31 18:46:33 +00:00
Brian Paul
9305cba6a7 bump version/date 2006-03-31 17:31:22 +00:00
Brian Paul
f2ad1b60c0 Dave Reveman's patch for GLX_MESA_copy_sub_buffer support 2006-03-31 15:48:04 +00:00
Brian Paul
df3d4e0bb9 Fix the fetch_texel_ci8() code to deal with floating point color palettes.
Fixes Quake on Windows bug.  (Karl Schultz)
2006-03-31 15:22:09 +00:00
Aapo Tahkola
6652dc8aac free rs300 and ban r350(according to r300.sf.net) 2006-03-31 14:11:41 +00:00
Aapo Tahkola
7da1daf0a2 make u_list adjustable 2006-03-31 10:10:45 +00:00
Karl Schultz
18b72d184c updated again for 6.5. 2006-03-31 06:54:11 +00:00
Aapo Tahkola
ef5b48dea1 warn about broken dxt 3/5 2006-03-31 03:54:36 +00:00
Aapo Tahkola
2cd4056fae Dont rely on writebacks 2006-03-31 03:50:29 +00:00
Aapo Tahkola
fb0175db93 disable r300 chips. R300_FORCE_R300 to force 2006-03-31 03:16:39 +00:00
Aapo Tahkola
aa70d92a13 More meaningful warning. 2006-03-31 03:01:28 +00:00
Eric Anholt
aba4967150 The pitches of the driRenderbuffers are in bytes, so no need to multiply by cpp.
Fixes software fallbacks. (Keith Packard)
2006-03-30 22:44:51 +00:00
Karl Schultz
174ce730c6 Clean up data structures, finishing off some of the cleanup work suggested by Brian. Now also creating two renderbuffers, so apps can now switch with glDrawBuffer. 2006-03-30 21:53:23 +00:00
Adam Jackson
48547ee129 Clarify which version of Mesa we're talking about 2006-03-30 19:26:54 +00:00
Adam Jackson
823c581f7c Revert my change from 1.37 as being bogus (see ensuing list discussion for
rationale).
2006-03-30 19:23:38 +00:00
Adam Jackson
8982697981 Update the install docs to make explicit note of libdrm version dependency.
Change pdx.fd.o to {anon,}cvs.fd.o as appropriate.
2006-03-30 19:21:20 +00:00
Adam Jackson
9542537cee Style fix, drop the explicit -ldrm from the link line. 2006-03-30 19:20:25 +00:00
Karl Schultz
c3f2c287ce Fix logic error in viewport function so that we still resize the buffers if the viewport and the window both change to the same new size. This lets the gloss demo work with the -f option. 2006-03-30 18:03:41 +00:00
Brian Paul
9e81d6ae3a When creating front/back renderbuffers, init the Red/Green/Blue/AlphaBits fields 2006-03-30 16:33:35 +00:00
Brian Paul
94d6bf883b Init the Red/Green/Blue/Alpha/Depth/StencilBits fields in driNewRenderbuffer() 2006-03-30 16:32:16 +00:00
Brian Paul
84c5d0a789 comments regarding assertions 2006-03-30 16:29:41 +00:00
Karl Schultz
dd7074736f Use [][3] for write_rgb_span_16 2006-03-30 16:26:26 +00:00
Brian Paul
ef8b89faee some comments for Darwin 2006-03-30 14:28:28 +00:00
Brian Paul
159ca321cb added glfbdev.h to MAIN_FILES 2006-03-30 14:27:25 +00:00
Brian Paul
ec83f38e2e fix bad call to FindLine() 2006-03-30 14:26:29 +00:00
Brian Paul
197d725601 added -f option for full-screeen 2006-03-30 14:25:54 +00:00
Brian Paul
693a66aea9 press '0' for glDrawBuffer(GL_NONE) 2006-03-30 14:24:58 +00:00
Brian Paul
8ea3353ec3 XMesaDrawLine macro, not currently used 2006-03-30 14:20:26 +00:00
Karl Schultz
87af12dbdc Fixes from Brian to help migrate to render buffer DD interfaces. Also fix bug in the viewport function that was using the viewport size to resize the buffer, when it should have been using the window size. Fix bug in write_rgb_span_32 where the incoming pixel data parameter was coded as a [][4] instead of [][3]. Now all the demos work correctly except singlebuffer. 2006-03-30 07:58:24 +00:00
Karl Schultz
a8c9ecfab0 Fixes from Brian 2006-03-30 07:53:15 +00:00
Dave Airlie
4ecb9f0532 Fix up some incorrect pointers and clear screen 2006-03-30 05:47:08 +00:00
Dave Airlie
8b186e3695 add initial miniglx files for i915, not integrated yet 2006-03-30 04:33:58 +00:00
Karl Schultz
e43edd3c70 Updated for Mesa 6.5 2006-03-29 23:53:43 +00:00
Brian Paul
20e15f9381 Add -ansi -pedantic flags to OPT_FLAGS. This got lost at some point. Good for catching sloppy coding. 2006-03-29 23:45:44 +00:00
Brian Paul
75a8383e8d Update the _WindowMap matrix in _mesa_set_viewport() and _mesa_DepthRange().
This is a temporary fix for the DRI drivers.
Should really only have to update the matrix via _mesa_update_state().
2006-03-29 23:44:31 +00:00
Brian Paul
920023240c put braces around RENDER_SPAN macro when called, not when defined. Fixes -pedantic warnings in x11 driver 2006-03-29 23:42:44 +00:00
Brian Paul
62c325af3f fix GETPROCADDRESS usage, remove carriage return chars (bug 6430) 2006-03-29 23:20:49 +00:00
Brian Paul
32244ac7e9 s/glslnose.c/glslnoise/ (bug 6430) 2006-03-29 23:18:13 +00:00
Kristian Høgsberg
3a6d968f37 Fixes to silence warnings in code generated by glapi scripts. 2006-03-29 22:32:38 +00:00
Karl Schultz
cec74532bf Add newest source code files to project. 2006-03-29 20:55:48 +00:00
Brian Paul
f331bb0312 added some no-op virtual destructors to silence g++ 4.0.0 warnings 2006-03-29 18:54:00 +00:00
Brian Paul
c3051df8e1 fixes from John Shell (bug 6339) 2006-03-29 18:46:46 +00:00
Brian Paul
db79d2abac minor clean-up 2006-03-29 18:41:19 +00:00
Brian Paul
c19de0b7f6 FP textures and fixes (Ewald Snel) 2006-03-29 15:21:01 +00:00
Brian Paul
e5b6eee15d fix components initialization in two places (Ewald Snel) 2006-03-29 15:17:57 +00:00
Brian Paul
006e183b6e move NumNativeAlu/TexInstruction assignments (Ewald Snel) 2006-03-29 15:15:37 +00:00
Jouk Jansen
180b0dab8b Committing in .
Removing <CR>

 Modified Files:
 	Mesa/src/mesa/main/fog.c Mesa/src/mesa/main/hint.c
 	Mesa/src/mesa/main/mtypes.h
 ----------------------------------------------------------------------
2006-03-29 12:09:08 +00:00
Brian Paul
a85fbb1d36 prep for 6.5 release 2006-03-29 04:53:02 +00:00
Brian Paul
555478fed6 New code for rendering to depth/stencil textures.
Re-org of the renderbuffer wrapper code.
2006-03-29 04:51:03 +00:00
Brian Paul
2742c4e4db new tests for GL_DEPTH_STENCIL_EXT 2006-03-29 04:48:21 +00:00
Brian Paul
2b430ef56a a few new assertions 2006-03-29 04:47:34 +00:00
Karl Schultz
b7a5a9db88 Windows makefile to easily build all demo programs. 2006-03-29 04:02:44 +00:00
Karl Schultz
888ab86f85 Repair corrupted file and remove rogue 'test' project. 2006-03-29 04:01:25 +00:00
Brian Paul
2526152a10 fix a GLuint vs GLushort test, new assertions 2006-03-29 04:01:05 +00:00
Brian Paul
519a2e7cb7 Move the computation of the viewport matrix into a new update_viewport_matrix()
function since the matrix depends on the viewport params and the framebuffer's
depth buffer resolution.
Fixes some renderbuffer / depth range issues.
This simplifies the _mesa_set_viewport() and _mesa_DepthRange() functions too.
2006-03-29 03:59:34 +00:00
Karl Schultz
b687531f69 Undef a conflicting symbol in Windows. 2006-03-29 03:42:32 +00:00
Karl Schultz
54b65e080e add showbuffer.[ch] which could be in this dir after the targets are built. 2006-03-29 03:41:38 +00:00
Karl Schultz
3076557ca3 Update for new Mesa entry points. I need to change the python script that generates this file to the new XML scheme, but for now, a manual update is OK. 2006-03-29 02:12:31 +00:00
Karl Schultz
4f21180416 Remove unneeded includes of time.h 2006-03-29 02:09:47 +00:00
Daniel Borca
c61763b5d2 Match pixel addresses with `compute_row_addresses' in RGB mode (also obey RGB/UNSIGNED_BYTE rule). 2006-03-28 21:40:14 +00:00
Roland Scheidegger
08e62a1476 fix missing *_STATECHANGE in *UpdateViewportOffset for radeon, r200 and r300 (reported by Jim Duchek). Fix some potential problems with strict-aliasing with r200 and radeon drivers in *UpdateViewportOffset, *PolygonOffset and *UpdateWindow functions (some compiler warnings about strict-aliasing remain in the codegen vertex code, and there may be more problems unnoticed by the compiler). 2006-03-28 17:22:57 +00:00
Brian Paul
0e26ca0834 updated comment about framebuffer's Visual field 2006-03-28 15:28:00 +00:00
Brian Paul
e44499480f added known issue: render to depth textures not working 2006-03-28 15:25:44 +00:00
Brian Paul
9f6ff49650 update conditional for render to GL_DEPTH_STENCIL texture, check for valid teximage before calling ctx->Driver.RenderTexture() 2006-03-28 15:24:50 +00:00
Brian Paul
c7a5d528c7 a little code movement so we don't make invalid casts from gl_renderbuffers to xmesa_renderbuffers 2006-03-28 15:21:44 +00:00
Aapo Tahkola
b8915340ea fix #6072 (Keith Whitwell) 2006-03-28 10:26:34 +00:00
Keith Whitwell
1155f64cc0 Revert merge of new/experimental code from texmem branch. 2006-03-28 07:40:57 +00:00
Brian Paul
255e8ebd58 enable GL_ARB_half_float_pixel, was GL_MESAX_half_float_pixel 2006-03-28 01:23:43 +00:00
Brian Paul
95174c4eb2 comment about byteswapping in _mesa_unpack_depth_span() 2006-03-28 01:22:48 +00:00
Roland Scheidegger
f76ff7e4a7 make allow_large_textures 1 by default for radeon and r200, and consequently enable all texture units by default on those cards (3 for radeon, 6 for r200). Fix the usually forgotten DRIVER_DATE accordingly. 2006-03-27 23:53:53 +00:00
Roland Scheidegger
96aa403cee remove unnecessary typedefs causing compiler warnings 2006-03-27 23:34:53 +00:00
Daniel Borca
004673d4d1 Disable `hidden' attribute for DJGPP 2006-03-27 17:34:31 +00:00
Daniel Borca
0ad1bda7a1 PutRowRGB was not initialized for OSMESA_RGB_565 2006-03-27 17:32:22 +00:00
Dave Airlie
e72b745f32 Fixup makefile for solo non-egl 2006-03-27 00:07:21 +00:00
Brian Paul
ea4fe661d7 merge from texman branch 2006-03-26 05:22:17 +00:00
Brian Paul
4cbd16ed3f fix some PFNGL* typedefs 2006-03-26 05:09:03 +00:00
Brian Paul
06049e2416 remove carriage returns 2006-03-25 22:52:39 +00:00
Brian Paul
753af3a206 fix issue in _mesa_free_framebuffer_data() 2006-03-25 17:57:52 +00:00
Brian Paul
70207b70c5 check for incomplete FBO in _mesa_Clear() 2006-03-25 16:16:37 +00:00
Brian Paul
1bbc203c6e Clean up the recent code related to texture_override(). Pass params in a
more logical order.
Remove a mess of stray ^M chars.
Fix a bug when checking if the texture object's format is GL_COLOR_INDEX
or GL_DEPTH_COMPONENT.  This fixes a segfault when GL_TEXTURE_BASE_LEVEL!=0.
2006-03-24 23:53:50 +00:00
Brian Paul
6494541eaa lots of debug options, some code movement, etc 2006-03-24 23:17:06 +00:00
Brian Paul
590cd26006 added some missing formats in _mesa_source/dest_buffer_exists() 2006-03-24 22:53:00 +00:00
Aapo Tahkola
ed4ab13cef Make ARB_vp backends happy with nv arl 2006-03-24 16:35:08 +00:00
Aapo Tahkola
af8d39861d secondary color fixes. 2006-03-24 16:33:34 +00:00
Brian Paul
c4f2710f9d Added -l option for explicit locking around Xlib and GLX calls in
threaded code.  Seems to improve reliability quite a bit.
2006-03-23 17:17:23 +00:00
Brian Paul
436d72e994 Added -p option to create a display connection per thread.
This seems more stabile than using one display connection for all threads.
Still get an occasional Xlib: unexpected async reply error, unfortunately.
2006-03-23 16:58:22 +00:00
Dave Airlie
d76ef5867d make solo build complete 2006-03-23 04:20:37 +00:00
Dave Airlie
0a6040dc2d fix coverity 1107: use after free 2006-03-23 04:15:29 +00:00
Dave Airlie
eab896cc21 fix coverity 926: use before NULL check 2006-03-23 04:13:37 +00:00
Brian Paul
f756924fa5 Need to check for new state and do readpixels/drawpixels clipping after
we call RENDER_START since that may involve validating the drawable and
updating its dimensions.
2006-03-22 22:02:07 +00:00
Aapo Tahkola
4fafe6390b implement arl and enable hw nv_vp. 2006-03-22 21:29:27 +00:00
Aapo Tahkola
6fc864b9e6 ARL dst idx was undefined. 2006-03-22 21:29:15 +00:00
Brian Paul
daffbe99dc GL_EXT_packed_depth_stencil should be off by default 2006-03-21 21:57:00 +00:00
Michal Krol
8995544bc9 Silencium gcc warnings. 2006-03-21 10:59:14 +00:00
Michal Krol
071357096e GLSL fixes:
- generate error on NULL pointers in glShaderSourceARB;
- reinstall program object, if current, in glLinkProgramARB;
- vertex and fragment shaders are optional in program object;
- floor asm was wrongly computed for x86 back-end;
- allow for (void) idiom in function prototypes;
- all fixed-state uniforms are updated;
- local variable initializers are working;
- implement texture* and shadow* functions for vertex processor;
- generate error if too many arguments in general constructor;
- trim unused data in general constructor;
- struct r-value field select was badly relocated;

Changes:
- add derived state gl_fog_attrib::_Scale;
- add derived state gl_light::_CosCutoffNeg;
2006-03-21 10:37:40 +00:00
Brian Paul
519b23b21f Lots of changes/fixes for rendering to framebuffer objects.
- When deleting texture objects, unbind from FBOs if necessary.
- Changed driver hooks for starting/ending render to texture.
- Now properly handle case where gl[Copy]TexImage() is called after
  glFramebufferTexture[123]D().  That didn't work before.
2006-03-20 18:51:57 +00:00
Brian Paul
4991888fa0 additional assertions and debug code for testing FBO completeness 2006-03-20 15:27:55 +00:00
Brian Paul
34bd1233a9 additional error checking to be sure source renderbuffer exists for glCopyTex[Sub]Image() 2006-03-20 15:27:33 +00:00
Brian Paul
457fb0e128 use new _mesa_sourc/dest_buffer_exists() functions 2006-03-20 15:26:20 +00:00
Brian Paul
7275d4d097 added _mesa_source/dest_buffer_exists() function to easily test if particular renderbuffers are present 2006-03-20 15:25:18 +00:00
Brian Paul
f1038f81e4 fix some buffer binding tests in _mesa_make_current() 2006-03-20 15:20:57 +00:00
Brian Paul
c27c382acc slightly improved error message 2006-03-20 15:20:30 +00:00
Aapo Tahkola
5319ed0e53 Fix texrect upload conflicts. 2006-03-20 13:37:28 +00:00
Aapo Tahkola
070f280895 Disable tnl programs when doing software vertex programs. compiz with its texrect and lighting needs was broken because of this. 2006-03-19 21:17:14 +00:00
Brian Paul
096dd541bd minor clean-ups 2006-03-19 19:07:12 +00:00
Aapo Tahkola
77174f0072 -fix texrect fallback when using vtxfmt_a (glitz, xgl, etc.)
-struct vertex_buffer to struct radeon_vertex_buffer conversion
-vertex attrib arrays did not supersede conventinal arrays when enabled
2006-03-19 18:04:12 +00:00
Brian Paul
21a4fb4137 Queries of GL_READ_BUFFER and GL_DRAW_BUFFER were still returning the
pre-GL_EXT_framebuffer_object state.  Now return the read/draw state stored
in the framebuffer objects.
2006-03-19 00:10:22 +00:00
Brian Paul
19b05d5009 Don't call Driver->Bitmap() if no image to render 2006-03-18 21:46:17 +00:00
Jouk Jansen
2d2af2dcf7 Committing in .
Mesa/src/mesa/main/imports.h : removed <CR>
 Mesa/src/mesa/shader/slang/descrip.mms : added new sources

 Modified Files:
 	Mesa/src/mesa/main/imports.h
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2006-03-17 14:38:41 +00:00
Brian Paul
eec33cc310 Init FogCoordFuncs[0..5] too, remove some unneeded #includes 2006-03-17 04:13:29 +00:00
Brian Paul
0f1d98c422 remove another test for IN_DRI_DRIVER 2006-03-17 04:10:03 +00:00
Kristian Høgsberg
724df02073 Don't use glx_ansic.h functions (__glXMemset). 2006-03-17 00:03:20 +00:00
Brian Paul
2b17741e1b added #undef GET_DISPATCH 2006-03-16 18:06:34 +00:00
Brian Paul
c6c0f94714 Moved _glapi_check_multithread() call into drivers, instead of in
_mesa_make_current().
This removes an ugly #if !defined(IN_DRI_DRIVER) from core Mesa.
2006-03-16 18:05:25 +00:00
Brian Paul
ef8653a838 finish up some loose ends in _mesa_texstore_z24_s8() 2006-03-16 04:44:00 +00:00
Brian Paul
514a15cea1 assorted code clean-ups, comments, etc. 2006-03-15 20:56:22 +00:00
Brian Paul
ac8b07b3ae remove invalid assertion in _glapi_get_dispatch(), fixes additional thread safety problem 2006-03-15 20:42:00 +00:00
Brian Paul
e660690985 Need to include glthread.h in glapi.h, not glapi.c so that GET_CURRENT_CONTEXT
is properly defined.  Fixes long-standing, but unnoticed thread safety failure.
Also, updated comments.
2006-03-15 20:31:50 +00:00
Brian Paul
30655c211c updated some printfs, added comment about sched_yield 2006-03-15 20:30:17 +00:00
Brian Paul
59e0faaa5c sync with texmem branch 2006-03-15 17:48:00 +00:00
Brian Paul
eccb6a0698 rename enums, fixes compilation breakage (Michal Krol) 2006-03-15 14:09:08 +00:00
Brian Paul
10f08cc202 use 'p' key to toggle use of GL_EXT_packed_depth_stencil 2006-03-15 01:44:03 +00:00
Brian Paul
b7e3e0d64e s/GLuint/GLushort/ in read_depth_stencil_image() 2006-03-15 01:36:52 +00:00
Brian Paul
19b8322169 init Red/Green/EtcBits = 0 in soft_renderbuffer_storage() 2006-03-14 22:39:43 +00:00
Brian Paul
2a0d441ebb Set always_array=true for glGenProgramsNV (Dave Reveman) 2006-03-14 15:41:53 +00:00
Brian Paul
15e74a6441 replace dprintf() with _glu_dprintf() (bug 6244) 2006-03-14 15:08:52 +00:00
Michal Krol
0f618b7eb7 Add slang_analyse.c and slang_library_texsample.c. 2006-03-14 11:39:58 +00:00
Michal Krol
8af48fc4d6 More GLSL code:
- add texture sampling support;
- fix assembly codegen bugs;
2006-03-14 11:23:16 +00:00
Aapo Tahkola
e9484e4085 Clean build. 2006-03-13 20:40:46 +00:00
Aapo Tahkola
a0cf4ceb36 Fix broken max mipmap leveling that was horribly wrong. 2006-03-13 18:23:19 +00:00
Aapo Tahkola
5042778449 Option to init vp temps(for testing) 2006-03-10 05:30:33 +00:00
Brian Paul
9c32af5bb2 Add prototypes for GLX_MESA_swap_frame_usage, GLX_MESA_swap_control, and
GLX_EXT_texture_from_pixmap to silence warnings while compiling glxcmds.c
XXX: Need to add the new tokens for GLX_EXT_texture_from_pixmap!!!
2006-03-09 16:27:35 +00:00
Brian Paul
841a823d6d s/GLint/int/, to fit GLX conventions 2006-03-09 16:25:46 +00:00
Brian Paul
0d57301ba2 Instead of adding extra flags to DEFINES with +=, define EXTRA_DEFINES instead.
This eliminates a bunch of duplication in the compilation commmands.
2006-03-09 16:24:46 +00:00
Aapo Tahkola
12d51beb7e Kick VBOs out of GART if nothing else helps. 2006-03-09 06:21:17 +00:00
Aapo Tahkola
e294d938f2 Use the force Luke, use the force. 2006-03-09 04:42:45 +00:00
Dave Airlie
f1b431b265 coverity check bug fix going over end of array 2006-03-08 05:44:07 +00:00
Dave Airlie
9fc897af7a coverity checker bug: Pointer dereferenced after NULL check 2006-03-08 05:37:58 +00:00
Aapo Tahkola
d97ab9a7bd Fix broken DrawElements & DrawRangeElements. 2006-03-07 22:46:52 +00:00
Jouk Jansen
d9894e0d72 Committing in .
Update OpenVMS makefiles

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 ----------------------------------------------------------------------
2006-03-07 07:47:37 +00:00
Aapo Tahkola
dba9c0bafd Enable HW VBOs and other things needed by it. 2006-03-07 05:31:36 +00:00
Aapo Tahkola
ba7ea2e697 Convert to work with current DRM. + tag 2006-03-07 05:15:24 +00:00
Aapo Tahkola
50f319242b Various fallbacks, checks and tags. 2006-03-07 05:09:48 +00:00
Brian Paul
ca007cb449 just a comment for check_compatible() 2006-03-07 03:01:26 +00:00
Brian Paul
d75963d258 disable double-buffer test in check_compatible(), fixes pbuffer/visual problem 2006-03-07 02:57:04 +00:00
Brian Paul
8ee311d36d print newline in _mesa_warning() 2006-03-07 01:46:26 +00:00
Brian Paul
2e01918b55 call _mesa_update_framebuffer_visual() in _mesa_FramebufferRenderbufferEXT() to fix some minor glitches 2006-03-07 01:43:52 +00:00
Brian Paul
168a7516b1 FreeBSD updates (Pedro Giffuni) 2006-03-07 01:11:05 +00:00
Aapo Tahkola
c107058e7e Port r200 tex tiling code to run on r300 but keep it disabled. 2006-03-06 19:28:10 +00:00
Ian Romanick
3bca4f679a Later versions of Python handle formats like '% 5u' differently. For
whatever reason, a space is always inserted.  That is not the desired
behavior.
2006-03-06 18:31:50 +00:00
Ian Romanick
9d881ea718 Generate server-side GLX protocol decode functions using the 'make server'
target.  The environment variable XORG_BASE must be set to point to the base
of the X.org server sources where the files are to be placed.

The 7.0.0 server release already contains files generated by these scripts.
The scripts should have been committed months ago.  Sorry for the lag. :(
2006-03-06 18:30:17 +00:00
Ian Romanick
448d23331d Display the correct bug number in the information text. 2006-03-06 16:42:12 +00:00
Ian Romanick
66df1731e6 Don't try to bind to proxy texture target. This is defined by the spec to be
an error.  Since we're working with a proxy target, don't bother using real
texture data.

Add a missing new-line in an error printf.
2006-03-06 16:31:50 +00:00
Ian Romanick
5820f7998a Build test for bugzilla #3050 2006-03-04 04:46:10 +00:00
Ian Romanick
780d270312 Test case for bugzilla #3050. 2006-03-04 04:44:47 +00:00
Roland Scheidegger
e1e03b32ab Use standard ARB names instead of vendor-specific NV names for the ARB/NV_vertex_program enums in common state handling code, and update comments accordingly. Change some slightly confusing code which gave the impression GL_VERTEX_PROGRAM_ARB and GL_VERTEX_PROGRAM_NV enums were different. 2006-03-03 15:03:04 +00:00
Roland Scheidegger
f8ba07a77d fix up the emit_func list in the experimental arbprogram sse code. 2006-03-03 14:11:19 +00:00
Roland Scheidegger
5e01f9a114 Fix bogus span mask in s_atifragshader.c leading to trouble when the pixel was later discarded by z test (this fixes doom3 r200 renderpath with swrast). Fix calling _swrast_alpha_test potentially leading to bogus results when Alpha Test might not be enabled. While here, don't disable deferred_texture (early z) when ATI_fragment_shader is active, as it is not necessary (for the record, this boosts doom3 swrast performance by roughly a factor of 2 (4 seconds per frame now...) with the r200 render path, might be a worthwile optimization for fragment programs which don't write z). 2006-03-03 02:46:03 +00:00
Keith Whitwell
f4ab5654d0 Add position_invarient support 2006-03-02 20:16:34 +00:00
Roland Scheidegger
da16813f43 Fix more enums defined not only by one extension when queried by glGet (GL_COLOR_SUM_EXT, GL_POINT_SPRITE_NV, GL_POINT_SPRITE_COORD_ORIGIN, GL_TRANSPOSE_CURRENT_MATRIX_ARB). Fix similar bugs (also those previously overseen dependant on NV/ARB_vertex_program) in glIsEnabled. Add missing GL_COLOR_SUM_EXT enum to glIsEnabled. 2006-03-02 12:06:57 +00:00
Brian Paul
9227bca103 added GL_EXT_framebuffer_blit, etc 2006-03-02 04:12:34 +00:00
Brian Paul
81b8aa9ecd test glBlitFramebufferEXT w/ -blit flag 2006-03-02 03:54:14 +00:00
Brian Paul
14d3ab9662 improved error msg 2006-03-02 03:51:04 +00:00
Brian Paul
904ab0c22c check FEATURE_EXT_framebuffer_blit 2006-03-02 03:46:33 +00:00
Brian Paul
afa1df5871 plug in BlitFramebuffer function 2006-03-02 03:45:28 +00:00
Brian Paul
c241d3b06a implementation of _swrast_BlitFramebuffer() 2006-03-02 03:37:18 +00:00
Roland Scheidegger
93da673904 Fix glGet with enums which are used not only in NV_vertex_program, but other extensions too (ARB_vertex_program, ARB_fragment_program, NV_fragment_program), if no support for NV_vertex_program is present. While here, fix return value if enum is used which is not supported by the exposed extensions (GL_INVALID_ENUM instead of GL_INVALID_VALUE). Fix some compile-time #ifs depending on NV_vertex/fragment_program which should also be dependant on ARB_vertex/fragment_program. See bug #6070 2006-03-01 23:11:14 +00:00
Brian Paul
cf6be2d5bd No need for _mesa_save_error() to be public.
glVertexAttrib() w/ bad index should generate GL_INVALID_VALUE, not
GL_INVALID_ENUM.
Misc clean-ups.
2006-03-01 15:44:20 +00:00
Brian Paul
dbfd246db8 added BlitFramebuffer() support 2006-03-01 15:36:34 +00:00
Brian Paul
190e5595bc New comments. Use tuples () instead of lists [] in a few places. 2006-03-01 15:33:56 +00:00
Brian Paul
68edf28df6 added Flush in glXCopyContext() 2006-03-01 15:32:38 +00:00
Brian Paul
9b8059e536 updated comment 2006-03-01 02:09:40 +00:00
Brian Paul
6d4284e2bf Added glBlitFramebufferEXT function. 2006-03-01 02:07:50 +00:00
Brian Paul
9974540c73 remove temporary tokens, more error checks for blit function 2006-03-01 02:02:43 +00:00
Brian Paul
2c61fdafd6 added s_blit.c 2006-03-01 02:00:58 +00:00
Brian Paul
1eca891dbe _swrast_blit_framebuffer() function 2006-03-01 01:57:30 +00:00
Brian Paul
a231097609 GL_EXT_framebuffer_blit tokens/functions 2006-03-01 01:54:59 +00:00
Aapo Tahkola
fbe48ef01f Free temps when possible 2006-02-28 23:39:32 +00:00
Aapo Tahkola
71932ef85c Dont let (possibly) undefined z component reach hw as its unused 2006-02-28 23:22:48 +00:00
Aapo Tahkola
6754e17138 No need to call *_FIREVERTICES twice. 2006-02-28 23:17:00 +00:00
Aapo Tahkola
f71fd439f5 Fix aliasing bug (Benjamin Herrenschmidt) 2006-02-28 23:08:28 +00:00
Brian Paul
147f5091a1 Allow error checking to look for presence of either of two extensions.
See bug 6070.
2006-02-28 21:45:09 +00:00
Brian Paul
176dac684a only run shader on active fragments in the span 2006-02-28 15:48:43 +00:00
Brian Paul
34b60b001d check if active fragment shader for deferred texturing/shading 2006-02-28 15:48:19 +00:00
Brian Paul
3073cf21d2 check for active shader, set FRAGPROG_BIT in raster mask 2006-02-28 15:44:33 +00:00
Brian Paul
d1d4121682 silence a bunch of warnings 2006-02-27 15:45:38 +00:00
Michal Krol
9ac9605de1 More GLSL code:
- add x86 code generator;
- add full support for uniforms in ARB_shader_objects;
- add assembly instruction: global_addr;
- reorganize #includes;
- built-in uniforms accessed by index, rather than by name;
- add some entries to x86sse rtasm;
- add configurations to VC6 projects: 'Release x86' and 'Debug x86';
- #define SLANG_X86 active only on VC6 x86 builds;
- introduce code export table for a shader;
- remove GNU license from the noise library;
2006-02-27 14:41:41 +00:00
Brian Paul
c56f2c49a5 re-formated with indent. 2006-02-26 18:18:12 +00:00
Brian Paul
be42f53020 Remove need to initialize the InstSize[] array elements by just storing
the instruction size in _mesa_alloc_instruction().
2006-02-26 18:02:13 +00:00
Brian Paul
a764b7eae0 display list clean-ups 2006-02-26 17:16:37 +00:00
Roland Scheidegger
4e77669926 Add all pci ids known by ddx to radeon dri driver. Remove the entries not known by ddx (probably secondary ids, non-existant cards and similar). Add rs400 to the family enum, and configure the rv410 like a 2 quad chip (?) 2006-02-25 02:03:12 +00:00
Brian Paul
2aabdc743f fix broken _mesa_copy_context() for GL_LIGHTING_BIT 2006-02-24 18:19:11 +00:00
Brian Paul
ee2339f673 need to check for _NEW_BUFFERS in xmesa_update_state() 2006-02-24 17:58:48 +00:00
Brian Paul
228d4a6de7 Fix _mesa_copy_texture_state() so that we copy texture object bindings,
not the actual contents of texture objects.  This makes glXCopyContext()
work properly.
2006-02-24 17:16:57 +00:00
Brian Paul
1aad408b5a EXT_framebuffer_object (Dave Reveman) 2006-02-24 15:36:24 +00:00
Brian Paul
44a2e96729 include inttypes.h if __osf__ defined (Randall Hand) 2006-02-23 15:36:39 +00:00
Brian Paul
5b2ee9c1e9 update Blender link 2006-02-23 14:29:03 +00:00
Brian Paul
956fff6345 add some #includes, fix some prototypes (bug 5992) 2006-02-22 16:54:05 +00:00
Brian Paul
7b6fd8a0c6 include proper header file, remove local extern declarations 2006-02-22 16:44:04 +00:00
Brian Paul
cebad151a1 add missing prototypes, use _slang_ prefix on non-static functions 2006-02-22 16:43:26 +00:00
Brian Paul
4f8b59d59b silence a variety of compiler warnings 2006-02-22 16:35:34 +00:00
Brian Paul
49ad2d4ed1 updated GLUT link 2006-02-22 15:50:57 +00:00
Michal Krol
cc1591667d More GLSL code:
- uniforms (only GetLocation, Uniform1f and Uniform4fv for now for demos);
- fix bugs and optimize array size handling;
- 2D texture sampling (needs Enable(TEXTURE_2D) to work);
- decrease built-in library assembly size by 30%.
2006-02-21 12:35:06 +00:00
Jouk Jansen
8986e36f36 Committing in .
Update OpenVMS makefiles

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2006-02-21 12:28:34 +00:00
Jeremy Kolb
fcbbdf9991 Added xcb dri config file. 2006-02-19 22:31:26 +00:00
Jeremy Kolb
97a3023c9f Remove old linux-x86-xcb (didn't do anything).
Removed reference to linux-x86-xcb and added linux-dri-xcb in Makefile.
2006-02-19 22:30:46 +00:00
Michal Krol
3654193a4d More GLSL code.
- general constructors allowed;
- implement noise functions (from Stefan Gustavson - thanks!)
- cosmetic stuff.
2006-02-18 15:11:18 +00:00
Keith Whitwell
e94be8d5c0 Fix STENCIL_WRITE_MASK defn for bug 5902 2006-02-17 17:03:14 +00:00
Aapo Tahkola
8da9f448f4 Skip ARL while we dont implement it. Fix broken nv vps but do it with software for now. 2006-02-16 19:50:40 +00:00
Roland Scheidegger
555b5fac4f Reinstate vertex format after a rasterization fallback for both r200 and radeon driver when a tcl fallback is active, fixes a blender issue with non-tcl hw (bug #5601) 2006-02-16 17:16:33 +00:00
Eric Anholt
a176bc6c17 Include dix-config.h if HAVE_DIX_CONFIG_H is defined. This will be used by the
X Server to get things like _XSERVER64 (for X headers) and NO_LIBCWRAPPER
defined consistently when its builds Mesa internally.
2006-02-15 21:03:34 +00:00
Brian Paul
ee40c4fb34 Set NumInstructions (bug 5864) 2006-02-15 15:59:37 +00:00
Brian Paul
a584e846d4 Fix a few warnings:
- nested comments (use #if 0 / #endif instead)
 - missing default clause in switch statements
 - use of possibly undefined variables
2006-02-15 15:51:01 +00:00
Michal Krol
dd02edf381 Add support for forward function declarations. 2006-02-15 11:15:16 +00:00
Michal Krol
88d994c3b2 Add fragment shader execute entry. 2006-02-15 11:12:47 +00:00
Michal Krol
50092f8f33 Add s_arbshader.c, s_arbshader.h. 2006-02-15 11:09:26 +00:00
Michal Krol
870ebefb3b Add swrast/s_arbshader.c. 2006-02-15 11:07:56 +00:00
Michal Krol
a663931204 Add arbshader stage. 2006-02-15 11:06:00 +00:00
Michal Krol
5bc35a823a Enable texcoords when program object in use. 2006-02-15 11:03:57 +00:00
Michal Krol
dc3a922cf3 Get arbfslight demo running. 2006-02-15 11:02:07 +00:00
Michal Krol
0c8e578a38 Enable GL_ARB_fragment_shader extension. 2006-02-15 11:00:15 +00:00
Michal Krol
3699751b0b Demonstrate GLSL fragment and vertex shaders. 2006-02-15 10:58:52 +00:00
Brian Paul
d5aca8bf0c remove stray 'foo' line 2006-02-15 04:10:55 +00:00
Brian Paul
0c1438d331 replace size_t * w/ unsigned int * (Jurg Billeter) 2006-02-14 15:04:45 +00:00
Brian Paul
a5033a0421 fix AIX issues (bug 5874) 2006-02-14 14:57:04 +00:00
Jouk Jansen
2189d9c96e Update OpenVMS compile support 2006-02-13 12:00:29 +00:00
Michal Krol
e7ffe4619f More glsl code. 2006-02-13 11:47:41 +00:00
Michal Krol
8a54fad6cd REVISION 3.
Remove illegal operators for overloading.
2006-02-13 11:45:57 +00:00
Michal Krol
ebcbf2f853 Cosmetic changes. 2006-02-13 11:42:48 +00:00
Michal Krol
41eeae5fb1 Delete most of the comments.
Minor tweaks with the functions.
Add experimental print functions.
2006-02-13 11:40:32 +00:00
Michal Krol
02eb9acc5e Get it running for ARB_vertex_shader.
Add experimental print functions to builtin library.
Some functionality missing:
- automatic arrays;
- general constructors;
- local variable initialization;
- texture sampling and noise;
- semantic error checking;
- function prototypes.
2006-02-13 11:38:37 +00:00
Michal Krol
44e9ccc708 Rename current_program to CurrentProgram.
Temporary vertex_shader execution code.
2006-02-13 11:31:16 +00:00
Michal Krol
adef42c88d Add tnl\t_vb_arbshader.c. 2006-02-13 11:27:33 +00:00
Michal Krol
7d376c76c9 Add tnl/t_vb_arbshader.c. 2006-02-13 11:25:43 +00:00
Michal Krol
a2ea606377 Add ARB_vertex_shader stage just before render stage.
If enabled, all other stages, except render, are disabled.
2006-02-13 11:23:36 +00:00
Michal Krol
2363fff347 Enable GL_ARB_shader_objects, GL_ARB_shading_language_100 and
GL_ARB_vertex_shader extensions.
2006-02-13 11:04:27 +00:00
Michal Krol
c92e688e15 Rename current glsl program variable. 2006-02-13 10:56:54 +00:00
Michal Krol
170f08d4b1 Add _mesa_atanf and _mesa_asinf functions. 2006-02-13 10:55:14 +00:00
Eric Anholt
91c30771b6 Add the ability to define NO_LIBCWRAPPER to avoid libcwrapper brain damage.
If it's true that libcwrapper usage isn't necessary ever in the DllLoader world,
then this code should probbaly all go away.
2006-02-11 02:59:38 +00:00
Dave Airlie
f236300e3a commit to fixup MGL namespacing for XGL 2006-02-10 21:46:17 +00:00
Aapo Tahkola
a73094cc6a Workaround problems with NWN. (Tilman Sauerbeck) 2006-02-10 17:26:44 +00:00
Brian Paul
42447365b2 remove the test for XFree86Server from prev patch (bug 5835) 2006-02-09 14:28:40 +00:00
Alan Hourihane
b77a225250 Check DDX for 1.5.0 2006-02-08 22:05:42 +00:00
Brian Paul
d93615fc1e include dix-config.h (Mike Harris) (bug 5835) 2006-02-08 14:52:06 +00:00
Brian Paul
42725d6f54 David Reveman's GLX_EXT_texture_from_pixmap extension patch 2006-02-07 00:39:56 +00:00
Dave Airlie
4cd0e24f86 add vblank support to i915 driver 2006-02-06 00:09:58 +00:00
Brian Paul
640ef7f890 EGL 1.2 tokens/functions/etc. 2006-02-05 16:39:19 +00:00
Brian Paul
63b852f4f9 fix typo 2006-02-05 16:38:33 +00:00
Brian Paul
ea970da0b6 bring in changes from 6.4 branch 2006-02-03 17:21:54 +00:00
Roland Scheidegger
e7276b7fa5 replace the texture level hack used in radeon/r200 to allow larger textures with different methods to calculate the announced maximum texture sizes. Default is still the same (that is, radeon/r200 default to not announce anything which might not fit, i830/i915 default to 1 texture must fit). Bug #5785. 2006-02-03 13:29:11 +00:00
Brian Paul
16a14510c4 use calloc instead of malloc so try_codegen field is initialized to zero (bug 5791) 2006-02-02 17:33:26 +00:00
Brian Paul
725740c7c8 add some assertions to check emit_func[] table validity 2006-02-02 14:30:16 +00:00
Roland Scheidegger
5951aab823 fix texcoord unit assertion, the right one (bug 5780) 2006-02-01 23:14:42 +00:00
Brian Paul
865ad82bb8 fix texcoord unit assertion (bug 5780) 2006-02-01 16:50:16 +00:00
Roland Scheidegger
3b6f62fc73 fix test for valid texunit in _mesa_ClientActiveTextureARB 2006-02-01 01:05:40 +00:00
Brian Paul
111281f1fc s/malloc/calloc/, fix mem leak 2006-01-31 03:00:14 +00:00
Roland Scheidegger
663138a951 fix broken assertions so dri drivers compile with -DDEBUG (replace GL_STENCIL_INDEX8 with GL_STENCIL_INDEX8_EXT). Fix potential problem with drivers which use 32bit z buffers. 2006-01-30 23:49:31 +00:00
Roland Scheidegger
a45f23bed1 fix broken assertion to make radeon driver compile with -DDEBUG... 2006-01-30 23:36:42 +00:00
Brian Paul
4b4cc650e1 updated comment 2006-01-30 17:13:19 +00:00
Brian Paul
781c54a5b8 silence warning about duplicate M_PI definition 2006-01-30 17:12:10 +00:00
Brian Paul
6a36407a00 added more tests (Pedro Maia) 2006-01-30 17:11:47 +00:00
Brian Paul
7905b19ec9 use fmod() when incrementing CubeRot 2006-01-30 15:35:35 +00:00
Michal Krol
bd8c742762 Add shader/slang/slang_compile_*.* files. 2006-01-30 14:50:01 +00:00
Michal Krol
9dc8bce88e Split slang_compile.c into several smaller files - it was just too big.
Minor fixes and cosmetic changes.
2006-01-30 14:48:42 +00:00
Brian Paul
b2006a40eb some initial EGL 1.2 work 2006-01-30 00:10:55 +00:00
Brian Paul
daf3093f28 Test glCopyTexSubImage2D by drawing gears as texture on sides of a box. 2006-01-28 00:30:07 +00:00
Brian Paul
5e9d73153c misc updates 2006-01-27 20:12:06 +00:00
Brian Paul
0b3c2a9a24 Don't do swapbuffers if -nodraw specified. Get t0 after setup code. 2006-01-27 15:44:40 +00:00
Aapo Tahkola
5594ddbcfe remove broken non arb fp path 2006-01-27 14:35:24 +00:00
Aapo Tahkola
58e4aa0ec9 missing link in the fallback chain 2006-01-27 14:09:05 +00:00
Aapo Tahkola
0fcfa1c5b0 enable hw vertex programs by default 2006-01-27 14:03:22 +00:00
Aapo Tahkola
e797bc8bbe per vp sw fallbacks 2006-01-27 13:21:47 +00:00
Aapo Tahkola
7d82d284e3 radeon driver doesnt have this so i assume we shouldnt either. 2006-01-27 13:09:59 +00:00
Aapo Tahkola
a7bd2563c3 drop all that (slow) locking stuff and make u_list per context. 2006-01-27 13:05:56 +00:00
Aapo Tahkola
875df252a7 R300_PFS_NODE_LAST_NODE -> R300_PFS_NODE_OUTPUT_COLOR 2006-01-27 12:38:20 +00:00
Aapo Tahkola
e804370014 Work around problems with t_vp_build.c 2006-01-27 12:23:26 +00:00
Aapo Tahkola
32551222bc r300UpdateTextureEnv shouldnt be called. 2006-01-27 12:18:58 +00:00
Brian Paul
77667266a7 Test glTexSubImage and glCopyTexSubImage rate.
Run with -nodraw to skip rendering of test quad to get "pure" sub-tex rate.
2006-01-26 17:35:31 +00:00
Brian Paul
32a6468014 copypixrate.c - measure the speed of glCopyPixels. 2006-01-26 16:37:47 +00:00
Aapo Tahkola
e65ad47a8f remove some testing code 2006-01-26 16:28:54 +00:00
Aapo Tahkola
edc98df891 Fix a problem where offsets from disabled tmus reach drm 2006-01-26 15:53:18 +00:00
Alan Hourihane
fbcb37cac5 remove i830 2006-01-26 08:53:32 +00:00
Brian Paul
3a5bb1729d New comments, clean-up of fields related to point/line/triangle validation. 2006-01-26 01:32:47 +00:00
Brian Paul
2219a15b06 remove unneeded init of swrast->invalidate_line/triangle 2006-01-26 01:28:00 +00:00
Brian Paul
74235b1cf1 remove the GL_HP_occlusion_test code 2006-01-26 01:27:17 +00:00
Brian Paul
f3cf636e57 WGL_ARB_extensions_string extension 2006-01-25 17:33:13 +00:00
Brian Paul
166b0ff973 added wglGetExtensionsStringARB 2006-01-25 15:05:36 +00:00
Karl Schultz
7f1274fa8b add wglGetExtensionsStringARB 2006-01-25 06:02:55 +00:00
Jerome Glisse
99da2d30eb fix using a tmp without asking for one 2006-01-24 23:04:51 +00:00
Alan Hourihane
8b1dc68662 pull in fix from 6.4 branch for XFree86Server definition 2006-01-24 21:40:53 +00:00
Aapo Tahkola
4dd8a8907e fix broken get_half & get_zero 2006-01-24 20:24:06 +00:00
Alan Hourihane
65573edd1b remove very old i830 code 2006-01-24 19:59:54 +00:00
Alan Hourihane
f3134ca7ad use front.size instead of sPriv->fbSize 2006-01-24 19:40:26 +00:00
Alan Hourihane
f7360cd42d use screen->front.map instead of pFB from libdri 2006-01-24 19:28:49 +00:00
Alan Hourihane
39c492bb14 Add Intel 945GM support
Add rotation support
(Tungsten Graphics)
2006-01-23 10:10:48 +00:00
Jerome Glisse
acd1f16b35 Do individual negetation in swizzling, thus we can
save one instruction in some case.
2006-01-21 15:16:53 +00:00
Jerome Glisse
c6f35dd8db Indent & wrap around 80 2006-01-21 13:08:46 +00:00
Aapo Tahkola
f087d60f18 Doesnt apply anymore 2006-01-21 12:48:09 +00:00
Jerome Glisse
41a874f486 Add individual component negation. 2006-01-21 11:43:37 +00:00
Aapo Tahkola
ef073b7a75 Try to tackle bug #5148 2006-01-20 21:56:52 +00:00
Aapo Tahkola
c90b569238 Sync from drm. 2006-01-20 21:16:28 +00:00
Aapo Tahkola
93a7605b1d Fix ARGB1555 component swizzling. 2006-01-20 20:48:05 +00:00
Jerome Glisse
b42d5bcaff Fix swizzling table & add struct. 2006-01-20 18:24:44 +00:00
Adam Jackson
37e86254c1 Avoid a crash when the user has enabled glVertex{,Attrib}Pointer but hasn't
filled in a valid pointer for that attribute or vertex array.
2006-01-19 18:00:38 +00:00
Adam Jackson
216f729a95 Search for makedepend in the PATH rather than hardcoding /usr/X11R6/bin 2006-01-18 20:57:02 +00:00
Adam Jackson
38da697546 Nuke the old attempt at software DRI, it's broken and awful 2006-01-18 00:29:35 +00:00
Adam Jackson
f93a228c38 Start a software-only DRI driver for use in the new accelerated indirect
world.
2006-01-18 00:22:21 +00:00
Brian Paul
1096eae18d properly free ATI fragment shaders (Tilman Sauerbeck) 2006-01-16 16:35:13 +00:00
Brian Paul
361bccb4ec Free visinfo object (Tilman Sauerbeck) 2006-01-16 16:17:18 +00:00
Michal Krol
b4f70646b4 remove some test code;
rewrite the intermediate code executor to address
64-bit platforms and global memory;
store built-in library code in a precompiled form only;
2006-01-16 12:34:16 +00:00
Michal Krol
8defce2cf1 remove slang_*_gc.h files;
rename slang_*_gc_bin.h files to slang_*_gc.h ones;
store built-in library code in a precompiled form only;
2006-01-16 12:27:22 +00:00
Aapo Tahkola
0f488bb16d Missing bits of code spotted by Tilman Sauerbeck 2006-01-15 13:53:54 +00:00
Aapo Tahkola
1bcc323857 Fix ARB_position_invariant handling 2006-01-15 00:07:11 +00:00
Adam Jackson
93d0935ef7 Fix the default target to remake readtex.o if needed 2006-01-13 16:34:00 +00:00
Aapo Tahkola
4078c647d5 namespace pollution fixes (Tilman Sauerbeck) 2006-01-13 15:11:57 +00:00
Aapo Tahkola
458479fedb Fix invalid tex coord routing and couple other small things. 2006-01-13 15:03:57 +00:00
Brian Paul
1814d6541b added a couple new assertions to help debug XGL problem 2006-01-10 15:48:56 +00:00
Aapo Tahkola
2d4ff6a8cf Missing patch from Ben Skeggs:
Lots of changes, and fixes for some badness on my behalf.

1. Disposable data used during fp compile is now per-context,
   rather than per-program to save memory.

2. Track usage of INPUT/TEMP registers from Mesa program, free
   them when no longer required so the hw temps can be re-used.

3. Changed LAST_NODE to OUTPUT_COLOR (see r300_reg.h)

4. Implemented remaining ARB_f_p instructions, with the exception
   of the trig/LIT opcodes.

5. Treat ZERO/ONE swizzles the same way as other native swizzles.

6. emit_arith changes, basically a complete re-write.  Should
   produce cleaner instructions, but no real functional changes.
   internal reg -> hw reg routines shared with emit_tex.  A bit
   messy still.
2006-01-09 22:53:38 +00:00
Aapo Tahkola
c217d5a3a8 Fix pow <small> and a very stypid bug with dummy srcs(0 equals to tmp0.x)</small>. demos/cubemap looks perfect now. 2006-01-09 20:00:03 +00:00
Aapo Tahkola
0946e0f418 Fix cube maps. 2006-01-09 19:20:46 +00:00
Aapo Tahkola
7a028bd1ca Fix node setup(from Ben Skeggs) 2006-01-09 18:31:42 +00:00
Brian Paul
d469e5e5a0 s/GLuint/GLbitfield/ 2006-01-09 17:57:47 +00:00
Brian Paul
c2901e4f4c only call xmesa_set_renderbuffer_funcs() when really necessary 2006-01-09 17:56:55 +00:00
Brian Paul
41b9756e9a check XGetGeometry() return value 2006-01-09 16:59:30 +00:00
Roland Scheidegger
8bc4dae67e cube maps on r100 require newer drm than the same feature on r200 (regression from introducing unfied initialization). Fix wrong (so far unused) family assignment for r100 cards. 2006-01-07 20:42:16 +00:00
Keith Whitwell
eda59aa87e Oops - bad file-completion typo. 2006-01-05 11:01:18 +00:00
Keith Whitwell
ca188de098 add simple test for program local parameters 2006-01-05 10:57:57 +00:00
Brian Paul
30cc822163 install GLw headers (bug 5396) 2006-01-04 20:10:16 +00:00
Brian Paul
413a49ce59 special-case Darwin (bug 4509) 2006-01-04 20:06:13 +00:00
Jerome Glisse
31be39742b Use X11_INCLUDES config macro instead of
hardcoded path in makefile.
2006-01-02 18:47:00 +00:00
Brian Paul
3086efe357 remove bogus wings3d link 2005-12-30 19:15:40 +00:00
Keith Whitwell
cabecbd314 recalculate state on drawable changes 2005-12-30 13:03:08 +00:00
Keith Whitwell
1d43e729ec properly notify driver on scissor change in MakeCurrent 2005-12-30 13:02:27 +00:00
Dave Airlie
8c137e2f94 fill out framebuffer egl stuff enable egl on R300 2005-12-30 11:18:04 +00:00
Dave Airlie
fb83a42d31 fixup stamp so driver updates drawable info 2005-12-30 10:12:26 +00:00
Dave Airlie
456a513daa add support for PCIE card to EGL, doesn't fully work yet but these changes
need to get off my hard disk
2005-12-29 00:56:01 +00:00
Dave Airlie
577d23011b add EGL to r300 makefile 2005-12-29 00:42:25 +00:00
Dave Airlie
369ae3e2c4 rv370 not rv350 2005-12-29 00:38:12 +00:00
Dave Airlie
77a7c2ad92 typo 2005-12-29 00:37:24 +00:00
Dave Airlie
4dac78463e add some card type ioctl support 2005-12-29 00:36:07 +00:00
Dave Airlie
edf570da67 use card_type not isPCI 2005-12-29 00:30:53 +00:00
Dave Airlie
49b9355020 add some r300 information 2005-12-28 23:42:41 +00:00
Dave Airlie
1b6a081885 update to new API 2005-12-23 08:42:29 +00:00
Dave Airlie
bc8390fa6c this needs to be calloced 2005-12-23 08:17:44 +00:00
Dave Airlie
ad960612ce fixup driver for some api changes 2005-12-23 07:58:24 +00:00
Aapo Tahkola
11decab34a Handle fatal case. 2005-12-18 21:40:13 +00:00
Aapo Tahkola
3ad366dff2 Drop output checking. 2005-12-17 18:59:18 +00:00
Aapo Tahkola
d57ce4a2c1 No you arent. 2005-12-17 12:28:58 +00:00
Aapo Tahkola
707343dcf5 Warn only when being enabled. 2005-12-17 12:20:51 +00:00
Aapo Tahkola
feb7221ecb I think this has been tested well enough already. 2005-12-17 12:08:41 +00:00
Aapo Tahkola
1d32fc7332 Enable CB_DPATH by default. 2005-12-17 11:59:13 +00:00
Aapo Tahkola
fd1627312d Fix (likely) typo. 2005-12-17 11:43:59 +00:00
Aapo Tahkola
e34700af7a Add some missing hooks. This should fix various little problems with window movement and 2d windows flashing on top of 3d windows. This problem was previously shadowed by r300ResetHwState as it gets called frequently. 2005-12-17 11:39:40 +00:00
Brian Paul
c9b4acfeb8 minor code movement 2005-12-17 05:37:15 +00:00
Karl Schultz
782291ab91 fix thinko in last revision. 2005-12-16 16:38:44 +00:00
Brian Paul
924fb5e916 move va_end() call (Evgeny Kotsuba) 2005-12-15 15:23:54 +00:00
Karl Schultz
841c9018b1 Work In Progress. Move some of the frame buffer, render buffer, etc init code from the create context path to the make current path, where it is lazily initialized. This didn't buy me very much except to make it look closer to the X11 driver. Fix up some of this same code to correct some errors.
The next step is to reorganize the wmesa context data structure to inherit the gl_context by containment so I can have access to the wmesa context in the update state path.  The driver is still currently not responding to changes in the Draw and Read Buffer state.
2005-12-15 01:02:37 +00:00
Brian Paul
b6d7a0c5a5 regenerate to pick up glGetQueryObject[u]i64vEXT funcs 2005-12-14 14:23:37 +00:00
Keith Whitwell
0970787228 Fix typo. 2005-12-14 09:31:25 +00:00
Brian Paul
c8d1741b78 use GLbitfield instead of GLuint 2005-12-14 03:06:16 +00:00
Brian Paul
1add059bd1 Removed the GL_SGIX/SGIS_pixel_texture extensions. Same thing can be
done with fragment programs nowadays.
2005-12-14 03:04:58 +00:00
Dave Airlie
c9797f6b76 fix from Roland for mipmapped compressed textures
remove some debug
2005-12-13 19:53:28 +00:00
Brian Paul
0063084804 silence warning, bug 5318 2005-12-12 15:27:55 +00:00
Keith Whitwell
40332059e4 Split _MaintainTexEnvProgram into two flags _Maintain and _Use. This
restores the ability to run the software driver with program TNL but
tradtional swrast.
2005-12-12 12:57:08 +00:00
Eric Anholt
3e1a5a38ae Regenerate for recent glapi changes (GetQueryObjecti64vEXT). 2005-12-11 07:42:37 +00:00
Brian Paul
790ab0a0b6 s/eglShowSurfaceMESA/eglShowScreenSurfaceMESA/ 2005-12-10 17:59:36 +00:00
Brian Paul
f06ce1ba71 Rename eglDRIShowSurfaceMESA.
s/_eglAddMode/_eglAddNewMode/
2005-12-10 17:56:00 +00:00
Brian Paul
98d9bb66a4 updates to match other changes elsewhere 2005-12-10 17:55:15 +00:00
Brian Paul
215aa20f5c rename eglShowSurfaceMESA, add EGL_SCREEN_POSITION_GRANULARITY_MESA 2005-12-10 17:54:36 +00:00
Brian Paul
4882279633 Some initial per-thread support.
Rename eglShowSurfaceMESA to eglShowScreenSurfaceMESA.
2005-12-10 17:54:00 +00:00
Brian Paul
b04dd5c587 Added EGL_SCREEN_POSITION_GRANULARITY_MESA query.
Rename eglShowSurfaceMESA to eglShowScreenSurfaceMESA.
2005-12-10 17:53:07 +00:00
Brian Paul
ad6f8eba00 lots of updates, mode sorting, etc 2005-12-10 17:52:11 +00:00
Brian Paul
6002d2ff4e implement config sorting for eglChooseConfig() 2005-12-10 17:51:13 +00:00
Brian Paul
21b2784ff5 'a' key to toggle animation 2005-12-08 17:49:50 +00:00
Brian Paul
5abc246f8d bump version number 2005-12-08 14:51:36 +00:00
Brian Paul
72d1bb5756 don't need LONGLONG typedefs 2005-12-08 14:50:28 +00:00
Brian Paul
91ed68b2b9 do away with 'long long' usage 2005-12-08 14:50:03 +00:00
Brian Paul
5262c225ba remove stray _ from GL[u]int64_EXT 2005-12-08 14:10:59 +00:00
Karl Schultz
1acea5f289 update for symbol export changes 2005-12-08 04:36:42 +00:00
Karl Schultz
5bdec89da5 add {} to RENDER_SPAN macro to fix compilation problem 2005-12-08 04:35:07 +00:00
Karl Schultz
59af97420e use 64-bit typedefs for portability 2005-12-08 04:34:17 +00:00
Karl Schultz
0694adaf71 add 64-bit typedefs for portability 2005-12-08 04:33:17 +00:00
Karl Schultz
4c3443b460 handle 64-bit types for Windows. 2005-12-08 04:32:02 +00:00
Karl Schultz
f2b9fa03da reapply recent changes with Visual Studio instead of direct text editing. 2005-12-08 04:30:44 +00:00
Brian Paul
0fa8c59e64 Updates for GL_EXT_timer_query:
New GLint64EXT and GLuint64EXT types (use C99's long long types).
New glGetQueryObject[u]i64vEXT() functions.
2005-12-07 14:48:19 +00:00
Karl Schultz
98bebc7212 Fix bugzilla 5253. Add {} around code in RENDER_SPAN macros when code includes a variable declaration. 2005-12-07 05:09:14 +00:00
Aapo Tahkola
abccd5b729 Make missing interpolator inputs fatal 2005-12-06 22:26:21 +00:00
Aapo Tahkola
9309ba78d1 Fix secondary color for VP's 2005-12-06 19:49:18 +00:00
Brian Paul
9580179dfb C++ fixes, mostly casts (Stephane Conversy) 2005-12-06 15:41:43 +00:00
Eric Anholt
d5179613d5 Add support for GL_EXT_secondary_color. It looks like using
NEED_SECONDARY_COLOR to turn it off/on was what we wanted -- now results look
correct using seccolor on Savage IX and Savage4.
2005-12-06 10:38:37 +00:00
Keith Whitwell
b4ebb68202 Add guard before calling ctx->Driver.BindProgram 2005-12-05 11:44:09 +00:00
Aapo Tahkola
f27c07c99e Fix AL8 2005-12-05 09:30:58 +00:00
Dave Airlie
923257fe07 update r300 drm minimum to 20 2005-12-05 01:14:13 +00:00
Dave Airlie
f93feb7aed Fix r300 rectangular texture upload and swtcl coordinate fixing same as radeon
sw tcl
2005-12-04 00:37:35 +00:00
Brian Paul
eb06704a7c Added PCI_CHIP_RV410_5E4B (Adam Kirchhoff) 2005-12-02 23:57:37 +00:00
Brian Paul
99f13343cf Fix two failures encountered when running out of memory during XImage
allocation.
Append \n to _mesa_warning() strings.
2005-12-02 19:41:43 +00:00
Brian Paul
1b3128cc9a Test sizeof(drm_handle_t) instead of LONG64 when returning handles 2005-12-02 18:17:11 +00:00
Brian Paul
8716e7570d fix _mesa_ffs() return, test for more platforms (Evgeny Kotsuba) 2005-12-02 18:06:01 +00:00
Ian Romanick
5abff7bc4d Fix build issues on x86-64 due to missing include path in
glapi_x86-64.S.

Bug: #5602
2005-12-02 00:25:06 +00:00
Keith Whitwell
c9515bf1ae Call ProgramStringNotify after creating tnl programs. 2005-12-01 14:24:37 +00:00
Keith Whitwell
bfba2705b6 Remove VB->LastClipped 2005-12-01 12:54:21 +00:00
Keith Whitwell
dd4f0d1a93 Clean up clipping somewhat
- no need to update ClipMask on generated vertices
	- remove the VB->LastClipped value

Line clipping algorithm changed and simplified somewhat.  The old one
was based on the triangle routine and probably wouldn't have recognized
lines that were clipped down to nothing (ie culled, but not by a single
plane).
2005-12-01 12:53:15 +00:00
Brian Paul
f285f0d8f6 remove uintptr_t cast 2005-12-01 01:00:13 +00:00
Brian Paul
6b25193b92 try removing need for the uintptr_t casts 2005-12-01 00:59:51 +00:00
Brian Paul
0e31e02aef Added FinishRenderTexture() device driver function to indicate when
rendering to a texture has likely completed.
Fixed refcount issue in texture renderbuffer wrapper.
2005-12-01 00:25:00 +00:00
Brian Paul
cf2702e3db added comment about glTexImage and renderbuffers 2005-12-01 00:18:49 +00:00
Brian Paul
31e739a189 get depthBits from the current drawbuffer 2005-12-01 00:15:41 +00:00
Brian Paul
94ae2b4f25 fxt1_decode_1() should not be static 2005-11-30 14:47:34 +00:00
Ian Romanick
5910dfacf1 This is a major re-work of the __indirect_glInterleavedArrays routine. The
big, ugly, error prone switch-statement is replaced with a compact table.
I also added numerous comments, including a comment explaining how the
format parameter is validated.

Explicitly pass GL_FLOAT as the type in the cases where that is the only
possible value (e.g., everywhere except the call to glColorPointer).

Validate that stride is >= 0.

Tested with all modes (including the two error modes) of
progs/tests/interleave.c.

Bug: #5001, #5058
Reviewed by: Brian Paul
2005-11-30 00:06:48 +00:00
Brian Paul
96f216565e assorted fixes for server-side direct rendering (bug 5199) 2005-11-29 23:01:43 +00:00
Brian Paul
2d8eb9eaf3 remove dri_client/ dir from tarball 2005-11-29 22:41:23 +00:00
Brian Paul
126482a12f use the files from the drm tree/package 2005-11-29 22:37:19 +00:00
Michel Dänzer
9790e641ef If the DDX driver didn't reserve any video RAM for textures, fall back to
using only GART memory for textures instead of segfaulting in the texture
management code. (Bug 5115)
2005-11-29 13:13:34 +00:00
Brian Paul
58f45fa44d added _EGLExtensions typedef 2005-11-29 04:44:33 +00:00
Brian Paul
5285c32a17 Put extension flags, string into separate struct. 2005-11-29 04:43:37 +00:00
Brian Paul
f576450cae clean up the drmGetMap/drmMap code 2005-11-29 04:18:38 +00:00
Brian Paul
4683e8e954 apparently need to load colormap after setting the mode to make it work reliably 2005-11-29 03:00:02 +00:00
Keith Whitwell
2b8e66d210 Remove the many aliases for 'struct mem_block' in mm.h 2005-11-28 13:17:15 +00:00
Keith Whitwell
aae2b8b8eb Correct author attribution of mm.h 2005-11-28 12:05:29 +00:00
Brian Paul
4f12aa5a6a check for driver_modes == NULL. Don't need driver_modes for EGL driver 2005-11-28 00:04:35 +00:00
Brian Paul
a913d9f2f7 rearrange some code to put in more logical order, misc clean-ups 2005-11-28 00:02:06 +00:00
Brian Paul
3070a581fc Lots of fixes, clean-ups, new comments, etc.
To set the FBdev video mode, need to add a \n char to the string.
2005-11-28 00:00:08 +00:00
Brian Paul
d548bf41d3 Redo _eglInitSurface() so it can be used with all surface types.
Redo _eglInitContext() to do error checking, attribute list parsing, etc.
2005-11-27 23:57:19 +00:00
Brian Paul
49b2d2e90f include stdint.h for BSD 2005-11-27 23:46:55 +00:00
Brian Paul
024b5896f0 use ADD_POINTERS macro instead of (uintptr_t) cast 2005-11-25 17:07:10 +00:00
Keith Whitwell
96bf6abb66 Use _mesa_exec_free for fp->func. 2005-11-24 10:59:10 +00:00
Brian Paul
2a76d952b8 use new _egl_api struct 2005-11-24 04:06:51 +00:00
Brian Paul
1ac1c1c423 use _egl_api struct, make some functions static 2005-11-24 04:05:27 +00:00
Brian Paul
daf585d0f0 Move all the EGL API function pointers into a new _egl_api struct. 2005-11-24 04:02:16 +00:00
Brian Paul
d2c64e0b83 report error token in message printed in _eglError() 2005-11-24 03:53:46 +00:00
Brian Paul
b1abf1ea8e change error test in _eglParseConfigAttribs() 2005-11-24 03:48:19 +00:00
Brian Paul
ff707ead2b init attribs to EGL_DONT_CARE in _eglParseConfigAttribs() 2005-11-24 03:41:56 +00:00
Aapo Tahkola
181f2b92cb Couple changes that were missed. 2005-11-23 13:02:25 +00:00
Brian Paul
023c95481b check/print EGL_SCREEN_BIT_MESA, fix eglGetDisplay() call 2005-11-23 01:45:25 +00:00
Brian Paul
957b517c4f Choose the display mode / surface size in an intelligent way.
Fix // comments.
More error checking, etc.
2005-11-23 01:44:38 +00:00
Brian Paul
39591da355 update some comments 2005-11-23 01:42:40 +00:00
Brian Paul
a3d2c69e61 fixed wrong return value in radeonShowSurfaceMESA() 2005-11-23 01:39:56 +00:00
Brian Paul
b8829facc7 change error message 2005-11-23 01:38:30 +00:00
Brian Paul
b711eb793b use _eglLog() 2005-11-23 01:38:12 +00:00
Brian Paul
f049ca4e33 New _eglLog() function to replace fprintf/printf calls for debug/info. 2005-11-23 01:37:30 +00:00
Brian Paul
9bcc9e9174 reference bug 5131 in comment in _tnl_free_vertices() 2005-11-22 23:29:27 +00:00
Brian Paul
286f3fbb3a disable freeing of fp->func, see comment (bug 5131) 2005-11-22 23:27:27 +00:00
Keith Whitwell
e6e1c3fc11 Use correct enums for program output variables. Fixes
fp/tri-depthwrite.
2005-11-22 12:20:03 +00:00
Keith Whitwell
ec1ffd9f25 track state flags which might invalidate parameter lists 2005-11-22 12:12:17 +00:00
Keith Whitwell
5a771857d9 Make sure tnl->_DoVertexFog is kept uptodate. Fixes fog in i915
driver.
2005-11-22 10:58:05 +00:00
Dave Airlie
bf44f6cfac bit 31 of this inserts a nop after the current instruction 2005-11-21 11:39:49 +00:00
Dave Airlie
1ea61b5cad get rid of some of those unknowns figured out from reg dumper 2005-11-21 11:35:36 +00:00
Brian Paul
ec770b8c60 move _mesa_init_instruction() to program.c 2005-11-20 17:57:22 +00:00
Brian Paul
1a61462318 s/Saturate/SaturateMode/ 2005-11-20 17:54:29 +00:00
Brian Paul
e31ac05223 Make Saturate a 2-bit field again, renamed to SaturateMode with three
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
2005-11-20 17:52:40 +00:00
Brian Paul
22db535776 additional clean-ups and improvements 2005-11-19 23:45:10 +00:00
Brian Paul
55194df035 remove incorrect cast 2005-11-19 23:29:18 +00:00
Brian Paul
1353ebed81 Saturate is a 1-bit boolean field 2005-11-19 23:28:55 +00:00
Brian Paul
5d7b49f7e7 Bunch of little fixes:
Fix mem leaks in _mesa_TexEnvProgramCacheDestroy().
Check if ctx->Driver.BindProgram is non-null before calling.
s/unsigned/GLuint/
Use MAX_INSTRUCTIONS instead of magic 100, check program length after it's made.
Use _mesa_init_instruction() instead of _mesa_memset().
2005-11-19 23:12:20 +00:00
Brian Paul
1ad3b7e28b call gluDeleteQuadric() to fix mem leak 2005-11-19 23:09:14 +00:00
Brian Paul
6f445a1061 in run_texnorm_stage() check if the texture unit is really enabled before trying to normalize the texcoords 2005-11-19 17:08:15 +00:00
Brian Paul
41c8eabe0f update some vars 2005-11-19 16:50:36 +00:00
Brian Paul
63d683091f No longer derive 'ati_fragment_shader' from 'program' class. Only the
program->Id and program->RefCount fields were used and ATI fragment shaders
didn't have too much in common with ARB/NV vertex/fragment programs anyway.
2005-11-19 16:43:04 +00:00
Brian Paul
430c469c5b remove #include arbfragparse.h 2005-11-19 15:44:53 +00:00
Brian Paul
47e511c36d remove #include arbfragparse.h, s/PI/M_PI/ 2005-11-19 15:42:39 +00:00
Brian Paul
9fd133511c removed arbfragparse.[ch] arbvertparse.[ch] 2005-11-19 15:37:00 +00:00
Brian Paul
8c41a14c5e Remove the _mesa_parse_arb_vertex/fragment_program() functions into
arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch].
Clean up quite a bit of the arb parsing code.
Rewrite parser extension code to avoid a mess of string operations every
time the parser was used.
2005-11-19 15:36:28 +00:00
Brian Paul
5754809421 update comments, remove ^M chars 2005-11-19 14:57:47 +00:00
Brian Paul
8c765ad312 move a bunch of gl2/shading language structs from mtypes.h to shaderobjects.h 2005-11-19 14:49:25 +00:00
Aapo Tahkola
ddf61bfec9 Try to detect when native support to given texture width is not available. 2005-11-18 20:53:50 +00:00
Aapo Tahkola
f31448f3c8 Fix typo causing secondary color not to work properly. 2005-11-18 18:05:19 +00:00
Aapo Tahkola
40ca5b455f Reduce stderr noise. 2005-11-18 17:57:27 +00:00
Brian Paul
311bcf5090 In _mesa_RenderbufferStorageEXT(), try to avoid needless reallocation.
Simplify _mesa_GetRenderbufferParameterivEXT() queries.
2005-11-18 02:24:14 +00:00
Brian Paul
948ab5d8a9 move _mesa_update_state() calls before error tests that depend on framebuffer completeness 2005-11-17 05:01:26 +00:00
Brian Paul
74e9a43a2a optimize drawing GL_DEPTH_STENCIL pixels into a GL_DEPTH_STENCIL renderbuffer 2005-11-17 05:00:17 +00:00
Brian Paul
5ba41dfa81 s/MEMCPY/_mesa_memcpy/ and fix typo 2005-11-17 04:51:56 +00:00
Brian Paul
11f179e01b optimize case of reading GL_DEPTH_STENCIL pixels from GL_DEPTH_STENCIL renderbuffer 2005-11-17 04:51:08 +00:00
Brian Paul
f81c78f87d delete frame/renderbuffers upon exit, more error checking 2005-11-17 02:08:10 +00:00
Brian Paul
547113c16c improved error checking in error_check_format_type() 2005-11-17 02:05:42 +00:00
Thomas Hellström
154cc16d08 Fixes for x86_64 Unichrome. 2005-11-16 19:24:00 +00:00
Thomas Hellström
0ba7be0a50 Bring in last minute 6_4 branch changes to the unichrome driver
to the trunk.
2005-11-16 17:24:26 +00:00
Brian Paul
32fe233d54 added -ds option to test GL_EXT_packed_depth_stencil with framebuffer objects 2005-11-16 14:48:11 +00:00
Brian Paul
0f29ef6092 additional comments about GL_DEPTH_STENCIL buffers 2005-11-16 04:17:20 +00:00
Brian Paul
94f70fab64 added depthstencil.[ch] 2005-11-16 04:12:08 +00:00
Brian Paul
1a5f1bdb42 Use new gl_framebuffer _Depth/_StencilBuffer fields instead of
Attachment[BUFFER_DEPTH/STENCIL].Renderbuffer.  The former may be wrappers
around combined depth/stencil renderbuffers attached at the later points.
2005-11-16 04:09:26 +00:00
Brian Paul
909e8a7abb added depthstencil.c 2005-11-16 04:06:32 +00:00
Brian Paul
847160466c Support for combined depth/stencil renderbuffers (GL_EXT_packed_depth_stencil).
depthstencil.c provides wrappers for treating depth/stencil buffers either
as regular depth or stencil renderbuffers.
2005-11-16 04:05:54 +00:00
Brian Paul
06185363dd added _mesa_new_depthstencil_renderbuffer() for combined depth/stencil buffers 2005-11-16 04:00:31 +00:00
Brian Paul
c731d6223c Added error checking in _tnl_Begin to detect incomplete framebuffer.
Set new tnl->DiscardPrimitive field to true when such error is
detected to discard the glBegin/End primitive when flushing.
Added some new comments.
2005-11-16 02:47:16 +00:00
Brian Paul
0ad64faec7 change an assertion 2005-11-16 02:00:34 +00:00
Brian Paul
738f501f73 Replace GL_POLYGON+1 with PRIM_OUTSIDE_BEGIN_END 2005-11-16 01:58:19 +00:00
Brian Paul
62620d349b add GL_INVALID_FRAMEBUFFER_OPERATION_EXT in _mesa_error() 2005-11-16 01:11:06 +00:00
Brian Paul
daeb0056df fix color interpolation problem reported on VMS 2005-11-15 15:08:03 +00:00
Brian Paul
7edf68e081 check for ctx==NULL, bug 4087 2005-11-15 14:50:55 +00:00
Brian Paul
1e134cf7e4 Fix problem in stencil_and_ztest_span() when using h/w stencil buffer.
Fix a comment typo.
Remove some unneeded #includes.
2005-11-15 04:01:29 +00:00
Ian Romanick
5ef524cd01 Two subtle things missed on the previous commit. 2005-11-15 01:55:46 +00:00
Ian Romanick
a163256cc2 Add the ability for interleave to test passing invalid format enums
and invalid stride values (see bugzilla #5058).
2005-11-15 01:46:49 +00:00
Ian Romanick
e5700a1ba3 Simple test of glInterleavedArrays functionality. 2005-11-14 23:31:05 +00:00
Brian Paul
cb6b47b795 remove unneeded RasterPosValid check 2005-11-14 18:23:56 +00:00
Brian Paul
7b98b40e47 Improve _mesa_print_program().
Added make_state_string() to produce a string from a GL state vector.
2005-11-12 23:25:49 +00:00
Brian Paul
b3c095f074 fix comment for TexSrcTarget 2005-11-12 23:24:32 +00:00
Brian Paul
662fbf8a62 Added _mesa_light() helper function so we can avoid transforming then
un-transforming light positions and spot directions when popping light
state off the attribute stack.
2005-11-12 18:58:12 +00:00
Brian Paul
ba3da6154c Added OSMesaColorClamp(), bug 4917 2005-11-12 18:44:29 +00:00
Brian Paul
e3636b4114 update an assertion 2005-11-12 17:59:05 +00:00
Brian Paul
bed8363aa6 update some assertions 2005-11-12 17:56:18 +00:00
Brian Paul
de99760bf3 Move stuff common to vertex/fragment_program into the base class, including:
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
2005-11-12 17:53:14 +00:00
Brian Paul
77ee31930a Make _mesa_is_proxy_texture() non-static and use in a few more places.
Use COPY_4FV() where possible.
Added some comments, clean-ups.
2005-11-11 15:33:36 +00:00
Ian Romanick
0325bc6359 Support for "fragment program to C" and TCC has been removed from the
source code, so there is no reason for this config to exist.  This
fixes fdo bugzilla #5004.
2005-11-10 16:25:37 +00:00
Brian Paul
418a7dbd75 s/MAX_LIGHTS/ctx->Const.MaxLights/ and spruce up some comments 2005-11-10 16:22:56 +00:00
Brian Paul
6297799fee fix popping of GL_SPOT_DIRECTION (bug 5005) 2005-11-10 16:19:44 +00:00
Brian Paul
db40ebfbb7 remove -DMESA_DEBUG 2005-11-10 05:10:49 +00:00
Brian Paul
1984aabe83 Move code to enable FP exceptions into debug.c (set MESA_DEBUG=fpexceptions).
Get rid of MESA_DEBUG preprocessor symbol, just use DEBUG instead.
2005-11-10 05:10:25 +00:00
Brian Paul
a8446f72f4 fix popping of GL_EYE_PLANE state (bug 4996) 2005-11-09 16:52:21 +00:00
Brian Paul
a8717180d9 Bug 4996.
Replace use of FLOAT_TO_USHORT with either CLAMPED_FLOAT_TO_USHORT or
UNCLAMPED_FLOAT_TO_USHORT.  Same should be done for UBYTE, UINT, etc.
2005-11-09 16:30:50 +00:00
Brian Paul
cfca72cfb1 use UNCLAMPED_FLOAT_TO_USHORT/UBYTE in clear_rgba_buffer() (bug #4992) 2005-11-09 01:17:33 +00:00
Brian Paul
8850a7e20f Move COPY_FLOAT() macro down into glide driver.
Rewrite COPY_4FV() macro to not use COPY_FLOAT(), and use integer moves as
originally intended.
2005-11-09 00:56:51 +00:00
Ian Romanick
5374e4ba7e At keithw's request, remove all traces of the "fragment program to C" and
TCC experiment.
2005-11-08 22:54:22 +00:00
Ian Romanick
4884db6eb2 This patch adds the missing NV_vertex_program2 and NV_vertex_program3
instructions to the various internal tables.  It does not add support for
them to the parser nor does it add support for them to the program
interpreter.

It also corrects some errors in the comments in program_instruction.h.

This patch breaks the instruction union in t_vb_arbprogram.h.  The opcode
field in that union was only 6 bits.  When there were only 59+3 instructions
that worked fine. However, this patch increases the base instruction count
to 69.  This requires 7 bits.  The problem is that increasing the opcode
width to 7 bits increases the size of instruction::rsw to 33 bits.  I've
increased the size of the union to 64-bit, but this is just a temporary hack
(and probably breaks the build on some systems).
2005-11-08 22:40:26 +00:00
Brian Paul
e1a5edf083 s/_mesa_debug_fp_inst/_mesa_print_program/ 2005-11-08 14:53:24 +00:00
Brian Paul
bdd80bf819 remove _mesa_debug_fp_inst() 2005-11-08 14:52:51 +00:00
Brian Paul
0bffb1192a some initial work on upcoming GL_EXT_framebuffer_blit extension 2005-11-08 14:45:48 +00:00
Brian Paul
3e9c099088 remove a bunch of extension stuff that's in glxext.h 2005-11-08 14:44:07 +00:00
Brian Paul
02df9e1ed4 minor work in _mesa_print_program() 2005-11-08 14:42:52 +00:00
Brian Paul
832026f906 remove unneeded #includes 2005-11-08 14:41:41 +00:00
Brian Paul
beff21e7bf remove unneeded #includes 2005-11-07 17:36:34 +00:00
Brian Paul
189bbe0b8c s/_mesa_debug_fp_inst/_mesa_print_program/ 2005-11-07 16:03:46 +00:00
Brian Paul
c657d8e3e4 s/_mesa_debug_vp_inst/_mesa_print_program/ 2005-11-05 20:18:51 +00:00
Brian Paul
30d6a4bffa consolidate vertex/fragment program printing into _mesa_print_program() 2005-11-05 20:18:18 +00:00
Brian Paul
237dae74f7 use _mesa_program_file_string() and _mesa_opcode_string() 2005-11-05 19:33:13 +00:00
Brian Paul
bf41bc03c2 added _mesa_program_file_string() 2005-11-05 19:32:36 +00:00
Brian Paul
b7c87974b3 Use _mesa_opcode_string() 2005-11-05 19:24:08 +00:00
Brian Paul
c289f48342 use _mesa_num_inst_src_regs() and _mesa_opcode_string() 2005-11-05 19:16:19 +00:00
Brian Paul
b88fb724e6 use _mesa_num_inst_src_regs() instead of nr_args() 2005-11-05 19:15:27 +00:00
Brian Paul
1fcdaf1c3b added _mesa_num_inst_src_regs() and _mesa_opcode_string() 2005-11-05 19:12:36 +00:00
Brian Paul
637c375ee2 s/Negate/NegateBase/ 2005-11-05 17:23:45 +00:00
Brian Paul
9ba4ef3102 s/TexSrcIdx/TexSrcTarget/ 2005-11-05 17:18:09 +00:00
Brian Paul
7e807510d8 Unify vertex/fragment program instuctions.
Based on patch by Ian (#4967) but also unify instruction opcodes.
2005-11-05 17:10:45 +00:00
Brian Paul
73347516be remove unneeded #includes 2005-11-05 17:08:50 +00:00
Brian Paul
41c8b71871 remove unneeded #include 2005-11-05 17:07:00 +00:00
Aapo Tahkola
47adbde5e5 Fix broken build. 2005-11-05 14:49:26 +00:00
Brian Paul
8894a55d5f added MESA_GLX_ALPHA_BITS env var 2005-11-05 03:12:06 +00:00
Brian Paul
fd4395b8d1 don't need MAKE_SWIZZLE() macro 2005-11-05 03:02:28 +00:00
Brian Paul
613e1ad5d5 Replace parameter_type enum in program.[ch], use register_file enums instead. 2005-11-05 02:15:21 +00:00
Brian Paul
4d0b7618cb minor improvements in _mesa_init_teximage_fields() 2005-11-05 02:12:44 +00:00
Brian Paul
95ebb5f485 use VERT_RESULT_HPOS, VERT_BIT_POS tokens 2005-11-04 16:52:41 +00:00
Brian Paul
2cb1cf484a better ffs() function (bug 4956) 2005-11-04 16:47:22 +00:00
Brian Paul
8ff68b2bf3 just pass ctx to do_ndc_cliptest() rather than stuffing it in the arb_vp_machine struct 2005-11-04 16:43:28 +00:00
Brian Paul
c12ee99d11 MESA_GLX_ALPHA_BITS env var to force visual with alpha channel 2005-11-04 16:41:06 +00:00
Brian Paul
f805cdfedf remove unneeded HIDDEN definition (bug 4956) 2005-11-04 00:58:17 +00:00
Brian Paul
84f3ff91d9 fix MinGW problems (bug 4956) 2005-11-04 00:52:08 +00:00
Adam Jackson
d78834b306 s/dri.sourceforge.net/dri.freedesktop.org/ 2005-11-03 20:49:07 +00:00
Brian Paul
72030e0d91 Streamline code generation by using a fixed size instruction buffer in
arb_program struct.
2005-11-03 03:30:34 +00:00
Brian Paul
ccfe3d4683 use WRITEMASK_* tokens 2005-11-03 02:35:15 +00:00
Brian Paul
7ae9713a60 s/15/VERT_RESULT_MAX/ 2005-11-03 02:28:47 +00:00
Brian Paul
1624162b0c added a const, clean-up 2005-11-03 02:26:47 +00:00
Brian Paul
45cd2f9305 fix typo, minor clean-ups 2005-11-03 02:25:10 +00:00
Brian Paul
bcf4ae7816 added osdemos/ dir to DEMO_FILES 2005-11-02 21:01:26 +00:00
Brian Paul
60031ace75 implement USE_MGL_NAMESPACE for x86-64 dispatch code (Mark Bolstad) 2005-11-02 20:59:37 +00:00
Brian Paul
90ebb581e6 Rename FRAG_OUTPUT_* tokens to FRAG_RESULT_* to match vertex program convention 2005-11-02 18:06:12 +00:00
Jouk Jansen
5a02209cd2 Committing in .
Updated OpenVMS compile support (define tnl for include files)
 Modified Files:
 	Mesa/src/mesa/drivers/common/descrip.mms
 ----------------------------------------------------------------------
2005-11-02 15:24:14 +00:00
Aapo Tahkola
eda460035e Use ctx->VertexProgram._Current . 2005-11-02 14:12:52 +00:00
Aapo Tahkola
26b1c97a9d Remove some ghost code and adjust things a bit. 2005-11-02 14:07:03 +00:00
Keith Whitwell
e4894177ba More useful ARL test 2005-11-02 12:58:38 +00:00
Eric Anholt
3a5626cb84 First step of Radeon DRI unification:
- Makes all three drivers use the same screen structure and setup code, with a
  few ifdefs for the separate compilation to deal with symbols not being
  available to all drivers and the fact that we have no mechanism for dealing
  with different config options for different chip families in the same driver.
  These issues should be dealt with later.
- Introduces IS_R[123]00_CLASS(radeonScreenPtr) macro for code for taking
  different paths depending on the general class of chipset.
- Adds many new R300-class PCI IDs, though not all those listed in
  radeon_driver.c.
2005-11-02 01:15:07 +00:00
Keith Whitwell
a9b927cb6e add an arl test 2005-11-01 20:29:59 +00:00
Aapo Tahkola
a546abc8da Fix broken tnl stage. 2005-11-01 18:12:58 +00:00
Keith Whitwell
f4fbda35b0 Add a NotifyInputChanges() callback so that drivers (particularly tnl
drivers) can track when the sizes or strides of incoming VB->AttribPtr
arrays have changed.
2005-11-01 17:29:46 +00:00
Keith Whitwell
c3626a91ce Several fp and vp tweaks:
- Renumber VERT_RESULT_* values so that they match the
	  numbers of the corresponding FRAG_ATTRIB_ values.

        - Add ctx->VertexProgram._Current and FragmentProgram._Current
	  values which point to either the current client-supplied
	  program if enabled, or otherwise to the current mesa-internal
	  program.  Thus this program is always the correct one for
	  the current state, providing that the mesa flags to turn on
	  automatic generation are enabled.

	- Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c
	  and t_vp_build.c so that the driver knows when the generated
	  program changes.  This is cleaner than trying to code all the
	  possible _NEW_* flags into the driver, and more precise as well.

	- Add a UsesKill flag to identify fragment programs with that
	  instruction, as these can require special treatment.

	- Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's.
2005-11-01 17:25:49 +00:00
Aapo Tahkola
6aa6d440d9 Re-enable fallbacks. 2005-11-01 16:59:13 +00:00
Aapo Tahkola
e7d6bb9dc4 -Fix first frame -bug
-Use 16-bit elts in vtxfmt_a path if possible
-Optimize VSF param uploading
-return in r300DepthMask looks suspicious, use r300Enable instead
-Dont use r300ResetHwState in invalidate state(disabled, missing hooks, possible instabilities)
2005-11-01 15:52:08 +00:00
Aapo Tahkola
3cf156df2b Fix segmentation fault in _tnl_ProgramCacheDestroy(). 2005-11-01 15:43:06 +00:00
Keith Whitwell
da70bc6baa Make colors match the fp tests (really) 2005-11-01 12:22:48 +00:00
Keith Whitwell
a605d9c3de Make colors match the fp tests 2005-11-01 12:20:13 +00:00
Keith Whitwell
d9f362a667 standalone tests for vp instructions 2005-11-01 06:28:39 +00:00
Brian Paul
0505103710 Re-org and clean-up of vertx/fragment program limits (instructions,
temporaries, parameters, etc).
glGetProgramivARB() now returns all the right things.
Updated i915 and r300 code to initialize program native limits and
current program's native instruction/temporary/etc counts.
2005-11-01 04:36:33 +00:00
Brian Paul
ffec105109 fix problems found with gcc 2.96 (bug 4934) 2005-10-31 21:52:56 +00:00
Brian Paul
dcf4c17fb1 check swrast->_FogEnabled instead of ctx->Fog.Enabled 2005-10-31 19:46:55 +00:00
Aapo Tahkola
821b3dd562 Need more than 200 instructions. 2005-10-31 14:37:33 +00:00
Aapo Tahkola
37f2eaa316 Improve tnl program searching performance. 2005-10-31 14:34:32 +00:00
Brian Paul
18e7c5c5fe Simplify parse_attrib_binding().
Now only use VERT_ATTRIB_* and FRAG_ATTRIB_* tokens instead of
hard-coded numbers.
Note: previous check-in did similarly for output register parsing.
2005-10-30 21:46:00 +00:00
Brian Paul
7aebaf3deb Lots of clean-up in arb program parser.
Use new _mesa_init_fp/vp_instruction() function to initialize instructions.
2005-10-30 21:23:23 +00:00
Brian Paul
094a1ddf24 need to use absolute value for RSQ 2005-10-30 16:52:02 +00:00
Brian Paul
5d04101d18 added some assertions to catch unexpected swizzle values in cvp_emit_arg(), currently fails sometimes 2005-10-29 18:29:54 +00:00
Brian Paul
32df89e12d Use MAKE_SWIZZLE4() macro in a few more places.
Clean up the parse_extended_swizzle_mask() and parse_swizzle_mask() functions.
2005-10-29 18:26:43 +00:00
Brian Paul
5b3cf5af74 reduced swizzle comment 2005-10-29 18:18:46 +00:00
Brian Paul
1a979736a6 Free old parameter list before assigning new one. FIxes memory leak. 2005-10-29 17:07:09 +00:00
Brian Paul
5244fc6d60 added warning about use of REG_SCRATCH 2005-10-29 16:51:34 +00:00
Brian Paul
3c2f8b22b9 clean-up comments 2005-10-29 16:17:01 +00:00
Brian Paul
a2e696e521 s/lenght/length/ 2005-10-29 16:15:47 +00:00
Brian Paul
af13891dbd fix LIT bug 2005-10-29 16:05:18 +00:00
Brian Paul
4174f79b19 fix a few bugs in SWZ execution 2005-10-29 16:03:19 +00:00
Brian Paul
db02ab767f fix errors in RoughApproxPower(), do_LIT(), _tnl_program_string() 2005-10-29 15:56:53 +00:00
Brian Paul
4570364097 If parsing a program fails, don't change the vertex/fragment program object.
Specifically, don't attach a dummy program.
This change also fixes an occasional segfault.
Some code clean-ups.  Use GLboolean instead of GLuint to return pass/fail.
2005-10-29 15:52:31 +00:00
Eric Anholt
aba878d8c2 Bug #4901: Correct secondary color emission when lighting is turned off, tested
with seccolor on rv200 and r200.

Submitted by:	sroland
2005-10-29 00:27:01 +00:00
Ian Romanick
d7d41ceeb0 Add new test "texfilt". This test is a cousin to texwrap. Instead of
testing various texture wrap modes, this test examines various texture
filter modes, including anisotropic.

Add CFLAGS to a couple places in Makefile so that 32-bit builds on
64-bit archs will work correctly.
2005-10-28 18:41:03 +00:00
Brian Paul
3eec2901db Keith's fixes for RSW and XPD (need temporaries) 2005-10-28 15:40:08 +00:00
Brian Paul
86734ddae4 include tnl.h to silence warning 2005-10-28 15:22:28 +00:00
Brian Paul
b3c98e6205 Added assert that result != arg0 in do_RSW. This currently fails and needs fixing. 2005-10-28 14:41:06 +00:00
Brian Paul
b5ee368baf TNL module needs to implement ctx->Driver.ProgramStringNotify() function
so that calls to glProgramStringARB() to specify a new program causes the
TNL-attached data to get recomputed.
2005-10-28 14:32:49 +00:00
Brian Paul
f51bf9e23c add newline at end of file 2005-10-28 13:12:28 +00:00
Brian Paul
8cb2923038 don't use -Wmissing-prototypes for C++ code 2005-10-28 13:11:00 +00:00
Brian Paul
ca33e21165 silence a bunch of compiler warnings 2005-10-28 13:09:23 +00:00
Aapo Tahkola
5222c58a68 Silence gcc-4 warnings. 2005-10-28 12:43:41 +00:00
Aapo Tahkola
dc44372ba7 Fix texture mixup when two or more contexts. 2005-10-28 12:14:58 +00:00
Dave Airlie
eb171b0c10 fix missing commit for span changes 2005-10-28 12:05:25 +00:00
Dave Airlie
3b3adf3daa fix up radeon span functions using latest r200 code from Brian,
tested with reflect on 32-bit.. not sure why depthHasSurface isn't needed
2005-10-28 12:00:09 +00:00
Aapo Tahkola
a4af1119f5 Compiled arrays for vtxfmt_a path. 2005-10-28 09:28:32 +00:00
Eric Anholt
9c8f649930 GC a bit of dead code I noticed while looking at texwrap. 2005-10-28 07:00:41 +00:00
Eric Anholt
c57be49099 Correct the ordering of the blend constant color. 2005-10-28 06:15:11 +00:00
Eric Anholt
4b9f1308e5 Add support for GL_EXT_stencil_wrap, from hearing that the windows drivers did
it, and guessing that the two remaining entries in the 3-bit values were the
new funcs.  Tested with modified stencilwrap test.  Also, remove the commented
fallback stuff -- more modification to stencilwrap suggests that those issues
were just from span readback, not stencil implementation.
2005-10-27 21:21:05 +00:00
Eric Anholt
215c4c3a9c Bug #1028: Add hardware-accelerated stencil support to r128. Testing with
stencilwrap reported many issues with various modes.  Some of these were
complicated by the fact that spans are broken (Bug #1615), but some appear to be
real bugs.  However, while spans remain broken, I found that visual results were
better by avoiding fallbacks rather than avoiding just a broken stencil
implementation.  Note that this required changing the depth spans at 24+8bpp
into read-modify-write cycles.  It would be nicer as a single write with
a mask, but the kernel span blits turn off masking.

Reviewed by:	ajax
2005-10-27 20:26:24 +00:00
Eric Anholt
512c994b92 Bug #4900: Fix the non-fogcoord fog test on r100 (and rv200) at tcl_mode=1 by
flipping the signs on two factors.  While this contradicts the DDK, it matches
what r200 does, and it fixes the test.
2005-10-27 19:59:41 +00:00
Eric Anholt
170a61ec00 Add support for HW stencil spans, mirroring the depth spans support. Used for
Rage 128 stencil support.
2005-10-27 06:01:50 +00:00
Eric Anholt
2d0c92d81b Bump driver date for recent extension adds. 2005-10-27 01:46:39 +00:00
Aapo Tahkola
03833ba2ca Cover my arse. 2005-10-26 18:02:37 +00:00
Aapo Tahkola
d240b29b95 Reduce stderr noise and fix some compiler warnings. 2005-10-26 17:55:28 +00:00
Aapo Tahkola
22605caea8 Remove few outdated r200 files. 2005-10-26 17:04:15 +00:00
Aapo Tahkola
4dc3249f0d Sync with my local tree.
Changes to current operation:
-Elts are no longer converted to 16-bit format
-Cube maps
2005-10-26 16:42:06 +00:00
Aapo Tahkola
23f076ca67 Fix invalid vsf temp count for rv350. 2005-10-26 13:35:41 +00:00
Eric Anholt
5f79025e0d Fix the RGB order of the specular color emit, and turn GL_EXT_secondary_color
back on.  Tested using seccolor modified to use the blue channel instead of
green, since green stays in the same place across RGB/BGR mistakes.  Also hook
in UpdateSpecular on COLOR_EXT change, which might have resulted in missing
statechanges before.
2005-10-26 10:46:49 +00:00
Eric Anholt
f8a5898ca0 Add support for GL_EXT_fog_coord, tested using tests/fog.c. (Also, matches the
output from indirect rendering).
2005-10-26 10:11:34 +00:00
Eric Anholt
9eaed1178d Add built programs to .cvsignore. 2005-10-26 09:53:38 +00:00
Eric Anholt
896735e412 Add a fog mode (normal and fog_coord, leaner/exp/exp2 mode) testing program I
wrote for sis, which has also exposed a few bugs elsewhere.
2005-10-26 09:48:03 +00:00
Eric Anholt
2330ed08c3 Add disabled support for GL_EXT_fog_coord. While it seems correct to me, it's
not respecting the coords (or perhaps interpreting them differently?) in my
testing.  However, in the process it led to a fix of a secondary color handling
issue where it would be taken from the wrong offset, I believe, based off of
reading the r200 driver.  Also add a minor tweak to save time in the
fog-but-not-specular case.
2005-10-26 09:37:53 +00:00
Eric Anholt
a09d002bb5 Move the front.offset setting above a check to shortcut reallocating buffers if
width and height stayed the same.  Rely on front.offset pointing at the origin
in the window (rather than the origin of the front buffer), and fix the coords
in swapbuffers, which were wrong.  This is different from other drivers because
we've got a back buffer with a 0,0 origin at the window's origin, which makes it
more convenient to have the front buffer match it.
2005-10-25 21:10:28 +00:00
Eric Anholt
f1113fa99d Initial add of some (disabled) SiS 6326 drawing code integrated from Alan Cox's
last drop I saw, which was in turn based on a code drop of mine.  Texturing,
culling, and several extensions are unimplemented, and some features could
probably be improved. It's untested, but there don't appear to be regressions on
the 300-series code, so I'd like to get these bits in now so that it can be
worked on as not a huge diff.
2005-10-25 20:37:01 +00:00
Brian Paul
7e4cc1c29f updates from 6.4 branch 2005-10-24 23:33:27 +00:00
Eric Anholt
005070a62a Cut a bunch of code by not trying to precompute the blit commands and instead
just do it per blit.  No noticable performance difference (or behavior
difference, in my tests), and a significant difference in sanity.
2005-10-24 22:38:11 +00:00
Eric Anholt
7040b7ad88 In the last commit I added in a fatal error on unknown base formats so I
wouldn't get confused when adding support for new formats.  However, it resulted
in dying in texenv instead of drawing something undefined for GL_DECAL.  Do what
GLcore apparently does and just pass the fragment through.
2005-10-24 22:23:52 +00:00
Eric Anholt
f33beed330 Fix and enable GL_MESA_ycbcr_texture. Looks fine with yuvrect. I'm slightly
concerned that TEXEL_YUV422 looks like TEXEL_YVU422 and TEXEL_VUY422 looks like
TEXEL_VYU422 in yuvrect, but I'm happy enough for now.
2005-10-24 22:01:40 +00:00
Eric Anholt
81d3bf58ff Add support for GL_EXT_secondary_color, tested with seccolor test. 2005-10-24 21:30:06 +00:00
Eric Anholt
310f1551b4 Turn off the AGP dispatch path yet again, as it seems to be broken (found with
tuxracer and the upcoming support for secondary color).
2005-10-24 21:19:06 +00:00
Brian Paul
32340aea13 fragment program writing to result.depth.z was broken 2005-10-24 19:28:36 +00:00
Adam Jackson
c92adf4682 Add RV350 AQ chip. (popolon at popolon dot org) 2005-10-24 17:42:55 +00:00
Eric Anholt
414b742c97 Since we memcpy texture data synchronously to the card, idle the engine before
we start copying.  I haven't seen it go wrong before, but I'm pretty sure this
fix is correct.
2005-10-24 10:24:23 +00:00
Eric Anholt
60b639b9a6 - Add a few more hardware internal formats that are supported. Some remaining
ones require custom texstore, so they aren't done yet.
- Add YCBCR support commented out, since the yuvsquare test didn't work with
  just the bits I've added.
- Add the no-compression GL_ARB_texture_compression support.
- Add the driconf texture depth option and try to respect it.
2005-10-24 09:59:43 +00:00
Eric Anholt
971bdc193c Fix the GL_BLEND case (and remove the fallback associated with it) by converting
the float values to bytes before packing them.  Tested with texenv.
2005-10-24 09:02:07 +00:00
Eric Anholt
9e87119d87 Fix texenv by moving a misplaced check for being in fallback (should cover only
render state, not texture state).  While here, move a SIS_FIREVERTICES to a more
appropriate location, though it was harmless.
2005-10-24 08:27:30 +00:00
Eric Anholt
9192ab3f5d Add support for GL_ARB_texture_border_clamp and GL_ARB_texture_mirrored_repeat,
tested using texwrap, fixing the sourcing of border constant values (use the
bytes, not the floats!).  Remove the fallback on GL_CLAMP_TO_EDGE, which acts
properly, and add a note to GL_CLAMP about nonconformance (whcih is what the
fallback for CLAMP_TO_EDGE was probably targeting).
2005-10-24 08:02:44 +00:00
Eric Anholt
6efd595bf5 Fix a typo in a fallback string. 2005-10-24 07:21:56 +00:00
Eric Anholt
dc793d4e9a Add support for GL_EXT_stencil_wrap by guessing that the skip of two values in
the register header was meaningful.  It turns out those were the proper values
for the plain INCR/DECR ops, while what we were using as INCR/DECR were the
_WRAP versions.  Tested with stencil_wrap (didn't expose normal/_WRAP swapping)
and stencilwrap (exposed it nicely) tests.  Props to idr for poking me about
adding this.
2005-10-24 06:40:56 +00:00
Roland Scheidegger
3265585b15 disable yuv textures (GL_MESA_ycbcr_texture) on rv250 (hw bug, #2078). Change the initialization to fail if an unknown pci id is detected, instead of accepting all values which are not r100-based radeons. 2005-10-22 02:03:13 +00:00
Eric Anholt
1c04be573e Fix FreeBSD build by building libGL in the order desired, and doing a fix to my
mklib changes.
2005-10-22 01:41:40 +00:00
Brian Paul
52f686c480 fix GLX server resize/crash when resizing windows 2005-10-21 21:39:10 +00:00
Brian Paul
7d3b26022b check span.y >=0 (bug 4842) 2005-10-21 18:35:35 +00:00
Keith Whitwell
e516654dec new depth tests 2005-10-21 18:34:22 +00:00
Keith Whitwell
f28cbb6a7f simplify, remove sgi messages 2005-10-21 18:33:53 +00:00
Brian Paul
32a7ab2197 Darwin version fix (SF bug 1334274) 2005-10-21 15:39:42 +00:00
Brian Paul
54cfe69436 fix broken SWZ instruction 2005-10-21 15:22:36 +00:00
Brian Paul
b3f2e15035 fix broken KIL 2005-10-21 14:22:38 +00:00
Keith Whitwell
3a09ea919c better looking tests 2005-10-21 10:27:37 +00:00
Keith Whitwell
2ea6b800c0 Make test visible 2005-10-21 10:07:52 +00:00
Keith Whitwell
8975cbb36b Better looking test. 2005-10-21 08:34:06 +00:00
Dave Airlie
eedc45709f add the tile bits for offset, and unk bit 31 of size 2005-10-21 06:20:27 +00:00
Brian Paul
f468dfde17 restore FASTCALL stuff 2005-10-20 22:51:50 +00:00
Brian Paul
adfd5510c0 fix bad loops in TransposeMatrix[fd]() 2005-10-20 22:04:01 +00:00
Keith Whitwell
a90909e892 A bunch of little tests which exercise each ARB_fp instruction plus
a couple of other interesting cases.
2005-10-20 21:40:23 +00:00
Brian Paul
f344be793c added mm.c mm.h execmem.c 2005-10-20 21:29:32 +00:00
Brian Paul
255afe4abd fix another renderbuffer wrapping bug 2005-10-20 21:25:41 +00:00
Brian Paul
c8f86105d0 Disable the FASTCALL optimization because it still breaks server-side GLX. 2005-10-20 21:12:35 +00:00
Eric Anholt
6f980dbf21 Bump driver dates for the crasher fixes yesterday. 2005-10-20 20:11:46 +00:00
Jouk Jansen
b50a51118c descrip.mms syntax correction 2005-10-20 13:06:03 +00:00
Dave Airlie
806e25a5d9 fixes for r300_tex.c from Aapo Tahkola 2005-10-20 06:06:18 +00:00
Brian Paul
301c3dcb6c s/glut_gz2/glut_bz2/ 2005-10-19 20:26:13 +00:00
Eric Anholt
2420318cd9 Make SiS a little more like other drivers: Add SIS_DEBUG (only option being
"fall" so far) and make the fallback_force option be no_rast like other drivers.
Incidentally, makes no_rast not crash (though it still fails to render).
2005-10-19 03:23:29 +00:00
Eric Anholt
e0cb784e03 Remove some long-dead code. 2005-10-19 03:07:05 +00:00
Eric Anholt
d76c7d7d3e Fix a missed merge for idr's dispatch changes: failure to do driInitExtensions
in __driCreateNewScreen_20050727 resulted in crashing in dispatch.
2005-10-19 02:46:42 +00:00
Brian Paul
dc4070c787 updated for new mm.c, execmem.c files 2005-10-19 01:28:14 +00:00
Brian Paul
ca2db58166 s/memcpy/_mesa_memcpy/, s/FREE/_mesa_free/ 2005-10-19 01:26:48 +00:00
Eric Anholt
deadd47aab Bug #4615: Fix the SiS driver for the renderbuffer changes. Previously, all
drirenderbuffers pointed at screen offset 0 and NULL.  Instead, set up the front
buffer at startup but leave the others for later, since sis allocates them on
demand rather than using the static method of the other non-sis-descendent
drivers.  Some basic apps work, but fallbacks may be broken still.
2005-10-19 00:53:05 +00:00
Eric Anholt
bf3f0bcf80 Fix a missed merge for idr's dispatch changes: failure to do driInitExtensions
in __driCreateNewScreen_20050727 resulted in crashing in dispatch.  Rendering
remains broken.
2005-10-18 23:48:59 +00:00
Eric Anholt
b83435f53b Attempt to fix libGL on FreeBSD, where the library was being built without any
dependencies, breaking builds of third-party software.
2005-10-18 23:36:40 +00:00
Brian Paul
d99c37bca6 move _mesa_exec_malloc/free() up near other malloc/free prototypes 2005-10-18 15:02:45 +00:00
Brian Paul
1c236fd5c7 Lots of clean-ups. Replace __inline__ with INLINE macro. Use the
_mesa_calloc(), _mesa_free() functions.  Clean-up formatting, doxygen-style
comments.
2005-10-18 15:01:19 +00:00
Keith Whitwell
005469005d Add _mesa_exec_malloc() and _mesa_exec_free() for allocating
executable memory.  Based on Thomas Hellstrom's patch.
TODO: glapi.c also needs this, but cannot access this code.
2005-10-18 13:29:59 +00:00
Roland Scheidegger
05e1a49ab4 on r200, don't emit fog coords when fog isn't actually enabled. Fix bug with vtxfmt not causing a fallback when fog coords are active. 2005-10-18 13:09:53 +00:00
Brian Paul
730200303d added some header files to DRI_FILES (Donnie Berkholz) 2005-10-17 22:38:44 +00:00
Roland Scheidegger
2d61d30117 add GL_EXT_fog_coord support to radeon driver. No vtxfmt code (just uses fallback) yet. May cause a tcl fallback if fog coord is used together with separate specular lighting. Fog factors are precomputed and then submitted instead of the raw coords (chip limitation, same as on r200). 2005-10-17 00:54:12 +00:00
Roland Scheidegger
dd5a86339f fix some obvious typos in radeon_reg.h (only currently unused bits affected) 2005-10-16 22:45:59 +00:00
Roland Scheidegger
247f3b3e81 enable cube maps on radeon (#2241 on bugzilla). No vtxfmt code yet (just generates vfmt fallback). Code by Andreas Stenglein, some small adjustments by me. 2005-10-15 23:45:53 +00:00
Roland Scheidegger
ccf1378131 fix two bugs wrt calculating max possible texture sizes for texture rectangles/cube maps. 2005-10-15 01:07:59 +00:00
Roland Scheidegger
30daa75293 enable 3rd texture unit on radeon (default still 2 enabled units). Disable some multitexcoord codegen stuff noone understands to make it work. Replace most code testing explicitly for unit 0 and 1 with loops instead of adding test for unit 2, smaller/more readable code at the cost of maybe some slight performance hit. (Code provided by Andreas Stenglein, some adjustments by me.) 2005-10-13 14:30:20 +00:00
Roland Scheidegger
ed2f8635f0 make sure texture matrix is updated often enough with texture rectangles 2005-10-13 00:35:51 +00:00
Roland Scheidegger
6ff023fe3a fix potential bug when emitting elts with lots of components 2005-10-13 00:33:46 +00:00
Brian Paul
96e1ccedec remove unused _mesa_log2() (bug 4468) 2005-10-12 19:46:48 +00:00
Brian Paul
c81de36223 change includes (bug 4468) 2005-10-12 19:46:29 +00:00
Brian Paul
f525d3e139 fix GLAPI/extern problem (bug 4757) 2005-10-12 19:37:38 +00:00
Roland Scheidegger
d084c3d4dc Minor driver cleanup. Remove unnecessery/unneded radeon/r200AllocDmaRegionVerts function. No longer compile the radeon_compat stuff which was for drm 1.1 compatibility presumably but unused since about forever into the driver. 2005-10-11 17:55:54 +00:00
Ian Romanick
44b1bd7597 ifdef out some code to make glapi.c linkable in libglx.so (on the
server).  This isn't strictly needed yet, but it doesn't hurt anything
either.  However, the patches for fd.o bug #2996 require this to build.
2005-10-11 16:56:39 +00:00
Brian Paul
e7325294d0 check for PIXMAP in clip routine (SF bug 1323215) 2005-10-11 01:21:40 +00:00
Brian Paul
ac04a4fa7f fixed constant fogcoord bug (#4729) 2005-10-10 18:39:34 +00:00
Ian Romanick
8d29d463a3 Add 'get' data for glGetFramebufferAttachmentParameterivEXT enums.
Remove an extra closing parenthesis in the Linux version of the SWAP_32 macro.
2005-10-10 17:11:02 +00:00
Roland Scheidegger
1c0f11046a do not set format of the incoming vertices needed for fog_coord in the generic state functions. This is done in the vtxfmt/hwtcl/swtcl pathes respectively. 2005-10-08 23:41:20 +00:00
Roland Scheidegger
30f2d6f0cb remove code dealing with drm versions older than 1.3. The driver requires (and requests) 1.3 since quite some time already to work at all. 2005-10-08 23:36:35 +00:00
Brian Paul
b4269c07f8 change test for presence of accum buffer 2005-10-08 21:36:38 +00:00
Brian Paul
cf085db28a Query/print GL_RED/GREEN/BLUE/ALPHA_BITS 2005-10-08 14:42:51 +00:00
Brian Paul
474f28e57c Fix some issues with state updates and renderbuffers. Querying GL_RED_BITS,
etc. after calling glRenderBufferStorageEXT gave undefined results.
2005-10-08 14:41:17 +00:00
Brian Paul
81a22ef539 MATH_DEBUG changes from bug #4468. 2005-10-07 17:18:51 +00:00
Keith Whitwell
f2802c40ff Populate arb_fp_instruction negate field correctly. 2005-10-07 09:55:26 +00:00
Brian Paul
dfe7aedf84 Fix a number of point size attenuation problems.
Move size clamping into the rasterization function.
2005-10-07 03:56:29 +00:00
Roland Scheidegger
9dd973ec3b fix problems with some texgen modes by putting the chip into LOCAL_VIEWER mode for lighting (potentially causes slight misrenderings with the specular components of lights if the light model is not set for local viewer). 2005-10-05 22:40:09 +00:00
Roland Scheidegger
24a44d74b6 reverse accidentally commited part of last commit (makes it compile again...). 2005-10-05 20:28:31 +00:00
Roland Scheidegger
44dace86ea enable point sizes larger than 1 (for aliased points only) by using the hw point sprite primitive. 2005-10-05 16:15:16 +00:00
Brian Paul
26f69d87a4 fix byteswapping bug in _mesa_texstore_ycbcr() (Benjamin Herrenschmidt) 2005-10-05 13:36:05 +00:00
Roland Scheidegger
ea20c324ae fix typo in radeon_maos_arrays.c from last commit (code currently unused, that path is compile-tested only). 2005-10-05 13:09:15 +00:00
Roland Scheidegger
11f763f505 remove unneeded parameter from radeonUploadTexMatrix. 2005-10-05 12:38:07 +00:00
Roland Scheidegger
a3c8de2fa7 Remove the tcl fallback for texture rectangle (by manipulating the texture matrix) (tested with texrect). Enable texgen for r/q coordinates (tested with projtex). Fix projected texcoords when an app uses TexCoord3x and the texture matrix to save on vertex size (fixes ut2k3 shadow projectors in tcl mode). From texgenmix, all cases with all texgen or no texgen work, with the exception of texgen enabled for s/t only, this one works with hw tcl, but not with vtxfmt (suspect issues with vtxfmt), the mixed cases do not work (which is expected, and should be rare in practice), with the exception of the first one which hits a tcl fallback. 2005-10-05 11:42:44 +00:00
Brian Paul
06f606ce57 Remove _IsPowerOfTwo from gl_texture_object, not really needed. 2005-10-05 04:07:50 +00:00
Brian Paul
198a88923c s/IntFormat/InternalFormat/ and s/Format/_BaseFormat/ for gl_color_table. 2005-10-05 02:11:15 +00:00
Brian Paul
8184ec9fb6 added GL_INVALID_FRAMEBUFFER_OPERATION_EXT to gluErrorString() 2005-10-05 02:08:53 +00:00
Brian Paul
a9fc8ba756 In gl_texture_image replace IntFormat with InternalFormat and Format with
_BaseFormat to be consistant with gl_renderbuffer.
2005-10-05 01:48:07 +00:00
Brian Paul
91802fdf73 check if deleting currently bound frame/renderbuffer object 2005-10-04 16:01:02 +00:00
Brian Paul
7edf1e80bd glBindTexture changes, new assertions 2005-10-04 15:16:27 +00:00
Brian Paul
9e920fb93c fix glIsRender/FramebufferEXT() assertions 2005-10-04 15:01:51 +00:00
Brian Paul
bc6cced479 fix behaviour of glIsFrame/Renderbuffer() 2005-10-04 15:01:27 +00:00
Brian Paul
14c38b8f4f Use Visual.depthBits rather than Renderbuffer::DepthBits for depth buffer
operations.
2005-10-04 14:49:30 +00:00
Brian Paul
eb063cfa38 change initialization of renderbuffer DepthBits 2005-10-04 14:48:24 +00:00
Adam Jackson
199ef86b5e Bug #1155: Define IEEE_ONE on Super-H as well. 2005-10-03 20:02:07 +00:00
Brian Paul
a6296dd2c3 disable a warning 2005-10-03 16:11:47 +00:00
Brian Paul
071b30aba1 added a few calls to _mesa_update_framebuffer_visual() 2005-10-03 16:11:35 +00:00
Brian Paul
b0e7d850d1 finish up some missing code 2005-10-03 16:11:21 +00:00
Ian Romanick
8ef0519bbe Change the 'count' for COMPRESSED_TEXTURE_FORMATS from "?" to "-1". This
signals to the script (glX_proto_size.py) that generates the server-side
size functions that a handcoded query is needed to determine the data size.

Also do s/FOG_COORD_SOURCE/FOG_COORD_SRC/.

When initializing the count in glx_enum::__init__, cast the local property
to int.  Thanks to Python's dynamic typing, if this isn't done the type of
stored count will be a string instead of an int.
2005-10-03 15:05:40 +00:00
Ian Romanick
9a3a1497e5 Remove the non-existant --get-alias-set option from the help text.
Update printPixelFunction (which is only used to generate code for the
server-side) to use the correct method for obtaining the dimensions of the
image parameter to a function.

Only use byteswap.h when building generated code on Linux.  Elsewhere use
the (horrible!) macros from X11/misc.h.

Make sure that enums associated with the generic "Get" function get applied
to GetIntegerv, GetBooleanv, GetFloatv, and GetDoublev.
2005-10-03 14:59:26 +00:00
Brian Paul
1fc4b21eb2 check for GL_DEPTH_STENCIL_EXT 2005-10-01 16:09:45 +00:00
Brian Paul
2794507289 plug in _mesa_texstore_z24_s8() 2005-10-01 16:09:26 +00:00
Brian Paul
184a970722 added _mesa_texstore_z24_s8() 2005-10-01 16:08:27 +00:00
Brian Paul
b0a0ca8bd9 GL_EXT_packed_depth_stencil changes 2005-10-01 16:06:25 +00:00
Brian Paul
0899afae33 additional error checking for GL_EXT_packed_depth_stencil 2005-10-01 16:05:30 +00:00
Brian Paul
cef88397a6 fix an assertion 2005-10-01 16:04:38 +00:00
Brian Paul
7f78c93015 simplify the read_depth_stencil_pixels() function 2005-10-01 16:04:09 +00:00
Brian Paul
9758ef9e7b fix broken z24_s8 fetcher 2005-10-01 16:03:30 +00:00
Brian Paul
252194d74e updated comment 2005-10-01 16:03:00 +00:00
Brian Paul
31340f6645 added _mesa_pack_depth_stencil_span() 2005-10-01 16:02:38 +00:00
Brian Paul
3d61c2e778 move around some error checking 2005-10-01 16:02:11 +00:00
Brian Paul
d0529b67f4 use fmod() to prevent overflow of angle variable 2005-09-30 15:03:33 +00:00
Brian Paul
76560af99d implemented fallbacks for GL_EXT_packed_depth_stencil 2005-09-30 03:01:30 +00:00
Brian Paul
82b29819a9 minor improvements 2005-09-30 03:01:11 +00:00
Brian Paul
f493a04be0 added _swrast_get_row() 2005-09-30 03:00:03 +00:00
Brian Paul
1ad6e08090 call glFinish if drawing to front buffer 2005-09-29 18:46:27 +00:00
Brian Paul
b2404b132d implement CopyPixels for GL_DEPTH_STENCIL_EXT 2005-09-29 04:28:21 +00:00
Brian Paul
3fd819aef8 added _swrast_put_row() 2005-09-29 04:27:47 +00:00
Brian Paul
8d0edf015d Rewrite much of the pixel zoom code.
Zoomed DrawPixels of packed depth/stencil works now.
2005-09-29 03:20:15 +00:00
Brian Paul
5208867f12 add error checks for framebuffer completeness 2005-09-28 16:20:34 +00:00
Brian Paul
d95000da2f check for framebuffer completeness, code clean-up 2005-09-28 15:46:46 +00:00
Brian Paul
f7a8d8ffbb updated assertions (see bug 4590) 2005-09-28 14:20:06 +00:00
Brian Paul
1ad7b99925 Initial work for GL_EXT_packed_depth_stencil extension.
glReadPixels done, glDrawPixels mostly done.
2005-09-28 02:29:50 +00:00
Brian Paul
b955474093 change initialization of rb->DepthBits 2005-09-28 02:28:42 +00:00
Brian Paul
1b5d3d647e added GL_EXT_packed_depth_stencil 2005-09-28 02:28:00 +00:00
Brian Paul
ac3ec5096a added _mesa_scale_and_bias_depth() 2005-09-28 02:27:22 +00:00
Brian Paul
dbd0fa920e tweak glAccum error checking 2005-09-27 16:10:49 +00:00
Brian Paul
78b3b667b5 generate GL_INVALID_OPERATION in glAccum if read/draw buffers aren't the same 2005-09-27 15:52:27 +00:00
Brian Paul
99796464c5 Lift all the format/type error checking out of the _swrast_Draw/Read/CopyPixels
functions into the _mesa_Draw/Read/CopyPixels functions.
2005-09-27 01:25:24 +00:00
Brian Paul
70c3bebcde glDraw/CopyPixels of stencil data didn't obey the stencil write mask. Fixed. 2005-09-26 23:06:01 +00:00
Roland Scheidegger
afb9fb0965 remove identity check for texgen planes (which was just plain wrong). 2005-09-26 20:31:40 +00:00
Roland Scheidegger
84c9e671ed fix projective texturing for (swtcl) texture rectangles. Fix wrong argument order for texgen/texmat matrix multiplication. 2005-09-26 17:11:16 +00:00
Brian Paul
ad271b8c98 Added XMesaDrawable to xmesa_renderbuffer. Use it in a few places instead
of the XMesaPixmap field to avoid some X server-side issues with casting.
2005-09-26 00:38:00 +00:00
Dave Airlie
4aeaff2ae7 Add support for texture compression to R300 driver
This isn't perfect, texcmp still has some issues with the small textures..
but its a good start
2005-09-25 10:20:38 +00:00
Dave Airlie
310a10b0f2 add link for radeon_egl.c 2005-09-25 09:45:42 +00:00
Jouk Jansen
d997b90433 Committing in .
1) change compilation on VMS to use IEEE floating points

 2) one more problem with _mesa_sprintf solved

 Modified Files:
 	Mesa/docs/README.VMS Mesa/progs/demos/descrip.mms
 	Mesa/progs/tests/descrip.mms Mesa/progs/util/descrip.mms
 	Mesa/progs/xdemos/descrip.mms Mesa/src/glu/mesa/descrip.mms
 	Mesa/src/glu/sgi/descrip.mms Mesa/src/glut/glx/descrip.mms
 	Mesa/src/mesa/array_cache/descrip.mms
 	Mesa/src/mesa/drivers/common/descrip.mms
 	Mesa/src/mesa/drivers/osmesa/descrip.mms
 	Mesa/src/mesa/drivers/x11/descrip.mms
 	Mesa/src/mesa/glapi/descrip.mms Mesa/src/mesa/main/descrip.mms
 	Mesa/src/mesa/main/texobj.c Mesa/src/mesa/math/descrip.mms
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/grammar/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 	Mesa/src/mesa/swrast_setup/descrip.mms
 	Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2005-09-23 07:03:53 +00:00
Brian Paul
79b4dbc496 remove printf 2005-09-23 03:24:27 +00:00
Brian Paul
048b13df65 Replace gl_framebuffer's _ColorReadBufferMask with _ColorReadBufferIndex,
Streamline the _mesa_update_framebuffer() function a bit.
2005-09-23 03:22:20 +00:00
Brian Paul
d5861c06f2 fix clipped glReadPixels bug 2005-09-23 02:16:49 +00:00
Brian Paul
36d9ee1828 added XOR line optimization 2005-09-23 01:42:23 +00:00
Brian Paul
6d3637849b Added a fast xor_line() function. Uses XDrawLine with GXxor mode.
Only used for front-buffer window/pixmap rendering, GL_FLAT shade model,
no Z test or other fragment operations.
2005-09-23 01:40:59 +00:00
Brian Paul
0efc17c105 Add Wrapper field to gl_renderbuffer. Used for wrapping one renderbuffer
with another, such as wrapping a hardware/win-sys RGB renderbuffer with a
software-based alpha buffer.
Previous alpha buffer wrapping was conflicting with the X driver's
xmesa_renderbuffer structure containment/inheritance.  That lead to
memory corruption.
2005-09-23 01:20:09 +00:00
Brian Paul
e5fce1694c improve the test for using software alpha buffer 2005-09-23 01:17:07 +00:00
Ian Romanick
7b01068a23 Enable GL_ARB_texture_mirrored_repeat on Savage4. Refactor the code that
sets the texture wrap mode and texture filter mode for Savage4 to the new
functions savage4_set_wrap_mode and savage4_set_filter_mode.

This was tested with texwrap and tunnel.
2005-09-22 21:25:31 +00:00
Brian Paul
676d0accf5 Replace gl_renderbuffer.ComponentSizes[] with separate RedBits, GreenBits,
BlueBits, etc fields.
2005-09-22 05:19:57 +00:00
Brian Paul
f1e2826856 When testing visual attributes, use the Draw/Read buffer, not the context. 2005-09-22 05:00:12 +00:00
Brian Paul
4fd11949f0 fix a debug message 2005-09-22 04:58:42 +00:00
Brian Paul
63016507d7 changed a renderbuffer check 2005-09-22 04:52:45 +00:00
Brian Paul
7d39e82976 s/GL_DEPTH_BITS/GL_TEXTURE_DEPTH_SIZE_ARB/ in _mesa_GetTexLevelParameteriv() 2005-09-21 21:19:22 +00:00
Brian Paul
8bdc1ae358 add missing scale factor in _swrast_read_depth_span_float() 2005-09-21 18:16:33 +00:00
Brian Paul
978ef2bb6d Remove ACCUM_BITS. 2005-09-21 03:35:08 +00:00
Brian Paul
3e37bafab0 replace GLdepth with GLuint and remove GLdepth 2005-09-21 02:47:32 +00:00
Brian Paul
4092fbd55a replace GLdepth with GLuint 2005-09-21 02:46:17 +00:00
Brian Paul
5bfb9356d6 s/programss/programs/ 2005-09-20 21:04:02 +00:00
Brian Paul
5434695017 initial check-in 2005-09-20 15:51:44 +00:00
Brian Paul
9e4e3adcf8 remove 31-bit Z buffer work-around 2005-09-20 04:47:34 +00:00
Brian Paul
8fadf8f900 change mask[] test in put_mono_row_uint() 2005-09-20 04:47:04 +00:00
Brian Paul
14570e6d7c compute z[i] as GLuint 2005-09-20 04:45:26 +00:00
Brian Paul
f39569f550 some improvements to _swrast_clear_depth_buffer() 2005-09-20 04:36:50 +00:00
Brian Paul
000abaa12d remove unneeded sizeof(GLdepth) test 2005-09-20 04:35:40 +00:00
Brian Paul
7265556b9a Change zLeft and zval to GLuint. Seems to fix 32-bit Z computation 2005-09-20 04:34:29 +00:00
Brian Paul
22607975b4 replace STENCIL_BITS with stencilMax value 2005-09-20 04:31:24 +00:00
Brian Paul
3211b28ee6 remove STENCIL_MAX 2005-09-20 04:25:03 +00:00
Brian Paul
cd81190d5c change location of ffs() code for windows 2005-09-20 02:44:40 +00:00
Brian Paul
17d6fff30c init a=0 2005-09-19 21:16:29 +00:00
Brian Paul
c650bb0b7d s/GLchan/GLubyte/, fix error string, add comment 2005-09-19 20:32:21 +00:00
Brian Paul
02237f447f updated comment 2005-09-19 20:29:34 +00:00
Brian Paul
b3aefd1cfb additional wrapper updates, bug 4468 2005-09-19 20:12:32 +00:00
Brian Paul
a01cb26a90 s/unsigned long/drm_handle_t/ to get compilation of fb driver to work 2005-09-19 17:17:58 +00:00
Brian Paul
26bb7bc025 compilation fixes, don't know if runtime works 2005-09-19 17:17:18 +00:00
Brian Paul
6707433272 Fix potential segfault when trying to read pixels outside renderbuffer bounds.
Use _swrast_get_values() which does clipping.
2005-09-16 21:15:27 +00:00
Brian Paul
82e314252f remove unused _swrast_read_depth_span() 2005-09-16 21:10:27 +00:00
Brian Paul
f2ea634c0c lots of little clean-ups, improvements 2005-09-16 21:07:48 +00:00
Brian Paul
6ae8747539 change some comments 2005-09-16 21:06:57 +00:00
Brian Paul
62a2f8cdd6 pass mask=NULL to write all pixels in clear_ci_buffer_with_masking() 2005-09-16 21:06:33 +00:00
Brian Paul
db64b60225 remove unused ctx var 2005-09-16 18:18:47 +00:00
Brian Paul
aa2069586d use mesa import wrappers, bug 4468 2005-09-16 18:14:24 +00:00
Brian Paul
3cc67cb8cd alphabetize 2005-09-16 04:18:09 +00:00
Brian Paul
aa8abf8081 Rework the texture filtering functions a bit.
No need to pass the texture unit number as an argument.
2005-09-16 04:16:48 +00:00
Brian Paul
792a1bcbe4 replace a couple macros with inlined functions 2005-09-16 01:42:07 +00:00
Brian Paul
8885b077ed more GLuint->GLbitfield changes 2005-09-16 01:41:03 +00:00
Brian Paul
e00ac11d4d Replace GLuint with GLbitfield where appropriate. Also replace GLuint
with GLboolean in a few places.
2005-09-15 05:00:45 +00:00
Brian Paul
0f540f4b04 Code clean-ups, reorg. 2005-09-15 03:58:52 +00:00
Brian Paul
e64874ac2d silence warning 2005-09-15 01:58:39 +00:00
Brian Paul
63b5b8eaff Remove a bunch texel fetch functions that can be handled by the new
adaptor functions.
2005-09-15 01:55:40 +00:00
Brian Paul
9a22b555cf updated comments 2005-09-15 01:08:24 +00:00
Brian Paul
da9f65268d New set_fetch_functions() to set a gl_texture_image's FetchTexel functions
from the gl_texture_format's functions.
Added "adaptor" functions to allow sampling a float-valued texture with
GLchans and vice versa.  This will allow trimming down the number of
texture fetch routines.
2005-09-15 01:06:19 +00:00
Brian Paul
7fb9352fe4 replace s_texture.[ch] with s_texcombine.[ch] and s_texfilter.[ch] 2005-09-15 01:00:20 +00:00
Brian Paul
55187ea63e Update includes post-splitting of s_texture.c 2005-09-15 00:58:03 +00:00
Brian Paul
2cd8791cad Split the s_texture.c file into two new files:
s_texcombine.c - for texture combining/application
  s_texfilter.c - for texture sampling/filtering
2005-09-15 00:57:00 +00:00
Brian Paul
6ce60beb28 remove unused vars 2005-09-14 18:21:05 +00:00
Brian Paul
5f16244879 remove _tnl_MakeCurrent call 2005-09-14 18:09:15 +00:00
Brian Paul
a25fe61607 initial 6.5 release notes 2005-09-14 14:34:54 +00:00
Brian Paul
b43671c8bf Remove _tnl_MakeCurrent() and the unused ctx->Driver.MakeCurrent() callback. 2005-09-14 14:32:20 +00:00
Dave Airlie
04adb70f32 fix breakage from Brians changes earlier 2005-09-14 12:08:32 +00:00
Brian Paul
a702bbfff3 clean-up some _mesa_make_current() code 2005-09-14 03:11:36 +00:00
Brian Paul
5250aa7c6a remove rm -f line 2005-09-14 02:18:43 +00:00
Brian Paul
7a534dcab1 remove .a file before creating new one 2005-09-14 02:18:09 +00:00
Brian Paul
41cf68b4cb pageflip change from radeon driver 2005-09-14 00:49:09 +00:00
Brian Paul
a400a1e404 Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when window size/position changes.
2005-09-14 00:42:33 +00:00
Brian Paul
f157e2dee4 make some funcs static 2005-09-14 00:37:10 +00:00
Brian Paul
ff9d235042 Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when window size/position changes.
2005-09-14 00:36:27 +00:00
Brian Paul
48799287b3 use mklib script to make drivers instead of gcc -shared 2005-09-14 00:33:03 +00:00
Brian Paul
a60ff20c58 updated comment 2005-09-14 00:11:30 +00:00
Brian Paul
67a8decffe make some functions static 2005-09-14 00:10:56 +00:00
Brian Paul
e42a31350d Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,
call driUpdateFramebufferSize() when we detect changes in window size/
position in radeonGetLock().
2005-09-14 00:10:27 +00:00
Brian Paul
9ae952a88c added driUpdateFramebufferSize() 2005-09-14 00:09:09 +00:00
Brian Paul
f084f60f8b Move _mesa_add_soft_renderbuffers() from framebuffer.c to renderbuffer.c
Update some comments, code, etc.
2005-09-13 23:37:50 +00:00
Brian Paul
7909dd920d update like for MD2 viewer 2005-09-13 18:18:47 +00:00
Brian Paul
56ff8ed6d8 replace semicolon with && 2005-09-13 15:04:30 +00:00
Brian Paul
363344f5b8 print version with debug info 2005-09-13 14:48:28 +00:00
Brian Paul
7bb7f97594 fix FreeBSD problem (bug 4435) 2005-09-13 13:36:47 +00:00
Eric Anholt
914ec8ef58 Fix libGL build on FreeBSD by respecting ASM_FLAGS.
Submitted by:	Diego Pettenò <flameeyes@gentoo.org>
2005-09-13 05:19:02 +00:00
Brian Paul
878c371e6c Replace ctx->Driver.StencilOp/Func/Mask() functions with
ctx->Driver.Stencil*Separate() functions.
2005-09-13 04:42:09 +00:00
Brian Paul
42c34efd23 OpenGL 2.0's two-sided stencil feature wasn't implemented correctly.
See comment near top of stencil.c for info about OpenGL 2.0 vs.
GL_EXT_stencil_two_side.
2005-09-13 02:59:53 +00:00
Brian Paul
bdf8441f80 just some reformatting 2005-09-13 02:57:07 +00:00
Brian Paul
56a2e084be Clear either 8 or 16-bit stencil buffers. 2005-09-13 02:03:06 +00:00
Brian Paul
b5932cfc9d Use GLuint/GLint intead of GLstencil for stencil state. 2005-09-13 02:02:03 +00:00
Brian Paul
a96f889a57 Move the ctx->FirstTimeCurrent initialization 2005-09-13 01:19:29 +00:00
Brian Paul
5179f671e7 init StencilOpSeparate to NULL 2005-09-13 01:17:01 +00:00
Roland Scheidegger
8d2139e513 add GL_ATI_fragment_shader support for r200 2005-09-12 23:45:05 +00:00
Brian Paul
fd9de710f5 added a return upon out-of-memory, remove a needless assignment 2005-09-12 23:18:21 +00:00
Brian Paul
f6e3234639 restore brace lost in previous check-in 2005-09-12 21:41:45 +00:00
Roland Scheidegger
f20917de5b add complete support for ATI_fragment_shader for the r200. Most of the new code is in the new file r200_fragshader.c. Reverse engeneered by Dave Airlie and me 2005-09-12 21:20:10 +00:00
Roland Scheidegger
11543624ed remove unnecessary Swizzle parameter from struct (forgotten when the code was refactored) 2005-09-12 17:21:40 +00:00
Brian Paul
28569c25f6 use ASM_API variable, bug 4415 2005-09-12 15:19:19 +00:00
Brian Paul
68d436140d make lookup_query_object() static 2005-09-12 15:05:57 +00:00
Brian Paul
758f447a17 remove rendundant r,g,b,a vars (bug 4331) 2005-09-12 13:59:29 +00:00
Dave Airlie
2745df2774 add 1002:5460 M22 X300 card 2005-09-11 04:02:41 +00:00
Dave Airlie
654286eab1 fix dri drivers build 2005-09-11 03:58:29 +00:00
Brian Paul
2eef2eca87 Silence some warnings. 2005-09-11 01:45:04 +00:00
Brian Paul
7f8cb30ccc bunch of updates 2005-09-10 16:57:22 +00:00
Brian Paul
80cef697f4 put GLUT sources into a separate tarball 2005-09-10 16:54:05 +00:00
Brian Paul
26c7e65785 Clean-up of sources/Makefile, bug 4111 2005-09-10 16:41:17 +00:00
Brian Paul
5704b8e57a fix a problem w/ color index mode when CHAN_BITS=16 2005-09-10 16:27:51 +00:00
Brian Paul
f15b499cfd make some vars static 2005-09-10 16:20:47 +00:00
Brian Paul
392c93e398 fix GLubyte/GLchan inconsistencies (bug 4331) 2005-09-10 16:19:36 +00:00
Roland Scheidegger
0ca6715ba5 new demo to test ATI_fragment_shader, not very creative but easy to know if the output is correct. Tests single-pass as well as multi-pass shader (only pseudo-dependant texture read though, and no tex coord swizzling), src and dst modifiers, src repetition, dst masks, constants, and some ops. Both shaders run succesfully with swrast as well as r200. 2005-09-10 01:02:25 +00:00
Roland Scheidegger
c53d2d0ca8 add the new drm packets needed for ATI_fragment_shader to the sanity code of the r200 and radeon driver 2005-09-10 00:31:11 +00:00
Roland Scheidegger
6c2e82b601 add reverse-engeneered register bits needed for ATI_fragment_shader (Dave Airlie, me) 2005-09-10 00:11:27 +00:00
Brian Paul
402b2bea64 Add offset and pitch fields to intelRegion. Remove frontOffset, frontPitch,
backOffset, backPitch, depthOffset, depthPitch, textureOffset fields.
2005-09-10 00:10:15 +00:00
Roland Scheidegger
036a99452d add _tnl_arb_vertex_program_stage to all drivers which already have _tnl_vertex_program_stage. Fixes crashes when using vertex programs. Tested on r200 only (fix by Keith Whitwell) 2005-09-09 23:31:31 +00:00
Brian Paul
a3dd2ce29e remove the redundant textureSize field, use tex.size instead, it's always the same value 2005-09-09 22:57:05 +00:00
Brian Paul
338cbb0e5c don't generate selection hits for glBitmap, glDraw/CopyPixels. Misc clean-ups 2005-09-09 16:40:47 +00:00
Roland Scheidegger
b346213960 fix some bugs with handling of GL_DOT4_ATI, GL_DOT3_ATI and GL_DOT2_ADD_ATI ATI_fs instructions. 2005-09-09 15:43:11 +00:00
Roland Scheidegger
95db1f0127 add missing fallback string for ARB_vertex_program 2005-09-09 12:51:38 +00:00
Roland Scheidegger
7e3be5559e Fix wrong fallback bit being set by the tcl fallback caused by ARB_vertex_program. Disable ARB_vertex_program by default - it is incredibly slow, and just plain doesn't work anyway (arbvptorus fails an assertion, arbvpmesh has bogus output) 2005-09-09 01:38:21 +00:00
Keith Whitwell
45ba4e4332 use an explicit reserved field, rather than magic number in bound 2005-09-08 21:40:10 +00:00
Brian Paul
d9b9b4b3be Fix the comment for the 'bound' field: it's a bitmask, not an index.
In driTexturesGone(), set bound = 0, not 99.
2005-09-08 18:47:36 +00:00
Keith Whitwell
b5cbaf945d Keep NumTemporaries uptodate.
Make sure oC alpha is populated when separate_specular enabled.
2005-09-08 18:45:03 +00:00
Keith Whitwell
b15f46a093 Treat NegateBase as a bitfield, not a boolean. 2005-09-08 18:36:39 +00:00
Keith Whitwell
5cf1397710 be consistent in populating NegateBase field 2005-09-08 18:35:48 +00:00
Brian Paul
4618a9bfc2 check for either GL_ARB_depth_texture or GL_SGIX_depth_texture in a few places 2005-09-08 15:28:45 +00:00
Brian Paul
f36954ec3c fix precision problem in depth clearing (bug 4395) 2005-09-08 13:55:05 +00:00
Roland Scheidegger
f4ff4d36ed fix incorrect swizzling handling. fix code so it can potentially handle implementations with less than 6 texture units correctly. 2005-09-08 13:41:54 +00:00
Jouk Jansen
21ed29598f Committing in .
Define suseconds_t for OpenVMS

 Modified Files:
 	Mesa/src/mesa/drivers/x11/xm_dd.c
 ----------------------------------------------------------------------
2005-09-08 10:05:37 +00:00
Roland Scheidegger
ce3350770c add a bunch of FLUSH_VERTICES to some of the ATI_fs functions, most notably when changing the global ati fragment shader constants. 2005-09-08 00:12:57 +00:00
Brian Paul
692147ebf7 some clean-up and re-org for renderbuffers 2005-09-07 23:28:41 +00:00
Brian Paul
526242614f some updates, but code still out of date 2005-09-07 23:26:01 +00:00
Brian Paul
ab8ef280ec new comment 2005-09-07 23:21:59 +00:00
Brian Paul
f0da327c87 minor tweaks to _mesa_ResizeBuffersMESA() 2005-09-07 23:21:40 +00:00
Roland Scheidegger
b683b0df45 fix bug with ATI_fragment_shader in swrast (need to copy all 4 values due to later applied srcRep) 2005-09-07 21:59:30 +00:00
Brian Paul
8693b70e8f try to fix renderbuffer breakage, primarily in calculate_buffer_parameters() 2005-09-07 18:32:29 +00:00
Brian Paul
eba4ff6e0a minor formatting fix 2005-09-06 21:22:16 +00:00
Brian Paul
d869a43554 added viaRenderbufferStorage() function 2005-09-06 20:42:23 +00:00
Brian Paul
20354edf35 just changes/updates to comments 2005-09-06 14:47:57 +00:00
Brian Paul
bd07168eb2 added -Wmissing-prototypes to WARN_FLAGS 2005-09-06 03:13:18 +00:00
Brian Paul
158a2aa488 Use mklib script instead of ar. Make libmesa.a instead of mesa.a 2005-09-06 03:02:01 +00:00
Brian Paul
c0b4b9fc3e remove DEFARRAY, CHECKARRAY stuff 2005-09-06 02:56:51 +00:00
Brian Paul
e2399effa0 minor clean-up of texture_combine() 2005-09-06 02:55:34 +00:00
Brian Paul
3622f4f27f don't use DEFARRAY/CHECKARRAY stuff 2005-09-06 02:44:00 +00:00
Brian Paul
fcb6a0fa3e make some functions static 2005-09-05 21:17:44 +00:00
Brian Paul
6575e37cbf make r128SpanRenderStart/Finish static 2005-09-05 21:09:22 +00:00
Brian Paul
e3c8a0c16d remove obsolete CurrentBufferBit 2005-09-05 21:04:22 +00:00
Brian Paul
3952d6d4bb remove unused var 2005-09-05 21:03:48 +00:00
Karl Schultz
f66084b834 Add support for memory contexts (Thomas Kaltofen). Cleanup compilation warnings. 2005-09-05 14:48:39 +00:00
Karl Schultz
e15c2d077a remove _swrast_DrawBuffer 2005-09-05 14:08:51 +00:00
Karl Schultz
53a3c70580 Windows mesa.def file had been moved to the drivers dir tree some time ago. This copy is not needed. 2005-09-05 14:03:41 +00:00
Karl Schultz
e81cbd876e fix var declaration so that a C compiler can build it. 2005-09-05 13:45:23 +00:00
Brian Paul
b4b040f7d8 just formatting clean-ups 2005-09-04 22:55:57 +00:00
Brian Paul
16e7aebfe3 Simplify radeonSetCliprects(). Remove the 'mode' parameter. 2005-09-04 22:20:07 +00:00
Brian Paul
87ce68e1b3 Further clean-up and simplification of the span-related functions. 2005-09-04 22:16:08 +00:00
Brian Paul
61ba6b5a74 Add new void *addr and __DRIdrawablePrivate parameters to
driNewRenderbuffer().
2005-09-04 22:13:42 +00:00
Brian Paul
6e0e6eff05 Fix UpdatePageFlipping() function. Always call driFlipRenderbuffers()
with pfCurrentPage value, in case it's initially 1 instead of 0.
2005-09-04 16:15:38 +00:00
Brian Paul
d575a4c4a1 minor clean-ups 2005-09-04 15:03:36 +00:00
Brian Paul
0cfd4f92dd replace GET_SRC_PTR, GET_DST_PTR with GET_PTR 2005-09-04 15:02:48 +00:00
Brian Paul
eae73dbd91 Use InitPointers helper 2005-09-04 15:01:33 +00:00
Brian Paul
90cfbd3dd5 Combine GET_DST_PTR and GET_SRC_PTR into just GET_PTR. 2005-09-04 15:00:04 +00:00
Brian Paul
f8cc27ecfc Added InitPointers helper function 2005-09-04 14:59:34 +00:00
Brian Paul
16f76703a5 replace assertion with a conditional return 2005-09-04 14:59:18 +00:00
Brian Paul
05aed23d1b fudge set_component_sizes() a bit, see comments 2005-09-03 17:33:16 +00:00
Brian Paul
acafeeb6dc Remove last remnants of pre-renderbuffer code. 2005-09-03 16:57:58 +00:00
Brian Paul
54be0763e1 renderbuffer updates 2005-09-03 16:55:02 +00:00
Brian Paul
2b81c8999f SetBuffer, renderbuffer changes 2005-09-03 16:54:20 +00:00
Brian Paul
6e57725061 use new InitStencil/DepthPointer functions 2005-09-03 16:49:35 +00:00
Brian Paul
b0715811e8 remove dead code 2005-09-03 16:48:48 +00:00
Brian Paul
f6540c6252 remove SetBuffer 2005-09-03 16:47:30 +00:00
Brian Paul
687918b794 SetBuffer, renderbuffer changes 2005-09-03 16:43:02 +00:00
Brian Paul
e6925b51e1 added flippedData field for page flipping, code to flip stereo color buffers 2005-09-03 16:42:19 +00:00
Brian Paul
c6262cd8c5 added SetStencil/DepthPointer functions 2005-09-03 16:41:30 +00:00
Brian Paul
3ba814ae07 remove SetBuffer(). Misc renderbuffer changes. 2005-09-03 16:40:44 +00:00
Brian Paul
7fa6c1afb9 silence misc warnings 2005-09-03 16:39:57 +00:00
Dave Airlie
624ad14a58 Check for ATI_fragment_shader enabled 2005-09-02 23:52:05 +00:00
Brian Paul
712e5042de fix some strict aliasing problems related to choosing framebuffer configs (Matthias Hopf) 2005-09-02 17:07:00 +00:00
Brian Paul
93cfdfe1ef GL_EXT_timer_query 2005-09-02 14:02:44 +00:00
Brian Paul
14520eb25e comments 2005-09-02 13:55:50 +00:00
Brian Paul
c799e9ec24 added GL_EXT_timer_query token 2005-09-02 13:43:26 +00:00
Brian Paul
4fb995084e Prototype implementation of new GL_EXT_timer_query extension (not finalized yet).
Extends the query mechanism to query elapsed time while rendering.
2005-09-02 13:42:49 +00:00
Brian Paul
8cdf372946 replace -1 with PROGRAM_UNDEFINED when initializing instructions 2005-09-02 13:40:09 +00:00
Brian Paul
350a167635 set depthHasSurface for stencil renderbuffer 2005-09-02 13:20:20 +00:00
Roland Scheidegger
3c450b2917 ATI_fragment_shader fixes: fix bug in passTexCoord (caused by recent changes). Fix sampling from wrong texture unit. Apply swizzling before texture sampling, and hopefully get non-projected coordinates from swrast. (still does not work at all with sw doom3, way too dark just the same as with the doom3 arb2 path) 2005-09-02 12:05:38 +00:00
Brian Paul
a02febb8cc change scratch pointer from _int32_t to u_int32_t to silence warning. Is this field actually used for anything? 2005-09-02 03:39:31 +00:00
Brian Paul
a517cc1ef6 remove unneeded assertion in stencil/depth LOCAL_DEPTH_VARS code 2005-09-02 03:36:41 +00:00
Brian Paul
b343f06a09 set depthHasSurface field for stencil renderbuffer 2005-09-02 03:28:08 +00:00
Roland Scheidegger
f519a770d0 add error checking to the GL_ATI_FRAGMENT_SHADER entrypoints. Fix bug with scope of ati fragment shader constants. Fix issues with specifying color/alpha instructions not pair-wise. Change internal representation of the shader (to better fit how the extension works, should make driver implementations simpler, and saves some memory). (still doesn't work correctly with doom3 and swrast, but not worse than before) 2005-09-02 01:11:53 +00:00
Brian Paul
b252e0f47f added an assertion to help debug broken stencil readback 2005-09-01 20:14:50 +00:00
Brian Paul
238de2db12 added driFlipRenderbuffers() 2005-09-01 20:11:32 +00:00
Brian Paul
da84f0b642 fix page flipping breakage 2005-09-01 20:10:17 +00:00
Brian Paul
98e92d261b fix typo 2005-09-01 14:04:45 +00:00
Brian Paul
4d11d45d84 some missing renderbuffer changes (Roland) 2005-09-01 14:04:32 +00:00
Brian Paul
fcbfeb5d28 Finish up some of the gl_renderbuffer work.
Use driRenderbuffer's offset, pitch fields in the span routines.
Remove the SetBuffer driver function.
Consolidate the code for setting CTX_RB3D_COLOROFFSET and CTX_RB3D_COLORPITCH
state in new radeonUpdateDrawBuffer() function.
Old code is surrounded by #if 000 / #endif, temporarily.
2005-09-01 04:03:44 +00:00
Brian Paul
982e8e4d5c Finish up some of the gl_renderbuffer work.
Use driRenderbuffer's offset, pitch fields in the span routines.
Remove the SetBuffer driver function.
Consolidate the code for setting CTX_RB3D_COLOROFFSET and CTX_RB3D_COLORPITCH
state in new radeonUpdateDrawBuffer() function.
2005-09-01 03:54:34 +00:00
Brian Paul
8e5479c7f8 s/__inline/INLINE/ 2005-09-01 03:50:54 +00:00
Brian Paul
f1d269060b use char* instead of GLubyte* in i915_program_error() to silence warnings 2005-09-01 03:32:48 +00:00
Brian Paul
f069e74dd8 use proper datatypes to silence a bunch of warnings 2005-09-01 03:19:45 +00:00
Brian Paul
5545245fe7 added a few more fields to help with DRI drivers 2005-09-01 03:07:29 +00:00
Brian Paul
db84ec2c6d remove fxDDSetBuffer() 2005-09-01 03:06:28 +00:00
Brian Paul
af39910f94 remove set_buffer() 2005-09-01 03:05:39 +00:00
Brian Paul
c958a9798a remove old set_buffer routine and misc code 2005-09-01 03:04:41 +00:00
Brian Paul
26bb5239c8 remove the old set_buffer() routine 2005-09-01 02:56:47 +00:00
Brian Paul
527835977a Just additional comments. 2005-08-31 21:38:53 +00:00
Roland Scheidegger
36603539cc enable GL_ARB_texture_env_crossbar on r200, separate the enable bits for texture sampling and texture environment, optimize away texture sampling for units if the result is not used, always emit the env instructions in-order and try to eliminate GL_REPLACE env instructions. 2005-08-31 19:11:09 +00:00
Brian Paul
d5783737f1 use 'f' key to toggle front/back buffer rendering 2005-08-31 16:42:59 +00:00
Brian Paul
2c8524b4fb remove dead code, update comments 2005-08-31 16:04:17 +00:00
Alan Hourihane
cbafed8716 reverse a bogus patch 2005-08-31 15:11:21 +00:00
Dave Airlie
3d4d6d29e2 complete fix for miniglx startup issue since driver version checks 2005-08-31 01:24:01 +00:00
Brian Paul
275a563bea remove redundant ctx->Driver fallback assignments that were already done in _mesa_init_driver_functions() 2005-08-31 00:39:32 +00:00
Brian Paul
f830f640b6 fix a cast/assignment warning 2005-08-31 00:00:17 +00:00
Brian Paul
513a553d4a silence fprintf and casting warnings 2005-08-30 23:57:04 +00:00
Brian Paul
16fb04ccb5 added some parenthesis to silence warnings 2005-08-30 23:50:23 +00:00
Alan Hourihane
f98b9853e1 drmUnmap correct size 2005-08-30 20:37:30 +00:00
Alan Hourihane
b41c025420 move via_dri.h to server 2005-08-30 19:46:08 +00:00
Alan Hourihane
9165d46fdb define Bool for solo builds 2005-08-30 19:22:46 +00:00
Alan Hourihane
d5cc77e37c Fixes from https://bugs.freedesktop.org/attachment.cgi?id=3077 2005-08-30 19:14:23 +00:00
Brian Paul
156dc55628 fix APP_LIB_DEPS 2005-08-29 22:45:52 +00:00
Ian Romanick
f0d0e50994 Implement GL_ARB_texture_env_combine, GL_EXT_texture_env_combine, and
GL_ARB_texture_env_crossbar for i810.  This passes both demos/texenv and all
of glean's texCombine tests.
2005-08-29 15:43:02 +00:00
Alan Hourihane
d9089ab96e remove drmAddress 2005-08-29 15:23:55 +00:00
Brian Paul
3a165edc9a added note about IEEE vs VAX floating point (bug 4270) 2005-08-29 14:45:30 +00:00
Brian Paul
49fd874f24 fix a few proxy color table bugs (bug 4270) 2005-08-28 17:12:07 +00:00
Brian Paul
082501a74c check the Ready flag when getting GL_QUERY_RESULT_ARB 2005-08-27 14:04:37 +00:00
Brian Paul
23ffc3a85d Rearrange the code related to GL_ARB_occlusion_object to generalize query
objects for future types of queries.
2005-08-27 13:56:08 +00:00
Adam Jackson
ca1ac986a1 /dri/msg 2005-08-26 17:50:39 +00:00
Alan Hourihane
f4166a1fd7 Fix the scripts for the cygwin & mingw changes 2005-08-26 09:37:41 +00:00
Brian Paul
adbf932ec1 added singlebuffer demo 2005-08-25 23:26:51 +00:00
Brian Paul
59d680db22 Demo of how to do (nearly) flicker-free rendering with a single color buffer. 2005-08-25 23:25:25 +00:00
Brian Paul
713635adef fix comment and #if test 2005-08-25 22:09:43 +00:00
Brian Paul
a2c65f4793 don't compile debug code (bug 4242: rand undefined) 2005-08-25 19:43:38 +00:00
Brian Paul
2735b33638 remove stray references to ctx->Depth.OcclusionTest 2005-08-25 19:38:42 +00:00
Ian Romanick
8bc0b3f961 Fix texture format selection. ChooseTextureFormat is supposed to select the
hardware format of the texture, and SetTexImages is supposed to use the
format selected by ChooseTextureFormat.  However, both routines were making
their choices based on the texture's BaseFormat.  This is wrong.
ChooseTextureFormat uses BaseFormat and SetTexImages uses
TexFormat->MesaFormat.

Once SetTexImages was fixed to use the right format values,
ChooseTextureFormat was cleaned up.  It now uses the few available texture
formats supported by the i810 in a smarter way.  This should improve the
quality of LUMINANCE, LUMINANCE_ALPHA, and INTENSITY textures.

I tested this by cycling through all the texture formats in demos/texenv and
tests/yuvsquare.
2005-08-25 19:15:01 +00:00
Alan Hourihane
8de9d92acf update for mingw 2005-08-25 18:08:16 +00:00
Brian Paul
8e247d52e3 Update the glut idle function after a new window is created 2005-08-25 17:46:04 +00:00
Brian Paul
b8a804d24f initial 6.5 changes (reflect demo, remove GL_HP_occlusion_test) 2005-08-25 14:24:49 +00:00
Brian Paul
6e4f594a02 removed GL_HP_occlusion_test extension 2005-08-25 14:23:38 +00:00
Brian Paul
dd1a9f75dc fix segfault in Fake_glXCreatePBuffer(), bug 4235 2005-08-25 14:07:06 +00:00
Brian Paul
7e6553c1aa s/GLX_RGBA_BIT/GLX_RGBA_TYPE/ (bug 4237) 2005-08-25 13:18:53 +00:00
Eric Anholt
61d386a93f Attempt to fix the issue reported by Alan Grimes with DRM_RADEON_TEXTURE
erroring out when it shouldn't.  The errno could be changed by usleep() between
the ioctl call and the loop check, if a signal was received.  This could cause
an EAGAIN return from the DRM_RADEON_TEXTURE ioctl to not loop again.
Instead of checking errno, check thevalue of ret itself, since it is a saved
(and sign-flipped) copy of errno from the ioctl call.
2005-08-25 03:38:07 +00:00
Brian Paul
d545d916a8 make tiles a little smaller so they're all visible 2005-08-25 03:09:12 +00:00
Brian Paul
9e385282fc also check for texture border in sample_linear_2d() 2005-08-25 03:05:10 +00:00
Brian Paul
5d7c486d90 Added multi-window support. Press 'n' to create new window, 'k' to kill
a window.  Good for exercising multi-window rendering.
2005-08-24 21:32:02 +00:00
Alan Hourihane
c58cea0085 Fix Windows build problems.
GCC's visibility attribute is for ELF systems, so undef INTERNAL
GCC's fastcall attribute interferes with __stdcall so undef FASTCALL
2005-08-24 09:08:06 +00:00
Brian Paul
334f2d8077 GLw demo doesn't belong here 2005-08-23 14:50:02 +00:00
Brian Paul
17756df903 removed lines that caused some files to be included in tarballs multiple times 2005-08-23 13:40:30 +00:00
Brian Paul
edf0d14bd4 simplify, clean-up texel addressing macros 2005-08-23 03:50:12 +00:00
Brian Paul
249160fdfa update version to 6.5.0 2005-08-23 00:45:54 +00:00
Brian Paul
dfb6c56ed8 added GL_X_RENDERABLE to glXChooseFBConfig (bug 4181) 2005-08-22 14:28:19 +00:00
Brian Paul
dcf14aa3a7 bump version to 6.5 2005-08-22 14:27:33 +00:00
Brian Paul
1e71d6af48 added .S DRI files to tarball (Donnie Berkholz), bumped version to 6.5 2005-08-22 14:27:13 +00:00
Dave Airlie
298af7a609 fix up libdrm for egl 2005-08-21 03:17:52 +00:00
Brian Paul
ae27ef2219 fix typo 2005-08-19 23:44:35 +00:00
Brian Paul
f350e22716 md5 sums for 6.3.2 2005-08-19 23:42:29 +00:00
Brian Paul
eacd347fce update MESA_DEBUG with FP info 2005-08-19 23:34:10 +00:00
Adam Jackson
8fcd1e0287 Convert libGL and DRI drivers to require libdrm.
libdrm can be had from:

http://people.freedesktop.org/~ajax/libdrm/
2005-08-19 20:20:03 +00:00
Ian Romanick
2ae5645115 Fix a realloc problem with indirect vertex arrays. The actual head pointer
wasn't tracked and used for the realloc, so it tended to explode.
2005-08-19 18:53:26 +00:00
Brian Paul
b7c727e500 updates for 6.3.2 release, plus other assorted clean-ups 2005-08-19 16:57:50 +00:00
Alan Hourihane
d912f6cfe3 Commit missing piece from Egbert's 32/64 bit patches 2005-08-19 16:07:33 +00:00
Ian Romanick
f7eb54a12f Enable ARB_texture_compression. The code has been in place for a long time,
but, for whatever reason, the extension wasn't enabled.

Add some comments to i810ChooseTextureFormat.  There's some strangeness with
i810 texture formats.
2005-08-19 00:48:25 +00:00
Ian Romanick
e0029b33ef Add support for NV_blend_square. This was tested with
progs/tests/blendsquare.
2005-08-18 22:27:37 +00:00
Ian Romanick
ab5be2c5f7 Make sure extension entry point offsets are properly initialized. This is
primarilly needed to support functions that are internally implemented using
extension entry points (e.g., glBlendFunc uses glBlendFuncSeparate).
2005-08-18 22:16:46 +00:00
Ian Romanick
61ac29e7c6 Don't try to update hardware texture fields if there is no hardware texture.
This can happen when all the texture enables for a texture unit are disabled.

This fixes bugzilla #3195.
2005-08-18 20:01:01 +00:00
Ian Romanick
b462855c24 Add simple regression test for bugzilla #3195. 2005-08-18 19:52:44 +00:00
Ian Romanick
e918bac8cd Make the i810 driver use driGetRendererString like all the other drivers.
The GL_RENDERER string now accurately contains the chip name.  This was only
tested on a "plain" i810 (PCI ID 8086:7121).
2005-08-18 19:51:11 +00:00
Brian Paul
aa2a357bae Replace mult/div operators with bitwise operators in texel fetch routines
for better performance. (Roland Scheidegger)
2005-08-18 14:33:26 +00:00
Brian Paul
05fe2871e3 Bump version to 6.3.2 2005-08-16 23:13:25 +00:00
Brian Paul
926a19e108 updates for 6.3.2 2005-08-16 23:12:37 +00:00
Brian Paul
160b3284dd include stdint.h if WIN32 and GNUC (Colin Harrison). Patch forwarded to SGI. 2005-08-15 23:25:33 +00:00
Brian Paul
c2c2600728 test the standard stencil op modes too (Philipp Klaus Krause) 2005-08-15 22:57:30 +00:00
Roland Scheidegger
7a362deb8c In _mesa_TexEnvfv, do not accept values for GL_OPERAND2_ALPHA and GL_OPERAND2_RGB which are only valid with ARB_texture_env_combine but not with EXT_texture_env_combine, when only EXT_texture_env_combine is supported. 2005-08-15 18:24:12 +00:00
Ian Romanick
a3dd6efb00 Put back '-I/usr/X11R6/include'.
Make 'USING_EGL=0' the default for now.  It's causing too much confusion for
too many non-developers (which in turn wastes too much developer time).  It
is trivially overridden from the make command line.  See comments in
linux-dri.
2005-08-15 15:01:39 +00:00
Alan Hourihane
dabec11d27 Add Egberts fixes for 64bit architectures
Add additional checks for the *DRIRec info structure passed in from the
device driver. This ensures that things fallback to indirect rendering if
the DDX driver has had modifications (i.e. removal of the drmAddress field).
2005-08-15 06:59:24 +00:00
Alan Hourihane
69dc32cfac Add a check which compares the passed in size of the DDX driver private DRI
structure to the 3D drivers view of it, and abort if they don't match.

This traps the case with the drmAddress removal in the DDX driver.
2005-08-14 12:16:51 +00:00
Ian Romanick
33f9c98aa6 Enable support for EXT_stencil_wrap. The code was already there, but the
extension wasn't enabled.  I have verified its correct function with Mesa's
stencil_wrap test.  It is enabled on both Savage4 and Savage3D.  Since
Savage3D uses a software fallback for *all* stencil operations, this is safe.
2005-08-13 01:43:28 +00:00
Brian Paul
6fe7a0dc01 added FREXPF() macro (bug 4060) 2005-08-12 18:56:56 +00:00
Ian Romanick
f2876d1ee3 Remove the logic that determines at compile time whether or not HAVE_ALIAS
should be defined.  It was flawed on some platforms (e.g., Darwin & mingw).
Instead, rely on the build system to define it on the compiler command line.

This also reverts ajax's hand-edit to indirect_size.c.  I'll fix that on the
X.org side of things later today.
2005-08-11 20:29:45 +00:00
Ian Romanick
fbcc5aedf2 Remove support for the R200_NO_VTXFMT environment variable. Instead use
'tcl_mode=1'.  This fixes bugzilla #3972.
2005-08-11 19:47:06 +00:00
Ian Romanick
4c4e4bfa4e Makefile cleanups suggested by George Fufutos (bugzilla #3899). 2005-08-11 19:37:55 +00:00
Ian Romanick
ac7c147aaf Don't link with libGL, libEGL, or libEGLdri. On EGL setups libGL isn't
available, and on libGL setups libEGL and libEGLdri aren't available.
2005-08-11 19:29:25 +00:00
Ian Romanick
b7ae3e4787 Since Brian's recent commit, "-I/usr/X11R6/include/X11/extensions" is no
longer needed.
2005-08-11 19:23:23 +00:00
Brian Paul
82dfd4b71f fix X #includes so they're relative to X11/ directory (bug 4047) 2005-08-11 14:18:53 +00:00
Ian Romanick
ac887d4211 Make ffb driver build on x86-64. The fix is two fold. First, use the
proper DRM_CAS_RESULT to declare the variable used to store the result
of DRM_CAS.  Second, only use the "real" versions of LOCK_HARDWARE and
UNLOCK_HARDWARE on SPARC.  That's the only platform where the hardware
can really exist.
2005-08-11 04:25:36 +00:00
Ian Romanick
967b006f51 Remove _glapi_check_multithread from the interface exported by the loader to
the driver.  The loader now takes care of this for the driver.

Remove _glapi_DispatchTSD and give _glapi_Dispatch its semantic (i.e.,
having a NULL value means that the application is multithreaded and
_glapi_get_dispatch must be called).

Gut all of the dispatch override code.  This removes _glapi_RealDispatch,
_glapi_tls_RealDispatch, _glapi_begin_dispatch_override,
_glapi_end_dispatch_override, and _glapi_get_override_dispatch.

Remove _glapi_get_proc_address, _glapi_get_proc_name, _glapi_get_version,
and _glapi_check_table from the loader / driver interface.

Reviewed by: Brian Paul
2005-08-10 23:54:15 +00:00
Ian Romanick
1b8d0f149e Mesa uses the glVertexAttrib*NV functions to implement fixed-function
attributes in display lists.  If a driver doesn't add entry points for
GL_NV_vertex_program, it will explode.  This patch adds GL_NV_vertex_program
to the list of default extensions whose entry points are added by
driInitExtensions.

Thanks go to Roland Scheidegger for tracking the problem down and suggesting
the fix.
2005-08-10 23:39:42 +00:00
Brian Paul
8c9cd63c89 the PIXEL_MAP_I_TO_I table should be GLfloat, not GLint 2005-08-10 17:04:03 +00:00
Brian Paul
63c9ebeaff fix static assertion problem for gcc (bug 4022) 2005-08-10 14:42:21 +00:00
Brian Paul
6b563bda43 disable the pointer size assertions (bug 4021) 2005-08-10 14:40:05 +00:00
Brian Paul
5d40169436 fix indentation 2005-08-10 14:38:39 +00:00
Keith Whitwell
738c9a073f Check for prim/vertex store non-null before messing with refcounts. 2005-08-10 14:13:45 +00:00
Ian Romanick
258f005c6b Add rules and target to build src/mesa/x86-64/glapi_x86-64.S. 2005-08-09 18:54:12 +00:00
Keith Whitwell
c91720fb1a Decrement the context's refcounts on part-used storage structs on
context destroy.  Fixes memory leak.
2005-08-09 16:11:28 +00:00
Brian Paul
d2e289c70f actually free the renderbuffer in xmesa_delete_renderbuffer(), fixes a memory leak 2005-08-09 15:17:19 +00:00
Brian Paul
e78a3c42e4 delete display lists upon exit 2005-08-09 15:14:51 +00:00
Brian Paul
a1a6fa2fa1 free display lists and destroy window upon exit 2005-08-09 15:13:32 +00:00
Brian Paul
ecde87054c _mesa_free_framebuffer_data() call frees the renderbuffers, no need to call the Delete methods after 2005-08-09 15:07:55 +00:00
Brian Paul
24d55a1145 free context structure (bug 1252316) and s/free/_mesa_free/ 2005-08-09 14:23:28 +00:00
Ian Romanick
aba4864a25 Make the linux-dri-x86 builds work on x86-64 again. mklib now
determines the bits (either 32 or 64) for libraries without the lib
prefix.  progs/egl/Makefile passes CFLAGS on the link commands so that
things like '-m32' get propagated.
2005-08-08 23:22:46 +00:00
Brian Paul
7bf08c23fd s/Disaptch/Dispatch/ (bug 3918) 2005-08-08 21:42:51 +00:00
Brian Paul
63dffa4e77 added directfbgl.h to tarball 2005-08-08 21:30:12 +00:00
Ian Romanick
da0c5b2e2c Since glcontextmodes.[ch] are no longer used in the DRI drivers, removed the
IN_DRI_DRIVER cruft.  This was suggested by George Fufutos.
2005-08-08 17:22:44 +00:00
Dave Airlie
0d942b740c fix up color tiling in miniglx radeon server code 2005-08-08 04:34:35 +00:00
Dave Airlie
ac54de021a fix miniglx setting virtual size of 832 for 800x600 2005-08-08 04:17:52 +00:00
Jon Smirl
ae4e58c9ab Remove platform specific bits from radeon_egl.c 2005-08-08 03:58:26 +00:00
Eric Anholt
81b3c5e85c Dike out the linux-specific EGL bits unless it's a linux build. 2005-08-08 03:27:28 +00:00
Eric Anholt
f1a261377f Since this isn't a bash script, don't use function and instead inline the usage
into the one place that it's used.
2005-08-08 03:26:18 +00:00
Vladimir Dergachev
8e653f12bc Allow R300 driver to build on x86-64 and PowerPC. 2005-08-07 21:50:33 +00:00
Jon Smirl
bf54a28384 Add missing egldri.h header file 2005-08-07 02:30:32 +00:00
Jon Smirl
9a4dbf1cff Fix up some of the sample to work with the r200 EGL driver 2005-08-07 02:15:27 +00:00
Jon Smirl
7e5da5d526 Enable EGL support in 'linux-dri' config 2005-08-07 02:13:14 +00:00
Vladimir Dergachev
94a4eb1e78 Follow suggestion by Aapo Tahkola to fix giant memory leak from forgetting to free the key when entry was already found (presumably a common case). 2005-08-06 05:19:42 +00:00
Vladimir Dergachev
b8731903df Fix card_extensions by following corresponding r200 code.
Fix suggested by Ian Romanick.
R300 driver now works without segfault.
2005-08-06 04:39:27 +00:00
Ian Romanick
23a4f50c5b Fixes bugzilla #1730.
Make sure that all the values used in the clean-up code are initialized at
some point.  It is still unclear to me as to why GCC does not complain.  I
suspect the problem may be due to the depth of if-statement nesting.
2005-08-05 23:13:13 +00:00
Ian Romanick
6965f2cb0a Fixes bugzillla #812.
The weak version of _glapi_DispatchTSD was removed from dri_util.c.  As
stated in the bug report, this was only needed to support versions of libGL
that did not have this symbol.  Versions of libGL without this symbol are no
longer supported at all, so it is totally irrelevant.
2005-08-05 22:12:49 +00:00
Alan Hourihane
928218a283 remove the drmAddress 2005-08-05 20:47:59 +00:00
Ian Romanick
6bc24c5c05 In order to create the set of available extensions, we have to know if
direct-rendering is possible on a given screen.  It is not possible to
determine this by just looking at driDisplay.private in the display
structure.  However, it is possible to determine this by looking at
driScreen.private in the screen structure.  This field is only non-NULL if a
DRI driver has been successfully loaded and bootstrapped.  Once we get to
that point, we know that direct-rendering is at least theoretically
possible.

This fixes bugzilla #2875.
2005-08-05 19:13:51 +00:00
Ian Romanick
126c89e35f Fix recent problems with display lists and other parts of the code.
CALL_by_offset, SET_by_offset, and GET_by_offset all had various problems.

The core issue is that parts of the device-independent code in Mesa assumes
that all functions have slots in the dispatch table.  This is especially
true in the display list code.  It will merrilly try to set dispatch
pointers for glVertexAttrib1fARB even if GL_ARB_vertex_program is not
supported.  When the GET/SET/CALL macros are invoked, they would read a 0
from the remap table.  The problem is that 0 is the dispatch offset for
glNewList!

One change is that the remap table is now initialized to be full of -1
values.  In addtion, all of the *_by_offset marcos misbehave in an obvious
way if the specified offset is -1.  SET_by_offset will do nothing,
GET_by_offset will return NULL, and CALL_by_offset, since it uses
GET_by_offset, will segfault.

I also had to add GL_EXT_blend_func_separate to the list of default
extensions in all_mesa_extensions (src/mesa/drivers/dri/common/utils.c).
Even though many drivers do not export this extension, glBlendFunc is
internally implemented by calling glBlendFuncSeparate.  Without this
addition, glBlendFunc stopped working on drivers (such as mga) that do not
export GL_EXT_blend_func_separate.

There are still a few assertions / crashes in GL_ARB_vertex_program tests,
but I don't think that these are related to any of my changes.
2005-08-05 18:13:37 +00:00
Jon Smirl
33f5e47faf Remove EGL from linux-solo makefile 2005-08-05 03:48:15 +00:00
Jon Smirl
485528f2ac More EGL prep. No impact on anything outside of EGL 2005-08-05 03:33:59 +00:00
Jon Smirl
b507bd4160 New files for radeon egl driver.
Still a work in progress.
2005-08-04 22:23:34 +00:00
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
4508bcc72c Leave the AGP_BASE code in. It is pointless to bump the interface
for X on a miniglx fix. It can be removed later.
2005-07-29 16:53:02 +00:00
Jon Smirl
a7d4bfed8a Remove OUTREG(RADEON_AGP_BASE, info->ringHandle); from DRI driver
Code is already in DRM driver to do this.
2005-07-29 13:58:22 +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
Jon Smirl
df68d11b47 Fix a == vs !- typo for glx_enable_extension 2005-07-29 00:19:36 +00:00
Ian Romanick
82e3ecf413 Use the routines supplied in the __DRIinterfaceMethods structure to create a
destroy __GLcontextModes structures.  This eliminates the need for DRI
drivers to ever link with glcontextmodes.c.
2005-07-28 23:33:18 +00:00
Ian Romanick
f7c9eafa85 glxEnableExtension is a platform-specific function exported by the loader.
Therefore, drivers should not require it to run.
2005-07-28 21:57:17 +00:00
Ian Romanick
68679d2b9e Remove '#if 0' block that was accidentally left in. 2005-07-28 20:55:26 +00:00
Brian Paul
960467443e SPARC, DRI interface changes for 6.3.1 2005-07-28 02:46:26 +00:00
Ian Romanick
14fa5f6a60 The dri/*/depend files don't exist on a raw check-out, and that makes 'make
tarballs' have issues.
2005-07-28 01:15:45 +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
9f23a3a1bf Fix SPARC assembly for 64-bit
- The test for whether or not we're building for 64-bit is '#ifdef __arch64__'.
 This appears to be correct on both Linux and Solaris.

- The test for Solaris is now '#if defined(SVR4) || defined(__SVR4) ||
defined(__svr4__)'.  GCC 3.4.0 has all three defined on Solaris 9.

- Enables assembly language clip routines.

- Fixes to make GLSL code build on Solaris.

- Update gl_SPARC_asm.py.
2005-07-28 00:11:10 +00:00
Philippe Houdoin
3e36986e5a This precious BeOS include file was lost since some released MesaLibs. Fixed. ;-) 2005-07-27 19:56:33 +00:00
Roland Scheidegger
67d94e5a86 test for the proper drm version, at least 1.17 is required 2005-07-27 18:21:34 +00:00
Alan Hourihane
a7df74ea02 typo 2005-07-26 23:09:50 +00:00
Alan Hourihane
36d6e9df16 support GLX_DIRECT_COLOR in 1.4.0 2005-07-26 23:06:10 +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
Alan Hourihane
1361398600 Bump the required ddx to 1.4.0 as drmAddress has been removed so that 32/64bit
combinations work.
2005-07-26 21:53:16 +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
1201348a33 improve comments about win[0..3] values (bug 2554) 2005-07-26 01:04:53 +00:00
Brian Paul
800c72ae61 Fix bug 1858 - array subscript out of range in gamma driver.
Set ctx->Const.MaxTextureLevels = GAMMA_TEX_MAXLEVELS = 12
Remove bogus WRITE(level 12).
Max gamma texture size is 2kx2k  (note: 2k = 1 << (MaxLevels - 1))
2005-07-26 00:10:53 +00:00
Brian Paul
7c1ab40898 Add license/copyright.
Add -h/--help option for usage.
Minor clean-ups.
2005-07-25 23:49:50 +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
Brian Paul
3e2419a7cc Break the long list of MAIN_FILES and DEMO_FILES into subgroups.
rm/touch the depend files when making tarballs so they don't include
RedHat-specific paths (bug 3842).
2005-07-22 15:52:46 +00:00
Jouk Jansen
70cf1f0cf8 ----------------------------------------------------------------------
Committing in .

 _mesa_sprintf crashes on OpenVMS -> replaced it by the OS-supplied sprintf

 Modified Files:
 	Mesa/src/mesa/drivers/x11/fakeglx.c
 ----------------------------------------------------------------------
2005-07-22 09:30:54 +00:00
Brian Paul
60a6a0eb51 some GLuint idx -> GLint idx changes 2005-07-22 02:55:36 +00:00
Brian Paul
fea5a428e9 added vp negative addressing bug fix 2005-07-22 02:54:14 +00:00
Brian Paul
61e694f270 Make the vertex program source register Index field a signed int since
relative addressing can be negative.
Change some GLuint indexes to GLint in the t_vp_build.c file.
Added PROGRAM_UNDEFINED token for initializing the register File field to
avoid a gcc 4.0 warning.
2005-07-22 02:53:38 +00:00
Brian Paul
db251d72c8 bump version to 6.3.1 2005-07-21 18:46:49 +00:00
Brian Paul
7a37189adc 6.3.1 updates 2005-07-21 18:45:54 +00:00
Brian Paul
f87bb14b0b updated with DRI building instructions 2005-07-21 18:45:44 +00:00
Brian Paul
dff11bb9a8 bump version to 6.3.1 and include DRI/GLX files in tarballs 2005-07-21 18:44:52 +00:00
Brian Paul
98b06bcbeb make i810PrintSetupFlags() static, first param const 2005-07-21 18:11:24 +00:00
Brian Paul
7b5c506c0e first 6.3.1 bug fixes 2005-07-21 15:58:16 +00:00
Brian Paul
7cf480e6fe s/2004/2005/ 2005-07-21 15:57:29 +00:00
Brian Paul
951dbf08e7 check for FEATURE_EXT_framebuffer_object to enable EXT_framebuffer_object 2005-07-21 15:48:39 +00:00
Brian Paul
49e74989c3 remove ^M chars, disable shading language extensions 2005-07-21 15:41:56 +00:00
Eric Anholt
3e8efc3753 Clean up warnings in r300 code by making some symbols static, adding prototypes
for others, and being cleaner with types in fragment/vertex program structures.
One warning in r300_shader.c is still concerning.
2005-07-20 23:24:55 +00:00
Eric Anholt
aeb0ee771b Connect the r300 bits up to the build. 2005-07-20 22:08:06 +00:00
Eric Anholt
6ae76788a7 Add some missing defines, copied from linux-dri. 2005-07-20 22:07:29 +00:00
Eric Anholt
e98494d0a4 Forced commit to note repocopy from r300.sf.net CVS. 2005-07-20 21:35:27 +00:00
Brian Paul
18014525a1 fix some URLs 2005-07-20 18:25:01 +00:00
Brian Paul
2276679c53 added md5 checksums for 6.3 2005-07-20 18:20:45 +00:00
Brian Paul
d4596584f6 more updates for 6.3 release 2005-07-20 18:07:11 +00:00
Brian Paul
6bb49eacfd updates for 6.3 release 2005-07-19 21:01:46 +00:00
Brian Paul
bfb5ea307e replace fprintf() calls with _mesa_problem() 2005-07-19 18:20:04 +00:00
Brian Paul
364ae78e69 remove fprintf() 2005-07-19 18:18:49 +00:00
Brian Paul
8d7d9c22f6 include driverfuncs.h 2005-07-19 15:34:44 +00:00
Brian Paul
2d47c07398 overlay planes test 2005-07-19 15:27:03 +00:00
Brian Paul
7e152b83cb s/clippping/clipping/ 2005-07-18 20:07:19 +00:00
Philippe Houdoin
ed886336e1 Fixed warnings by using GLUTProc type instead of anonymous (void *) for
GLUT callbacks.
2005-07-18 19:27:49 +00:00
Alan Hourihane
5343ae8304 re-enable the ffb driver 2005-07-18 13:53:03 +00:00
Alan Hourihane
df88dfe1df Fix the FFB driver for the renderbuffer changes
Support NEW INTERFACE as well
2005-07-18 13:52:34 +00:00
Alan Hourihane
c235a96a71 pass in the renderbuffer 2005-07-18 13:50:06 +00:00
Ian Romanick
aa8ff1e75d Missed this on the previous commit. 2005-07-18 12:33:03 +00:00
Ian Romanick
9bdfee3a47 Wrap every place that accesses a dispatch table with a macro. A new script-
generated file, called src/mesa/glapi/dispatch.h, is added.  This file
contains three macros for each API function.  It contains a GET, a SET, and
a CALL.  Each of the macros take a pointer to the context and a pointer to
the dispatch table.

In several threads on mesa3d-dev we discussed replacing _glapi_add_entrypoint
with a new function called _glapi_add_dispatch.  For this discussion, the
important difference between the two is that the caller of _glapi_add_dispatch
does *not* know what the dispatch offset will be at compile time.  Because of
this callers need to track the dispatch offset returned by
_glapi_add_dispatch.

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

The downside is that driver code then has to access the dispatch table two
different ways.  It accesses it using structure tags (e.g., exec->Begin) for
functions with fixed offsets and via a remap table (e.g., exec[
remap->NewExtensionFunction ]) for functions without fixed offsets. Yuck!

Using the macros allows both types of functions to be accessed
identically.  If a driver needs to set a pointer for Begin, it does
'SET_Begin(ctx, exec, my_begin_function)'.  If it needs to set a pointer
for NewExtensionFunction, it does 'SET_NewExtensionFunction(ctx, exec,
my_NewExtensionFunction_function)'.  Furthermore, if at some point in
the future a static offset is assigned for NewExtensionFunction, only
the macros need to change (instead of every single place that accesses a
table for that function).

This code differs slightly from the originally posted patches in that the
CALL, GET, and SET marcos no longer take a context pointer as a parameter.
Brian Paul had suggested that the remap table could be stored as a global
since it would be set at CreateScreen time and would be constant for all
contexts.  This change reflects that feedback.

http://marc.theaimsgroup.com/?t=112087194700001&r=1&w=2
2005-07-18 12:31:24 +00:00
Adam Jackson
e0e993c5ff XMesaResizeBuffers needs separate paths for client and server builds 2005-07-16 04:02:05 +00:00
Adam Jackson
c529f6bf70 strip out vestigial #ifdef HAVE_CONFIG_H stanzas, they're confusing the
modular X build
2005-07-16 00:56:20 +00:00
Brian Paul
8d3aca655e disable call to via_sse_memcpy() until it's fixed 2005-07-15 23:13:46 +00:00
Brian Paul
1f88391747 need to flush vertices for GL_OCCLUSION_TEST_RESULT_HP query 2005-07-15 23:08:06 +00:00
Brian Paul
d39760d718 Check for null program->Parameters pointer in validate_vertex_program().
GL_NV_vertex_program programs can't directly reference GL state so this
pointer is always NULL.
2005-07-15 22:48:09 +00:00
Brian Paul
df0350b7ec added comments 2005-07-15 22:47:00 +00:00
Brian Paul
b0489d4f82 remove duplicate "User disable" string 2005-07-15 20:17:02 +00:00
Brian Paul
8ec981c469 redo previous check-in, just set ARCH_FLAGS = -m32 2005-07-15 14:31:31 +00:00
Brian Paul
4eb3a0f076 define CFLAGS and CXXflags with -m32 (Egbert Eich) 2005-07-15 13:58:58 +00:00
Brian Paul
4c72778251 replace gcc with $(CC) (Egbert Eich) 2005-07-15 13:55:20 +00:00
Brian Paul
badad72383 eglgears demo (Dane Rushton) 2005-07-14 23:16:41 +00:00
Brian Paul
c62c24c72f added a few more fallbackStrings (Andreas Stenglein) 2005-07-14 23:10:21 +00:00
Keith Whitwell
b127cfeb7a Use the LDEXPF wrapper macro. 2005-07-13 17:49:22 +00:00
Keith Whitwell
3f7cb794ea Add a LDEXPF wrapper macro. 2005-07-13 17:47:40 +00:00
Keith Whitwell
c472dcdac0 Wrap RESTORE_FPU/RND_NEG_FPU declarations with check for USE_SSE_ASM. 2005-07-13 13:50:31 +00:00
Keith Whitwell
ce721143b4 Cache texenv programs to avoid repeated compilation (Ben Skeggs) 2005-07-11 10:10:38 +00:00
Keith Whitwell
9311bc253e Add runtime compiled x87 implementations for most of the remaining
opcodes.  When enabled via environment vars, gears runs and almost
looks right but other apps are still quite buggy.
2005-07-10 11:23:10 +00:00
Keith Whitwell
0cfbd849ec Add lots of x87 fpu instructions. 2005-07-10 11:14:00 +00:00
Ian Romanick
6d5d1f8a41 Restore linux-x86-32 config for Brian. 2005-07-08 21:55:56 +00:00
Ian Romanick
38e2fa385d Put back the glPopMatrix. This test was derived from blendminmax.c.
When extra code was cut from blendminmax.c's Display function, the
glPopMatrix call was also accidentally cut.
2005-07-07 20:43:01 +00:00
Ian Romanick
2550844c6e Correct the comments in the file headers. Oops. 2005-07-07 19:35:30 +00:00
Ian Romanick
259f096ed8 Add regression test for bug #3101. 2005-07-07 19:34:06 +00:00
Roland Scheidegger
f3186e5789 Re-enable r200InitSpanFuncs, which was ifdefed out (probably by mistake?),
so r200SetBuffer, r200SpanRenderStart and r200SpanRenderFinish get called again.
Bugzilla #3705, #3706.
2005-07-06 12:49:46 +00:00
Brian Paul
4cf6718725 The old MESA_PBUFFER_ALLOC() function allocated memory on 512-byte boundaries.
Restore that behavior with new _mesa_alloc_texmemory() function.
Should fix via_sse_memcpy() problem in found with flightgear.
2005-07-05 14:13:42 +00:00
Jon Smirl
78be0b5dad Put default back to the normal DRM path 2005-07-02 21:28:01 +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
1a9cac10b8 linux-x86-32 is unnecessary. The same thing can be acomplished by
'make linux-x86 ARCH_FLAGS=-m32'.
2005-07-02 07:48:41 +00:00
Ian Romanick
9204e87b2e Massive refactor of (most of) the Linux config files. This reduces
the length of each config and brings a lot of much needed uniformity
to them.
2005-07-02 07:38:40 +00:00
Ian Romanick
4f178c6e3a Add $(CFLAGS) to the link commands. This makes 'make linux-x86
ARCH_FLAGS=-m32' work correctly on x86-64 systems.
2005-07-02 07:12:44 +00:00
Ian Romanick
ef2ce9d003 Make linux-x86 more like the other linux configs. 2005-07-02 07:11:54 +00:00
Vladimir Dergachev
c1c684b0f3 Expose the fact that we do not do either selection of feedback buffers - either with software or hardware rendering. 2005-07-02 01:09:10 +00:00
Jerome Glisse
666dcaaf05 Adding RV350_NJ ID. 2005-07-01 21:26:43 +00:00
Jerome Glisse
7b12220256 Adapt extension string to new GL dispatch schema proposed
by Idr. This  patch is based on Idr patch to radeon driver.
Change #if 1 to #if 0 (r300_context.c:l69) for old dispatch
tab.
2005-07-01 21:22:05 +00:00
Karl Schultz
5f79d27b82 Update notes with VC7 info. 2005-07-01 21:08:00 +00:00
Karl Schultz
c136b41b09 Add windows VC7 project files to filelist for tar/zip files. 2005-07-01 20:31:41 +00:00
Karl Schultz
ee850657e6 VC7 project file for building glut lib 2005-07-01 20:25:57 +00:00
Karl Schultz
0cf67634bb VC7 project file for gears demo 2005-07-01 20:25:23 +00:00
Karl Schultz
101d05ad94 VC7 Solution file for building glut and demos 2005-07-01 20:24:49 +00:00
Karl Schultz
c5b6580c6f VC7 project file for osmesa 2005-07-01 20:23:52 +00:00
Karl Schultz
35a11c14ee VC7 project file for core mesa lib 2005-07-01 20:23:23 +00:00
Karl Schultz
ec171b7d02 VC7 project file for glu 2005-07-01 20:22:41 +00:00
Karl Schultz
2de5f6e252 VC7 project file for gdi driver 2005-07-01 20:21:45 +00:00
Karl Schultz
b64d60a2a6 Visual Studio 7 solution file for mesa lib 2005-07-01 20:19:47 +00:00
Karl Schultz
eac7688231 Don't #define __FUNCTION__ on a Microsoft C compiler new enough to have it. 2005-07-01 20:11:46 +00:00
Keith Whitwell
219f3c4489 Set fp->Opcode for OP_TEX_KILL case, fix from Ben Skeggs. 2005-07-01 17:12:29 +00:00
Karl Schultz
06abb854f0 Add new files to project. 2005-07-01 15:59:33 +00:00
Karl Schultz
7fe8696d01 Use frexp on Windows; frexpf is not available. 2005-07-01 15:58:02 +00:00
Karl Schultz
9b56781986 Fix a prototype 2005-07-01 15:56:14 +00:00
Roland Scheidegger
758f334717 convert sis and radeon driver to use spantmp2 instead of spantmp template. Remove old (pre-renderbuffer) span code instead of converting that too. Remove this old code from mach64 (the dead code was not fully converted to spantmp2 previously) too. 2005-07-01 11:28:14 +00:00
Brian Paul
8e8fa63cb4 comment-out some unused code to silence warnings 2005-07-01 02:03:33 +00:00
Brian Paul
559c494fc8 replace some free() calls with _mesa_free() 2005-07-01 02:03:00 +00:00
Brian Paul
03f52fea63 updates to file list for tarballs 2005-07-01 01:55:30 +00:00
Brian Paul
6d3284efd4 fix dependencies 2005-07-01 01:54:38 +00:00
Brian Paul
58a9573b08 added some glGetRenderbufferParameterivEXT calls, printfs, and assertions 2005-07-01 01:34:29 +00:00
Brian Paul
0d34c0158d fix typo in assertions 2005-07-01 01:30:03 +00:00
Brian Paul
f4f1c29597 Move the PYTHON2 and PYTHON_FLAGS assignments to configs/current, and
include $(TOP)/configs/current in glapi/Makefile so those vars can be
easily overridden by any system config, if needed.
2005-07-01 01:27:00 +00:00
Brian Paul
bb5c84fcbc Remove NEW_RENDERBUFFER stuff.
Now, OLD_RENDERBUFFER marks code that needs to eventually be removed when
all the drivers are updated to no longer need the SetBuffer() function.
2005-07-01 01:22:25 +00:00
Brian Paul
446e258940 remove OLD_RENDERBUFFER code 2005-07-01 01:10:36 +00:00
Brian Paul
54fb9226e4 remove OLD_RENDERBUFFER stuff 2005-07-01 01:08:29 +00:00
Brian Paul
30aea49cf6 minor fixes 2005-07-01 01:04:31 +00:00
Roland Scheidegger
cf5b2f7419 remove common macros used in the span functions of most drivers from the individual drivers and put them in common code. It is still possible for a driver to define its own macros if it has special needs. This affects CLIPPIXEL, CLIPSPAN, HW_CLIPLOOP, HW_ENDCLIPLOOP, and for drivers using the spantmp2 template also GET_SRC_PTR and GET_DST_PTR. 2005-07-01 00:08:46 +00:00
Ian Romanick
c212abf99a Replace add_newer_entrypoints (src/mesa/main/context.c) with
device-specific code.  A new Python script
(src/mesa/glapi/extension_helper.py) generates a list of all
entry-points for all known extensions.  Each driver the selects only
the extensions that it needs and enables the via either
driInitExtensions or driInitSingleExtension.

This code has been compile-tested on a drivers, but has only been
run-tested on mga and i915 (on i830 hardware).

These changes were discussed at length on the mesa3d-dev mailing list.

http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2
2005-06-30 16:00:48 +00:00
Brian Paul
1ac8ae446a remove \n from warning message string 2005-06-30 14:24:44 +00:00
Brian Paul
aa70253cbb added newline at end of file 2005-06-30 14:23:40 +00:00
Brian Paul
049e320f46 Add a set of predicate functions for testing matrices instead of directly
testing the flags field.
Move definition of all the MAT_FLAGs into the m_matrix.c file since they're
now private.
2005-06-30 14:22:23 +00:00
Brian Paul
f138b977d0 Redo all the GL_LINEAR interpolation code in terms of LERP macros/functions.
This cleans up and simplifies the arithmetic quite a bit.
2005-06-30 13:42:10 +00:00
Roland Scheidegger
4d652b7855 Fix crashes with pixel readback when using the optimized assembly functions.
Pixel count can be negative (this could be fixed elsewhere), so adapt the
functions to work with such inputs correctly (same behaviour as non-optimized
functions).
Bugzilla #2317
Submitted by idr
2005-06-30 11:42:56 +00:00
Aapo Tahkola
b0d62880e8 -"fix" page flipping
-use depth tiling if tiling is enabled
2005-06-30 04:37:19 +00:00
Brian Paul
0e55891674 fix a few glitches 2005-06-30 02:34:07 +00:00
Brian Paul
ccda2162f6 fix Darwin dynamic lib naming 2005-06-30 02:33:25 +00:00
Brian Paul
b6c0d753fa just code clean-ups and new comments 2005-06-28 03:48:08 +00:00
Vladimir Dergachev
ec17e7941a Uncomment a couple of helper functions.
Fix slipup from CVS update that was commented out and did not show up during compilation.
2005-06-27 18:46:31 +00:00
Vladimir Dergachev
b6c5116171 Rename unchecked state to match DRM driver.
Emit wait idle and pacify r300 before emitting state - this seems to improve stability.
2005-06-27 15:56:14 +00:00
Brian Paul
84f8d7aafb include t_vp_build.h 2005-06-27 00:45:36 +00:00
Brian Paul
39a488ed63 remove unused MEMSET16 macro 2005-06-27 00:39:33 +00:00
Brian Paul
2dbffb30f0 Get rid of the MESA_PBUFFER_ALLOC/FREE() macros.
If that stuff is still needed, lots of other updates are needed anyway.
Also, some misc MALLOC/FREE -> _mesa_malloc/free() changes.
2005-06-27 00:34:17 +00:00
Brian Paul
397088ff5e added _tnl_ProgramCacheDestroy() prototype 2005-06-27 00:30:56 +00:00
Brian Paul
c43f03e38d make create_new_program() static 2005-06-27 00:30:37 +00:00
Eric Anholt
3f9839a52b Fix crashes during rasterization fallback by avoiding _tnl_need_projected_coords
during fallbacks.  In one case, _swsetup_Wakeup had just been called, covering
the need there, and in the other case, we can simply exit the entire
radeonChooseVertexState function, knowing that it will be called again once we
leave the fallback.

Bugzilla #:	2516
Submitted by:	sroland
2005-06-26 21:57:23 +00:00
Eric Anholt
a4eb693b5f Remove the #if 0-ed out old span code. 2005-06-26 21:54:43 +00:00
Eric Anholt
32b898126e Explain the reason for TCL fallback when GL_SPHERE_MAP happens with
RADEON_DEBUG=fall.
2005-06-26 21:53:11 +00:00
Eric Anholt
3b817fde88 Zero out the ENGPACKET allocated on the stack, to avoid sending uninitialized
values to reserved fields on the card, resulting in all-black output and
sometimes hangs.

Submitted by:	Thomas Winischhofer
2005-06-26 21:02:58 +00:00
Brian Paul
845f2a7350 fix for-loop in _mesa_GetDouble to avoid out of bounds memory read 2005-06-26 20:08:23 +00:00
Brian Paul
f8582b6c1f check for null oldBuffer in _mesa_realloc(), cleaned up some comments 2005-06-26 19:57:17 +00:00
Brian Paul
394fd40a53 need parenthesis in realloc call 2005-06-26 19:53:52 +00:00
Ian Romanick
4e1aae6e0e Ignore files generated as part of the build process. 2005-06-24 18:54: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
Brian Paul
1c5caba184 Remove the xmesa_set_buffer() function. No longer needed since the
span functions pass in a gl_renderbuffer to indicate which color
buffer should be drawn into.  Optimized line/triangle routines are
smart enough to know which buffer to draw into as well.
The swrast->SetBuffer() routine should eventually be removed from
all drivers.
2005-06-23 15:09:32 +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
Nicolai Haehnle
f292e13a20 Back out the actual enabling of depth tiling.
Depth tiling breaks software fallbacks and depth buffer reads.
radeon_span.c **must** be updated for anything that is related to tiling.
2005-06-21 17:18:00 +00:00
Nicolai Haehnle
1e4744d2b9 Add PCI ID for R420 JI.
The driver appears to work reliably (i.e. lockup-free) with a card based
on this chip. However, I have not explored whether we could get anything
in terms of 3D performance "for free" just by setting some magic bits
in those registers that are still a mystery to us.
2005-06-21 17:03:29 +00:00
Aapo Tahkola
ebd99043ed r300 driver side of color tiling support. 2005-06-21 15:41:03 +00:00
Nicolai Haehnle
a5fb15cb87 Make sure texture base addresses are used correctly.
They are relative to the card's address space, not relative to fbLocation,
which will be important once we program MC_FB/AGP_LOCATION in the way
they are programmed on older Radeon chips.
2005-06-21 15:21:14 +00:00
Brian Paul
04f863e856 check for NULL swrast->Driver.SetBuffer before calling it 2005-06-21 14:39:43 +00:00
Brian Paul
23606a5704 updated to version 29 2005-06-21 14:30:46 +00:00
Brian Paul
90b40c33e7 include light.h to silence warning 2005-06-21 03:38:10 +00:00
Brian Paul
dc137ddb3f DirectFB updates (Claudio Ciccani) 2005-06-20 18:29:28 +00:00
Jeremy Kolb
a6a3e01b09 ran "make" after update to glX_proto_send.py. 2005-06-20 03:18:16 +00:00
Jeremy Kolb
4378dee78c Fixed some issues where XCB replies were being freed and data was not being copied. 2005-06-20 03:12:35 +00:00
Brian Paul
38332a6d94 Define __FUNCTION__ as a preprocessor symbol in glheader.h if we're not
using GCC or VMS.
2005-06-19 14:57:34 +00:00
Aapo Tahkola
4e7df27466 Fix gloss breakage when using hw tnl. 2005-06-16 11:57:45 +00:00
Aapo Tahkola
3c6f17be32 Use depth tiling. 2005-06-16 11:41:19 +00:00
Aapo Tahkola
af02907b4c Support 16-bit modes. 2005-06-16 10:40:39 +00:00
Aapo Tahkola
463c1d6c57 Fix problems with elts when immediate mode is on. 2005-06-16 10:27:04 +00:00
Aapo Tahkola
0e288e58ef Turn off VBO's. 2005-06-16 10:21:01 +00:00
Aapo Tahkola
3176f8e2e1 lost_context never gets reset. 2005-06-16 10:05:18 +00:00
Jon Smirl
6c2098ffd4 Fix a few compiler warnings 2005-06-16 04:25:45 +00:00
Jon Smirl
f445aaa67a Fix linux-solo build for mga check-in 2005-06-16 03:45:48 +00:00
Ian Romanick
aa26915472 Adds support for MGA DRM version 3.2.
This patch makes use of two of the new ioctls added in MGA DRM version
3.2.  Specifically, the DRM_MGA_SET_FENCE and DRM_MGA_WAIT_FENCE
ioctls are used in mgaWaitForFrameCompletion.  As a result the MMIO
register region and the primary DMA region are *not* mapped (if DRM
3.2 is available).

This patch does *not* make use of the new get_param query was added to
differentiate between G4x0 cards and G550 cards.  That is left to a
future update.

Xorg bug: 3259
Reviewed by: Eric Anholt
2005-06-14 22:51:44 +00:00
Jouk Jansen
fb818a0b11 Committing in .
OpenVMS updates

 Modified Files:
 	Mesa/src/mesa/tnl/descrip.mms Mesa/src/mesa/tnl/t_vp_build.c
 ----------------------------------------------------------------------
2005-06-14 10:27:05 +00:00
Jon Smirl
6b9d9c5039 fbSwapBuffers needs to return a status 2005-06-13 14:21:34 +00:00
Brian Paul
2d218885ec mingw changes (Nolan Leake) 2005-06-13 14:07:14 +00:00
Vladimir Dergachev
902e70875d Fixed typos. 2005-06-12 14:57:02 +00:00
Vladimir Dergachev
b675c48027 Add definition for memory controller latency registers.. 2005-06-10 16:10:50 +00:00
Keith Whitwell
4476978856 remove debug prints 2005-06-10 14:58:32 +00:00
Brian Paul
252d8e78cc be sure we have span texcoords before calling _swrast_texture_span() 2005-06-10 14:37:32 +00:00
Brian Paul
5d6ecf25f8 pass mask array to PutRowRGB() in simple_z_textured_triangle() 2005-06-10 14:36:55 +00:00
Keith Whitwell
b4979ec178 Allow the print opcode to compile 2005-06-10 13:59:49 +00:00
Keith Whitwell
6c1948d593 Fix typo in spot attenuation 2005-06-10 13:35:31 +00:00
Keith Whitwell
729cccba5d Correct test for attenuation.
DISSASEM changes.
2005-06-10 12:04:47 +00:00
Keith Whitwell
7e8e4c500e remove depend files on clean 2005-06-10 10:43:02 +00:00
Keith Whitwell
f6e7cfb60d Fix colormaterial flag calculations.
Fix lighting alpha result.
2005-06-10 08:33:37 +00:00
Keith Whitwell
52608d2d21 Add notes about intended precision of opcodes.
Remove dead floating point twiddles.
Fix bug translating MAD->MUL,ADD.
2005-06-10 08:32:27 +00:00
Keith Whitwell
1c48986e54 Fix a couple of buglets 2005-06-09 22:10:23 +00:00
Keith Whitwell
1fc4bcbb17 Another typo 2005-06-09 19:03:18 +00:00
Keith Whitwell
44367aab2a Further clean up RoughApproxPow2 and disable the optimized version --
it's a very poor approximation.
2005-06-09 18:59:41 +00:00
Keith Whitwell
2c6e8e90ec Fix typo in RoughApproxPow2 2005-06-09 18:52:42 +00:00
Keith Whitwell
81032030ff Store compiled vertex program representations in a pointer in the
vertex_program struct.

Allow switching between regular and vertex_program implementations
of fixed function TNL with the MESA_TNL_PROG environment var
(previously this required recompilation).

Ensure program compilation only references program data, not the
wider context.  This means that compiled programs only need to be
invalidated when the program string changes, not on other state
changes.
2005-06-09 14:55:34 +00:00
Keith Whitwell
a8534885ef Build vertex programs using state from a 'state key' struct which is
distilled from the current state.

Maintain a list of vertex programs for various different tnl states
indexed by these state keys.

This cuts down the number of vertex programs generated and means that
time spent optimizing vertex programs for execution isn't wasted each
time the state changes.
2005-06-09 14:52:08 +00:00
Keith Whitwell
79b7bd18bb Turn off debug 2005-06-08 22:14:29 +00:00
Keith Whitwell
8e56122782 Add t_vb_arbprogram_sse.c 2005-06-08 22:10:34 +00:00
Keith Whitwell
ea93b2986b Runtime generate sse/sse2 code for some vertex programs. Experimental
and only active when _TNL_FIXED_FUNCTION_PROGRAM is defined *and*
the MESA_EXPERIMENTAL environment variable is set...
Works for the arbfplight demo at least.
2005-06-08 22:10:16 +00:00
Keith Whitwell
002d0ad3e9 Turn off DISASSEM 2005-06-08 22:06:29 +00:00
Keith Whitwell
562bdaf70e New arguments for sse_shufps() 2005-06-08 21:58:30 +00:00
Keith Whitwell
9899f58c76 Use ALIGN_MALLOC for parameter lists. 2005-06-08 21:57:45 +00:00
Keith Whitwell
dce3a91a8d Add some more opcodes 2005-06-08 21:56:21 +00:00
Ben Skeggs
2d2f5a4b19 - Secondary colour
- Calculate tc_count in EmitArrays (enabled units != nr texcoords).
2005-06-08 15:05:19 +00:00
Brian Paul
ee7ad16f3f regenerated 2005-06-08 13:35:28 +00:00
Brian Paul
2c7336af4e put full prototype on one line to fix gl_mangle.h generation (Dave Reveman) 2005-06-08 13:35:07 +00:00
Brian Paul
012de39c23 remove stray line 2005-06-08 13:07:33 +00:00
Keith Whitwell
60339c7062 Remove ARL opcode from interpreter.
Revert SEL opcode to MSK.
Split out t_vb_arbprogram.h header file.
2005-06-08 10:03:29 +00:00
Keith Whitwell
7fb16836e7 new file 2005-06-08 10:02:28 +00:00
Brian Paul
d45cb9a836 regenerate for latest glext.h 2005-06-08 02:18:22 +00:00
Brian Paul
681b758f11 fix some renderbuffer problems for Xserver build (Dave Reveman) 2005-06-08 02:17:10 +00:00
Brian Paul
a0b5c98364 check for double-buffered buffer in XMesaDestroyBuffer() (Dave Reveman) 2005-06-08 02:14:55 +00:00
Daniel Borca
31d0cedd78 updates from Paul Garceau 2005-06-07 19:01:33 +00:00
Brian Paul
7477a7d366 added GL libs to APP_LIB_DEPS (bug 3485) 2005-06-07 15:30:12 +00:00
Brian Paul
4417d4cb61 fix error in OSMESA_LIB_NAME line 2005-06-07 15:25:08 +00:00
Brian Paul
ed7f3aead8 fix GL_ALPHA render-to-texture problem (Jon Smirl) 2005-06-07 15:03:40 +00:00
Keith Whitwell
395280bf88 Initialize some variables. 2005-06-07 12:46:30 +00:00
Keith Whitwell
a4691981d9 Add new runtime assembly files. 2005-06-07 12:45:29 +00:00
Keith Whitwell
1d60469c4c Split out runtime assembly functions. 2005-06-07 12:45:04 +00:00
Keith Whitwell
461a2a799a New files - split off runtime assembly functions from
t_vertex_sse.c.
2005-06-07 12:44:26 +00:00
Keith Whitwell
757e0855ad Simplify interpreted language:
- Expand operand argument specifiers so that all registers and
  parameters can be referenced directly.  Remove old PAR/PRL
  instructions.

- No 3 operand instructions, translate MAD -> MUL, ADD.  (No room for
  3 full operands in instruction struct).

- Translate SWZ instructions into 1 or 2 reduced swizzles at compile
  time.

- Add hardwired code for moving input and output values to/from the
  register file.  Drop old INx, OUT instructions.
2005-06-07 10:59:37 +00:00
Keith Whitwell
17d249d31b Add a VP_MAX_OPCODE entry to allow engines with internal opcodes to
place them sensibly.
2005-06-07 10:56:17 +00:00
Daniel Borca
4f923fb0bc updates from Paul Garceau 2005-06-07 05:29:38 +00:00
Jon Smirl
c20a2b0b72 Add SetBuffer to egl driver too 2005-06-07 02:10:14 +00:00
Jon Smirl
ef9e0be0cb Add a NULL SetBuffer function to the fbdev driver 2005-06-06 21:40:55 +00:00
Brian Paul
2e7dcdd38b this is auto-generated 2005-06-06 14:40:56 +00:00
Ben Skeggs
d59fbcdee5 TEX to output 2005-06-06 07:38:29 +00:00
Ben Skeggs
3c4c6d1f80 Fix xyz/w interaction (needs a cleanup still..)
Use SRC0A instead of WZY/XXX combination for W in XYZ positions.
Remove dodgy hack from POW opcode, now works correctly without it
2005-06-05 08:25:54 +00:00
Jon Smirl
40b8b57ed4 Make install install GLES too 2005-06-05 02:10:58 +00:00
Brian Paul
df5e2b934b set OLD_RENDERBUFFER=0, need to clean up a few more things before totally removing that 2005-06-04 22:09:27 +00:00
Brian Paul
d96dd3cd49 remove old span functions from swrast_device_driver struct 2005-06-04 18:25:39 +00:00
Brian Paul
bb8b302dbc remove old span code 2005-06-04 18:12:28 +00:00
Brian Paul
5ec5c6b222 fix an assertion 2005-06-04 17:53:30 +00:00
Brian Paul
863bd56520 remove old span code 2005-06-04 17:45:50 +00:00
Brian Paul
5821f3d70c added comment 2005-06-04 17:44:42 +00:00
Karl Schultz
5b10d71559 Fixup file lists for tarball/zip file creation.
- Adjust for recent changes to Windows build files.
- Add in at least some of the new slang files - enough to build on
Windows, but some of the other slang-related files may still need to be
added.  (Will probably get corrected just prior to next release, if needed)
2005-06-03 15:24:55 +00:00
Karl Schultz
516546ad5b Updates for new Windows build system. 2005-06-02 23:17:02 +00:00
Brian Paul
3fe9c40cb2 Remove last of the old span code. 2005-06-02 04:09:05 +00:00
Brian Paul
13c8f985d9 oops, undo previous change 2005-06-02 04:07:08 +00:00
Brian Paul
1516f559bc start removing old (pre-renderbuffer) span code 2005-06-02 04:05:45 +00:00
Jouk Jansen
c4fbdb090c Committing in .
OpenVMS makefile added

 Added Files:
 	Mesa/src/mesa/shader/grammar/descrip.mms
 ----------------------------------------------------------------------
2005-06-01 12:07:15 +00:00
Jouk Jansen
589a3a3f6e Committing in .
Update OpneVMS compilesupport

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/shader/slang/slang_compile.c
 	Mesa/src/mesa/shader/slang/slang_storage.c
 	Mesa/src/mesa/shader/slang/slang_storage.h
 ----------------------------------------------------------------------
2005-06-01 12:05:34 +00:00
Eric Anholt
f090fdc50b Move fallback and other debugging under TDFX_DEBUG using the same mechanism
as other drivers.
2005-06-01 08:22:57 +00:00
Eric Anholt
d638f6a0bb Add no_rast option. 2005-06-01 07:44:52 +00:00
Keith Whitwell
502504de23 Add a mode to test flat shading + separate specular. 2005-06-01 07:02:23 +00:00
Eric Anholt
f772e3dd15 Fix the 3dfx driver by correcting what appears to be a typo GL_RGBA8 instead
of GL_RGBA in driNewRenderbuffer of the backbuffer.
2005-06-01 02:59:12 +00:00
Brian Paul
c7264415b6 added code to detect GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT error 2005-06-01 00:50:23 +00:00
Brian Paul
1b93953fbc add support for GL_RENDERBUFFER_RED/GREEN/BLUE/etc_SIZE_EXT querie 2005-05-31 23:55:21 +00:00
Brian Paul
5d5100aabc remove temporary GL_EXT_framebuffer_object info 2005-05-31 23:54:44 +00:00
Brian Paul
2e081cd90e updated to version 28 2005-05-31 23:54:24 +00:00
Eric Anholt
0009e3d97d Bugzilla #2708: Disable the fallback on GL_SPHERE_MAP. It appears to hurt more
than it helps, and we seem to have a handle on how to fix it.
2005-05-31 23:32:47 +00:00
Alan Hourihane
628b18b8ca Add Intel(R) 945G support (Keith Whitwell, Tungsten Graphics) 2005-05-31 18:10:03 +00:00
Aapo Tahkola
4ec6eceea9 Causes lockups on some rare cases. 2005-05-31 05:53:38 +00:00
Eric Anholt
8c2a9a9166 Pull locking out of HW_LOCK/UNLOCK and into SpanRenderStart/Finish. Also do
some cleanups on the span macros.  This does not deal with the brokenness of
depth spans, but makes the code more readable.
2005-05-31 05:31:43 +00:00
Eric Anholt
ef377c3c00 Correct the descriptions of the glBlend{Equation,Func} fallbacks in r128, and
remove those descriptions and the corresponding bits on r200, where they're no
longer used.
2005-05-31 04:26:13 +00:00
Eric Anholt
b79c47e90c Remove unused CTX_ARG2 define. 2005-05-31 04:13:45 +00:00
Eric Anholt
8a1df96862 Bugzilla #2195: Convert the radeon driver to the t_vertex interface. This cuts
about 200 lines from the code and 25k from the binary, while matching other
drivers more closely.  In the worst case (tcl_mode=0) it appears to have
a performance cost of 4.4% +/- 0.3% on quake3 (800x600 demofours, 1ghz p3,
rv200).  Tested on ut2004, ut, q3, projtex.

Submitted by:	Andreas Stenglein <a.stenglein@gmx.net>
2005-05-31 04:04:24 +00:00
Eric Anholt
9dff2ca07a Move fallback debugging under MACH64_DEBUG=fall (matching other drivers) and
add pretty descriptions of the bits.  GC one of the bits that was unused.
Also, now only the first thing triggering a fallback and the last thing
requiring one do the debug output.  This also matches other drivers.
2005-05-31 03:47:39 +00:00
Eric Anholt
12eabeb3b9 Pull locking out from HW_LOCK/UNLOCK into SpanRenderStart/Finish. Provides a
factor of 5+ improvement in no_rast glxgears and 2.3 in no_rast quake3 (n=1,
320x240, 16bpp, low qualities, 1ghz p3)
2005-05-30 08:07:03 +00:00
Eric Anholt
c7f8d36451 Fix software fallbacks by being safe with macro arguments in READ/WRITE_DEPTH.
Convert to spantmp2.h while I'm here.  Tested with 16 and 32bpp no_rast
glxgears.
2005-05-30 06:50:17 +00:00
Eric Anholt
993d8ad5ef Add the no_rast debug option to mach64. It shows that software fallbacks are
pretty broken.
2005-05-30 06:41:19 +00:00
Eric Anholt
b328dded75 Pull hardware locking out into SpanRenderStart/Finish rather than
HW_LOCK/UNLOCK. Provides a 61% performance improvement in no_rast=true quake3
(n=2, 320x240, 16bpp, p4 1ghz), and a factor of 3 improvement in no_rast
glxgears.
2005-05-30 06:15:29 +00:00
Eric Anholt
c1b87b2a06 Add the description of the no_rast option fallback so that MGA_DEBUG=fall
doesn't segfault with no_rast.
2005-05-30 06:11:22 +00:00
Eric Anholt
0936eeb456 Add the no_rast debug option, which I used in some testing. 2005-05-30 03:32:52 +00:00
Eric Anholt
f2149a7a66 Remove unused CTX_ARG2. 2005-05-30 01:59:39 +00:00
Eric Anholt
0b73889d54 Put some fallback debugging output under DEBUG_FALLBACKS. 2005-05-28 23:45:39 +00:00
Eric Anholt
2962f88189 Add a missing EnsureCmdBufSpace, matching r200. 2005-05-28 22:56:16 +00:00
Eric Anholt
f054fa85d8 Add a freebsd-dri-amd64 config, and quiet makedepend slightly by making an
EXPAT_INCLUDES config variable (set on FreeBSD) which is then used in
Makefile.template's INCLUDES.
2005-05-28 20:17:06 +00:00
Jerome Glisse
2ed4c296d9 Some fixes 2005-05-28 12:18:32 +00:00
Dave Airlie
22b0a42465 use shared-core 2005-05-28 10:55:23 +00:00
Ben Skeggs
0bae91562e Up MAX_AOS_ARRAYS to 16. Do we need more? 2005-05-28 05:20:05 +00:00
Ben Skeggs
908dbc44c2 Play with swizzling a bit. 2005-05-28 03:19:56 +00:00
Aapo Tahkola
74e412c695 Programmable per-vertex point sizes and proper result reg assigns. 2005-05-28 01:02:00 +00:00
Aapo Tahkola
0080faf83e More optimal r300Clear. 2005-05-27 20:10:05 +00:00
Brian Paul
d322810e13 properly pop the GL_TEXTURE_GEN_ enable state 2005-05-27 14:44:14 +00:00
Karl Schultz
6580a6d561 Account for moved/new/removed files. 2005-05-26 18:22:13 +00:00
Ian Romanick
70dbbbf89a Fix gl_enums.py so that enums that are listed with the same name in
multiple places don't get generated multiple times.
2005-05-26 16:59:47 +00:00
Ian Romanick
497dd3e920 Minor correction to EXT_framebuffer_object XML. Fix gl_table.py so that it
generates the correct script name in the generated output.
2005-05-26 16:34:58 +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
Keith Whitwell
020225496e Bump driver date. 2005-05-26 11:42:19 +00:00
Dave Airlie
69509641a8 make egl build first so we don't get wierd drivers linking to libs not available
yet
2005-05-26 04:24:09 +00:00
Dave Airlie
978d2fda3c make linux-solo and linux-solo-x86 config files hierarchical 2005-05-26 03:47:34 +00:00
Ben Skeggs
ae516306b4 constant tracking 2005-05-26 02:33:57 +00:00
Dave Airlie
e45b5a4fa8 use shared-core rather than shared 2005-05-26 01:40:34 +00:00
Dave Airlie
8e5099d6a0 use shared-core instead of shared 2005-05-26 01:40:00 +00:00
Ian Romanick
d2ee346a93 Fix a couple typeos in enum names. 2005-05-25 21:00:16 +00:00
Michal Krol
170999a103 change local var names from "asm" to "assem" - I guess it caused
gcc 3.3.5 to break, but not tested it
2005-05-25 15:09:32 +00:00
Michal Krol
d1834e8c10 a small utility to convert .syn files to its binary forms;
does not require any command line params;
2005-05-25 14:58:22 +00:00
Michal Krol
0432411837 silencium gcc warnings 2005-05-25 14:27:59 +00:00
Michal Krol
0f71c6691e add shader/slang/slang_assemble_assignment.c 2005-05-25 14:24:34 +00:00
Michal Krol
fc534034cc more slang code 2005-05-25 14:23:00 +00:00
Michal Krol
1de60fe47f ncrease stack size 2005-05-25 14:19:24 +00:00
Michal Krol
c16264b138 update grammar_mesa.c path 2005-05-25 14:00:22 +00:00
Michal Krol
1aadf1c039 moved from mesa/shader to mesa/shader/grammar 2005-05-25 13:58:36 +00:00
Michal Krol
1008f57f6f remove the GLSL spec wording;
reorder some elementary operators;
disable assignment "=" and equality "==" "!=" operators - they are
handled internally by the assembly generator;
fix minor typos
2005-05-25 13:43:32 +00:00
Michal Krol
2b73e5aaaf add mesa/shader/grammar to include list 2005-05-25 13:37:56 +00:00
Michal Krol
863eca9973 stand-alone vertsions of grammar_mesa - used by utilities;
DO NOT BUILD UNDER MESA
2005-05-25 13:35:39 +00:00
Keith Whitwell
39e14d2cff Provide initial values for some variables. 2005-05-25 13:35:21 +00:00
Keith Whitwell
741b980433 add special case for flat shaded + separate specular triangles 2005-05-25 13:34:52 +00:00
Michal Krol
3f6d985753 change the behaviour of enter and local_addr instructions 2005-05-25 13:20:59 +00:00
Keith Whitwell
49109d01c0 Disable polygon stipple - it seems to break if certain specific stipple
patterns are used, including the one generated by conform.
2005-05-25 10:17:19 +00:00
Keith Whitwell
8286abd798 Fix various issues with cliprects and MakeCurrent 2005-05-25 10:14:39 +00:00
Ben Skeggs
53d13e014f - Remove one of the loops in emit_arith
- Handle REPL_ALPHA in emit_arith (possibly incorrect for some things)
- Start on getting demos/arbfplight.c to look right.  Won't be animated yet,
  need to re-work const emit so we can update consts without re-translating
  the entire program.

Assertion in r300_state.c::setup_rs_unit needs to be disabled for it to
work.
2005-05-25 06:46:10 +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
Ian Romanick
e87ab8c05f Only use x86 / SSE assembly when USE_X86_ASM / USE_SSE_ASM are defined.
This makes the driver build on x86-64 again.
2005-05-24 23:03:15 +00:00
Karl Schultz
6b5afb0036 Cleanup some Windows junk. 2005-05-24 22:16:27 +00:00
Karl Schultz
89bf62cd49 project file for glut library 2005-05-24 22:06:59 +00:00
Karl Schultz
5dc31379c4 fix location of gears project 2005-05-24 22:04:03 +00:00
Karl Schultz
c97a3a3038 project file to build gears 2005-05-24 21:57:45 +00:00
Karl Schultz
7df5eddf6a Visual Studio 6 project file to build GLUT and some demos. 2005-05-24 21:51:58 +00:00
Karl Schultz
f7c0c4f485 moved to windows build dir 2005-05-24 21:17:42 +00:00
Karl Schultz
b4c8b34534 moved to windows build dir 2005-05-24 21:15:52 +00:00
Karl Schultz
45ab8cb08a Major code cleanup and begin using new render buffer interface. 2005-05-24 21:12:43 +00:00
Karl Schultz
b31b1f44f1 Change prototype for TextureMemCpy to return void* (was void). 2005-05-24 21:06:41 +00:00
Karl Schultz
7708b75d72 Visual Studio 6 project file for OSmesa library. 2005-05-24 21:02:51 +00:00
Karl Schultz
c73968af95 Visual Studio 6 project file for core Mesa. 2005-05-24 21:01:55 +00:00
Karl Schultz
9a726cdf8f Needed to build .cc files in Visual Studio 6. 2005-05-24 21:01:05 +00:00
Karl Schultz
7179810375 Visual Studio 6 project file for GLU library. 2005-05-24 21:00:03 +00:00
Karl Schultz
a1b07e187e Visual Studio 6 project file for Windows GDI driver. 2005-05-24 20:59:07 +00:00
Karl Schultz
39c0e51329 Visual Studio 6 workspace for Mesa libraries. 2005-05-24 20:57:15 +00:00
Karl Schultz
2f9722863d Removing in favor of new Windows build directory. 2005-05-24 20:50:56 +00:00
Daniel Borca
731f1b12a0 remove stupid flags 2005-05-23 22:02:53 +00:00
Keith Whitwell
2d5f12ae6b Initialize hw stencil renderbuffer. 2005-05-23 21:10:01 +00:00
Keith Whitwell
afa7f6a0f5 Disable recent sse change pending more testing. 2005-05-23 14:31:44 +00:00
Ben Skeggs
eeada48497 Implement enough of ARB_fragment_program for Keith's texenv program
generation in Mesa.  Requires most recent Mesa cvs to work correctly.

Swizzle code is possibly slow/buggy and will probably be replaced.

Old behaviour can be controlled by a #define in r300_context.h, if
no-one minds I'll remove the old code later on.

Also, disabled cube map extension.  AFAIK We don't support it yet,
and it causes issues with UT2004.
2005-05-23 14:14:19 +00:00
Keith Whitwell
0c4731b27c Use SSE for vertex emit -- another good speedup. 2005-05-23 12:25:43 +00:00
Keith Whitwell
17bcf9f816 Import Thomas Helstrom's SSE memcpy code from the via X.org driver.
Add a TextureMemCpy callback, called from texstore.c when copying
texture data via the memcpy_texture() path.
Enable this code in the via driver - 100% speedup in texdown.c results.
2005-05-23 12:17:27 +00:00
Keith Whitwell
eb9d6f44a9 silence gcc warnings 2005-05-23 12:15:19 +00:00
Keith Whitwell
241b6b7ab1 Detect use of disabled textures as tex_env_crossbar sources. 2005-05-23 09:50:34 +00:00
Keith Whitwell
2dea6df80b Support ARB_texture_env_crossbar. Changes the way programs are
generated somewhat, with all TEX instructions now emitted at the head
of the program.
2005-05-23 09:37:32 +00:00
Keith Whitwell
6fe176a648 Restore the negate() function.
Add Ben Skegg's ATI_texture_env_combine3 support.
2005-05-23 08:08:43 +00:00
Jerome Glisse
eb8be5d923 Small change to handle native case (7 natives case) 2005-05-22 12:24:52 +00:00
Jerome Glisse
446980473d Adding r300 fragment program swizzle tab. Please some
one reread macro at begining see if i made any error.
A full reread would also be usefull there may be some
errors for some swizzle despite the great care i took
to done them :)
2005-05-22 12:06:50 +00:00
Ian Romanick
b70a47736a Add support for modes with a depth-buffer but no stencil-buffer. This
eliminates various "3D driver claims to not support visual" messages in
16-bit color mode.
2005-05-20 18:40:11 +00:00
Keith Whitwell
3cc2f82bb5 Remove debug printfs 2005-05-20 15:12:12 +00:00
Keith Whitwell
923515b3f8 Re-enable X11 optimized triangle funcs. 2005-05-20 15:06:41 +00:00
Brian Paul
e3e8067db7 use MAX_SCREENS instead of hard-coded number 2005-05-20 14:11:11 +00:00
Brian Paul
8f384f0b67 fix reversed strstr() args, print mode string 2005-05-20 14:03:35 +00:00
Brian Paul
e58d32947e replace // with /* */ 2005-05-20 14:02:02 +00:00
Jouk Jansen
063efce6ee Committing in .
Update openVMS compile support

 Modified Files:
 	Mesa/progs/demos/descrip.mms
 	Mesa/src/mesa/shader/slang/descrip.mms
 	Mesa/src/mesa/tnl/descrip.mms
 ----------------------------------------------------------------------
2005-05-20 11:43:54 +00:00
Jon Smirl
bab559b1fa Remove some debug output
Add #if DEBUG_FRAG in s_nvfragprog.c
2005-05-20 01:17:38 +00:00
Adam Jackson
8f8e0f0b01 Use the 1.3 names for FogCoord* 2005-05-20 00:44:37 +00:00
Keith Whitwell
18a74321aa Invalidate current fastpath on changes to attribute size or offset within
the vertex.

Use existing facilities to check for sse2 and enable when available.

Turn on SSE/SSE2 codegen for t_vertex.c by default when USE_SSE_ASM is
defined.  Disable with "MESA_NO_CODEGEN=t".
2005-05-19 20:25:32 +00:00
Keith Whitwell
c2745ffa49 Cope with the common 3ub and 1ub cases.
Fix a few typos.
Note that sse_movss sets high dwords to zero when reading from memory.
Fix a few related bugs.
2005-05-19 19:02:46 +00:00
Keith Whitwell
9557401a98 Re-initialize viewport shadows each time. 2005-05-19 19:01:47 +00:00
Keith Whitwell
67cc1f6ba6 move osmesa demos to their own directory 2005-05-19 15:39:37 +00:00
Jon Smirl
c70dace694 Fix EGL fbdev palette problem. demo3 can save ppm of screen 2005-05-19 15:03:31 +00:00
Keith Whitwell
6040d34109 Rename emit functions to reflect instruction set in use (ie
x86,sse,sse2,mmx).  Add paths for sse+mmx vs. the initial version
which assumed sse2 was available everywhere.
2005-05-19 14:42:09 +00:00
Brian Paul
8608978aba remove the XFree86 ID line 2005-05-19 13:32:41 +00:00
Michal Krol
02168254a8 intermediate code generator (not finished);
generic back-end interpreter (interprets directly intermediate code)
2005-05-19 11:50:53 +00:00
Michal Krol
e5ff2b94ff add static_assert macro 2005-05-19 10:22:28 +00:00
Michal Krol
216f89318e fix info log grabbing 2005-05-19 09:28:01 +00:00
Aapo Tahkola
e3cdbca63f Ditch unused code and features that arent in subject to get supported any near time. 2005-05-19 00:03:50 +00:00
Ian Romanick
6bc9ea1df9 In addition to dead-code removal and other clean-up, bump the required DDX
version from 1.0.0 to 1.1.1.  1.1.1 is over a year and a half old at this
point, so it should be pretty widespread.  This allows the linecomp_sane
field to be eliminated from mga_screen_private_s.
2005-05-18 22:49:59 +00:00
Jon Smirl
9a1b5af333 Fix inverted y for egl fbdev, add egl demo3 2005-05-18 20:44:23 +00:00
Brian Paul
8818eae253 To better exercise pixel packing, replace regular glReadPixels with four
ReadPixels that get the image piece by piece.
2005-05-18 15:44:13 +00:00
Keith Whitwell
2b2bd08589 Remove old t_vertex.c codegen infrastructure, tie in new code.
Currently disabled, can enable with MESA_EXPERIMENTAL=t.
2005-05-18 15:26:48 +00:00
Keith Whitwell
dc7fc17396 Fix a few typos, initialize p->identity. 2005-05-18 14:04:19 +00:00
Keith Whitwell
96582f4f28 Eliminate a couple of swizzles. 2005-05-18 14:03:02 +00:00
Keith Whitwell
dd4c1dd038 Generates working SSE code for gears under the swrast driver. 2005-05-18 12:26:21 +00:00
Keith Whitwell
b745bf08cd Checkpoint commit: Preliminary version of a facility to emit x86/sse code
to implement vertex emit functions for the t_vertex.c mechanism.
2005-05-18 10:04:27 +00:00
Aapo Tahkola
2f74adc41f Stick texture LOD back on. 2005-05-18 08:43:30 +00:00
Aapo Tahkola
e53fc72f67 Polygon mode fixes. 2005-05-18 08:22:36 +00:00
Jon Smirl
bd565e4bb7 Fix for writing the wrong sysfs variable when blanking 2005-05-18 02:48:44 +00:00
Jon Smirl
9a3da7ea7b Implement fbdev swapbuffers() 2005-05-18 01:44:11 +00:00
Ian Romanick
6e56f905d0 More comments. More dead-code removed. More clean-up. 2005-05-18 00:37:32 +00:00
Keith Whitwell
2860e5f536 Disable leftover debug statements 2005-05-17 22:21:08 +00:00
Brian Paul
22652f952f fix some BCOMP/ACOMP typos (fixes Brad King's vtk failures) 2005-05-17 19:29:46 +00:00
Brian Paul
ae818ed1da don't include strings.h 2005-05-17 18:44:33 +00:00
Brian Paul
198d6d05b0 remove eglQueryDisplayMESA() 2005-05-17 13:22:13 +00:00
Brian Paul
5a0cb726d1 fix pbuffer sample code 2005-05-17 13:21:46 +00:00
Brian Paul
d2ab4eb2c2 remove glmode stuff 2005-05-17 13:21:12 +00:00
Jon Smirl
2ec2e94e2e Check error return from _eglInitPbufferSurface() correctly 2005-05-17 03:48:38 +00:00
Jon Smirl
40c1c723fb Compute stride in the right order 2005-05-17 03:38:06 +00:00
Brian Paul
bf7f998f39 Added software-based pbuffer support (untested).
Use _eglConfigToContextModesRec() function and remove need for
the _EGLConfig->glmode struct.
Silence some compiler warnings.
2005-05-17 02:18:38 +00:00
Brian Paul
bb2c65200c updated demoCreatePbufferSurface() 2005-05-17 02:15:38 +00:00
Brian Paul
5119056324 update comments 2005-05-17 02:14:44 +00:00
Brian Paul
4c80f8df46 more work on _eglConfigToContextModesRec() 2005-05-17 02:13:00 +00:00
Jon Smirl
e03b5cdf3f Make EGL_NO_MODE_MESA work. 2005-05-17 02:12:29 +00:00
Brian Paul
167b141e6e added _eglInitPbufferSurface() 2005-05-17 02:12:26 +00:00
Jon Smirl
d06da50888 Fix several internal problems with generating the list of configs. 2005-05-17 00:59:13 +00:00
Ian Romanick
c1082804a8 Rearranged some code and added some comments to mgaAllocDmaLow. The
modified code performs identically, but cuts 16KiB from the resulting
mga_dri.so.
2005-05-16 23:23:51 +00:00
Felix Kuehling
ffd97d20aa Don't use _mesa_swizzle_ubyte_image if all three texture formats
involved in _mesa_textore_argb/rgba8888 (source, base-internal,
destination) differ. _mesa_swizzle_ubyte_image knows only about two of
the formats and can't handle the case that all three are different
correctly. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=3111.
2005-05-16 23:01:09 +00:00
Brian Paul
a33f0d3024 remove -ansi -pedantic -D_POSIX_C_SOURCE=199309L from CXXFLAGS 2005-05-16 19:07:45 +00:00
Jon Smirl
380991cb65 Implement query of surface type. 2005-05-16 16:50:38 +00:00
Jon Smirl
3e8001a465 Add error about write permission to fbdev attribs 2005-05-16 15:51:05 +00:00
Brian Paul
af1a729972 another GLX / XCB patch (Jeremy Kolb) 2005-05-16 14:12:46 +00:00
Keith Whitwell
cf4f3c5061 Deal better with indirection and indirection accounting, developed
with Ben Skeggs.
2005-05-16 12:15:01 +00:00
Keith Whitwell
4cf20d9236 Apply r200 tcl fix to radeon - compiles but untested. 2005-05-16 08:36:28 +00:00
Brian Paul
72a313902b EGL_MESA_copy_context stuff 2005-05-16 02:21:57 +00:00
Brian Paul
f9bad3dfea use EGLint instead of unsigned long for eglCopyContextMESA, added comments 2005-05-16 02:21:08 +00:00
Brian Paul
a495ed372f separate ext strings with a space 2005-05-16 02:17:49 +00:00
Brian Paul
d9789b7861 s/Atrib/Attrib/, set extension enable flags 2005-05-16 02:16:33 +00:00
Brian Paul
51ac95ba89 added boolean extension flags to _EGLDriver 2005-05-16 02:15:42 +00:00
Brian Paul
6493bd07a7 restore _eglSetConfigAttrib (for now), added prototype _eglConfigToContextModesRec() 2005-05-16 02:14:50 +00:00
Brian Paul
7bfe8df08a define M_E if needed 2005-05-16 01:32:57 +00:00
Brian Paul
5873faf39b make _eglSetConfigAtrib() a static function, and rename it 2005-05-16 00:45:03 +00:00
Brian Paul
fdeda9c458 remove MESA suffix from _eglInitScreenSurface, use swAlpha value 2005-05-16 00:32:09 +00:00
Brian Paul
9b134f641c minor tweaks 2005-05-16 00:31:29 +00:00
Brian Paul
efeea95dcc fix GetRow parameters (Nicolai Haehnle) 2005-05-15 21:26:11 +00:00
Jon Smirl
45472672a2 A few egl patches needed for glitz, mainly config BITS 2005-05-15 04:00:59 +00:00
Aapo Tahkola
aca2e0da3c Make gleans polyoffset test happy. 2005-05-14 17:41:57 +00:00
Aapo Tahkola
d5084d42d4 Dont assume GLbooleans are ones when true. 2005-05-14 16:52:32 +00:00
Nicolai Haehnle
578f63f2bf Cleanup blend state generation.
Do not set the NO_SEPARATE bit, as it causes problems with some
combinations of blend functions.
2005-05-14 14:56:25 +00:00
Jon Smirl
1c606a9aa1 Add empty placeholder for eglCopyContextMESA 2005-05-14 14:54:38 +00:00
Nicolai Haehnle
09f433b97c The kernel doesn't like command buffers over 64KB, so we don't
allocate buffers bigger than that.
2005-05-14 14:51:17 +00:00
Jon Smirl
8110df4f61 Fix compiler warning about missing parameter list 2005-05-14 14:11:11 +00:00
Nicolai Haehnle
9cf35d2876 Remove dead span functions code. 2005-05-14 12:19:05 +00:00
Nicolai Haehnle
11bd5c1ac4 Fix span functions for stencil buffer access. 2005-05-14 11:43:04 +00:00
Nicolai Haehnle
686e9b9f57 Don't print debug messages unless the user explicitly requested them
using the RADEON_DEBUG environment variable.
2005-05-14 09:17:28 +00:00
Jon Smirl
aecc05627a Add forgotten demo2.c
VS: ----------------------------------------------------------------------
2005-05-14 03:51:18 +00:00
Jon Smirl
d0ddf190aa Fix compile error in demo egl driver 2005-05-14 03:49:55 +00:00
Jon Smirl
5cb977fedf Forgot to add fb_egl.c 2005-05-14 03:22:48 +00:00
Nicolai Haehnle
296428dcf4 Make software fallbacks work again:
We need to plug in swsetup functions into the TNL module's callbacks.
Also, resize the framebuffer size when the drawable size changes.
2005-05-13 21:29:17 +00:00
Nicolai Haehnle
ee83a1302f Remove quiescence sequence from r300ClearBuffer.
The DRM is responsible for emitting this quiescence sequence when
appropriate.
2005-05-13 21:00:11 +00:00
Jon Smirl
7012d01d88 First attempt at getting egl support up on dumb framebuffer.
Seems to be mostly working. Not all of egl API is implemented.
2005-05-13 18:31:35 +00:00
Nicolai Haehnle
a6ed129dfc Patch from Jeff Smith:
The type of vertex data is opaque in the emit_* functions, so use GLvoid*
instead of char*. This also eliminates some compiler warnings.
2005-05-13 18:03:24 +00:00
Nicolai Haehnle
733bc876ee Patch from Jeff Smith:
Fix a WARN_ONCE format string.
2005-05-13 17:44:22 +00:00
Alan Hourihane
64034c4fb5 Remove MAX_VISUAL limitations of 100. If running dual head this can
be easily consumed. There are no limitations now and the VisualTable
is realloced when necessary.
2005-05-13 11:56:13 +00:00
Keith Whitwell
846eb333ae Calculate render inputs for tcl stage correctly (hint: they aren't the
same as tnl->render_inputs).  Fixes recent tcl problems.
2005-05-13 09:15:50 +00:00
Ian Romanick
c9a69a6968 Remove some unused structure fields, add some comments, and ifdef out some
dead code.  This is just some clean-up work which should not have any
functional impact.
2005-05-12 23:15:38 +00:00
Keith Whitwell
269e3895d9 new MESA_DEBUG option: disassem 2005-05-12 10:28:43 +00:00
Keith Whitwell
5c72837af9 Rein in debug slightly 2005-05-12 10:22:29 +00:00
Keith Whitwell
5f430c9976 Turn disassem off (oops). 2005-05-12 09:31:33 +00:00
Keith Whitwell
714be699be Add check for mask == NULL to the one routine missing it. 2005-05-12 09:07:12 +00:00
Keith Whitwell
10432bcc0a When lighting is enabled, but no lights are enabled, the scenecolor
becomes the result of lighting.  When lighting is disabled,
pass-through incoming color value.  Likewise, pass through incoming
texture values.  (Based on patch by Aapo Tahkola)

Add compile-time configuration to switch between DP4 and MUL/MAD for
matrix-vector multiplications.
2005-05-12 08:54:13 +00:00
Ben Skeggs
69a2f7cdd5 fix warnings in r300_texstate.c (Jeff Smith) 2005-05-12 03:53:18 +00:00
Karl Schultz
db21f1c84f The "P" suffix on APIENTRY and GLAPIENTRY is to be used for pointers to
functions, not for functions that return pointers.  Restore protoype
for glGetString back to its correct form.
2005-05-11 22:01:20 +00:00
Aapo Tahkola
4e68f4c1fa VBOs. 2005-05-11 17:28:13 +00:00
Keith Whitwell
1e5772f0ba Don't let FragmentProgram._Active influence choice of vertex vs pixel
fog.
2005-05-11 16:30:02 +00:00
Keith Whitwell
ac6728d2d9 Previously in TXP and TEX instructions, lambda was passed to
fetch_texel as zero, but I believe this is incorrect.  The spec uses a
pseudocode function:

      vec4 TextureSample(float s, float t, float r, float lodBias,
                         int texImageUnit, enum texTarget);

to specify the behaviour of TEX, TXB and TXP instructions.  For TEX
and TXP, lodBias is passed as zero, TXB is passed with texcoord[4].  In our code we have

      static void
      fetch_texel( GLcontext *ctx, const GLfloat texcoord[4], GLfloat lambda,
                   GLuint unit, GLfloat color[4] )

and were passing zero and a biased lambda value respectively.  The
difference is that TextureSample() would add in the lambda term
itself, while in our code the caller is expected to do this.  Thus in
the TEX and TXP cases, it is necessary to pass an unbiased lambda
value for things to work out correctly.
2005-05-11 16:28:33 +00:00
Keith Whitwell
49d8cbe8d1 Use _mesa_memset rather than memset 2005-05-11 15:18:59 +00:00
Keith Whitwell
9d148e6b2b Don't let FragmentProgram._Active influence choice of vertex vs pixel
fog.
2005-05-11 15:18:23 +00:00
Keith Whitwell
363d0bcf01 Test for texcoord[3] == zero before dividing. Not so sure about this
test - if texcoord[3] is zero, we'd probably be fine except for an
ASSERT in IROUND_POS() which gets triggered by the inf values
created.
2005-05-11 15:17:31 +00:00
Keith Whitwell
e490242b9a Fix glean/conform problems. Don't generate so much output when
disassembling.
2005-05-11 15:16:35 +00:00
Keith Whitwell
a582015905 Fix valgrind complaint, conform vertex order test. 2005-05-11 10:30:13 +00:00
Keith Whitwell
3509fd8c1b Rename temp_flag to temp_in_use. Use ctx->Const.MaxVertexProgramTemps
rather than MAX_NV_VERTEX_PROGRAM_TEMPS and deal with this possibly
being greater than 32.
2005-05-11 08:34:19 +00:00
Keith Whitwell
93cd9237d7 Fix logic for allocating texture temporaries (Ben Skeggs).
Rename temp_flag, tex_temp_flag to make this clearer.
Respect ctx->Const.MaxFragmentProgramTemps limit.
2005-05-11 08:30:23 +00:00
Adam Jackson
1243b829bb int -> size_t to fix compile on LP64. 2005-05-11 01:33:50 +00:00
Keith Whitwell
2fcaf7a529 Ensure programs don't overflow allocated instruction store. 2005-05-10 18:24:50 +00:00
Keith Whitwell
a42fe19d8d Fix some valgrind complaints 2005-05-10 18:22:19 +00:00
Keith Whitwell
e57d5c4742 fix some valgrind complaints 2005-05-10 18:10:32 +00:00
Keith Whitwell
5a5b4436cb Improved detection of program changes. 2005-05-10 18:10:00 +00:00
Keith Whitwell
3ffe8731e6 Double-buffer generated instructions and only notify driver when the
generated program differs from the previous one.
2005-05-10 18:09:17 +00:00
Keith Whitwell
c5f5055097 Fix some valgrind complaints 2005-05-10 18:08:25 +00:00
Keith Whitwell
dbeea25bb8 Double-buffer generated instructions and only notify driver when the
generated program differs from the previous one.
2005-05-10 13:57:50 +00:00
Keith Whitwell
f29f2fc294 reduce the use of malloc and strdup for parameter lists 2005-05-10 13:56:23 +00:00
Keith Whitwell
ab81d1fd99 don't be fooled into emitting padding for wpos when not used 2005-05-10 13:54:52 +00:00
Keith Whitwell
d9fdb6c2bb Missing from previous commit 2005-05-10 11:41:33 +00:00
Keith Whitwell
9eef0da109 Update for FragmentProgram._Active 2005-05-10 11:40:52 +00:00
Keith Whitwell
8b88f62fbd Better driver notification on changes. 2005-05-10 11:39:50 +00:00
Keith Whitwell
948fa3b295 get fog working with _TexEnvProgram 2005-05-10 11:38:56 +00:00
Keith Whitwell
586f2c59fe Temporary fix - delete and recreate texenvprogram so that drivers
notice when it changes.
2005-05-10 10:25:16 +00:00
Jouk Jansen
e3b0c19ec9 Committing in .
OpenVMS compile support update for new buffer-code

 Modified Files:
 	Mesa/src/mesa/drivers/x11/descrip.mms
 	Mesa/src/mesa/main/descrip.mms
 	Mesa/src/mesa/swrast/descrip.mms
 ----------------------------------------------------------------------
2005-05-10 10:15:30 +00:00
Keith Whitwell
9ca8815d3b Fix texenv segfault. Reported by Ben Skeggs. 2005-05-10 09:56:02 +00:00
Keith Whitwell
ecb6bfc0ce Try not to use the same temp reg as a TXP destination more than once,
as this also constitutes a texture indirection.  Reported by Ben
Skeggs.
2005-05-10 08:58:44 +00:00
Daniel Borca
fee163a61a pathetic attempt to accomodate new frambuffer changes (still some work to do) 2005-05-09 22:15:24 +00:00
Daniel Borca
0e26580c90 accomodate new frambuffer changes 2005-05-09 22:14:58 +00:00
Daniel Borca
c8542705f7 fix some typos in FX code 2005-05-09 22:14:32 +00:00
Keith Whitwell
435eff8b85 i915 will use _TexEnvProgram (if active) 2005-05-09 17:59:13 +00:00
Keith Whitwell
276330b241 Use driver functions to create TexEnvProgram, TnlProgram 2005-05-09 17:58:13 +00:00
Keith Whitwell
ff6723e326 check for null DrawBuffer values 2005-05-09 17:42:18 +00:00
Keith Whitwell
1180fc13db Fallback (rather than fail) on unknown program targets. 2005-05-09 17:38:52 +00:00
Jon Smirl
5c6aec2f39 dri fb works using renderbuffers now in RGBA mode 2005-05-08 05:01:03 +00:00
Jon Smirl
86300c6945 fbdri can draw double buffered now. Next step is to convert it
to use RenderBuffers.
2005-05-07 19:56:44 +00:00
Brian Paul
fc3bc1ae14 remove some dead code 2005-05-07 18:27:58 +00:00
Brian Paul
d3bd97bb14 x86_64 stuff 2005-05-07 17:27:57 +00:00
Brian Paul
52064f6c37 added linux-x86-xcb config (Jeremy Kolb) 2005-05-07 17:21:11 +00:00
Brian Paul
2eb147e7f5 Patches for XCB (Jeremy Kolb) 2005-05-07 17:14:50 +00:00
Brian Paul
6f3d16c64a assorted warning clean-ups for x86_64, etc (Mikko T.) 2005-05-07 17:06:49 +00:00
Brian Paul
42fa81275c x86-64 transform optimizations (Mikko T.) 2005-05-07 16:59:58 +00:00
Brian Paul
e3f684b753 fix a bunch of html errors 2005-05-06 22:17:24 +00:00
Brian Paul
883d20791a fix cpp / bytesPerPixel problem (bug 1196554) 2005-05-06 19:28:31 +00:00
Brian Paul
b1d0ac64ab remove bad assertion, added new ones in clear_pixmap() 2005-05-06 15:23:54 +00:00
Brian Paul
c64573997c restore call to SetBuffer() in clear_color_buffers(), only temporary 2005-05-06 14:44:16 +00:00
Ben Skeggs
e133984f51 Updated for EXT_framebuffer_object changes. I don't know if this is correct, but it seems to work 2005-05-06 08:41:50 +00:00
Jon Smirl
bd8162aaac Fix problem generating mode db. Miniglxtest works now.
Miniglxsample is still broken with double buffering issues.
2005-05-06 05:50:41 +00:00
Aapo Tahkola
4a55d4ffa7 Missing setups that cause all kinds of problems with hw tnl. 2005-05-06 03:18:40 +00:00
Karl Schultz
6258b76c49 Port Mesa to build on a P64 platform (e.g., Win64). P64 platforms
use 64-bit pointers and 32-bit longs.  So, operations like casting pointers
to unsigned long and back to pointer won't work.  glheader.h now
includes files to define uintptr_t, which should instead be used for
this sort of operation.  It is an integer type that is the same size
as a pointer.
2005-05-05 21:08:07 +00:00
Brian Paul
203dcb733d fix for renderbuffer (Andreas Stenglein) 2005-05-05 17:13:18 +00:00
Brian Paul
bd1d9d96b2 remove some test code 2005-05-05 15:09:16 +00:00
Brian Paul
9f8b3fac97 minor face-lift for web pages 2005-05-05 14:18:31 +00:00
Brian Paul
0355d3ff94 fix typo 2005-05-05 14:18:04 +00:00
Brian Paul
cb34c11663 added a comment 2005-05-05 13:08:06 +00:00
Brian Paul
1077779c7d add PROGRAM_DIRS line 2005-05-05 13:07:52 +00:00
Aapo Tahkola
1c39d183c4 Getting rusty... 4278 was already there. 2005-05-05 06:51:00 +00:00
Jon Smirl
fd4f7064e2 Fix up origin in dri/fb driver
Calculated fbBPP
2005-05-05 05:50:19 +00:00
Aapo Tahkola
db46e2a7dd Flat shading and bunch of clarifications to r300_reg.h . 2005-05-05 03:40:47 +00:00
Adam Jackson
e7769cb348 Refactor COMMON_SOURCES up to Makefile.template 2005-05-05 03:15:08 +00:00
Jon Smirl
d83c4e6dd1 Minor touchups to fbdev renderbuffer support 2005-05-05 00:28:37 +00:00
Aapo Tahkola
73e8ffe9f3 Pack tex coord regs at vertex program backend. 2005-05-05 00:28:31 +00:00
Brian Paul
286c4cc201 more updates for users of s_spantemp.h 2005-05-05 00:10:18 +00:00
Adam Jackson
b3e878ad90 Add drirenderbuffer.c to COMMON_SOURCES 2005-05-04 22:05:02 +00:00
Brian Paul
eae0439ae6 fix s_spantemp.h includes 2005-05-04 20:20:02 +00:00
Brian Paul
79c0bb5264 FBO changes 2005-05-04 20:18:23 +00:00
Brian Paul
41a93f544e fix xm_span2.c reference 2005-05-04 20:13:59 +00:00
Brian Paul
e4b2356c07 Major check-in of changes for GL_EXT_framebuffer_object extension.
Main driver impacts:
- new code for creating the Mesa GLframebuffer
- new span/pixel read/write code
Some drivers not yet updated/tested.
2005-05-04 20:11:35 +00:00
Brian Paul
ebef61f5c0 html fix 2005-05-04 20:05:21 +00:00
Brian Paul
fe6ee3f5e6 EGLScreenMESA updates 2005-05-04 20:00:15 +00:00
Brian Paul
f5581bb994 don't call XTranslateCoordinates() if rendering to pixmap 2005-05-04 14:50:45 +00:00
Keith Whitwell
47b29f511a Add a facility to route all rasterization through a fragment program
which is automatically generated to match the current texture environment
state.  Introduces a new value ctx->FragmentProgram._Active which is
true when either _Enabled is true or there is such a fragment program
ready to run.

To test out on a driver running the software rasterizer, set
MESA_TEX_PROG=t in the environment.  It goes without saying that performance
is lower for the software rasterizer in this mode.
2005-05-04 11:44:44 +00:00
Keith Whitwell
c3f764f7bb Sort instructions for clarity. 2005-05-04 11:21:46 +00:00
Keith Whitwell
3151b27b0a Include negate information in disassembly output. 2005-05-04 11:21:25 +00:00
Keith Whitwell
209b090241 Mark unused registers as undefined so dissassemblers can recognized
them easily.
2005-05-04 11:20:59 +00:00
Keith Whitwell
d8f9599403 Improve the quality of the disassembly output for fragment programs. 2005-05-04 11:20:20 +00:00
Jouk Jansen
c6e1569b7f Committing in .
OpenVMS compile update

 Modified Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2005-05-04 06:33:58 +00:00
Jon Smirl
82761cb08b DRI fbdev driver getting better. Now I can see something on the screen
but it isn't the right something yet.
2005-05-04 06:12:22 +00:00
Brian Paul
c22990c29a sync with latest EGL_MESA_screen_surface spec (EGLScreenMESA handles) 2005-05-04 03:33:21 +00:00
Brian Paul
3aeae20685 updates for latest EGLScreenMESA changes 2005-05-04 03:32:39 +00:00
Keith Whitwell
884b5ade86 Import all texture coordinate arrays. Import them only once. 2005-05-03 15:11:23 +00:00
Aapo Tahkola
138b7ef4d9 Add support to external tnl switcher and disable hw tnl by default. 2005-05-01 23:36:43 +00:00
Felix Kuehling
3a934557bf Bumped the Savage driver date (a bit late) to mark S3TC support. 2005-05-01 14:37:23 +00:00
Felix Kuehling
5f0bf77255 Fixed and cleaned up programming of watermark registers. There may be
a marginal speedup, but I'm not sure this has the same effect on all
hardware. Tested on Savage IX and ProSavageDDR. For experimenting with
different values see the macros at the start of savagestate.c.
2005-05-01 14:29:16 +00:00
Jon Smirl
8af7ff1ded Improve the DRI fb driver, now it compiles.
Added code to support NEW_INTERFACE.
It still doesn't work. Made it build from make linux-solo.
2005-05-01 00:21:27 +00:00
Brian Paul
1c54579e86 apply previous GL_COMPRESSED_TEXTURE_FORMATS_ARB fix to generator file, and regenerate get.c 2005-04-30 18:30:16 +00:00
Aapo Tahkola
7d33053e47 r300 side support for fixed function pipeline. This isnt functional with current Mesa. 2005-04-30 11:06:14 +00:00
Felix Kuehling
47d18cbb64 Fixed bogus ENUM_TO_BOOLEAN in
_mesa_GetIntegerv(GL_COMPRESSED_TEXTURE_FORMATS_ARB). Must be ENUM_TO_INT.
mesa/progs/tests/texenv now lists supported compressed texture formats
correctly.
2005-04-30 02:09:23 +00:00
Felix Kuehling
f1d053b19a Added S3TC support to the Savage driver with some help from Mark Cass's
S3TC support for an older driver version. On Savage3D/IX/MX
GL_EXT_texture_compression_s3tc can't be enabled because DXT3 and DXT5
are not supported. However GL_S3_s3tc is enabled on all Savage chips.
Tested on a Savage IX and a ProSavageDDR
2005-04-30 02:03:18 +00:00
Jon Smirl
28d0a9c9dd Fix include path to make build work 2005-04-29 22:25:21 +00:00
Keith Whitwell
5f534aa1e2 Format for 80 columns. Add alternate matrix mul based on MAD rather than DP4. 2005-04-29 17:32:27 +00:00
Keith Whitwell
e9e20fc47d Add DISASSEM define, similar to other program generator files. 2005-04-29 17:31:54 +00:00
Keith Whitwell
a5cb1aa211 Add linux-fbdev config 2005-04-29 17:31:10 +00:00
Keith Whitwell
431417fec7 new config 2005-04-29 17:30:29 +00:00
Keith Whitwell
5c81a4b9cd Put back not-so-redundant #ifdef. 2005-04-29 15:41:24 +00:00
Keith Whitwell
a6ebcdfe7d Remove redundant #ifdef, fix compiler warning 2005-04-29 15:37:27 +00:00
Keith Whitwell
2c19069182 new file 2005-04-29 15:36:38 +00:00
Keith Whitwell
15e75e00c7 Maintain a fragment program for current texturing state. 2005-04-29 15:11:39 +00:00
Brian Paul
d59054e60b fix _tnl_copy_to_current() so that current edge flag and rasterpos aren't trashed by color index updates 2005-04-28 21:14:00 +00:00
Keith Whitwell
5cef1a1fed Stop gcc-4.0 complaining about "type qualifiers ignored on function
return type".
2005-04-28 13:16:23 +00:00
Keith Whitwell
545515cbea Stop gcc-4.0 complaining about "type qualifiers ignored on function
return type".
2005-04-28 12:05:58 +00:00
Brian Paul
97e1e60b1c move set_component_sizes() to fix bug 3135 2005-04-27 21:20:30 +00:00
Brian Paul
69441868f6 no need to enable fog or set fog mode with fragment program 2005-04-26 20:58:27 +00:00
Brian Paul
55d8dd4078 tweak previous fog/fragment program fix 2005-04-26 20:56:21 +00:00
Brian Paul
d09df24082 added interpolate_fog() 2005-04-26 17:35:45 +00:00
Brian Paul
c03b6f40ba enable fog render input if fragment program fog option set 2005-04-26 17:25:53 +00:00
Brian Paul
c039af165d comments and minor clean-up 2005-04-26 16:02:56 +00:00
Aapo Tahkola
c3259fa436 Fix as suggested by Ben Skeggs. 2005-04-25 09:50:45 +00:00
Keith Whitwell
b83aadb0e4 Ensure all VB->AttribPtr[] are populated. Reported by Aapo Tahkola 2005-04-25 09:36:27 +00:00
Jon Smirl
576caad33e Minor changes to make linux-solo build again 2005-04-25 03:03:10 +00:00
Felix Kuehling
cbc8d7596a Software fallback for glColorMask. Can be avoided on Savage4 when all
channels are masked (disable draw update). Bumped driver date to
reflect recent correctness fixes. The driver now passes all glean
tests except exactRGBA on both Savage4 and Savage3D-based cards.
2005-04-24 20:55:57 +00:00
Aapo Tahkola
6ffd0a4cf1 Modifying to build against current Mesa. Disabled r200*.c files since they didnt want to build anymore. 2005-04-24 09:08:31 +00:00
Felix Kuehling
5c906924ed Fixed a segfault introduced by Keith's pipeline changes. 2005-04-23 19:54:30 +00:00
Felix Kuehling
9b4536a654 Texturing fixes for Savage3D/MX/IX:
- force emitting texAddr when the texture image changed (flush caches)
- set transparent texture color key to something improbable
  (couldn't find a way to disable it completely)
- fixed texture environment modes GL_DECAL and GL_REPLACE
- made texture environment mode GL_BLEND a software fallback
- added two custom texture formats for promoting from GL_ALPHA to ARGB8888
  and 4444. Since the hardware can't be made to ignore the RGB color
  components, set them to 1 instead of 0. This gives the correct results
- disabled GL_EXT_texture_env_add on Savage3D/MX/IX
- map both GL_CLAMP and GL_CLAMP_TO_EDGE to hardware mode "wrap". It doesn't
  match either mode exactly by the spec, so we should either fall back on both
  or none. I chose the latter.
- fall back to software when s and t wrapping modes differ (hardware has only
  one bit for both)
2005-04-23 17:18:57 +00:00
Keith Whitwell
df943a4041 Fix the worst problems with dangling edgeflag references in
display lists.  These mainly arise from edgeflag being the only
attribute no longer stored internally as a float and requiring
various special case paths to accomodate it.
2005-04-23 11:55:18 +00:00
Keith Whitwell
0d4af83f25 Updates for pipeline_stage struct changes. 2005-04-22 22:47:09 +00:00
Keith Whitwell
bf87f86493 First pass at updating these drivers with pipeline_stage struct changes. 2005-04-22 22:42:09 +00:00
Felix Kuehling
963586b871 Added a French translation of option descriptions by Stephane Marchesin. 2005-04-22 21:36:37 +00:00
Brian Paul
fc06f9fb25 demo / test progs 2005-04-22 21:17:14 +00:00
Brian Paul
20d44dc9bc types for Mesa implementation of EGL 2005-04-22 21:16:28 +00:00
Brian Paul
11b0a76370 prototype EGL_MESA_screen_surface. 2005-04-22 21:16:12 +00:00
Brian Paul
adbff7e977 initial EGL code 2005-04-22 21:09:39 +00:00
Keith Whitwell
a661654a33 Move the call to _tnl_UpdateFixedFunctionProgram to make
it easier for hardware drivers to test this out.
2005-04-22 13:02:04 +00:00
Keith Whitwell
6f973f3367 Simplify the pipeline_stage structure
- remove input/output fields, input tracking removed.
	- remove state fields, the validate function now called
	  on every statechange.
	- add an explicit 'create' function.

Add in code to build vertex program to implement current t&l state.  Still
disabled, but turn on with a #define in t_vp_build.h.
2005-04-22 12:51:19 +00:00
Keith Whitwell
6a13c7da4c Up the value of MAX_NV_VERTEX_PROGRAM_PARAMS to a power of two. 2005-04-22 12:46:13 +00:00
Michal Krol
addcc6afbd Add more error checking. 2005-04-22 10:43:36 +00:00
Michal Krol
19fb77ee7b Cosmetic changes. 2005-04-22 10:28:53 +00:00
Michal Krol
b10d080b1e Move some utility functions to slang_utility.c. 2005-04-22 10:15:32 +00:00
Michal Krol
3ed1f07686 Provide precompiled binary versions of built-in library .gc sources
to dramatically improve shader compiling performance.
2005-04-22 09:51:46 +00:00
Brian Paul
2cbbd3dc50 undef DEPTH_TYPE at end 2005-04-22 02:56:21 +00:00
Felix Kuehling
a7fcac5e92 Fixed some suspicious pointer casts that caused lots of
compile-time-warnings on x86-64. Not tested on x86-64 yet, but a good
thing in general, so I'm giving up waiting for feedback. See also
https://bugs.freedesktop.org/show_bug.cgi?id=2924.
2005-04-21 21:50:54 +00:00
Felix Kuehling
07d91bbb59 Fixed TexEnv modes GL_BLEND and GL_ADD on Savage4-based cards. Disabled
the use of hardware texture format I8 as it produces garbage at least on
ProSavageDDR.
2005-04-21 21:43:21 +00:00
Aapo Tahkola
b3474de7b5 Adding some comments. 2005-04-21 19:09:54 +00:00
Keith Whitwell
7c26b61f93 Reduce the size of mesa's internal fragment and vertex program
representations by switching to packed structures for registers and
instructions.
2005-04-21 14:46:57 +00:00
Brian Paul
88b69d7998 use _mesa_pow() for LIT (bug 3087) 2005-04-21 14:19:50 +00:00
Keith Whitwell
f069e5e412 Facility to construct a vertex program which executes the current
fixed function t&l pipeline.

Currently runs most of the Mesa demos OK, but still needs debugging &
polishing.
2005-04-21 13:13:49 +00:00
Keith Whitwell
0ff98b03c6 New software implementation of ARB_vertex_program. Similar in speed
to existing version, but with the potential for good improvements.
2005-04-21 13:11:02 +00:00
Aapo Tahkola
70375aff48 Had some odd problems with add and temps so doing it with mad. Adding some MAD_2 cases. 2005-04-21 05:24:02 +00:00
Brian Paul
52bf005425 fix state.light[n].spot.direction.w value (bug 3083) 2005-04-20 23:47:03 +00:00
Brian Paul
8d51bbf2a3 clean up buffer creation code 2005-04-20 17:12:10 +00:00
Aapo Tahkola
fc8f202181 Reorganized shader stuff. 2005-04-19 18:49:44 +00:00
Aapo Tahkola
c4e1fd5a7f Fixes for bugs that were nailed down when compairing against software vertex shading. 2005-04-19 03:12:30 +00:00
Aapo Tahkola
f8ed0aa268 Fixing and enabling elt buffers by default. 2005-04-18 22:41:43 +00:00
Ian Romanick
d03ab104db If the file name passed to parse_GL_API is None or "-", read from standard
input.  This allows use of GL API scripts in pipelines.
2005-04-18 21:30:20 +00:00
Ian Romanick
93d2d54e7a Refactor a bunch of common code from the "leaf" scripts to a new functions,
parse_GL_API, in gl_XML.py.
2005-04-18 19:42:23 +00:00
Ian Romanick
8ea22650bd Fill-in function offsets and correct a couple typos. 2005-04-18 19:17:12 +00:00
Ian Romanick
2510ba618d Convert all Python scripts to use XML namespaces. 2005-04-18 19:16:07 +00:00
Peter Zubaj
b7142567bc Alpha test fix 2005-04-18 19:06:14 +00:00
Ian Romanick
61f08d8094 Move the DTD to its own file. 2005-04-18 18:36:57 +00:00
Brian Paul
f905145b60 comments and clean-up 2005-04-18 17:48:25 +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
Brian Paul
b52673117b s/NORMAL/FOG/ (J.P. Delport) 2005-04-18 14:21:44 +00:00
Jouk Jansen
49b1d95c1c Updates for OpenVMS : New makefiles
added some type-casts

 Modified Files:
 	Mesa/src/mesa/shader/descrip.mms
 	Mesa/src/mesa/shader/program.c
 	Mesa/src/mesa/shader/slang/slang_compile.c
 	Mesa/src/mesa/shader/slang/slang_preprocess.c
 Added Files:
 	Mesa/src/mesa/shader/slang/descrip.mms
 ----------------------------------------------------------------------
2005-04-18 13:05:24 +00:00
Brian Paul
e9a3d8a772 added SLANG_SOURCES to SOLO_C_SOURCES 2005-04-15 22:20:46 +00:00
Brian Paul
afb3fb4b77 config for profiling with gprof 2005-04-15 22:16:18 +00:00
Brian Paul
635ee2df37 added _mesa_share_state() 2005-04-15 17:25:07 +00:00
Ben Crossman
509710cfd7 more gldirect compile fixes. Getting near the linking stage now. No build file yet. 2005-04-15 17:17:47 +00:00
Brian Paul
efb41b07ff remove carriage returns 2005-04-15 16:05:14 +00:00
Keith Whitwell
78803b2667 Fix alpha value of STATE_LIGHTMODEL_SCENECOLOR. From the spec:
The "w" component of the program parameter variable is filled with
 the alpha component of the front diffuse material color.

Make sure matrix inverses are uptodate also.
2005-04-15 12:57:23 +00:00
Michal Krol
a131d50fb7 add shader/slang/slang_preprocess.c 2005-04-15 10:30:43 +00:00
Michal Krol
e3a846b0e3 implement info log; parse #version directive 2005-04-15 10:23:10 +00:00
Michal Krol
65ce50897e slang preprocessor 2005-04-15 10:21:34 +00:00
Michal Krol
8855664489 slang #version directive syntax 2005-04-15 10:20:30 +00:00
Michal Krol
35725a92be change __asm statement semantics 2005-04-15 10:19:27 +00:00
Ben Crossman
d8aa5ffed5 Reverted the last change back to fix bug 3035 2005-04-15 09:13:21 +00:00
Ian Romanick
067e788acd Convert 'variable_param' from a CDATA attribute to a NMTOKENS attribute.
The main difference is that white-space is used to separate the names
instead of comas.
2005-04-14 23:03:44 +00:00
Ian Romanick
73b4c1b388 Refactor the handling of the '(true | false)' enumerated attributes. 2005-04-14 23:00:34 +00:00
Ian Romanick
a3deff2404 Modify the DTD to use NMTOKEN, enumerants, and explicit default values
wherever possible.  Correct a couple mis-uses of the 'counter' attribute
when 'count' was intended.  Fix some errors in the DTD and in the data with
'doubles_in_order'.
2005-04-14 22:59:46 +00:00
Ian Romanick
6cae4f3bc9 In GLX_USE_TLS builds, make GET_CURRENT_CONTEXT use the TLS verion of the
variable.  Without this, GET_CURRENT_CONTEXT would *always* result in a call
to _glapi_get_context (because _glapi_Context is a const pointer to NULL in
TLS builds).
2005-04-14 21:05:55 +00:00
Ian Romanick
f434e07a6a Add missing includes of indirect.h. 2005-04-14 20:35:33 +00:00
Ben Crossman
369404299c A few getenv() that werent using the mesa wrapper version 2005-04-14 19:54:15 +00:00
Ben Crossman
b2b01a60db Some initial compile fixes. Still some left and warnings that need fixing. No where near runnable yet. 2005-04-14 16:58:25 +00:00
Keith Whitwell
60e2810ae4 Disable CLOD (Lod constant) state emit. The values emitted were
possibly negative, hence clobbering the leading register-id byte.
Fixed the calculation of the values to prevent negative numbers being
emitted, but the code still doesn't implement texture LOD bias
correctly, so leave it disabled overall.
2005-04-14 15:53:30 +00:00
Michal Krol
99b329ca13 hook to _slang_compile() 2005-04-14 10:31:36 +00:00
Michal Krol
ed5f790919 cosmetic changes 2005-04-14 10:30:08 +00:00
Michal Krol
8c01903114 ARB_fragment_shader state 2005-04-14 10:28:14 +00:00
Michal Krol
6372ea0da0 ARB_fragment/vertex_shader state 2005-04-14 10:27:19 +00:00
Michal Krol
2a37053fd5 ARB_shading_language_100 bit;
Fragment shader derivative hint
2005-04-14 10:25:49 +00:00
Michal Krol
1e8fc5ffea add GL_ARB_shading_language_100;
reorder GL_ARB_shader_objects and GL_ARB_fragment/vertex_shader stuff
2005-04-14 10:23:51 +00:00
Michal Krol
5c968cbc5e add FEATURE_ARB_shading_language_100;
remove FEATURE_shading_language;
add ARB_fragment/vertex_shader max values
2005-04-14 10:21:30 +00:00
Michal Krol
98e35025ba do not use isdigit() - can cause link errors 2005-04-14 10:19:19 +00:00
Brian Paul
fd451b6d01 updated procedure for getting CVS-write access 2005-04-13 23:50:47 +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
c604e457d1 Revert revision 1.13. This allows server-side libGLcore (in X.org) to build
with Mesa CVS.  This change was wrong in the first place, and the issue that
necessitated it has been resolved.  For more background on the problem see:

http://marc.theaimsgroup.com/?l=mesa3d-dev&m=111333880529935&w=2
2005-04-13 18:41:33 +00:00
Michal Krol
9a5ba4794c add SLANG_SOURCES 2005-04-13 14:05:28 +00:00
Michal Krol
fa2802d4d0 clean-up stuff 2005-04-13 14:05:06 +00:00
Michal Krol
0e7836b500 simple front-end compiler 2005-04-13 14:04:41 +00:00
Michal Krol
d3ea221d3e add __fixed_input and __fixed_output qualifier support;
fix for_init_statement output;
2005-04-13 13:18:35 +00:00
Michal Krol
2f951683be cosmetic changes;
add __fixed_input and __fixed_output qualifiers for built-in variables;
2005-04-13 13:06:57 +00:00
Michal Krol
5a38200122 cosmetic changes;
fix syntax errors;
2005-04-13 13:03:23 +00:00
Michal Krol
f18d70b804 cosmetic changes;
change first parameter's qualifier from inout to out for __operator =;
remove __asm instructions: int_add, int_multiply, int_divide, int_negate,
int_less, int_equal, bool_equal;
2005-04-13 12:59:58 +00:00
Michal Krol
cfcf86b37d converts a .gc file to a C header containing string form of the file 2005-04-13 12:48:40 +00:00
Felix Kuehling
0ad2ef20a7 Added a Spanish translation by David Rubio Miguélezand a Dutch
translation by Manfred Stienstra.
2005-04-12 21:01:30 +00:00
Felix Kuehling
ad0dbe6b04 Changed escaping of double quotes. 2005-04-12 20:58:34 +00:00
Brian Paul
41bddcfa7b PF_8A8R8G8B pixel format (Dave Reveman) 2005-04-12 01:41:04 +00:00
Felix Kuehling
55ba0dccc9 Manage option translations in separate .po files to make translations
easier for non-programmers familiar with GNU gettext. For now there is
only a German translation but more translations are encouraged.

Translatable strings are extracted from t_options.h containing option
definitions with English descriptions. A corresponding header options.h
with all available translations of option descriptions is generated by
gen_xmlpool.py and included by xmlpool.h.

Many option descriptions were rephrased to make them unambiguous for
translation without context. They are hopefully more helpful to users at
the same time.
2005-04-11 21:41:40 +00:00
Brian Paul
aaa5a66433 set table size to 1023 and use new HASH_FUNC() macro 2005-04-10 17:44:27 +00:00
Adam Jackson
5f92c38f0e Bug #2945: Fix math error that left half the hash buckets empty. 2005-04-09 18:35:57 +00:00
Ian Romanick
db382c5b1d Remove all the radeon_subset files. They were completely unused. Keith
Whitwell says, "[T]he radeon subset code can probably be archived now."
This "fixes" bug #1623.
2005-04-08 23:54:20 +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
Brian Paul
d9c389dff6 Add shaderobjects_3dlabs.c back into build but use #ifdef FEATURE_shading_language to enable/disable relevant code. 2005-04-07 14:38:41 +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
Brian Paul
c61782958b added wrappers/helpers for creating/destroying rendering contexts 2005-04-06 22:41:46 +00:00
Brian Paul
c3984fc015 changed implementation of GetAllFBConfigs() 2005-04-06 22:40:39 +00:00
Brian Paul
481bdd383a Fix Fake_glXChooseFBConfig so passing NULL attribList causes a list of all
fbconfigs to be returned.
2005-04-06 22:33:15 +00:00
Ian Romanick
bfc8a8dc63 Make linux-dri-x86-64 more like linux-dri-x86. Add ARCH_FLAGS. This is
where things like "-m64" or "-m32" should be specified.  Using this, a
32-bit DRI build can be done on an x86-64 system by doing 'ARCH_CFLAGS=-m32
make linux-dri-x86'.  Minor tweaks to linux-dri to support these changes.
2005-04-06 21:34:34 +00:00
Ian Romanick
29c909f81c Make glxgears_fbconfig compile and respect the DISPLAY setting. Add it
to the Makefile as well.
2005-04-05 20:43:06 +00:00
Keith Whitwell
5234d17514 Don't call PrimitiveNotify with an invalid primitive. Fix ipers
wireframe mode.
2005-04-05 10:30:05 +00:00
Brian Paul
c39a4bc83c s/Togle/Toggle/ 2005-04-04 20:06:40 +00:00
Brian Paul
a92100a3c6 updated warning string to match patch in bug report 2868 2005-04-04 16:06:16 +00:00
Brian Paul
fe1230f1c8 Use FEATURE_shading_language to control whether the shading language
compiler is hooked in.  May be enabled on compiler command line by setting
-DFEATURE_shading_lanuage=1.
2005-04-01 01:41:54 +00:00
Adam Jackson
26772ac988 Disable _mesa_3dlabs_create_{program,shader}_object references. 2005-03-30 17:02:18 +00:00
Brian Paul
425569bbc5 Disable C++ shading language code yet again. Doesn't compile with older
g++ installations.
2005-03-29 02:46:59 +00:00
Brian Paul
93b52d9484 re-enable shading language sources 2005-03-29 02:31:43 +00:00
Brian Paul
1706ba4101 re-enable _mesa_init_shaderobjects_3dlabs() call 2005-03-29 02:31:11 +00:00
Brian Paul
9a54843a94 fix a variety of warnings/errors 2005-03-29 02:28:21 +00:00
Brian Paul
cb80e3905c disable 3dlabs shading language code until build is fixed 2005-03-26 19:45:40 +00:00
Brian Paul
32e845f05e disable _mesa_init_shaderobjects_3dlabs() call until build is fixed 2005-03-26 19:45:08 +00:00
Brian Paul
7d4abc9b3a remove INSTALL.GNU from tarball list 2005-03-26 19:22:06 +00:00
Brian Paul
a62fe7f5e3 obsolete 2005-03-26 19:21:07 +00:00
Michal Krol
00e599e783 implement gl2_3dlabs_shhandle interface; resolve few TODOs 2005-03-25 12:16:53 +00:00
Michal Krol
1d7f71924d cleanup query functions 2005-03-25 12:12:50 +00:00
Michal Krol
05ab19ef43 add _mesa_init_shaderobjects_3dlabs() declaration 2005-03-25 12:07:31 +00:00
Michal Krol
a095aa4f4b fix comments; fix TBuiltInResource typedef 2005-03-25 12:05:30 +00:00
Michal Krol
675f802542 fix comments; disable DLL linkage for WIN32 2005-03-25 12:03:58 +00:00
Felix Kuehling
116986bad5 Fixed segfault due to an off-by-one error in SAVAGE_TEX_MAXLEVELS. 2005-03-24 11:53:19 +00:00
Felix Kuehling
798e753e07 Initialize texture addresses to something valid. 2005-03-23 17:59:09 +00:00
Keith Whitwell
ce1d7ee5ee remove file after merge 2005-03-23 12:01:08 +00:00
Brian Paul
068039eec1 no change 2005-03-23 03:34:24 +00:00
Brian Paul
05bbafa01a use $(*_LIB) in the *_LIB_NAME definitions 2005-03-23 02:12:21 +00:00
Keith Whitwell
8fb17f5b3f rename mesaVis to try and improve clarity 2005-03-22 14:30:30 +00:00
Keith Whitwell
3e62d3a8d8 add FreeTexImageData hook to help single-copy texturing in drivers 2005-03-22 14:27:10 +00:00
Keith Whitwell
050b77a9ac merge unichrome changes from branch 2005-03-22 14:25:55 +00:00
Keith Whitwell
59b4b7e07e Remove test for defined(DRM_USE_MALLOC) around definition of
drmSIGIOHandler().
2005-03-22 13:34:27 +00:00
Keith Whitwell
46d50d9e8e Add more formats to test. 2005-03-22 13:32:35 +00:00
Keith Whitwell
de4fe1e3c5 Add DRM_USE_MALLOC flag 2005-03-22 13:31:35 +00:00
Keith Whitwell
7f8e10f96c Calculate haveAccumBuffer, haveDepthBuffer and haveStencilBuffer in
driFillInModes().
2005-03-22 13:16:20 +00:00
Michel Dänzer
e7c7a0f353 Add support for production version of ATI RN50/ES1000. (ATI Technologies
Inc.)
2005-03-18 23:05:07 +00:00
Aapo Tahkola
6bd390743d Misc fixes. 2005-03-18 14:44:27 +00:00
Michal Krol
2fb2e27e28 update against 03-Feb-2005 release 2005-03-18 14:28:02 +00:00
Michal Krol
5b641a516e enable all 3dlabs front-end compiler sources 2005-03-18 14:21:07 +00:00
Michal Krol
706bb1c714 a little program to change // comments to /* */ ones 2005-03-18 14:07:47 +00:00
Michal Krol
1d5c727bba glslang flex and bison sources:
flex glslang.l
bison -t -v -d glslang.y
mv glslang.tab.c Gen_glslang_tab.cpp (shouldn't be .c?)
mv glslang.tab.h glslang_tab.h
2005-03-18 12:18:00 +00:00
Aapo Tahkola
a890ceee63 Fix to get doom3 started. 2005-03-17 22:28:06 +00:00
Ian Romanick
8a7dcd97bd xmllint fixes. Revert 'note_unflushed' changes that were accidetnally
committed in the last version.
2005-03-17 22:01:39 +00:00
Aapo Tahkola
a78bbd0816 Simple TCL stage and ability to disable vps. 2005-03-17 21:50:01 +00:00
Ian Romanick
80a939cafb Enable the generation of server-side __glGetBooleanv_size and related
functions.  There are two parts to this.  First, a size element with a name
"Get" is shorthand for having four separate size elements with names
"GetIntegerv", "GetDoublev", "GetFloatv", and "GetBooleanv".  Additionally,
a count of "?" is treated specially.  This causes a call to a handcoded
function named "__gl<base name>_variable_size".  This is *only* needed to
support GL_COMPRESSED_TEXTURE_FORMATS.  That enum can return a variable
number of values depending how many compressed texture formats are supported
by the implementation.

Fix a problem with glGetProgram{Local,Env}Parameter[df]vARB,
glAreProgramsResidentNV, and glGetVertexAttribivNV.  These changes only
affect code generated for the server-side.

The changes to enum.c are caused by enums added for the server-side
__glGetBooleanv_size functions.
2005-03-17 21:48:37 +00:00
Ian Romanick
6af6a69312 Minor refactoring and code tweaking. The only notable chage is that
FilterGLAPISpecBase::xref is replaced by
FilterGLAPISpecBase::functions_by_name.  The notable difference between the
two is that ::functions_by_name includes all functions, whether they have an
assigned offset or not.  This feature will be useful (necessary) when more
server-side code is generated.
2005-03-17 20:56:13 +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
00e760c971 Refactored some of the code for PrintGlxReqSize_[ch]. This ensures that the
same set of functions will be iterated for both the generated C-source file
and the generated header file.
2005-03-17 01:50:32 +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
Aapo Tahkola
c1aa3d1e6f Proper VAP output configuration as R300_RS_ROUTE_0_COLOR became optional and broke arbvptorus(takes no input color but produces output color). Also removing some useless code. 2005-03-16 22:32:48 +00:00
Ben Skeggs
dd9da8cdb5 Fixed some strangeness when mixing textured/flat primitives. Skipping texture units should render correctly also. Aapo, I dont think I broke glxgears again on you... 2005-03-16 00:54:09 +00:00
Roland Scheidegger
fbe5296d14 add support for user-configurable brilinear filtering on r200 2005-03-15 22:23:29 +00:00
Aapo Tahkola
7541794373 Fix to get glxgears display anything. 2005-03-15 20:55:29 +00:00
Ben Skeggs
3c4c86aff2 For some reason the Makefile didn't commit.. 2005-03-15 17:09:35 +00:00
Ben Skeggs
34dd4843d7 Initial multitexturing support. Old behaviour can be re-enabled by changing ifdefs in r300_setup_rs_unit and r300SetupPixelShader in r300_state.c\nRequires DRM update. 2005-03-15 17:00:44 +00:00
Ian Romanick
7457a648d2 If setting GL_PACK_INVERT_MESA results in a GL error, log it. 2005-03-14 22:09:31 +00:00
Felix Kuehling
bd5bba8470 When timestamping textures, need to emit the event with SAVAGE_WAIT_3D
set. Otherwise the 3D engine may still be using a texture that is
being overwritten. In order to minimize the cost of waiting, timestamp
textures only when needed: when a texture image changes, when a
different texture is bound to a texture unit or when a texture unit is
disabled. (Used to be after flushing every command buffer.)
2005-03-14 21:52:46 +00:00
Peter Zubaj
e2e4a5c992 Stencil support
Reflex from mesa demos doesn't work
TODO - double side stencil
I hope that I didn't break anything
2005-03-14 20:35:00 +00:00
Michal Krol
02eb36fa8d re-enable slang sources 2005-03-14 12:43:59 +00:00
Michal Krol
0c7d2fff1e make it compile under linux 2005-03-14 12:24:32 +00:00
Michal Krol
5c9d21df3d make it compile under gcc 3.3.2 2005-03-14 12:23:14 +00:00
Michal Krol
8998de569c fix enum comma 2005-03-14 12:19:36 +00:00
Aapo Tahkola
278c6025f9 Replacing alpha test bits with values that give desired results as compaired to software rendering. Alpha test in textures is still completely broken as can be seen in progs/demos/fire and various games. 2005-03-13 12:23:08 +00:00
Felix Kuehling
4f05e61543 Updated savage_dri.h from Xorg CVS. This removes definitions that are
not part of the DDX->DRI interface and should never have been in this
file in the first place.
2005-03-13 00:20:03 +00:00
Felix Kuehling
45f26f9979 Removed savagedma.[ch]. They have been unused for a while and were only
kept around for reference. Now that command DMA is implemented in the
DRM module they are no longer needed.
2005-03-12 23:00:53 +00:00
Aapo Tahkola
203bd3e8ec Unlike radeon and r200 drivers r300AllocCmdBuf allocs dwords not bytes. 2005-03-12 10:14:09 +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
Brian Paul
522ea42718 add MAT_DIRTY_FLAGS in _math_matrix_mul_floats(), (bug 2696) 2005-03-11 14:54:51 +00:00
Paul Mackerras
e24a9c10b5 Add suitable definitions for the _REV formats, plus a comment
explaining why they are the same as the non-REV formats now that
textures don't get byte-swapped on their way to the chip.
Fix the ARGB4444 and L8 formats.
Add entries for the A8 and RGB332 formats.
2005-03-11 11:38:23 +00:00
Felix Kuehling
96035d54f3 - Flush before updating the timestamp of a texture heap from a bound texture.
- Flush before using a new texture or before disabling a texture unit,
  because savageFlushCmdBuf can only update the timestamp of the last
  used texture. This fixes corruption in quake2 with single-textured
  lighting.
2005-03-10 22:45:00 +00:00
Felix Kuehling
746df56717 If the texture image changed force emitting the texture address, even
if it didn't change. This seems to flush texture cashes. Fixes
multi-textured lighting in quake2.
2005-03-09 15:28:47 +00:00
Vladimir Dergachev
5737fda093 Don't use R200 texture constants - R300 fields are all different. 2005-03-09 05:31:31 +00:00
Vladimir Dergachev
439f7feab1 Deal with texture formats in a more robust way. 2005-03-09 00:40:55 +00:00
Aapo Tahkola
f0d484fa5a Replacing some RADEON cmd types with r300 counterparts. 2005-03-08 22:29:45 +00:00
Aapo Tahkola
2579c32a5f Improving Vladimirs alpha test fix a bit as it turns out r300Enable didnt correctly disable alpha test. Vertex programs with high vertex count now run a lot faster as software fallback is no longer on. Also disabling 'temp to result'-instructions as they probably violate the spec and dont seem to be something thats needed. 2005-03-08 03:29:46 +00:00
Ian Romanick
0bd5373d94 Actually *use* the count_scale value associated with a parameter. 2005-03-06 08:55:39 +00:00
Felix Kuehling
9d05d3dd30 Don't synchronize after each frame. Allow the GPU to be one frame
ahead of the CPU for more parallelism of CPU and GPU. Unfortunately
there seems to be some broken hardware (like my ProSavageDDR) on which
status register updates are delayed sometimes. This leads to very
jerky animation if the hardware can buffer more than the current
frame. A new option "sync_frames" can be used as a remedy on such
broken hardware.
2005-03-06 03:52:01 +00:00
Felix Kuehling
e6aa21156a - Fixed two bugs related to DMA buffer handling that showed up with the
new DRM version 2.4 and command DMA.
- Flush less.
- Bumped the driver date.
2005-03-06 01:28:30 +00:00
Vladimir Dergachev
a30402b56a Add format 15. It turned out to be X,X,X,X,X8. 2005-03-05 22:20:57 +00:00
Dave Airlie
07561c6b32 Fixing memset on ia64 & other archs
From: Stephane Marchesin
2005-03-05 06:38:59 +00:00
Vladimir Dergachev
a4296239d4 Enable VB mode rendering by default. If anyone thinks this is wrong, *please* feel free to change it back.
My reasons:

    * immediate mode is broken
    * vb mode is faster
    * vb mode is the right way to do it.
2005-03-05 06:31:36 +00:00
Vladimir Dergachev
3f9467c946 Do properly initialize ALPHA_TEST register instead of carefully preserving bogus value. This fixes many, many rendering issues which I wrongly blamed on texture programming or performance.. 2005-03-05 06:10:09 +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
Roland Scheidegger
87030f6618 remove one of the two _tnl_isolate_materials function calls 2005-03-05 00:04:20 +00:00
Adam Jackson
8ff72e9723 Add preliminary EGL headers. 2005-03-04 20:18:55 +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
Rune Petersen
bc6bf401f5 Set pipes for R420 cards. Gives a nice speedup. This needs to be tested on r420 cards with less than 16 pipes. 2005-03-04 15:48:40 +00:00
Vladimir Dergachev
984d527626 Add a couple of helper functions for completeness. 2005-03-03 23:18:19 +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
ce77d37264 Check for some common function parameter description errors in the
endElement handler for <function>.  This catches the errors as early as
possible and makes debugging other code easier.
2005-03-03 21:21:59 +00:00
Ian Romanick
6e776f25fd When building in the X-Server, attr.depth doesn't exist. Instead, use
(XMesaDrawable)w)->depth in the error message.
2005-03-03 19:56:11 +00:00
Brian Paul
c1f2f9090b change gl_buffer_object's Size field to GLsizeiptrARB type 2005-03-03 02:05:33 +00:00
Brian Paul
7644bfb536 Added linux-x86-32 config to force building 32-bit objects in a 64-bit environment. 2005-03-03 01:44:42 +00:00
Brian Paul
3e1961839e if building 32-bit objects in 64-bit environment, use -m32 flag 2005-03-03 01:38:13 +00:00
Alan Hourihane
fff3b2f318 use COPY_CLEAN_4V macro to replace using both ASSIGN_4V & COPY_SZ_4V 2005-03-02 18:57:01 +00:00
Brian Paul
b960c14cbb Added a bunch of new comments, minor code clean-ups. 2005-03-02 16:37:24 +00:00
Brian Paul
3db7ae3a38 Using glColor3 commands to update materials could result in an undefined
alpha value.  Fixed.
2005-03-02 16:31:58 +00:00
Brian Paul
7cd2ae9d97 added stub functions for GLX_MESA_allocate_memory 2005-03-01 02:51:07 +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
Brian Paul
80875253ce additional parenthesis in TNL_CONTEXT macro (Nicolai Haehnle) 2005-02-28 17:45:11 +00:00
Aapo Tahkola
d1e40c9bdd fix for 'nasty bug' and some sanity checks to avoid buffer overruns. Bumping VSF_MAX_FRAGMENT_LENGTH as it seems a bit low otherwise. 2005-02-28 00:27:02 +00:00
Brian Paul
6c0c91714c silence warnings 2005-02-27 16:23:41 +00:00
hmarson
87a2f3df64 Added 0x4e51 - Saphire 9600 256MB
0x4e71 - Saphire 9600 256MB - Second Head...
2005-02-27 12:12:25 +00:00
Dave Airlie
ab7312ef63 precedence precedence precedence.. add some brackets 2005-02-27 07:43:18 +00:00
Brian Paul
67742383e8 Rename _mesa_update_buffers() to _mesa_update_draw_buffer_bounds() and do
additional checks.
Replace _mesa_init_buffers() with _mesa_init_scissor() and _mesa_init_multisample().
2005-02-26 17:16:12 +00:00
Dave Airlie
4932ba28ad Add a dri config option to enable the max texture level hack
make ycbcr depend on a CHIPSET define .. needs to be filled in though
2005-02-26 05:24:04 +00:00
Dave Airlie
8ca515097f use girl2.rgb by default 2005-02-26 04:56:25 +00:00
Dave Airlie
c68233cb35 Add glXAllocateMemoryMESA demo app using ycbcr...
add girl2.rgb which is a slightly resized girl.rgb so client texturing works
2005-02-26 04:51:47 +00:00
Dave Airlie
9bfd9582d4 bring over structs from Xorg glx.h to make Mesa glx.h the one true glx.h 2005-02-26 03:55:44 +00:00
Dave Airlie
24dcc6b6bf Add GLX_MESA_allocate_memory from Xorg glx.h 2005-02-26 03:51:17 +00:00
Ian Romanick
f3a6e4fa5b Fairly significant changes to enums.c and the way it is generated. enums.c
now contains 3 static tables.  The first table is a single, large string of
all the enum names.  The second table is an array, sorted by enum name, of
indexes to the string table and the matching enum value.  The extra string
table is used to eliminate relocs (and save space) in the compiled file.
The third table is an array, sorted by enum value, of indexes into the
second table.

The [name, enum] table contains all of the enums, but the table sorted by
enum-value does not.  This table contains one entry per enum value.  For
enum values that have multiple names (e.g., 0x84C0 has GL_TEXTURE0_ARB and
GL_TEXTURE0), only an index to the "best" name will appear in the table.
gl_enums.py gives precedence to "core" GL versions of names, followed by ARB
versions, followed by EXT versions, followed, finally, by vendor versions
(i.e., anything that doesn't fall into one of the previous categories).  By
filtering the unneeded elements from this table, not only can we guarantee
determinism in the generated tables, but we save 364 elements in the table.

The optimizations outlined above reduced the size of the stripped enums.o
(on x86) from ~80KB to ~53KB.

The internal organization of gl_enums.py was also heavily modified.
Previously enums were stored in an unsorted list as [value, name] tuples
(basically).  This list was then sorted, using a user-specified compare
function (i.e., VERY slow in most Python implementations) to generate a
table sorted by enum value.  It was then sorted again, using another
user-specified compare function, to generate a table sorted by name.

Enums are now stored in a dictionary, called enum_table, with the enum value
as the key.  Each dictionary element is a list of [name, priority] pairs.
The priority is determined as described above.  The table sorted by enum
value is generated by sorting the keys of enum_table (i.e., very fast).  The
tables sorted by name are generated by creating a list, called name_table,
of [name, enum value] pairs.  This table can then be sorted by doing
name_table.sort() (i.e., very fast).

The result is a fair amount more Python code, but execution time was reduced
from ~14 seconds to ~2 seconds.
2005-02-26 01:09:35 +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
Aapo Tahkola
ac8020ea9c Another nasty struct size bug found. 2005-02-24 13:59:56 +00:00
Brian Paul
2c6f911e10 More GL_EXT_framebuffer_object: rename some things, added device driver hooks. 2005-02-24 05:47:06 +00:00
Felix Kuehling
7b7d00ca62 Don't forget to update a heap's timestamp when a texture image is
changed. Other drivers don't need to do this because they're swapping
modified textures out of texture memory, which implies a timestamp
update.
2005-02-23 20:51:27 +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
2b1ec683d3 Put quotes around $(CC) and $(CXX) so that 'CC=cache gcc' will work. 2005-02-23 19:24:30 +00:00
Brian Paul
ba0fe1832e minor changes to aid debugging, and a new comment 2005-02-23 16:54:18 +00:00
Felix Kuehling
540b260cbd With Savage DRM version 2.3.x or later use event counters for texture
heap aging, similar to the way it's done in the i810 and i855 drivers.
This avoids idling the engine on every texture upload.
2005-02-23 16:37:27 +00:00
Brian Paul
8f5f6b3d59 Sort the enums in the Python code, instead of at runtime. (Zack Rusin) 2005-02-23 16:36:17 +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
Brian Paul
cb83f62e30 now generated with Python script 2005-02-22 15:42:30 +00:00
Brian Paul
78123bb38b generate enums.c file (Zack Rusin) 2005-02-22 15:39:46 +00:00
Aapo Tahkola
3c69df8a70 New elt buffer code should be fairly stable. 2005-02-22 05:16:42 +00:00
Vladimir Dergachev
e00b729716 Add code to autogenerate vertex shaders.
This is needed for multitexturing to work properly.
2005-02-21 06:09:30 +00:00
Dave Airlie
a2990a9d73 Add DESTDIR install target 2005-02-21 00:20:19 +00:00
Dave Airlie
dee1c795c2 add more functionality to miniglx for glitz 2005-02-20 10:46:34 +00:00
Aapo Tahkola
eb6560bf2b Adding support for front buffer mode, removing some code we dont really need and some new debugging stuff. 2005-02-20 03:01:09 +00:00
Aapo Tahkola
35bc4ac680 Minor fix to border and blend color. 2005-02-19 16:30:56 +00:00
Aapo Tahkola
ff3ce3dd96 Disabling some fallbacks as they cause misc programs not to start and adding some comments. 2005-02-19 03:04:08 +00:00
Aapo Tahkola
42896b2a18 Fix for buffer overrun caused by ALLOC_STATE not having args surrounded by parenthesis. Can you see it? HINT: Anything texture related should now work slightly better. And yes it took me several hours to find it. 2005-02-19 02:25:53 +00:00
Nicolai Haehnle
10b892af96 Print an error if idling the engine before the buffer copy fails.
Be a bit more useful about the sync message after flushing command buffers.

Add an "allmsg" debug name that enables all log messages but does not
enable syncing.
2005-02-18 22:07:20 +00:00
Michel Dänzer
9605806d81 fd.o bug #2576: Add support for ATI RN50/ES1000. (ATI Technologies Inc.) 2005-02-18 20:03:33 +00:00
Nicolai Haehnle
3f22c0966d r300RefillCurrentDmaRegion: Retry buffer acquisition only once, after
waiting for the engine to idle. There's no way for another buffer to
become free anyway once the engine is idle.
2005-02-18 18:57:38 +00:00
Nicolai Haehnle
8281cca82f Always submit command buffers, even when there are no cliprects,
so that we no longer leak DMA buffers (plus, this just might fix some
state-setting related problems, if there were any - but that's unlikely).

Update the DRM to cope with cmdbuf->nbox == 0.
2005-02-18 18:28:52 +00:00
Aapo Tahkola
4d73f1af35 We dont need to call r300EmitAOS if we arent going to draw anything(r300_get_num_verts returns 0). 2005-02-18 16:58:19 +00:00
Nicolai Haehnle
26d812ae00 Reset nr_released_bufs to 0 after the command buffer has been submitted.
Added a more verbose comment about nr_released_bufs in r300_context.h
2005-02-18 16:34:14 +00:00
Brian Paul
f448e632b6 XMesaGetDepthBuffer() returned wrong bytesPerValue (Karl Schultz) 2005-02-18 14:49:27 +00:00
Brian Paul
49f7430b12 s/0/NULL/ (Jeff Muizelaar) 2005-02-18 14:44:00 +00:00
Nicolai Haehnle
d73b929ef2 Fix: RADEON_DEBUG is a bitfield, so use & to check for flags, not == 2005-02-18 11:27:24 +00:00
Nicolai Haehnle
6f37e76272 Fixing *lots* of warning messages, especially concerning unportable
whitespace before preprocessor commands.

Please, can you try to keep the warnings down? Try running make with
make -s sometime to see just how bad an offender the current code is.
2005-02-17 22:07:32 +00:00
Nicolai Haehnle
74477b24a8 RADEON_DEBUG is a bitfield, so use & instead of ==.
Also, put the hash in preprocessor directives at the beginning of the line
to fix error messages.
2005-02-17 21:45:20 +00:00
Aapo Tahkola
78152f85e7 Switching to start_index32_packet. 2005-02-17 18:16:46 +00:00
Aapo Tahkola
002a64cc48 magic_1 handling... 2005-02-17 18:02:28 +00:00
Ben Skeggs
ca4116bfce oops. 2005-02-17 14:34:51 +00:00
Brian Paul
0846e52d46 s/0/NULL/ (Jeff Muizelaar) 2005-02-17 14:12:50 +00:00
Brian Paul
6e2fd96627 remove extern (Jeff Muizelaar) 2005-02-17 14:11:56 +00:00
Ben Skeggs
a9eb712fc9 Make immediate code do a LOAD_VBPNTR again 2005-02-17 12:37:40 +00:00
Dave Airlie
934be3266f fix some 0->NULLs 2005-02-17 11:13:59 +00:00
Vladimir Dergachev
c8af2b5a52 Cleanup formatting a little bit. 2005-02-17 06:39:09 +00:00
Brian Paul
f321f16e83 fix non-Win32 definition of GLUTAPIENTRY, remove some cruft 2005-02-16 19:52:35 +00:00
Aapo Tahkola
41d180c899 Support for idx buffers. Leaving it on by default as it doesnt seem to cause any lock ups nor other issues. Tests with one object using elts should pass. Introducing more than one object will cause indices to mix up as far as i can see. DRM update is needed for this code to work\! 2005-02-16 19:04:32 +00:00
Rune Petersen
8eeef423e9 small cleanup, remove some warnings 2005-02-16 16:52:11 +00:00
Brian Paul
1ff8f50f2f fixed problems with parse_float() (fd.o bug 2520) 2005-02-16 15:08:29 +00:00
Brian Paul
2c28dd892c s/0/NULL/ (Jeff Muizelaar) 2005-02-16 15:02:25 +00:00
reist
5c2f3d5d3a get two textures to work 2005-02-16 10:38:57 +00:00
Ben Skeggs
d588311dbb Don't enable fog. It's broken 2005-02-16 06:24:07 +00:00
Ben Skeggs
f446027656 Share routing code between immd/vb. Fix breakage of vertex programs in vb mode. 2005-02-15 19:07:35 +00:00
Dave Airlie
233d93d47e Add missing texture formats for completeness 2005-02-15 11:20:11 +00:00
Dave Airlie
70f2be9cc6 add some missing texture formats and bits from r200 docs 2005-02-15 10:44:20 +00:00
Jerome Glisse
9e5a0b8895 Added texture format table for big endian (this is a tempory hack). 2005-02-15 10:40: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
Roland Scheidegger
e82cb7852b remove accidentally commited printf for tiling support 2005-02-14 17:37:52 +00:00
Ian Romanick
4ea4589302 Simple test for GL_MESA_pack_invert. 2005-02-14 17:07:29 +00:00
Daniel Borca
a5f2dcb57b updated doc 2005-02-14 15:06:50 +00:00
Daniel Borca
72b2af6035 removed detritus 2005-02-14 15:05:24 +00:00
Daniel Borca
84396a72df separated DOS GLUT from GLX GLUT.
added a few FreeGLUT specific functions.
2005-02-14 15:04:52 +00:00
Aapo Tahkola
0340663eb7 Support for blend color(not tested), "proper line width/point size" clamps and fix for glxinfo problem. 2005-02-14 13:14:16 +00:00
Keith Whitwell
8352666a9d mesa-fix-one-bit-signed-bitfield.patch from Jeff Muizelaar 2005-02-14 09:36:00 +00:00
Dave Airlie
8d12a6d537 fix some signed vs unsigned warnings 2005-02-14 09:27:38 +00:00
Dave Airlie
fbdd7a5e74 fix signed vs unsigned comparison warnings in tnl_dd 2005-02-14 09:25:08 +00:00
Daniel Borca
aeee36a311 killed a few warnings 2005-02-14 08:19:54 +00:00
Daniel Borca
2f99f6558c added a bunch of const in the decoder 2005-02-14 08:08:35 +00:00
Daniel Borca
b6082fd236 static const' instead of const static' 2005-02-14 08:02:50 +00:00
Daniel Borca
0a13cebaa1 ProgramCallbackMesa must match the prototype 2005-02-14 08:01:59 +00:00
Eric Anholt
baa832d311 Change another usage of __AMD64__ to the standard __amd64__, and remove
__AMD64__ from the linux configs so it won't creep back in as easily.  Fixes
hang on FreeBSD on the first lock grab.
2005-02-14 06:57:27 +00:00
Eric Anholt
1718e34352 Don't forget to -L/usr/local/lib to grab expat. 2005-02-14 06:54:50 +00:00
Michel Dänzer
d5e008b84b Typo fix. 2005-02-13 18:37:36 +00:00
Rune Petersen
3271390362 initial r400 support: r400 cards are treated as RV350 for now. 2005-02-12 21:29:51 +00:00
Michel Dänzer
37cbb521d3 MMIO endianness fixes for Radeon drivers. 2005-02-12 20:37:07 +00:00
Brian Paul
2752177ade unlock mutex upon error return (Jeff Muizelaar) 2005-02-12 18:43:38 +00:00
Felix Kuehling
f640ee2f6e Fall back properly when GL_COLOR_LOGIC_OP is enabled and != GL_COPY.
Add missing per-primitive fallback for polygon stipple.
2005-02-12 16:02:30 +00:00
Felix Kuehling
25817dc26b Offset LOD bias by about 0.3 to match software rendering more closely.
Another small tweak to subtile upload (mostly cosmetic).
2005-02-12 14:37:17 +00:00
Felix Kuehling
ed9119b72a Make glean's masked clear test pass. 2005-02-12 14:35:17 +00:00
Felix Kuehling
0872b85b1e Savage3D-based chips seem so use a constant tile stride of 2048 for
vertically incomplete tiles, but only if the color depth is
32bpp. Nobody said this was supposed to be logical!
2005-02-12 14:03:05 +00:00
Ben Skeggs
6125515cec Enabled vertex buffer mode as default. 2005-02-12 11:15:55 +00:00
Keith Whitwell
cc70176446 Turn _via_fastrender_stage back on. 2005-02-11 18:25:55 +00:00
Keith Whitwell
a0c8524924 mesa-main-0-NULL.patch from Jeff Muizelaar 2005-02-11 09:34:05 +00:00
Ben Skeggs
2d10924a14 Port of r200 VB code. VB path should be as fast as the immediate path now, tuxracer should render correctly. Immediate path was left enabled. 2005-02-11 05:59:13 +00:00
Roland Scheidegger
4837ea3020 add texture micro and macro tiling to radeon/r200 driver. This can improve performance up to 15% in texture-intensive applications. Convert the driver to use the correct blit format and blit width instead of fixed blit format and blit width when uploading textures to make it work. 2005-02-10 22:36:06 +00:00
Roland Scheidegger
26d3159125 add the new RADEON_CUBIC_OFFSET/FACES state packets/registers to radeon (and r200) sanity code 2005-02-10 21:59:20 +00:00
Roland Scheidegger
b66251f76d (Andreas Stenglein) fix projected textures with swtcl, they need the w coordinate of the vertex (bugzilla #1648) 2005-02-10 18:28:44 +00:00
Brian Paul
d9468c9405 new comments, fix zoffset error test 2005-02-10 16:08:07 +00:00
Brian Paul
f901072afb lots of updates 2005-02-10 15:18:26 +00:00
Aapo Tahkola
1982a66838 Added kindly note about single buffer mode. 2005-02-10 12:40:41 +00:00
Aapo Tahkola
3f9bae90c3 Updating master copy of r300_reg.h and turning immediate mode back on 2005-02-10 11:02:55 +00:00
Keith Whitwell
b97e478fe9 mesa-tnl-0-to-NULL.patch from Jeff Muizelaar 2005-02-10 10:57:22 +00:00
Keith Whitwell
a9a4c5489e Catch no-op vertex buffers consisting only of vertices which will
also appear in a future buffer.
2005-02-10 10:55:30 +00:00
Aapo Tahkola
a85eb9c0a7 Removing some regs that are wrong and adding some comments to r300_reg.h . 2005-02-10 10:45:54 +00:00
Aapo Tahkola
dd951e6dde Support for PolygonMode. Not too far from working even though i almost gave up once already. 2005-02-10 08:56:35 +00:00
Vladimir Dergachev
d190734875 Fix copy'n'paste errors.
Print command buffer sizes during startup (TODO: remove 1 || when the driver is more mature).
2005-02-10 07:39:11 +00:00
Aapo Tahkola
4afa1d7abb Turns out unknown5 was border color. texwrap looks good now. 2005-02-10 05:11:31 +00:00
Aapo Tahkola
58010eb35c Adding support for selecting line width. Stipple patterns still cause lots of trouble. 2005-02-10 04:43:07 +00:00
Ian Romanick
816c0c932d Simple test for ARB_texture_env_crossbar functionality. It is difficult
to come up with good tests for this functionality that don't require
either ATI_texture_env_combine3 or NV_texture_env_combine4.
2005-02-09 22:16:38 +00:00
Brian Paul
4f1f5e336b glGet*(GL_FRAGMENT_PROGRAM_BINDING_NV) was returning the vertex program binding. 2005-02-09 18:46:16 +00:00
Brian Paul
a8d5b176b5 Added a test/clamp in the scale_internal_*() functions to prevent reading
a row of pixels beyond the input buffer's bounds.
FDO/Mesa bug #2510.
2005-02-09 16:18:39 +00:00
Aapo Tahkola
fe7aa08ad9 Enabled user-defined point size, enabled zbiases for rest of the primitives and fixed bad vertex number checks triggered by nurb. 2005-02-09 05:53:34 +00:00
Brian Paul
1f6735a6a5 initial support for GL_EXT_framebuffer_object 2005-02-09 03:51:11 +00:00
Brian Paul
f0bbbf66b8 implement the 'completeness' tests 2005-02-09 03:50:30 +00:00
Ian Romanick
d863424032 Generate GLX protocol for pixel single commands. 2005-02-09 03:11:23 +00:00
Felix Kuehling
799bc13da2 Fixed stride of incomplete tiles. 2005-02-09 00:45:16 +00:00
Keith Whitwell
4754fc653f SUBPIXEL fixes from Dieter 2005-02-08 20:52:02 +00:00
Vladimir Dergachev
85199453cc Remove #ifdef's around PolygonOffset function.
Print number of missing entry for texture format.
Add alpha-luminance format.
2005-02-08 20:27:09 +00:00
Ian Romanick
a91e0218a3 Correct a couple problems / omissions in the DTD. 2005-02-08 19:52:26 +00:00
Aapo Tahkola
5e4a7581df Typo.. 2005-02-08 19:29:05 +00:00
Aapo Tahkola
6a04cff065 Fix the bug and get zbias back into shape. There might still be some problems with initial zbias... 2005-02-08 19:26:59 +00:00
Michel Dänzer
3dec3c7a74 Call _mesa_ResizeBuffersMESA() in r200Viewport(), fixes incorrect rendering
in bzflag 2.0. (Alexander E. Patrakov)
2005-02-08 17:39:08 +00:00
Brian Paul
8e5f0e62dd clamp anisotropy against max value 2005-02-08 14:44:01 +00:00
Aapo Tahkola
46cde1715f BIG FAT NOTE: Theres a nasty bug somewhere thats causing vb color buffer clears and other things not to work. This bug can be triggered by extending struct r300_hw_state by two struct r300_state_atom's from its current size. Everything zbs and unk42B4 related is now covered with HAVE_ZBS and GA ifdefs. Who wants to fix it? Not i. :) 2005-02-08 07:05:25 +00:00
Adam Jackson
d084982240 Bug #2477: Make GLU/GLw/glut build properly even with -fvisibility=hidden. 2005-02-08 05:46:53 +00:00
Aapo Tahkola
4885a9eb20 Better fix to get tuxracer working. 2005-02-08 05:33:44 +00:00
Aapo Tahkola
1764b78ee9 fog + immediate mode = bad things 2005-02-08 04:46:39 +00:00
Aapo Tahkola
315afce941 Implemented checks that prevent r300 from locking up when bad number of verts are given. Also tweaked WARN_ONCE a bit to handle va-args. 2005-02-08 04:31:29 +00:00
Vladimir Dergachev
3f847b73f3 Let Polygon Offset be turned on and off. 2005-02-08 04:20:40 +00:00
Brian Paul
923b6fc4d9 just some comments 2005-02-08 04:08:56 +00:00
Brian Paul
1864c7d79a a bunch of assorted fixes 2005-02-08 03:46:37 +00:00
Brian Paul
386e997f45 plug in GL_EXT_framebuffer_object functions 2005-02-08 03:46:08 +00:00
Brian Paul
3d2e10564e removed GL_EXT_framebuffer_object tokens 2005-02-08 03:45:44 +00:00
Brian Paul
cf69e051ce added GL_EXT_framebuffer_object enums/funcs. Remove when glext.h is updated 2005-02-08 03:45:08 +00:00
Brian Paul
78e6e59477 Add new entrypoints for GL_EXT_framebuffer_object. 2005-02-08 03:44:24 +00:00
Ian Romanick
87440f531c Definitions for EXT_framebuffer_object. Just <include/> it in gl_API.xml
when ready.
2005-02-08 02:11:44 +00:00
Ian Romanick
6cfd4f7e55 Add the ability to include other XML files by using a
<include name="file"/> element as a sub-element of <OpenGLAPI>.
2005-02-08 02:11:14 +00:00
Brian Paul
463642c0be checkpoint latest work 2005-02-08 02:06:00 +00:00
Brian Paul
d1b1b37270 added missing prototype 2005-02-08 02:05:13 +00:00
Brian Paul
0d22b90540 indentation fix 2005-02-08 02:04:49 +00:00
Aapo Tahkola
27f75a863e To cut the long and boring story short, polygon offsets should now work. vb mode colorbuffer clears are still mysticly broken by offsets... Maybe we need to merge zbs and unk42B4 together? 2005-02-08 01:49:03 +00:00
Brian Paul
049290c584 improved warning message 2005-02-07 15:04:56 +00:00
Keith Whitwell
71699df7de argb8888 optimizations from via branch 2005-02-07 13:20:17 +00:00
Keith Whitwell
8d621b3bdd More texture enums (Andreas Stenglein) 2005-02-07 11:00:32 +00:00
Keith Whitwell
1f2b715988 GL_ARB_texture_rectangle enums (Andreas Stenglein) 2005-02-07 10:36:00 +00:00
Brian Paul
3deaa01c2b additional work on GL_EXT_framebuffer_object 2005-02-07 05:08:24 +00:00
Jerome Glisse
1e42244e82 Added PCI id (0x4152). 2005-02-06 12:37:23 +00:00
Felix Kuehling
66b48d6df6 Disable vertex DMA on SuperSavages. 2005-02-05 22:10:14 +00:00
Felix Kuehling
5bdf2bc6c7 - Fixed scissor rectangle not moving with the window (Xorg bug #1731).
- Flush buffered primitives before changing scissors.
- Require Savage DRM version 2.1.0, so that the broken single-cliprect
  code can finally rest in peace.
- Removed some more dead code.
2005-02-05 21:21:02 +00:00
Brian Paul
d9d972a944 added fbobject.c to sources 2005-02-05 20:00:15 +00:00
Brian Paul
ddc82eefca Some initial work on GL_EXT_framebuffer_object. 2005-02-05 19:56:45 +00:00
Jerome Glisse
2886579324 Added PCI id (0x4152). 2005-02-05 19:52:26 +00:00
Brian Paul
bb7d5f8837 Remove the Shared->TexObjectList pointer and Next field from gl_texture_object.
Was only used by two drivers to walk over all texture objects.  Can do that
via the hash table instead.
Cleaned up some comments for struct gl_texture_object.
2005-02-05 18:12:59 +00:00
Brian Paul
8c3ddf4270 add a few comments 2005-02-05 18:11:05 +00:00
Jerome Glisse
f955218bf1 Modified hw state for big endian computers. 2005-02-05 18:01:21 +00:00
Brian Paul
7aafcc86c7 remove dependency on Shared->TexObjectList 2005-02-05 17:43:33 +00:00
Brian Paul
ce657cf752 remove unneeded code 2005-02-05 17:38:13 +00:00
Brian Paul
cf899d400d removed need for Shared->TexObjectList, walk over texture hash table entries instead 2005-02-05 17:37:00 +00:00
Felix Kuehling
557dce9bc2 Fixed a typo in an assertion. (Don't understand how this ever compiled.)
Found by Andreas Stenglein.
2005-02-05 13:17:34 +00:00
Vladimir Dergachev
b64d4a27cb Warn of unknown texture formats. 2005-02-05 03:13:34 +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
Felix Kuehling
19064f818a Added an option texture_heaps that allows selecting which texture heaps
will be used. Implemented this option in the Savage driver. On my
ProSavageDDR uploads to AGP memory are about 1.5 times as fast as
uploads to card memory. On non-IGP hardware the difference may be even
bigger. Now mplayer -gl is getting really usable.
2005-02-04 00:25:41 +00:00
Felix Kuehling
cbff5db516 Made subtile upload a template. This speeds up tiled texture uploads by
about a factor 1.3.
2005-02-04 00:17:21 +00:00
Felix Kuehling
64b85b4563 Use all texture heaps in a fair way when textures need to be kicked in
order to make room for new textures. In particular this fixes texture
trashing on the first heap when the second heap is occupied by
currently unused textures (observed with Torcs and the Savage driver).

Heaps are weighted by their sizes by default but drivers can override
these and apply their own weights based on relative texture upload
speeds to the respective heaps.
2005-02-03 21:40:21 +00:00
Aapo Tahkola
9ea600ff3f Removing some trash and disabling fog fallback as it seem its causing more harm than good. Tuxracer should now work at least with vbs. Fix for vb colorbuffer clear bug is underway... 2005-02-03 19:51:57 +00:00
Aapo Tahkola
fe58074dea Changing vb code to handle inputs correctly. 2005-02-03 19:43:27 +00:00
Vladimir Dergachev
c326f9ffae Start beginning of pixel shader generator.. 2005-02-03 17:48:32 +00:00
Vladimir Dergachev
54b03eefda Forgot to increase the length. 2005-02-03 16:05:21 +00:00
Vladimir Dergachev
d26e464b6a Looks like we need at least one instruction for pixel shader. 2005-02-03 16:01:46 +00:00
Vladimir Dergachev
4c56261075 Get vertex programs supplied by the user work properly with immediate mode - vertex buffer mode worked by accident.
Fix alu_offset in SINGLE_TEXTURE_PIPELINE.
2005-02-03 15:44:06 +00:00
Vladimir Dergachev
19b260119a Since high bits can be used for flags, mask them out.
This stops arbvpwarpmesh from segfaulting and it actually works - with immediate mode rendering.
2005-02-03 06:33:44 +00:00
Vladimir Dergachev
3f0926b612 Remove redundant instructions from fixed pipelines, looks like they do not do anything, at least on my hardware. 2005-02-03 04:16:59 +00:00
Vladimir Dergachev
cb085044c9 Mark ZBIAS definitions. 2005-02-03 03:48:22 +00:00
Vladimir Dergachev
f350617c24 This was too optimistic sorry - all that register does is something weird with polygon culling. 2005-02-03 03:47:12 +00:00
Vladimir Dergachev
f46de6f23b Get Polygon offset fill to work.
Make WARN_ONCE message more informative.
2005-02-03 03:43:01 +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
Felix Kuehling
eba5b610b9 Check for heap == NULL before driSetTextureSwapCounterLocation. 2005-02-02 15:57:25 +00:00
Felix Kuehling
2eb9e67a5a Don't try to kick textures from a NULL tex heap. 2005-02-02 15:52:29 +00:00
Felix Kuehling
8b21166c14 Fixed flushing of client-side vertex buffers. 2005-02-02 14:43:03 +00:00
Felix Kuehling
1a141b9161 Fixed some debug output that was unconditionally enabled. 2005-02-02 14:42:00 +00:00
Brian Paul
6286dda286 clamp viewport against ctx->Const.MaxViewportWidth/Height instead of MAX_WIDTH/HEIGHT 2005-02-02 14:12:59 +00:00
Aapo Tahkola
1a1c49f8a6 Changed parts of r300_setup_routing to use WARN_ONCE. 2005-02-02 13:29:11 +00:00
Ian Romanick
3fec8c24ec Small refactor. Add glXFunctionIterator, which derrives from
glFunctionIterator and is used by GlxProto.  The difference between the two
iterator classes is that glXFunctionIterator skips functions that the GLX
protocol code does not care about.

Replace all the remaining occurances of glParameter::p_count_parameters and
glFunction::count_parameters with the count_parameter_list.

Add GlxProto::size_call to generate the C code to calculate 'compsize'.

These trivially modify the generated code.
2005-02-02 00:54:45 +00:00
Aapo Tahkola
6b158a7d23 Add a missing break and a reminder. 2005-02-01 23:12:36 +00:00
Aapo Tahkola
b5c90ca7d9 Implement appropriate src checks for attribs/params. 2005-02-01 22:45:11 +00:00
Aapo Tahkola
b5128c6e82 Implemented bunch of ops. 2005-02-01 19:56:52 +00:00
Aapo Tahkola
7bccfa1026 Vertex programs work now with some restrictions. I expect arbvptorus to work
correctly when normals are delivered. Please note that some programs only
start in vb mode as there is something wrong in immediate mode vb code.
2005-02-01 16:56:52 +00:00
Vladimir Dergachev
5dd4030e76 Make WARN_ONCE messages more informative. 2005-02-01 15:51:54 +00:00
Vladimir Dergachev
6d419feec7 Reduce noiseness of the driver. 2005-02-01 15:46:23 +00:00
Vladimir Dergachev
88e155e353 Get alpha in textures to work properly. 2005-02-01 15:27:36 +00:00
Vladimir Dergachev
d4697b0997 Properly set ABLEND and CBLEND registers. The older code worked, but by accident. 2005-02-01 06:55:58 +00:00
Vladimir Dergachev
4a3c6095fc Looks like we can define FIRE_VERTICES correctly. 2005-02-01 05:59:00 +00:00
Vladimir Dergachev
0ab7fb56f5 It helps to print actual values instead of random ones. 2005-02-01 05:58:27 +00:00
Ian Romanick
c2803587b6 Small refactor. Move several utility functions from glX_XML.py to
FilterGLAPISpecBase (in gl_XML.py).  When these functions are used to emit
common #define lines, the will automatically be undefined in
FilterGLAPISpecBase::printFooter if header_tag is set (i.e., the file is a
header file).

These changes do not modify the generated code.
2005-02-01 00:28:47 +00:00
Ian Romanick
ba09c19ed6 Add GlxProto::createEnumFunction and add a 'context' parameter to the
glXEnumFunction constructor.  The allows sub-classes of GlxProto to
over-ride the concrete class used for glXEnumFunction.

In addition to tracking p_count_parameters in glParameter, break the comma
separated list of parameter names into a Python list called
count_parameter_list.  It is now possible to query if a name is the name of
one of the count parameters just by comparing
param.count_parameter_list.count(n) to zero.  Eventually the remaining uses
of p_count_parameters will be replaced with uses of count_parameter_list.

Make sure that 'void *' parameters are handled correctly in
glParameter::size_string.

Add PrintGlxReqSize_h and PrintGlxReqSize_c.  These classes emit prototypes
and functions used on the server-side to determine the expected size of an
incoming GL command.
2005-02-01 00:13:04 +00:00
Adam Jackson
886280763c Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless. 2005-01-31 23:40:05 +00:00
Daniel Borca
fc4cabbfa8 makefile update (readtex, showbuffer) 2005-01-31 13:23:55 +00:00
Vladimir Dergachev
e61c8a5c63 Add magic sequence to prevent ClearBuffer from locking up.
Change Polygon.OffsetFill from fallback to warn once.
Quake demo now works, modulo texture rendering issues due to absent pixel shader pipeline.
2005-01-31 06:41:55 +00:00
Vladimir Dergachev
9c1773e505 Use SecondaryColorPtr, not ColorPtr[1] (the latter is NULL).
This fixes segfault in tuxracer-demo. It locks up after this though.
2005-01-31 02:52:59 +00:00
Vladimir Dergachev
15f108335a My bad, the old code works fine if updated to newer Mesa tree. 2005-01-30 22:16:28 +00:00
Vladimir Dergachev
0cd936c01f struct ati_fragment_shader was not defined anywhere, define it to get r300_vertexprog.c to compile. 2005-01-30 22:04:40 +00:00
Brian Paul
b55117042f fix max viewport query 2005-01-30 17:18:08 +00:00
Aapo Tahkola
29d021cd31 Fix for compiler warnings. 2005-01-30 11:12:59 +00:00
Dave Airlie
3aa69b39bf add number of passes count to ati_fragment_shader 2005-01-30 06:24:30 +00:00
Felix Kuehling
5ff53cb448 * Fixed uploading of textures of certain sizes.
* When glTexSubImageND is used, track the set of changed tiles in a
  bit vector and upload only dirty tiles later. This should improve
  the performance of dynamic light maps and gl movie player plugins.
* Renamed debug item "lru" to "tex". Indicate which levels are
  uploaded completely or partially.
2005-01-29 23:26:23 +00:00
hmarson
9ff3c49ef2 Added 0x4e54 (Thinkpad r50p) as PCI_CHIP_RV350_NP 2005-01-29 20:41:31 +00:00
Aapo Tahkola
941d6b008f Beginings of program generation. This code havent been tested nor hooked up. 2005-01-29 17:57:07 +00:00
Brian Paul
3bde211549 remove stray span.y++ 2005-01-29 17:28:45 +00:00
Brian Paul
98a9ad9241 added osmesa16 stuff 2005-01-29 13:48:43 +00:00
Brian Paul
371f576731 assorted fixes 2005-01-29 13:48:27 +00:00
Brian Paul
58f4d67703 fix initial viewport size bug 2005-01-29 13:36:15 +00:00
Brian Paul
c84cde7b0b added missing glFinish() 2005-01-29 12:57:36 +00:00
Aapo Tahkola
fbb478c946 Cleaning up. 2005-01-29 07:17:27 +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
Michal Krol
8d27148bbd move file 2005-01-28 18:39:26 +00:00
Ian Romanick
54584df8cc Properly annotate variable-length output parameters. Make sure that the
client-side code doesn't try to calculate the size of the output
parameters.  The server will tell the client how big it is.
2005-01-28 18:20:43 +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
fdb0527ddc Slightly modify the meaning of the 'handcode' attribute in a 'glx' element.
The attribute can now take one of 4 states.  "false" (the default value)
means that no handcoding is required for the function.  "client" means that
the function must be handcoded on the client-side only.  "server" means that
the function must be handcoded on the server-side only.  "true" menas that
the function must be handcoded on both the client-side and the server-side.

Version 1.14 of glX_proto_send.py accidentally contained a line of this
change.
2005-01-28 17:30:25 +00:00
Ian Romanick
1fca563232 Add an option to emit extra debug code in the generated protocol functions.
The debug version of indirect.c has proven very helpful during the
development of new client-side and server-side GLX protocol code.  This is
put here instead of in the DISPATCH and DISPATCH_RETURN macros in dispatch.c
for two reasons.

1. I only want the debug information when indirect-rendering is used.

2. Functions that require a reply from the server, some of which do not have
a return value (e.g., glFlush, glFinish, glGetLightfv, etc.), do not need
the extra glFinish call.
2005-01-28 16:51:01 +00:00
Aapo Tahkola
b365d28627 Fix wrong comment. 2005-01-28 11:59:37 +00:00
Aapo Tahkola
e451a95ecc Forgot one comment... 2005-01-28 10:08:00 +00:00
Aapo Tahkola
f856b3f10f Add basic sceleton for vertex programs + some other fixes 2005-01-28 09:57:06 +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
Aapo Tahkola
d773598224 Add vector distance operator for vertex programs. 2005-01-27 04:42:52 +00:00
Ian Romanick
5aa6dc329b The 'mode' setting of a function within an 'enum' element is now used.
Parameters to glX_proto_size.py are now used to determine whether to emit
either get-type function, set-type functions, or both.  When only get-type
functions are emitted, they can optionally alias set-type functions.  This
would be useful if, for example, the two types were in different source
files.

The real work to implement this is in SizeStubFunctionIterator class.  All
of the logic for which functions to iterate and in which order is
implemented there.
2005-01-27 01:08:48 +00:00
Ian Romanick
5b0dd89370 remove a bunch of temporary #defines, now that glext.h was updated 2005-01-26 19:19:06 +00:00
Roland Scheidegger
a205137423 (Stephane Marchesin, me) Add support for color (framebuffer) tiling to the radeon and r200 driver 2005-01-26 18:05:03 +00:00
Roland Scheidegger
7104ce0a0e new version check to allow to test for a range of ddx major versions, instead of just one major version 2005-01-26 18:02:19 +00:00
Brian Paul
914746b400 remove a bunch of temporary #defines, now that glext.h was updated 2005-01-26 14:45:38 +00:00
Roland Scheidegger
0cbc25480f replace magic number with macro constant RADEON_ZBLOCK16 2005-01-26 14:20:14 +00:00
Brian Paul
8f029f175e just comments/clean-up 2005-01-26 14:02:50 +00:00
Brian Paul
7c58a00a50 added mutex to-do comment 2005-01-26 14:01:53 +00:00
Brian Paul
d01292bc54 just fix a comment and update date 2005-01-26 14:01:28 +00:00
Daniel Borca
b07390c8fd RGB/LUMINANCE texelfetchers (float version) returned 255.0F for alpha channel, instead of 1.0F 2005-01-26 09:47:32 +00:00
Ian Romanick
38e6e09cb8 Add a glFunctionIterator class to iterate over the functions stored in a
higher-level API object.  Use this type of object to implement the
printFunctions method.  Modify other functions that iterate over the list of
functions to use this type of object.
2005-01-25 23:53:13 +00:00
Aapo Tahkola
e4d41524a2 Fixes for clamp modes. 2005-01-25 19:09:23 +00:00
Brian Paul
f106493d8b Use the _mesa_HashNextEntry() function to walk over all textures in the
hash table.
Moving toward removing the gl_texture_object's Next pointer (only used by
glide and tdfx drivers).
2005-01-25 15:16:02 +00:00
Ian Romanick
01ec76dbd5 Stupid text editor...convert wayward tabs to spaces. 2005-01-25 01:36:32 +00:00
Ian Romanick
85f0fa3761 Add a "count" attribute to "enums" elements to set the default count
used for "size" sub-elements.  In the future the "count" attribute may
be removed completely from "size" sub-elements, so gl_API.xml was also
updated.

Support was added for a (currently unused) "mode" attribute for "size"
elements.  Basically, functions are marked as either "get" or "set".  This
will be used in generating size functions for the server-side (where the
"get" functions have to know how much data to return).  It could also be
used to help generate code for src/mesa/main/get.c.
2005-01-25 01:20:11 +00:00
Ian Romanick
cb59bd44db Correctly set the name of the generating script. 2005-01-24 22:07:00 +00:00
Ian Romanick
00772ac42f Move all the code for generating "size" related functions to its own
source file.
2005-01-24 21:56:05 +00:00
Ian Romanick
ad15f1bdea Correct some of the dependencies and clean things up a bit. 2005-01-24 21:43:29 +00:00
Ian Romanick
5ff2b94630 Remove glEnum::startElement, but refactor out some of the common code from
there and glXEnum::startElement to glEnum::process_attributes.
2005-01-24 21:29:13 +00:00
Ian Romanick
0246b2a5c0 Since only one of the places that used glXFunction::command_payload_length
actually used both values, it was refactored into command_fixed_length and
command_variable_length.  glXFunction::offset_of_first_parameter was also
added.
2005-01-24 20:59:32 +00:00
Ian Romanick
7f958e9e11 Make sure that functions added to gl_API.xml that do not have any GLX
section are marked as ignored.  Also ignore any functions that don't have
assigned dispatch offsets.

Fold Adam Jackson's changes to indirect_size.c into the generator scripts so
that they don't get lost.  "DO NOT EDIT" really means "DO NOT EDIT". ;)
2005-01-24 20:08:28 +00:00
Aapo Tahkola
f9f2db5132 border_color causes lockups with vertex buffers. Disabling for now. 2005-01-24 19:26:20 +00:00
Vladimir Dergachev
d7d54423a8 Remove lots of old code that dealed with "magic" texture formats. 2005-01-24 17:09:17 +00:00
Brian Paul
5c6b391900 reenable some assertions 2005-01-24 15:41:08 +00:00
Felix Kuehling
428a5e82fc Converted the Savage texture management to use Ian's common texmem code. 2005-01-24 01:15:12 +00:00
Brian Paul
c74ffb8266 Added _mesa_HashNextEntry() function to allow walking over all entries
in a hash table.
Added _mesa_test_hash_functions() for unit testing.
Updated comments, etc.
2005-01-24 00:20:23 +00:00
Dave Airlie
72e3664996 reapply Keiths workaround for zbs emit that got dropped during
state change patches....
2005-01-23 22:09:30 +00:00
Nicolai Haehnle
0b5a5a9efb Remove unused variables from r300_context 2005-01-23 17:35:05 +00:00
Nicolai Haehnle
4ced594aa8 Fix more warnings and compilation issues. 2005-01-23 17:28:04 +00:00
Nicolai Haehnle
cb77dcf0b9 Synchronize r300_reg.h.
Fix unportable whitespace before preprocessor commands.
2005-01-23 17:05:32 +00:00
Dave Airlie
150ed2e43d add sync debugging to the radeon driver 2005-01-23 06:27:08 +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
Adam Jackson
e82d5f2be9 silence makedepend warnings about non-portable whitespace 2005-01-23 02:12:23 +00:00
Felix Kuehling
8736c228cb Fixed initialization of draw destination to front buffer on single
buffered visuals. Also don't change span draw/read buffers in
savageDDDrawBuffer. Now glean's polygon offset test works (and PASSes
with fixed point depth buffer) with single buffered visuals without
winding up in an infinite loop.
2005-01-23 01:46:14 +00:00
Felix Kuehling
3b50f00433 My last attempt to fix polygon offsets with the reversed viewport depth
range used by the savage driver by negating ctx->MRD broke polygon
offsets with software fallbacks. This one adds a REVERSE_DEPTH parameter
to t_dd_tritmp.h (defaults to 0) that allows reversing polygon offsets
for hardware rendering but not for software fallbacks. For software
fallbacks depth values are reversed after polygon offsets have been
applied by the depth span functions.
2005-01-23 01:42:01 +00:00
Keith Whitwell
36a35c5614 Determine ahead of time whether a display list will include vertices
which have to be processed in the 'loopback' path.  If so, send
all vertices that way as the transition from playback->loopback has
several problems.
2005-01-22 14:38:00 +00:00
Vladimir Dergachev
8fca9bdc35 Properly configure routing - based on advice by Keith Whitwell. 2005-01-22 03:33:10 +00:00
Felix Kuehling
f4cafc8d13 Fixed polygon offset with reversed viewport depth range. 2005-01-22 00:52:31 +00:00
Vladimir Dergachev
4ac53aed6c Properly input stencil info contributed by Wladimir. 2005-01-21 21:30:55 +00:00
Brian Paul
1060211918 fix glGetString funniness 2005-01-21 16:35:56 +00:00
Michal Krol
308fbb7b64 add getstring.c; remove arb*.h nv*.h stuff 2005-01-21 15:55:13 +00:00
Michal Krol
8346c5ee1d add slang/traverse_wrap.h 2005-01-21 15:52:17 +00:00
Michal Krol
b39665950e Handy TIntermTraverser class wrapper 2005-01-21 15:51:28 +00:00
Alan Hourihane
e51b0b1d30 silence the 'using AGP/PCI' string unless VIA_DEBUG is used. 2005-01-21 09:50:48 +00:00
Felix Kuehling
fa15f6c840 Small cleanup:
* Remove some unused (mostly empty) functions
* Added context parameter to WAIT_IDLE_EMPTY[_LOCKED] for consistency
* Added debug messages to WAIT_IDLE_EMPTY[_LOCKED]
* Don't flush empty command buffers
2005-01-21 01:39:09 +00:00
Felix Kuehling
677d1d07c4 * Added options for disabling the fast path (render stage) and vertex DMA
* Fixed disabling of the render stage
* Added debug output for per-primitive fallbacks
* Bumped driver date
2005-01-20 15:18:10 +00:00
Brian Paul
14dee36fa7 glext.h version 26 2005-01-20 15:07:42 +00:00
Felix Kuehling
edb9a165c1 Added support for ELTS to the _savage_render_stage. Requires at least
Savage DRM version 2.2.0. Otherwise the render stage is disabled.
2005-01-20 13:59:49 +00:00
Alan Hourihane
ddfa61ee19 Enclose passed macro values in brackets to ensure correct read/write span
values.
2005-01-20 13:24:08 +00:00
Brian Paul
cb3bc2c49a document new glDeleteTextures/Buffers/Programs behaviour 2005-01-20 04:03:37 +00:00
Brian Paul
ea2943efd9 Update glDeletePrograms/Buffers() so that the ID is freed immediately, like
texture objects.
2005-01-20 04:02:02 +00:00
Brian Paul
36da0459e4 Use a simple CSS style sheet. 2005-01-20 03:55:10 +00:00
Brian Paul
10378919d7 Removed gl_texture_object's DeletePending. Changed a comment. 2005-01-19 21:41:24 +00:00
Brian Paul
31fb7648fc added texobjshare.c 2005-01-19 14:52:13 +00:00
Brian Paul
4f6d9aaa9a test program for texture sharing, deleting, etc 2005-01-19 14:51:41 +00:00
Brian Paul
42fee73aad Change behaviour of glDeleteTextures as discussed on ARB list.
glDeleteTexture makes the texture ID immediately free for re-use
while the actual texture object lingers until its reference count goes
to zero (when no longer bound by any rendering context).
2005-01-19 14:50:52 +00:00
Brian Paul
140f99f81c make sure the new instruction Data pointer is set to NULL 2005-01-19 14:45:23 +00:00
Brian Paul
7948bc02ed fix a typo 2005-01-19 14:44:55 +00:00
Brian Paul
4ef0e046ec minor formatting fix 2005-01-19 14:44:41 +00:00
Keith Whitwell
2aa34ea984 Bring the texcombine fixes to the trunk. 2005-01-19 12:09:33 +00:00
Keith Whitwell
bdb5725bab Always use ARGB8888 hardware texture format when mesa specifies
MESA_FORMAT_ARGB8888.  Previously attempted to use ARGB0888 under some
circumstances, but glean failed and demos/texenv.c was also incorrect.
2005-01-19 12:06:17 +00:00
Keith Whitwell
6931087958 Remove depend on make clean 2005-01-19 11:39:23 +00:00
Keith Whitwell
520e56f232 Depend tweaks 2005-01-19 11:10:27 +00:00
Daniel Borca
c98323bd89 make sure we avoid assertion failure wrt VB->ColorPtr[1]->stride 2005-01-19 07:57:52 +00:00
Daniel Borca
9ebce91a66 glVertex* is the provoking "cmd" (that is, by the time of glVertex*, we must have all other attributes already set).
i am committing this before i forget.  however, i'm still leaving my code disabled, because the old code seems legal.
2005-01-19 07:52:49 +00:00
Daniel Borca
59c2e16e75 There is no point trying to detect SSE at all, when MESA_NO_SSE is defined. I am committing this because the current WIN32 SSE detection code crashes UnrealTournament2003. 2005-01-19 07:43:13 +00:00
Brian Paul
c47d19a1a2 minor reorg of shader files, disable building for now 2005-01-18 22:58:13 +00:00
Alan Hourihane
41db4e1be5 remove some debug 2005-01-18 21:57:48 +00:00
Alan Hourihane
95be63771a Fix tristrips (which fixes coloredTexPerf2 & coloredLitPerf2 glean tests) 2005-01-18 15:06:01 +00:00
Michal Krol
4cfd97e3a8 remove #ifndef linux, it isnt defined on Linux, where should I define it? 2005-01-18 14:21:50 +00:00
Michal Krol
c57a312978 comment out _THROW calls, dont want to compile under Linux 2005-01-18 14:19:46 +00:00
Michal Krol
fa32c92ea5 add shader/slang/slang_mesa.cpp 2005-01-18 14:17:37 +00:00
Michal Krol
a885c7a6e0 change .cc suffix to .cpp 2005-01-18 14:16:51 +00:00
Michal Krol
619f006bba add slang preprocessor C sources; add slang include directories 2005-01-18 14:02:52 +00:00
Michal Krol
955190fbad fix // comments 2005-01-18 13:58:56 +00:00
Michal Krol
092af29ea1 fix MAX_VERTEX_ATTRIBS_ARB query 2005-01-18 12:04:53 +00:00
Keith Whitwell
af72b4dd8e Fix calculation of last_count in _tnl_wrap_buffers() 2005-01-18 08:41:55 +00:00
Brian Paul
7443c2caa6 added rule for compiling C++ sources 2005-01-17 22:33:50 +00:00
Michal Krol
db99b8b29d add slang/ directory tree 2005-01-17 16:25:08 +00:00
Brian Paul
ea28a5b5b3 use FABSF(fogCoord) to fix fog calculation problem (Soju Matsumoto) 2005-01-17 16:16:35 +00:00
Brian Paul
730fabd67a fix some weirdness accidentally checked in in the past 2005-01-17 16:14:46 +00:00
Michal Krol
7d079fd780 2005-oct-19 3dlabs slang compiler, tweaked a little bit 2005-01-17 16:01:49 +00:00
Michal Krol
cc9ab78158 slang to mesa compatibility, tested only under Windows 2005-01-17 15:52:20 +00:00
Michal Krol
434f622ede add 3dlabs_shhandle interface 2005-01-17 15:47:57 +00:00
Michal Krol
0a7ea2b0c3 add [.slang] to INCDIR, fix comma in OBJECTS 2005-01-17 15:35:46 +00:00
Michal Krol
389e292a1b add src/mesa/shader/slang to INCLUDE_DIRS 2005-01-17 15:32:25 +00:00
Daniel Borca
ff39c65dee cleaned up warnings 2005-01-17 08:05:47 +00:00
Daniel Borca
714c36c120 allow more internalFormat/format combinations (i hope i got it right) 2005-01-17 08:04:39 +00:00
Daniel Borca
d98c47300a fix compilation error for fx/Mesa 2005-01-17 08:02:42 +00:00
Daniel Borca
6a432a7c50 since we've already messed up this one, let we do it further and make it look like a fire... 2005-01-17 07:48:53 +00:00
Daniel Borca
a6ddd2494a remove trailing slash from TOP definition 2005-01-17 07:47:41 +00:00
Brian Paul
0a360cfab5 silence warning 2005-01-17 01:21:03 +00:00
Brian Paul
848ff85157 clean up gl2 structs 2005-01-17 01:07:00 +00:00
Brian Paul
fc3028d2c7 silence a bunch of warnings 2005-01-17 01:02:40 +00:00
Brian Paul
6c58ddae17 fix a few warnings 2005-01-17 00:40:29 +00:00
Brian Paul
b4199a1f71 added getstring.c 2005-01-16 19:42:46 +00:00
Brian Paul
5255044c00 added a few OpenGL 2.0 tokens (temporary) 2005-01-16 19:40:15 +00:00
Brian Paul
169a723d2b _mesa_GetInteger/Float/Boolean/Doublev() are now generated with the new
get_gen.py Python script.
Moved GetString(), GetPointer(), GetError() into new getstring.c file.
2005-01-16 19:39:10 +00:00
Brian Paul
c07ec046b7 make tnl_clipspace_attr->insert field const, to silence warning 2005-01-16 17:59:50 +00:00
Aapo Tahkola
14aea4a485 This fixes it but why mipmaps still work?
It doesnt look like filter constants in r300_reg.h would define number of
levels.
2005-01-16 17:07:24 +00:00
Aapo Tahkola
781d512a0b I was wrong... 2005-01-16 16:12:05 +00:00
Aapo Tahkola
82d1421736 Looks like masking masking t->filter isnt needed anymore.
texwrap still shows some problems with clamp mode with nearest filtering.
2005-01-16 13:28:49 +00:00
Felix Kuehling
ad360a81bd Added a fast path for emitting unclipped primitives directly to a
vertex buffer. ELTS are not supported yet (missing functionality in
the DRM). You need at least Savage DRM version 2.1.3, which fixes a
bug that screwed up triangle fans and strips.

Moved the texture normalization stage to savagerender.c.
2005-01-16 01:28:26 +00:00
Vladimir Dergachev
ca710a0a7f On the way to getting stencil working. 2005-01-15 20:44:23 +00:00
Vladimir Dergachev
76de160b64 On the way to getting stencil and texture formats working.
Looks like the matter of texture formats is a lot simpler, with the wrong
display in quake explained by the fact that we are not handling texture combine modes.
2005-01-15 19:33:19 +00:00
Felix Kuehling
b5f49e6f91 Converted to use spantmp2.h. 2005-01-15 14:37:33 +00:00
Felix Kuehling
c478a09a5b Use HW_READ_LOCK and HW_READ_UNLOCK in assembler-optimized span read
functions.
2005-01-15 14:35:35 +00:00
Vladimir Dergachev
dbb3ec35a7 Use symbolic constants to describe pixel shader ALU instructions. 2005-01-15 04:17:27 +00:00
Aapo Tahkola
ffe7496ac3 Added fixes for filter modes and support for anisotropy filters.
Wrap modes would work perfectly but i messed up something when cleaning up
the code :/ Border color code is incomplete because i forgot to check how to
set border size :)
2005-01-14 21:53:00 +00:00
Alan Hourihane
afa05e68b8 Enable line stippling. 2005-01-14 16:56:52 +00:00
Keith Whitwell
4ccee80190 Fix previously un-noticed issue with flat-shaded points. 2005-01-14 15:03:00 +00:00
Alan Hourihane
faf96a157d silence a warning 2005-01-14 13:11:34 +00:00
Alan Hourihane
42cfcce8d4 Get PolygonStipple working.. (or seemingly too). It seems to do the right
things now given the demos I've used and passes glean's paths test.
2005-01-14 13:10:50 +00:00
Alan Hourihane
38595eda39 16bpp doesn't support masked clears, so fallback when they're enabled. 2005-01-14 13:02:53 +00:00
Keith Whitwell
96d375c682 Populate WriteMonoDepthSpan in 24/8 modes. 2005-01-14 13:01:21 +00:00
Daniel Borca
404273ad09 changed coding style. made `glutTimerFunc' less accurate, but far more reliable. 2005-01-14 08:50:08 +00:00
Daniel Borca
0c68589673 changed coding style. added possibility to use default timer instead of PC/HW timer. 2005-01-14 08:44:29 +00:00
Daniel Borca
aa7a27b38e changed coding style. added a NULL pointer check. 2005-01-14 08:40:43 +00:00
Daniel Borca
7da875d55f changed coding style 2005-01-14 08:37:20 +00:00
Daniel Borca
f4bff83c32 doc update 2005-01-14 08:31:50 +00:00
Vladimir Dergachev
52f5ff525b Remove redundant register.
Hook up some functions in r300Enable().
2005-01-14 06:39:14 +00:00
Vladimir Dergachev
517ac1bf25 Reduce amount of stderr output.
Switch to using R300_EASY_TX_FORMAT() macro everywhere.
2005-01-14 05:26:17 +00:00
Vladimir Dergachev
2821b05a0f Incorporate latest data from Wladimir van der Laan. 2005-01-14 04:21:55 +00:00
Vladimir Dergachev
d2001bd88f Sync with master copy. 2005-01-13 23:13:52 +00:00
Dave Airlie
f11d6d4cb4 add -DUSE_EXTERNAL_DXTN_LIB=1 so compressed textures are enabled for solo 2005-01-13 22:38:21 +00:00
Alan Hourihane
288114b9db remove some dead texture code 2005-01-13 17:53:01 +00:00
Felix Kuehling
a7ab2b2e0b Make sure DMA buffers are released in savageDestroyContext. Usually
the DRM would reclaim DMA buffers, but if one process creates and
destroys many contexts it can still run out of DMA buffers.
2005-01-13 16:02:05 +00:00
Keith Whitwell
b1d322a1e7 Fix loop for quads-as-triangles. 2005-01-13 15:58:05 +00:00
Keith Whitwell
c06f8cb9e5 Rename via_fastrender_* to avoid confusion with similar functions in
via_render.c.
2005-01-13 15:49:39 +00:00
Keith Whitwell
a0371b0b3c Simplify viaChooseVertexState slightly. 2005-01-13 14:57:34 +00:00
Keith Whitwell
d9af44f358 Remove misleading comment. 2005-01-13 14:54:44 +00:00
Keith Whitwell
edd21a6f72 Typo 2005-01-13 14:52:24 +00:00
Keith Whitwell
db19ae89f2 Emit constant colors for texunit 1 blending.
Change comments and some code to match naming used in the docs.
2005-01-13 14:38:17 +00:00
Michal Krol
436f4bbd62 add s_atifragshader.c, s_atifragshader.h 2005-01-13 14:15:36 +00:00
Michal Krol
7f3e2dac7a 3dlabs glslang frontend 2005-01-13 14:14:55 +00:00
Michal Krol
302a414b34 3dlabs glslang frontend, not complete 2005-01-13 14:14:11 +00:00
Michal Krol
01d38cdf0c cosmetic changes 2005-01-13 14:13:19 +00:00
Michal Krol
6324f73b93 implement ARB_shader_objects, not complete 2005-01-13 14:12:50 +00:00
Michal Krol
8b7cc45f3d add atifragshader.c, shaderobjects.c, shaderobjects_3dlabs.c, atifragshader.h,
shaderobjects.h, shaderobjects_3dlabs.h
2005-01-13 14:12:01 +00:00
Michal Krol
b05e75bf69 add shaderobjects_3dlabs.c 2005-01-13 14:10:37 +00:00
Michal Krol
3d52858c78 add ARB_shader_objects interfaces, shared and context state 2005-01-13 14:09:58 +00:00
Michal Krol
0e85388ba8 enable ARB_fragment/vertex_shader 2005-01-13 14:09:18 +00:00
Michal Krol
9b3752c8ab init ARB_shader_objects subsystem 2005-01-13 14:08:47 +00:00
Michal Krol
8f8534f691 add shader/shaderobjects_3dlabs.c 2005-01-13 14:08:00 +00:00
Keith Whitwell
df14522540 cut out dead texture state code 2005-01-13 13:00:23 +00:00
Alan Hourihane
5bd6a5f2df revert some makecurrent code 2005-01-13 12:03:00 +00:00
Alan Hourihane
db93e6165e Fix glean scissor test 2005-01-13 10:20:16 +00:00
Vladimir Dergachev
d4330fc322 Prevent "disabling 3D acceleration" message from printing - we do not define raster functions anyway. 2005-01-13 09:08:58 +00:00
Vladimir Dergachev
d456ef48e5 Incorporate TX_FORMAT information contributed by Wladimir van der Laan.
Attempt to use it in r300_state.c
We are still missing something and the formats do not quite work.
Perhaps something in texture management code ?
2005-01-13 09:05:31 +00:00
Alan Hourihane
3ff4eca05c As we fallback for polygon stipple on the CLE266 for now, ensure we
don't turn on the polygon stipple hardware bit.
2005-01-13 00:15:28 +00:00
Alan Hourihane
cce4d5cb70 Use the faster span read/write template for 16bpp 2005-01-12 23:16:28 +00:00
Keith Whitwell
88440d2d75 Don't special-case 16bpp for colormask register - not needed. 2005-01-12 21:55:47 +00:00
Keith Whitwell
8e5281fbe1 Simplify usage of drmHash functions and fix bug in
__driGarbageCollectDrawables which would get confused while walking
the hash values.
2005-01-12 21:04:03 +00:00
Keith Whitwell
0aca086f7a free buffer in t_vertex_c.c on context delete 2005-01-12 19:38:41 +00:00
Keith Whitwell
8e46534b3b Remove bogus write to freed memory (valgrind). 2005-01-12 19:27:49 +00:00
Alan Hourihane
118b82145a Check for deletion of currently bound context
Other minor cleanups
2005-01-12 19:24:39 +00:00
Keith Whitwell
f9b89910d1 new test to exercise context and window create/delete 2005-01-12 19:11:47 +00:00
Alan Hourihane
7ea2084513 Fixes lockups initializing AGP DMA. 2005-01-12 18:32:51 +00:00
Keith Whitwell
4676a6ab7b Expand out the N(x) macro so that tags can find functions like
drmHashFirst(), etc.
2005-01-12 18:14:42 +00:00
Alan Hourihane
2937d403db build fixes and enable agp dma 2005-01-12 17:33:09 +00:00
Keith Whitwell
708e25142b Add flag to clear texture caches after texture upload. 2005-01-12 17:20:29 +00:00
Keith Whitwell
5ba7d85fea Don't emit HC_SubA_HSPXYOS on CLE266. 2005-01-12 17:20:08 +00:00
Keith Whitwell
09ac1d1125 Allow two GL primitives to be combined to one HW primitive
if possible.
2005-01-12 13:33:27 +00:00
Alan Hourihane
26dcb88fb9 Fix multitexturing.
The multiarb test works now when disabling texunit0/1.
2005-01-12 12:45:42 +00:00
Daniel Borca
a9531eb2c5 some "safer" type-punning (gcc optimizes float moves with integer moves, anyway). 2005-01-12 09:25:37 +00:00
Brian Paul
d7b837ad4a temporary prototypes for OpenGL 2.0 2005-01-12 04:06:55 +00:00
Brian Paul
2a34e66d6a OpenGL 2.0 StencilFunc/Op/MaskSeparate functions 2005-01-12 04:01:54 +00:00
Brian Paul
a9e34c68ac Some initial work for OpenGL 2.0: glStencilFunc/Op/MaskSeparate() functions. 2005-01-12 04:01:08 +00:00
Ian Romanick
591b72b6a9 Added a couple missing proxy types. 2005-01-11 23:50:01 +00:00
Aapo Tahkola
ff04e50e2e Mipmapping and other texture filters now work.
Beaware that R300_TX_MIN_FILTER_MASK might be incorrect because i havent
been able to confirm that all filters operate correctly. Because of this its
also pretty pointless trying to get other features that use filter field to
work.

Lod bias should also work but have been unable to test it because lodbias
test doesnt work.
2005-01-11 23:34:55 +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
Alan Hourihane
5b28844dba fix a typo 2005-01-11 18:43:21 +00:00
Keith Whitwell
3bd6e3d532 Disable bogus pbuffer code (though this could be revived with a little
attention).
Correctly advertise FBConfigs with GL_BGRA rather than GL_BGR.
2005-01-11 17:12:48 +00:00
Alan Hourihane
5b5e6cc120 Fix the calculation of the alpha reference value which negates the
need for the big nasty fallback - so I've commented out that code.
2005-01-11 17:09:47 +00:00
Keith Whitwell
aac4d8857a Temporarily disable pageflipping assert. 2005-01-11 17:06:09 +00:00
Alan Hourihane
8e039bf40a uncomment 2005-01-11 16:44:18 +00:00
Alan Hourihane
f29aaf80a4 Fix ColorMask 2005-01-11 16:42:56 +00:00
Brian Paul
cdb6541634 prototype _mesa_init_ati_fragment_shader() 2005-01-11 15:56:47 +00:00
Michal Krol
43343913b9 aliasing was broken 2005-01-11 15:47:16 +00:00
Keith Whitwell
b13eaf2698 Add a big nasty fallback for AlphaTest -- seems to always be wrong
on CLE266 because Z values are written even for fragments which
fail the test.
2005-01-11 15:40:06 +00:00
Alan Hourihane
51365b2d0d fallback on polygon.stippleflag (thanks Keith) 2005-01-11 15:24:24 +00:00
Brian Paul
0275d921ac VMS updates from Jouk Jansen 2005-01-11 15:23:08 +00:00
Daniel Borca
94dd520210 applied Keith's patch for "safe" type-punning.
made IS_NEGATIVE produce a boolean (useful when xoring with other booleans).
2005-01-11 10:56:39 +00:00
Alan Hourihane
5358682aa7 Fix usage of texture units, when TEX1 is enabled, but not TEX0. 2005-01-11 09:52:10 +00:00
Vladimir Dergachev
0cb0a36d8c Get NeHe lesson08 to work. Note: it appears the filtering does not work properly. Need to find place where it is broken and put an fprintf() complaining about it. 2005-01-11 06:22:55 +00:00
Vladimir Dergachev
d5432ac584 Switch back to using immediate mode code - use of AGP space is interfering with texture management.
Ideally, r300_render is ready to be rewritten to use standard Mesa include files, but I don't think I'll get around to it.
2005-01-11 05:59:07 +00:00
Vladimir Dergachev
864137984a Move the few definitions from r300_lib.h still in use to r300_emit.h.
Rework *vb* function to not use AOS_ARRAY structure, but rather work directly with r300->state.aos.
Remove references to r300_lib.h and r300_lib.c
Remove r300_lib.[c,h].
2005-01-11 04:11:05 +00:00
Vladimir Dergachev
086ca3dffb Switch r300_state.c to use r300_fixed_pipelines.h instead of r300_lib.h.
This fixes potentially buggy memcpy()'s between potentially different structures.
2005-01-11 03:55:04 +00:00
Vladimir Dergachev
dd4837502c Copy sample pixel and vertex shaders to r300_fixed_pipelines.h 2005-01-11 03:50:04 +00:00
Brian Paul
14e98b7d7c remove a debug line 2005-01-10 23:16:49 +00:00
Brian Paul
ff53a4ee13 tweak output formattting, fixed uninitialized var error 2005-01-10 23:15:59 +00:00
Felix Kuehling
86f1439f82 Fixes to cope with the lack of AGP textures. This is all that's needed
to support PCI Savages on the Mesa side. Bumped driver date.
2005-01-10 22:49:00 +00:00
Alan Hourihane
9db66a3f9f Fallback on PolygonStipple for CLE266 hardware.
Only upload stencil configuration when a stencil buffer exists.
2005-01-10 19:44:59 +00:00
Brian Paul
eaf2b170ff Windows/ReactOS patch (Gregor Anich) 2005-01-10 16:23:21 +00:00
Keith Whitwell
574f3c7daf More changes to cope with color stride == 0 2005-01-10 14:36:25 +00:00
Keith Whitwell
a887a44b2d Fix segfault in pipes by dealing with stride == 0 case in generic_interp_extras 2005-01-10 12:30:08 +00:00
Vladimir Dergachev
8c231d2e28 Bring vertex buffer code up to date.. 2005-01-10 05:24:28 +00:00
Vladimir Dergachev
6867117b58 For some reason we need r300Flush when using textures. Perhaps the problem is
with BITBLT_MULTI call ?
2005-01-10 03:42:50 +00:00
Vladimir Dergachev
5f61c6f21f Clean up the code and make it unnecessary to issue extra calls to Setup*Shaders
in the r300_run_immediate_render function.
Bumps up glxgears fps count by about 100 points.
2005-01-10 03:22:54 +00:00
Vladimir Dergachev
8ad31013b2 Port EmitPixelShader from cmdbuf.c to SetupPixelShader in state.c. 2005-01-09 23:37:03 +00:00
Vladimir Dergachev
e9acd0ca5f Implement a more elaborate hashing scheme for texture formats. Still not perfect.
Transform EmitVertexShader in cmdbuf.c to SetupVertexShader in state.c.
The latter is only temporary and is to be rewritten to auto-generate shaders based on current GL context.
2005-01-09 22:38:53 +00:00
Brian Paul
527af7571e minor readtex fixes 2005-01-09 18:05:02 +00:00
Brian Paul
612bf1fa2e improved animation rate 2005-01-09 18:00:49 +00:00
Brian Paul
7a663b315e rotate at fixed rate, changed fire effect (Marcelo Magallon) 2005-01-09 17:52:48 +00:00
Brian Paul
a00c591511 rotate at fixed rate (Marcelo Magallon) 2005-01-09 17:50:27 +00:00
Brian Paul
a4a31c5d76 use #ifdef to test for extension 2005-01-09 17:39:36 +00:00
Brian Paul
2d84ed83c4 include readtex.h 2005-01-09 17:39:06 +00:00
Brian Paul
92eddb0fd4 better animate rate (Marcelo Magallon) 2005-01-09 17:37:50 +00:00
Brian Paul
516f9bc6e3 some new/improved rules 2005-01-09 17:26:08 +00:00
Brian Paul
575d24a5ff include readtex.h instead of readtex.c 2005-01-09 17:15:41 +00:00
Brian Paul
0fe7f406be include readtex.h instead of readtex.c (Marcello Magallon) 2005-01-09 17:06:22 +00:00
Brian Paul
b58091a336 Add #ifdefs for extension testing (Marcello Magallon) 2005-01-09 17:00:57 +00:00
Brian Paul
429efa9f00 animation rate patch (Marcello Magallon) 2005-01-09 16:52:53 +00:00
Brian Paul
1b058a06c2 rotate at a reasonable rate 2005-01-09 16:48:52 +00:00
Brian Paul
c1065ee977 compute reasonable animate rate (Marcelo Magallon) 2005-01-08 23:52:01 +00:00
Brian Paul
0261042beb fix-up rules for sphere demo, which uses readtex utility 2005-01-08 23:51:50 +00:00
Felix Kuehling
b45ce5c607 * Flush and wait in per-primitive fallback functions. Fixes flickering
stars in glplanet.
* Refactored vertex format choosing code. Improved the Savage4 version
  to choose a format suitable for DMA (size = 32bytes) whenever
  possible.
2005-01-08 23:39:19 +00:00
Felix Kuehling
e4499ed276 Added missing break; to fix infinite recursion between choose_emit_func
and emit_viewport4_bgra4_st2_st2.
2005-01-08 15:51:11 +00:00
Felix Kuehling
675b92515a Added state debugging option (SAVAGE_DEBUG=state).
Fixed: Use savageEmitChangedRegs instead of savageEmitContiguousRegs for
emitting Savage4.
2005-01-08 15:03:25 +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
Adam Jackson
ccaa15a081 Parallel build fix. Multiword variables on the target side of a : get
expanded into individual rules for each word, so parallel builds will
start multiple instances to create the server/ symlinks and fail when they
already exist.
2005-01-08 03:16:04 +00:00
Keith Whitwell
f1481aa2d7 Add t_vb_cull.c (Bernard Blackham) 2005-01-07 18:35:28 +00:00
Keith Whitwell
f0e4f5e556 And fix the obvious bugs in higher-numbered templates. 2005-01-07 16:43:39 +00:00
Keith Whitwell
ae73b3d5ed Templatize the fastpaths. 2005-01-07 16:25:40 +00:00
Keith Whitwell
fa1362241b Add some more hardcoded fastpaths. 2005-01-07 15:54:48 +00:00
Keith Whitwell
5fff0c135d Cope with the possibility that incoming vectors may have
count < VB->Count.

Remove code to deal with the (should-be) impossible situation of null
input vectors.
2005-01-07 15:27:41 +00:00
Keith Whitwell
5911d87315 Use the 'to' vector to determine the loop count. 2005-01-07 15:26:02 +00:00
Keith Whitwell
e0be62e2c5 Remove -C flags for install which aren't universally supported. 2005-01-07 15:24:59 +00:00
Felix Kuehling
85243b8120 Fixed: ptex drawing functions were overridden with standard drawing
functions if ANY_RASTER_FLAGS|ANY_FALLBACK_FLAGS were set.
2005-01-07 10:55:13 +00:00
Keith Whitwell
b3d772bd9a Add a clean target to remove generated files. 2005-01-07 10:36:14 +00:00
Keith Whitwell
5cd24d4dc2 Add a noop install target 2005-01-07 10:35:51 +00:00
Keith Whitwell
8764441b58 Improve the semantics of the 'install' target to make sure the right
file is really being installed.  Useful if you have multiple versions
of a single driver directory hanging around and want to switch between
them for testing.
2005-01-07 10:35:23 +00:00
Keith Whitwell
000dd4afe2 Add an install target 2005-01-07 10:34:13 +00:00
Keith Whitwell
1837dda4d8 Make clean in the x86 directory.
Propogate 'install' target down to dri driver directory.
2005-01-07 10:34:00 +00:00
Ian Romanick
a11659adaf Use GNU AS label aliasing, if available. This must be enabled by adding
'-DHAVE_ALIAS' to DEFINES in the config file used for building.  On the
linux-dri-x86 build, this cuts 4KB from libGL.so.  HAVE_ALIAS is not
currently enabled in any of the configs.
2005-01-07 03:41:48 +00:00
Ian Romanick
0f34f3efb8 Script to generate rough GLX protocol documentation (as might be seen in
an extension spec).  It's not perfect, and it doesn't support certain
functions that other scripts here can (e.g., pixel functions).  However,
it is a good start and has already proven useful to me.
2005-01-07 03:23:59 +00:00
Ian Romanick
a285acbbef Track the GLX protocol names for GL types. 2005-01-07 03:22:56 +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
Brian Paul
ba5ceda7e0 added GetAllFBConfigs() 2005-01-07 01:17:42 +00:00
Ian Romanick
7e3379b1a0 Revert some accidental cross-merge changes. Remove i915GetString. Migrate
a couple extensions that appeared in both device-specific card_extensions
strings to the shared one.
2005-01-07 00:48:24 +00:00
Brian Paul
71fc6a3fc9 New GetAllFBConfigs() function. Some FBConfigs weren't reported before. 2005-01-06 23:59:37 +00:00
Brian Paul
1f98ee9022 In choose_visual() we need to know if we're being called from
glXChooseVisual() or glXChooseFBConfig() so that we handle the
GLX_DOUBLEBUFFER and GLX_STEREO tokens correctly.
Added some new error checking in those functions too.
2005-01-06 21:56:16 +00:00
Aapo Tahkola
8bb717d2d5 Add radeon 9550 pci id. 2005-01-06 19:26:25 +00:00
Keith Whitwell
a61ee65910 Redraw on keypress, as apparently intended. 2005-01-06 17:12:56 +00:00
Alan Hourihane
a2db56b34b Add Intel i915GM support, and these extensions.
* GL_ARB_texture_cube_map
* GL_EXT_blend_equation_separate
* GL_ATI_blend_equation_separate
* GL_ARB_point_parameters
* GL_NV_blend_square
* GL_EXT_cull_vertex
* GL_ARB_depth_texture
* GL_SGIX_depth_texture
* GL_ARB_shadow
* GL_EXT_shadow_funcs
* GL_3DFX_texture_compression_FXT1
(Keith Whitwell, Tungsten Graphics)
2005-01-06 14:35:44 +00:00
Daniel Borca
9f149bf206 semantic in parameter names 2005-01-06 14:34:48 +00:00
Daniel Borca
d401faf877 semantic in parameter names. changed emitter function. 2005-01-06 14:09:18 +00:00
Thomas Hellström
4c1d373ce1 Small Unichrome fixes:
1. Unlock hardware before aborting and dumping DMA buffers. Otherwise display system may deadlock.
2. Fix DMA init IOCTL call that got mixed up in one of the previous commits.
3. Fix AGP command alignment
2005-01-06 13:51:37 +00:00
Daniel Borca
dd1ef7c0d7 semantic in parameter names 2005-01-06 07:46:37 +00:00
Daniel Borca
5135d37813 solved classic "char*" vs "char[]" conflict. we were mimicking a pointer variable at desired location and then we took its address. using array is more intuitive, as they give us the starting address instantly. 2005-01-06 07:45:17 +00:00
Daniel Borca
ed1fc20199 protected against elfish directives 2005-01-06 07:40:33 +00:00
Daniel Borca
9b7367154b semantic in parameter names 2005-01-06 07:38:28 +00:00
Daniel Borca
994d5cc5f4 removed detritus 2005-01-06 07:37:32 +00:00
Daniel Borca
7047cb08eb added "default" branch in `convertPalette' 2005-01-06 07:36:56 +00:00
Daniel Borca
50122c9d2d fix dstRGB factor 2005-01-06 07:35:46 +00:00
Vladimir Dergachev
e09c843c13 Turns out the kfountain.kss (as well as lesson19) had a bug - the size was set wrong. Fixed. 2005-01-06 04:39:51 +00:00
Vladimir Dergachev
91538b4432 Add texture format to get lesson19 working again. 2005-01-06 04:02:52 +00:00
Vladimir Dergachev
dbc125eede Switch to a more complicated scheme of choosing texture formats, as it looks
like the old one was prone to collisions (different value of format field was
required for same values of t->format going in).
Now use a hash for these purposes - this got kfiresaver.kss and lesson06 workingfrom the same code.
2005-01-06 03:56:18 +00:00
Ben Skeggs
7b51aa54be Added GL_POLYGON primitive. Single primitive between glBegin()/glEnd() now works. 2005-01-06 00:10:11 +00:00
Felix Kuehling
3e4d4aca77 * Fixed handling of scissors
* Only set scissor regs directly if drmMinor < 1
* Don't set texaddr to 0 when a texture unit is disabled. That would trigger
  the tightened texture state check in the DRM if the texaddr and texdesc
  registers were not emitted atomically.
2005-01-05 23:56:16 +00:00
Alan Hourihane
1e21673ea1 support 720x480 and 960x540 modes 2005-01-05 22:40:34 +00:00
Alan Hourihane
ee2761f2f3 Only try to free the front buffer when it's a pbuffer. 2005-01-05 21:49:52 +00:00
Keith Whitwell
699fc6baf9 Make the format of the fastpaths cleaner at the expense of a little
performance.

Add fastpaths for some more common vertex formats.
2005-01-05 20:56:05 +00:00
Alan Hourihane
609e54820c fix build problem 2005-01-05 20:13:04 +00:00
Keith Whitwell
99fc261c47 Improve some quad paths, gives gears a little boost. 2005-01-05 18:14:38 +00:00
Keith Whitwell
dd9666bc1d Give attributes with zero-stride a count of 1 to make it easier
to avoid transforming the same attribute multiple times.

Don't light a single normal multiple times in light_fast_rgba*
2005-01-05 18:06:05 +00:00
Keith Whitwell
30f6486276 make alloc-dma functions inline, rearrange some debug 2005-01-05 13:51:38 +00:00
Keith Whitwell
830e046972 Avoid a segfault in multiarb.c 2005-01-05 13:51:03 +00:00
Alan Hourihane
e3fe80a60f Bring VIA driver up-to-date with regard to drm_*_t changes and remove
the xf86drmVIA.[ch] files.

Bring in the IRQ handler and Ring buffer code, but ring buffer is disabled
as it is with the Xserver. It certainly locks up the CLE266.
2005-01-05 13:45:09 +00:00
Keith Whitwell
9a8a9fb01f Add a couple of hardwired fastpaths to t_vertex.c. 2005-01-05 12:58:14 +00:00
Keith Whitwell
d5b1605449 If there is only one normal, don't transform it multiple times. 2005-01-05 11:10:05 +00:00
Vladimir Dergachev
380ba2daec Reduce the amount of debug output, while still printing important messages.
Make guessing texture formats easier.
2005-01-05 04:56:23 +00:00
Vladimir Dergachev
e99f390ff6 Play a little bit with texture formats.
Get NeHe demos 06, 07 and 19 working.
2005-01-05 00:18:46 +00:00
Vladimir Dergachev
065f725672 Sync with master copy. 2005-01-04 22:52:53 +00:00
Vladimir Dergachev
6b185aaedf Port code from r200 that implements color blending. Seems to work.
This can be tested with lesson19 from NeHe.
This has also shown that the alpha code does not work - we pick up a red tint
for transparent pixels somewhere.
2005-01-04 20:25:11 +00:00
Vladimir Dergachev
55ee1daaf9 Unify rendering of textured and non-textured primitives. 2005-01-04 19:15:37 +00:00
Vladimir Dergachev
638faa92fc Major code restructuring:
* move proven code into the r300_state.c
  * update ClearBuffer to cope with more dynamic state
  * cleanup !
2005-01-04 18:59:47 +00:00
Brian Paul
85edffd5ff added GLX_NV_float_buffer 2005-01-04 14:48:14 +00:00
Brian Paul
932dee87e3 use HIDDEN macro to export fewer symbols (bug 2210) 2005-01-04 14:33:47 +00:00
Brian Paul
bdbdab837e directfb changes (Claudio Ciccani) 2005-01-04 14:19:25 +00:00
Keith Whitwell
6650264802 Add GL_EXT_fog_coord 2005-01-04 12:57:02 +00:00
Keith Whitwell
31c25f2edc Add GL_EXT_secondary_color 2005-01-04 12:56:17 +00:00
Keith Whitwell
e024cae14b Turn specular lighting state on/off appropriately. 2005-01-04 12:53:41 +00:00
Keith Whitwell
b6ab7a1bf1 Change to use the t_vertex.c mechanisms for building vertices,
including Felix's ptex code.

Re-enable some assembly for performance.
2005-01-04 12:18:05 +00:00
Brian Paul
f72e4424d9 Use the GLX 1.3 pbuffer/fbconfig functions in preference to the SGIX ones.
Added more functions to pbutil.[ch] to better isolate API differences.
2005-01-04 00:58:29 +00:00
Felix Kuehling
e3748eb19b Added support for floating point depth buffers on Savage4-based
hardware. By also reversing the depth range this can compensate the loss
of accuracy of far objects caused by the projective transformation.
Software fallbacks work but are slightly slower since floats in a custom
(non IEEE) format have to be encoded and decoded. I havn't done anything
about polygon offsets yet. There doesn't seem to be an easy way do get
it right except making the offset unit as big as the lowest resolution
of depth values. For now float depth is disabled by default but can be
enabled through driconf (though I have seen only positive effects so
far).
2005-01-03 22:24:44 +00:00
Felix Kuehling
87889aeab4 Added a boolean option for a floating-point depth buffer. 2005-01-03 22:15:41 +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
Brian Paul
dd1a817c50 latest updates 2005-01-03 15:55:51 +00:00
Vladimir Dergachev
a5039af357 Add structs describing vertex and pixel shader state to r300_state.
Take apart program_pipeline() and move it into appropriate pieces within the driver.
Test the framework on run_flat_render()
2005-01-03 15:45:10 +00:00
Brian Paul
8e73b14228 bump version to 6.3, etc. 2005-01-03 15:36:27 +00:00
Brian Paul
81ca616e7e DirectFB driver (Claudio Ciccani) 2005-01-03 15:35:00 +00:00
Brian Paul
6563c16e38 updates from Jouk 2005-01-03 15:01:26 +00:00
Vladimir Dergachev
25faa2d56e Turns out I left flat primitives in vertex buffer mode. Switch them back to immediate which works correctly.. 2005-01-03 06:53:38 +00:00
Vladimir Dergachev
63473a8e76 Enable code to compute other constants that were used by R200 code.
Add fprintf to print these constants.
Correct t->size computation, so it works now.
2005-01-03 06:48:50 +00:00
Vladimir Dergachev
2fc9351ee7 Port texture allocation code from R200.
Hook it up, so lesson06 displays red colored textures.
2005-01-03 05:44:20 +00:00
Vladimir Dergachev
63fd67e561 Add texture units registers 2005-01-02 21:53:53 +00:00
Vladimir Dergachev
f50a1964d1 Cleanup !
I can not trigger any lockups now..
2005-01-02 06:16:44 +00:00
Vladimir Dergachev
d6be8dd651 I think I fixed the lockups issue. 2005-01-02 05:57:15 +00:00
Vladimir Dergachev
9a04b25c60 Get textures to work with NeHe lesson06.
The code is still disabled since we are displaying random image data instead of actual texture and because I had to put a sleep(1) in lesson06 drawing loop to prevent lockups.
2005-01-02 04:46:25 +00:00
Adam Jackson
3c80f5c56b linux-dri-x86 build fix from Andreas Stenglein. 2005-01-02 03:36:53 +00:00
Felix Kuehling
7a231da442 Improved the performance of software fallbacks by not waiting for idle
in every single span function. Instead flush and wait in the
SpanRenderStart hook and in wrappers around _swrast_Copy/Draw/ReadPixels.
Misc. cleanups in savagespan.c while I'm there.
2005-01-02 01:22:10 +00:00
Felix Kuehling
1067ce0cea Removed all direct hardware access (MMIO, BCI) from the Savage DRI
driver. It uses the new DRM version 2.0.x now, which has just been
committed to DRM CVS.
2005-01-01 20:40:14 +00:00
Felix Kuehling
467d64a177 Use DRM headers from $(DRM_SOURCE_PATH)/shared-core instead of .../shared. 2005-01-01 20:33:45 +00:00
Vladimir Dergachev
404d925b58 Add a convenience function to issue CP delays. 2005-01-01 18:41:43 +00:00
1993 changed files with 350165 additions and 242938 deletions

279
Makefile
View File

@@ -28,12 +28,18 @@ realclean:
-rm -f `find . -name \*.o`
-rm -f `find . -name \*.a`
-rm -f `find . -name \*.so`
-rm -f `find . -name depend`
install:
@echo "Installing"
$(TOP)/bin/installmesa
@for dir in $(SUBDIRS) ; do \
(cd $$dir ; $(MAKE) install) || exit 1 ; \
done
# DirectFBGL module installation
linux-directfb-install:
cd src/mesa/drivers/directfb && $(MAKE) install
# If there's no current configuration file
$(TOP)/configs/current:
@@ -50,13 +56,17 @@ $(TOP)/configs/current:
# Rules to set/install a specific build configuration
aix \
aix-64 \
aix-64-static \
aix-gcc \
aix-static \
beos \
darwin \
darwin-static \
darwin-static-x86ppc \
darwin-x86ppc \
freebsd \
freebsd-dri \
freebsd-dri-amd64 \
freebsd-dri-x86 \
hpux10 \
hpux10-gcc \
@@ -66,6 +76,8 @@ hpux11-32-static \
hpux11-32-static-nothreads \
hpux11-64 \
hpux11-64-static \
hpux11-ia64 \
hpux11-ia64-static \
hpux9 \
hpux9-gcc \
irix6-64 \
@@ -78,13 +90,20 @@ linux \
linux-alpha \
linux-alpha-static \
linux-debug \
linux-directfb \
linux-dri \
linux-dri-x86 \
linux-dri-x86-64 \
linux-dri-ppc \
linux-dri-xcb \
linux-indirect \
linux-fbdev \
linux-glide \
linux-ia64-icc \
linux-ia64-icc-static \
linux-icc \
linux-icc-static \
linux-osmesa \
linux-osmesa16 \
linux-osmesa16-static \
linux-osmesa32 \
@@ -100,50 +119,61 @@ linux-ultrasparc \
linux-tcc \
linux-x86 \
linux-x86-debug \
linux-x86-32 \
linux-x86-64 \
linux-x86-64-debug \
linux-x86-64-static \
linux-x86-glide \
linux-x86-static \
netbsd \
openbsd \
osf1 \
osf1-static \
solaris-x86 \
solaris-x86-gcc \
solaris-x86-gcc-static \
sunos4 \
sunos4-gcc \
sunos4-static \
sunos5 \
sunos5-gcc \
sunos5-64-gcc \
sunos5-smp \
sunos5-v8 \
sunos5-v8-static \
sunos5-v9 \
sunos5-v9-static \
ultrix-gcc:
@ if [ -e configs/current ] ; then \
echo "Please run 'make realclean' before changing configs" ; \
exit 1 ; \
fi
(cd configs && rm -f current && ln -s $@ current)
$(MAKE) default
# Rules for making release tarballs
DIRECTORY = Mesa-6.2
LIB_NAME = MesaLib-6.2
DEMO_NAME = MesaDemos-6.2
DIRECTORY = Mesa-6.5.2
LIB_NAME = MesaLib-6.5.2
DEMO_NAME = MesaDemos-6.5.2
GLUT_NAME = MesaGLUT-6.5.2
LIB_FILES = \
MAIN_FILES = \
$(DIRECTORY)/Makefile* \
$(DIRECTORY)/descrip.mms \
$(DIRECTORY)/mms-config. \
$(DIRECTORY)/Mesa.dsw \
$(DIRECTORY)/bin/mklib \
$(DIRECTORY)/bin/installmesa \
$(DIRECTORY)/bin/minstall \
$(DIRECTORY)/configs/[a-z]* \
$(DIRECTORY)/docs/*.html \
$(DIRECTORY)/docs/COPYING \
$(DIRECTORY)/docs/INSTALL.GNU \
$(DIRECTORY)/docs/README.* \
$(DIRECTORY)/docs/RELNOTES* \
$(DIRECTORY)/docs/VERSIONS \
$(DIRECTORY)/docs/*.spec \
$(DIRECTORY)/include/GL/internal/glcore.h \
$(DIRECTORY)/include/GL/dmesa.h \
$(DIRECTORY)/include/GL/amesa.h \
$(DIRECTORY)/include/GL/dmesa.h \
$(DIRECTORY)/include/GL/fxmesa.h \
$(DIRECTORY)/include/GL/ggimesa.h \
$(DIRECTORY)/include/GL/gl.h \
@@ -154,6 +184,7 @@ LIB_FILES = \
$(DIRECTORY)/include/GL/glx.h \
$(DIRECTORY)/include/GL/glxext.h \
$(DIRECTORY)/include/GL/glx_mangle.h \
$(DIRECTORY)/include/GL/glfbdev.h \
$(DIRECTORY)/include/GL/mesa_wgl.h \
$(DIRECTORY)/include/GL/mglmesa.h \
$(DIRECTORY)/include/GL/osmesa.h \
@@ -164,6 +195,7 @@ LIB_FILES = \
$(DIRECTORY)/include/GL/xmesa.h \
$(DIRECTORY)/include/GL/xmesa_x.h \
$(DIRECTORY)/include/GL/xmesa_xf86.h \
$(DIRECTORY)/include/GLView.h \
$(DIRECTORY)/src/Makefile \
$(DIRECTORY)/src/descrip.mms \
$(DIRECTORY)/src/mesa/Makefile* \
@@ -171,29 +203,36 @@ LIB_FILES = \
$(DIRECTORY)/src/mesa/descrip.mms \
$(DIRECTORY)/src/mesa/depend \
$(DIRECTORY)/src/mesa/main/*.[chS] \
$(DIRECTORY)/src/mesa/main/main.dsp \
$(DIRECTORY)/src/mesa/main/descrip.mms \
$(DIRECTORY)/src/mesa/main/sources \
$(DIRECTORY)/src/mesa/glapi/*.[chS] \
$(DIRECTORY)/src/mesa/glapi/glapi.dsp \
$(DIRECTORY)/src/mesa/glapi/descrip.mms \
$(DIRECTORY)/src/mesa/glapi/sources \
$(DIRECTORY)/src/mesa/array_cache/*.[ch] \
$(DIRECTORY)/src/mesa/array_cache/array_cache.dsp \
$(DIRECTORY)/src/mesa/array_cache/descrip.mms \
$(DIRECTORY)/src/mesa/array_cache/sources \
$(DIRECTORY)/src/mesa/math/*.[ch] \
$(DIRECTORY)/src/mesa/math/math.dsp \
$(DIRECTORY)/src/mesa/math/descrip.mms \
$(DIRECTORY)/src/mesa/math/sources \
$(DIRECTORY)/src/mesa/shader/*.[ch] \
$(DIRECTORY)/src/mesa/shader/shader.dsp \
$(DIRECTORY)/src/mesa/shader/descrip.mms \
$(DIRECTORY)/src/mesa/shader/sources \
$(DIRECTORY)/src/mesa/shader/grammar/*.[ch] \
$(DIRECTORY)/src/mesa/shader/grammar/descrip.mms \
$(DIRECTORY)/src/mesa/shader/grammar/sources \
$(DIRECTORY)/src/mesa/shader/slang/*.[ch] \
$(DIRECTORY)/src/mesa/shader/slang/descrip.mms \
$(DIRECTORY)/src/mesa/shader/slang/sources \
$(DIRECTORY)/src/mesa/shader/slang/library/*.[ch] \
$(DIRECTORY)/src/mesa/swrast/*.[ch] \
$(DIRECTORY)/src/mesa/swrast/swrast.dsp \
$(DIRECTORY)/src/mesa/swrast/descrip.mms \
$(DIRECTORY)/src/mesa/swrast/sources \
$(DIRECTORY)/src/mesa/swrast_setup/*.[ch] \
$(DIRECTORY)/src/mesa/swrast_setup/swrast_setup.dsp \
$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms \
$(DIRECTORY)/src/mesa/swrast_setup/sources \
$(DIRECTORY)/src/mesa/tnl/*.[chS] \
$(DIRECTORY)/src/mesa/tnl/tnl.dsp \
$(DIRECTORY)/src/mesa/tnl/descrip.mms \
$(DIRECTORY)/src/mesa/tnl/sources \
$(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm \
@@ -201,11 +240,12 @@ LIB_FILES = \
$(DIRECTORY)/src/mesa/drivers/beos/Makefile \
$(DIRECTORY)/src/mesa/drivers/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/common/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/common/sources \
$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/directfb/Makefile \
$(DIRECTORY)/src/mesa/drivers/dos/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c \
$(DIRECTORY)/src/mesa/drivers/glide/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/glide/*.def \
$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c \
@@ -216,26 +256,62 @@ LIB_FILES = \
$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win \
$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.dsp \
$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/svga/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.def \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.dsp \
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/x11/sources \
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
$(DIRECTORY)/src/mesa/x86/Makefile \
$(DIRECTORY)/src/mesa/x86/*.[ch] \
$(DIRECTORY)/src/mesa/x86/*.S \
$(DIRECTORY)/src/mesa/x86/rtasm/*.[ch] \
$(DIRECTORY)/src/mesa/x86-64/*.[chS] \
$(DIRECTORY)/src/mesa/x86-64/Makefile \
$(DIRECTORY)/progs/Makefile \
$(DIRECTORY)/progs/util/README \
$(DIRECTORY)/progs/util/*.[ch] \
$(DIRECTORY)/progs/util/sampleMakefile \
$(DIRECTORY)/vms/analyze_map.com \
$(DIRECTORY)/vms/xlib.opt \
$(DIRECTORY)/vms/xlib_share.opt \
$(DIRECTORY)/windows/VC6/mesa/gdi/gdi.dsp \
$(DIRECTORY)/windows/VC6/mesa/glu/*.txt \
$(DIRECTORY)/windows/VC6/mesa/glu/glu.dsp \
$(DIRECTORY)/windows/VC6/mesa/mesa.dsw \
$(DIRECTORY)/windows/VC6/mesa/mesa/mesa.dsp \
$(DIRECTORY)/windows/VC6/mesa/osmesa/osmesa.dsp \
$(DIRECTORY)/windows/VC7/mesa/gdi/gdi.vcproj \
$(DIRECTORY)/windows/VC7/mesa/glu/glu.vcproj \
$(DIRECTORY)/windows/VC7/mesa/mesa.sln \
$(DIRECTORY)/windows/VC7/mesa/mesa/mesa.vcproj \
$(DIRECTORY)/windows/VC7/mesa/osmesa/osmesa.vcproj
DRI_FILES = \
$(DIRECTORY)/include/GL/internal/dri_interface.h \
$(DIRECTORY)/include/GL/internal/sarea.h \
$(DIRECTORY)/src/glx/Makefile \
$(DIRECTORY)/src/glx/x11/Makefile \
$(DIRECTORY)/src/glx/x11/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.po \
$(DIRECTORY)/src/mesa/drivers/dri/*/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
SGI_GLU_FILES = \
$(DIRECTORY)/src/glu/Makefile \
$(DIRECTORY)/src/glu/descrip.mms \
$(DIRECTORY)/src/glu/sgi/Makefile \
$(DIRECTORY)/src/glu/sgi/Makefile.win \
$(DIRECTORY)/src/glu/sgi/Makefile.DJ \
$(DIRECTORY)/src/glu/sgi/cc*.txt \
$(DIRECTORY)/src/glu/sgi/glu.def \
$(DIRECTORY)/src/glu/sgi/glu.dsp \
$(DIRECTORY)/src/glu/sgi/dummy.cc \
$(DIRECTORY)/src/glu/sgi/descrip.mms \
$(DIRECTORY)/src/glu/sgi/mesaglu.opt \
@@ -249,45 +325,24 @@ LIB_FILES = \
$(DIRECTORY)/src/glu/sgi/libtess/README \
$(DIRECTORY)/src/glu/sgi/libtess/alg-outline \
$(DIRECTORY)/src/glu/sgi/libtess/*.[ch] \
$(DIRECTORY)/src/glu/sgi/libutil/*.[ch] \
$(DIRECTORY)/src/glu/mesa/README[12] \
$(DIRECTORY)/src/glu/mesa/Makefile* \
$(DIRECTORY)/src/glu/mesa/descrip.mms \
$(DIRECTORY)/src/glu/mesa/mms_depend \
$(DIRECTORY)/src/glu/mesa/*.def \
$(DIRECTORY)/src/glu/mesa/depend \
$(DIRECTORY)/src/glu/mesa/*.[ch] \
$(DIRECTORY)/src/glw/*.[ch] \
$(DIRECTORY)/src/glw/Makefile* \
$(DIRECTORY)/src/glw/README \
$(DIRECTORY)/src/glw/depend \
$(DIRECTORY)/progs/Makefile \
$(DIRECTORY)/progs/util/README \
$(DIRECTORY)/progs/util/*.[ch] \
$(DIRECTORY)/progs/util/sampleMakefile \
$(DIRECTORY)/vms/analyze_map.com \
$(DIRECTORY)/vms/xlib.opt \
$(DIRECTORY)/vms/xlib_share.opt
$(DIRECTORY)/src/glu/sgi/libutil/*.[ch]
MESA_GLU_FILES = \
$(DIRECTORY)/src/glu/mesa/README[12] \
$(DIRECTORY)/src/glu/mesa/Makefile* \
$(DIRECTORY)/src/glu/mesa/descrip.mms \
$(DIRECTORY)/src/glu/mesa/mms_depend \
$(DIRECTORY)/src/glu/mesa/*.def \
$(DIRECTORY)/src/glu/mesa/depend \
$(DIRECTORY)/src/glu/mesa/*.[ch]
DEMO_FILES = \
$(DIRECTORY)/include/GL/glut.h \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
$(DIRECTORY)/src/glut/glx/glut.dsp \
$(DIRECTORY)/src/glut/glx/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.cpp \
$(DIRECTORY)/src/glut/beos/Makefile \
$(DIRECTORY)/src/glut/dos/*.[ch] \
$(DIRECTORY)/src/glut/dos/Makefile.DJ \
$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
$(DIRECTORY)/src/glut/ggi/*.[ch] \
$(DIRECTORY)/src/glut/ggi/Makefile \
GLW_FILES = \
$(DIRECTORY)/src/glw/*.[ch] \
$(DIRECTORY)/src/glw/Makefile* \
$(DIRECTORY)/src/glw/README \
$(DIRECTORY)/src/glw/depend
DEMO_FILES = \
$(DIRECTORY)/progs/beos/*.cpp \
$(DIRECTORY)/progs/beos/Makefile \
$(DIRECTORY)/progs/images/*.rgb \
@@ -298,8 +353,8 @@ DEMO_FILES = \
$(DIRECTORY)/progs/demos/*.cxx \
$(DIRECTORY)/progs/demos/*.dat \
$(DIRECTORY)/progs/demos/README \
$(DIRECTORY)/progs/demos/Windows/*.dsp \
$(DIRECTORY)/progs/demos/Windows/*.dsw \
$(DIRECTORY)/progs/osdemos/Makefile \
$(DIRECTORY)/progs/osdemos/*.c \
$(DIRECTORY)/progs/xdemos/Makefile* \
$(DIRECTORY)/progs/xdemos/descrip.mms \
$(DIRECTORY)/progs/xdemos/*.[chf] \
@@ -312,68 +367,113 @@ DEMO_FILES = \
$(DIRECTORY)/progs/windml/Makefile.ugl \
$(DIRECTORY)/progs/windml/*.c \
$(DIRECTORY)/progs/windml/*.bmp \
$(DIRECTORY)/progs/ggi/*.c
$(DIRECTORY)/progs/ggi/*.c \
$(DIRECTORY)/windows/VC6/progs/demos/*.dsp \
$(DIRECTORY)/windows/VC6/progs/progs.dsw \
$(DIRECTORY)/windows/VC7/progs/demos/*.vcproj \
$(DIRECTORY)/windows/VC7/progs/progs.sln
GLUT_FILES = \
$(DIRECTORY)/include/GL/glut.h \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
$(DIRECTORY)/src/glut/glx/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.cpp \
$(DIRECTORY)/src/glut/beos/Makefile \
$(DIRECTORY)/src/glut/dos/*.[ch] \
$(DIRECTORY)/src/glut/dos/Makefile.DJ \
$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
$(DIRECTORY)/src/glut/ggi/*.[ch] \
$(DIRECTORY)/src/glut/ggi/Makefile \
$(DIRECTORY)/src/glut/fbdev/Makefile \
$(DIRECTORY)/src/glut/fbdev/*[ch] \
$(DIRECTORY)/src/glut/mini/*[ch] \
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj
DEPEND_FILES = \
$(TOP)/src/mesa/depend \
$(TOP)/src/glx/x11/depend \
$(TOP)/src/glw/depend \
$(TOP)/src/glut/glx/depend \
$(TOP)/src/glu/sgi/depend
DRI_FILES = \
$(DIRECTORY)/src/glx/Makefile \
$(DIRECTORY)/src/glx/mini/*.[ch] \
$(DIRECTORY)/src/glx/mini/example.miniglx.conf \
$(DIRECTORY)/src/glx/mini/NOTES \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/dri_client/imports/*.h \
$(DIRECTORY)/src/mesa/drivers/dri/*/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/*/depend \
$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
LIB_FILES = $(MAIN_FILES) $(DRI_FILES) $(SGI_GLU_FILES) $(GLW_FILES)
# Everything for new a Mesa release:
tarballs: lib_gz demo_gz lib_bz2 demo_bz2 lib_zip demo_zip md5
tarballs: rm_depend lib_gz demo_gz glut_gz lib_bz2 demo_bz2 glut_bz2 lib_zip demo_zip glut_zip md5
rm_depend:
@for dep in $(DEPEND_FILES) ; do \
rm -f $$dep ; \
touch $$dep ; \
done
lib_gz:
rm -f configs/current ; \
cd .. ; \
tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
gzip $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.gz $(DIRECTORY)
demo_gz:
cd .. ; \
tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
gzip $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.gz $(DIRECTORY)
glut_gz:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
gzip $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.gz $(DIRECTORY)
lib_bz2:
rm -f configs/current ; \
cd .. ; \
tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
bzip2 $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.bz2 $(DIRECTORY)
demo_bz2:
cd .. ; \
tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
bzip2 $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.bz2 $(DIRECTORY)
glut_bz2:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
bzip2 $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.bz2 $(DIRECTORY)
lib_zip:
rm -f configs/current ; \
-rm $(LIB_NAME).zip ; \
rm -f $(LIB_NAME).zip ; \
cd .. ; \
zip -r $(LIB_NAME).zip $(LIB_FILES) ; \
zip -qr $(LIB_NAME).zip $(LIB_FILES) ; \
mv $(LIB_NAME).zip $(DIRECTORY)
demo_zip:
-rm $(DEMO_NAME).zip ; \
rm -f $(DEMO_NAME).zip ; \
cd .. ; \
zip -r $(DEMO_NAME).zip $(DEMO_FILES) ; \
zip -qr $(DEMO_NAME).zip $(DEMO_FILES) ; \
mv $(DEMO_NAME).zip $(DIRECTORY)
glut_zip:
rm -f $(GLUT_NAME).zip ; \
cd .. ; \
zip -qr $(GLUT_NAME).zip $(GLUT_FILES) ; \
mv $(GLUT_NAME).zip $(DIRECTORY)
md5:
@-md5sum $(LIB_NAME).tar.gz
@-md5sum $(LIB_NAME).tar.bz2
@@ -381,3 +481,6 @@ md5:
@-md5sum $(DEMO_NAME).tar.gz
@-md5sum $(DEMO_NAME).tar.bz2
@-md5sum $(DEMO_NAME).zip
@-md5sum $(GLUT_NAME).tar.gz
@-md5sum $(GLUT_NAME).tar.bz2
@-md5sum $(GLUT_NAME).zip

View File

@@ -20,9 +20,9 @@
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
# DOS/DJGPP makefile v1.6 for Mesa
# DOS/DJGPP makefile for Mesa
#
# Copyright (C) 2002 - Daniel Borca
# Author: Daniel Borca
# Email : dborca@users.sourceforge.net
# Web : http://www.geocities.com/dborca
@@ -31,11 +31,6 @@
# Available options:
#
# Environment variables:
# CPU optimize for the given processor.
# default = pentium
# GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++)
# or `mesa'.
# default = mesa
# GLIDE path to Glide3 SDK; used with FX.
# default = $(TOP)/glide3
# FX=1 build for 3dfx Glide3. Note that this disables
@@ -59,12 +54,8 @@
.PHONY : all libgl libglu libglut clean realclean
CPU ?= pentium
GLU ?= mesa
CFLAGS = -Wall -W -pedantic
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
CFLAGS += -O2 -ffast-math
export CFLAGS
@@ -79,7 +70,7 @@ all: libgl libglu libglut
libgl: lib
$(MAKE) -f Makefile.DJ -C src/mesa
libglu: lib
$(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
$(MAKE) -f Makefile.DJ -C src/glu/sgi
libglut: lib
$(MAKE) -f Makefile.DJ -C src/glut/dos

View File

@@ -31,8 +31,6 @@
# Available options:
#
# Environment variables:
# CPU optimize for the given processor.
# default = pentium
# GLIDE path to Glide3 SDK; used with FX.
# default = $(TOP)/glide3
# FX=1 build for 3dfx Glide3. Note that this disables
@@ -57,8 +55,6 @@
.PHONY : all libgl clean realclean
CPU ?= pentium
ifeq ($(ICD),1)
# when -std=c99 mingw will not define WIN32
CFLAGS = -Wall -W -Werror
@@ -66,7 +62,7 @@ else
# I love c89
CFLAGS = -Wall -W -pedantic
endif
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
CFLAGS += -O2 -ffast-math
export CFLAGS

453
Makefile.orig Normal file
View File

@@ -0,0 +1,453 @@
# Top-level Mesa makefile
TOP = .
SUBDIRS = src progs
default: $(TOP)/configs/current
@for dir in $(SUBDIRS) ; do \
(cd $$dir ; $(MAKE)) || exit 1 ; \
done
doxygen:
(cd doxygen ; make) ; \
clean:
@for dir in $(SUBDIRS) ; do \
(cd $$dir ; $(MAKE) clean) ; \
done
realclean:
touch $(TOP)/configs/current
$(MAKE) clean
-rm -rf lib*
-rm -f $(TOP)/configs/current
-rm -f `find . -name \*.o`
-rm -f `find . -name \*.a`
-rm -f `find . -name \*.so`
-rm -f `find . -name depend`
install:
@echo "Installing"
$(TOP)/bin/installmesa $(DESTDIR)
# DirectFBGL module installation
linux-directfb-install:
cd src/mesa/drivers/directfb && $(MAKE) install
# If there's no current configuration file
$(TOP)/configs/current:
@echo
@echo
@echo "Please choose a configuration from the following list:"
@ls -1 $(TOP)/configs | grep -v "current\|default\|CVS"
@echo
@echo "Then type 'make <config>' (ex: 'make linux-x86')"
@echo "(ignore the following error message)"
@exit 1
# Rules to set/install a specific build configuration
aix \
aix-64 \
aix-gcc \
aix-static \
beos \
darwin \
darwin-static \
freebsd \
freebsd-dri \
freebsd-dri-amd64 \
freebsd-dri-x86 \
hpux10 \
hpux10-gcc \
hpux10-static \
hpux11-32 \
hpux11-32-static \
hpux11-32-static-nothreads \
hpux11-64 \
hpux11-64-static \
hpux9 \
hpux9-gcc \
irix6-64 \
irix6-64-static \
irix6-n32 \
irix6-n32-static \
irix6-o32 \
irix6-o32-static \
linux \
linux-alpha \
linux-alpha-static \
linux-debug \
linux-directfb \
linux-dri \
linux-dri-x86 \
linux-dri-x86-64 \
linux-dri-ppc \
linux-dri-xcb \
linux-indirect \
linux-fbdev \
linux-glide \
linux-icc \
linux-icc-static \
linux-osmesa16 \
linux-osmesa16-static \
linux-osmesa32 \
linux-ppc \
linux-ppc-static \
linux-solo \
linux-solo-x86 \
linux-solo-ia64 \
linux-sparc \
linux-sparc5 \
linux-static \
linux-ultrasparc \
linux-tcc \
linux-x86 \
linux-x86-debug \
linux-x86-32 \
linux-x86-64 \
linux-x86-64-debug \
linux-x86-64-static \
linux-x86-glide \
linux-x86-static \
netbsd \
openbsd \
osf1 \
solaris-x86 \
solaris-x86-gcc \
sunos4 \
sunos4-gcc \
sunos4-static \
sunos5 \
sunos5-gcc \
sunos5-64-gcc \
sunos5-smp \
ultrix-gcc:
(cd configs && rm -f current && ln -s $@ current)
$(MAKE) default
# Rules for making release tarballs
DIRECTORY = Mesa-6.5.1
LIB_NAME = MesaLib-6.5.1
DEMO_NAME = MesaDemos-6.5.1
GLUT_NAME = MesaGLUT-6.5.1
MAIN_FILES = \
$(DIRECTORY)/Makefile* \
$(DIRECTORY)/descrip.mms \
$(DIRECTORY)/mms-config. \
$(DIRECTORY)/bin/mklib \
$(DIRECTORY)/bin/installmesa \
$(DIRECTORY)/configs/[a-z]* \
$(DIRECTORY)/docs/*.html \
$(DIRECTORY)/docs/COPYING \
$(DIRECTORY)/docs/README.* \
$(DIRECTORY)/docs/RELNOTES* \
$(DIRECTORY)/docs/VERSIONS \
$(DIRECTORY)/docs/*.spec \
$(DIRECTORY)/include/GL/internal/glcore.h \
$(DIRECTORY)/include/GL/amesa.h \
$(DIRECTORY)/include/GL/dmesa.h \
$(DIRECTORY)/include/GL/directfbgl.h \
$(DIRECTORY)/include/GL/fxmesa.h \
$(DIRECTORY)/include/GL/ggimesa.h \
$(DIRECTORY)/include/GL/gl.h \
$(DIRECTORY)/include/GL/glext.h \
$(DIRECTORY)/include/GL/gl_mangle.h \
$(DIRECTORY)/include/GL/glu.h \
$(DIRECTORY)/include/GL/glu_mangle.h \
$(DIRECTORY)/include/GL/glx.h \
$(DIRECTORY)/include/GL/glxext.h \
$(DIRECTORY)/include/GL/glx_mangle.h \
$(DIRECTORY)/include/GL/glfbdev.h \
$(DIRECTORY)/include/GL/mesa_wgl.h \
$(DIRECTORY)/include/GL/mglmesa.h \
$(DIRECTORY)/include/GL/osmesa.h \
$(DIRECTORY)/include/GL/svgamesa.h \
$(DIRECTORY)/include/GL/ugl*.h \
$(DIRECTORY)/include/GL/vms_x_fix.h \
$(DIRECTORY)/include/GL/wmesa.h \
$(DIRECTORY)/include/GL/xmesa.h \
$(DIRECTORY)/include/GL/xmesa_x.h \
$(DIRECTORY)/include/GL/xmesa_xf86.h \
$(DIRECTORY)/include/GLView.h \
$(DIRECTORY)/src/Makefile \
$(DIRECTORY)/src/descrip.mms \
$(DIRECTORY)/src/mesa/Makefile* \
$(DIRECTORY)/src/mesa/sources \
$(DIRECTORY)/src/mesa/descrip.mms \
$(DIRECTORY)/src/mesa/depend \
$(DIRECTORY)/src/mesa/main/*.[chS] \
$(DIRECTORY)/src/mesa/main/descrip.mms \
$(DIRECTORY)/src/mesa/glapi/*.[chS] \
$(DIRECTORY)/src/mesa/glapi/descrip.mms \
$(DIRECTORY)/src/mesa/array_cache/*.[ch] \
$(DIRECTORY)/src/mesa/array_cache/descrip.mms \
$(DIRECTORY)/src/mesa/math/*.[ch] \
$(DIRECTORY)/src/mesa/math/descrip.mms \
$(DIRECTORY)/src/mesa/shader/*.[ch] \
$(DIRECTORY)/src/mesa/shader/descrip.mms \
$(DIRECTORY)/src/mesa/shader/grammar/*.[ch] \
$(DIRECTORY)/src/mesa/shader/grammar/descrip.mms \
$(DIRECTORY)/src/mesa/shader/slang/*.[ch] \
$(DIRECTORY)/src/mesa/shader/slang/descrip.mms \
$(DIRECTORY)/src/mesa/shader/slang/library/*.[ch] \
$(DIRECTORY)/src/mesa/swrast/*.[ch] \
$(DIRECTORY)/src/mesa/swrast/descrip.mms \
$(DIRECTORY)/src/mesa/swrast_setup/*.[ch] \
$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms \
$(DIRECTORY)/src/mesa/tnl/*.[chS] \
$(DIRECTORY)/src/mesa/tnl/descrip.mms \
$(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \
$(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm \
$(DIRECTORY)/src/mesa/drivers/beos/*.cpp \
$(DIRECTORY)/src/mesa/drivers/beos/Makefile \
$(DIRECTORY)/src/mesa/drivers/common/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/common/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/directfb/Makefile \
$(DIRECTORY)/src/mesa/drivers/dos/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c \
$(DIRECTORY)/src/mesa/drivers/glide/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c \
$(DIRECTORY)/src/mesa/drivers/ggi/default/genkgi.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/display/*.c \
$(DIRECTORY)/src/mesa/drivers/ggi/display/fbdev.conf.in \
$(DIRECTORY)/src/mesa/drivers/ggi/include/ggi/mesa/*.h \
$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win \
$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \
$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/svga/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/windows/*/*.def \
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
$(DIRECTORY)/src/mesa/x86/Makefile \
$(DIRECTORY)/src/mesa/x86/*.[ch] \
$(DIRECTORY)/src/mesa/x86/*.S \
$(DIRECTORY)/src/mesa/x86/rtasm/*.[ch] \
$(DIRECTORY)/src/mesa/x86-64/*.[chS] \
$(DIRECTORY)/src/mesa/x86-64/Makefile \
$(DIRECTORY)/progs/Makefile \
$(DIRECTORY)/progs/util/README \
$(DIRECTORY)/progs/util/*.[ch] \
$(DIRECTORY)/progs/util/sampleMakefile \
$(DIRECTORY)/vms/analyze_map.com \
$(DIRECTORY)/vms/xlib.opt \
$(DIRECTORY)/vms/xlib_share.opt \
$(DIRECTORY)/windows/VC6/mesa/gdi/gdi.dsp \
$(DIRECTORY)/windows/VC6/mesa/glu/*.txt \
$(DIRECTORY)/windows/VC6/mesa/glu/glu.dsp \
$(DIRECTORY)/windows/VC6/mesa/mesa.dsw \
$(DIRECTORY)/windows/VC6/mesa/mesa/mesa.dsp \
$(DIRECTORY)/windows/VC6/mesa/osmesa/osmesa.dsp \
$(DIRECTORY)/windows/VC7/mesa/gdi/gdi.vcproj \
$(DIRECTORY)/windows/VC7/mesa/glu/glu.vcproj \
$(DIRECTORY)/windows/VC7/mesa/mesa.sln \
$(DIRECTORY)/windows/VC7/mesa/mesa/mesa.vcproj \
$(DIRECTORY)/windows/VC7/mesa/osmesa/osmesa.vcproj
DRI_FILES = \
$(DIRECTORY)/include/GL/internal/dri_interface.h \
$(DIRECTORY)/include/GL/internal/sarea.h \
$(DIRECTORY)/src/glx/Makefile \
$(DIRECTORY)/src/glx/x11/Makefile \
$(DIRECTORY)/src/glx/x11/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.[ch] \
$(DIRECTORY)/src/mesa/drivers/dri/common/xmlpool/*.po \
$(DIRECTORY)/src/mesa/drivers/dri/*/*.[chS] \
$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
SGI_GLU_FILES = \
$(DIRECTORY)/src/glu/Makefile \
$(DIRECTORY)/src/glu/descrip.mms \
$(DIRECTORY)/src/glu/sgi/Makefile \
$(DIRECTORY)/src/glu/sgi/Makefile.win \
$(DIRECTORY)/src/glu/sgi/Makefile.DJ \
$(DIRECTORY)/src/glu/sgi/glu.def \
$(DIRECTORY)/src/glu/sgi/dummy.cc \
$(DIRECTORY)/src/glu/sgi/descrip.mms \
$(DIRECTORY)/src/glu/sgi/mesaglu.opt \
$(DIRECTORY)/src/glu/sgi/include/gluos.h \
$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.h \
$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.cc \
$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.h \
$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.cc \
$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.h \
$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.cc \
$(DIRECTORY)/src/glu/sgi/libtess/README \
$(DIRECTORY)/src/glu/sgi/libtess/alg-outline \
$(DIRECTORY)/src/glu/sgi/libtess/*.[ch] \
$(DIRECTORY)/src/glu/sgi/libutil/*.[ch]
MESA_GLU_FILES = \
$(DIRECTORY)/src/glu/mesa/README[12] \
$(DIRECTORY)/src/glu/mesa/Makefile* \
$(DIRECTORY)/src/glu/mesa/descrip.mms \
$(DIRECTORY)/src/glu/mesa/mms_depend \
$(DIRECTORY)/src/glu/mesa/*.def \
$(DIRECTORY)/src/glu/mesa/depend \
$(DIRECTORY)/src/glu/mesa/*.[ch]
GLW_FILES = \
$(DIRECTORY)/src/glw/*.[ch] \
$(DIRECTORY)/src/glw/Makefile* \
$(DIRECTORY)/src/glw/README \
$(DIRECTORY)/src/glw/depend
DEMO_FILES = \
$(DIRECTORY)/progs/beos/*.cpp \
$(DIRECTORY)/progs/beos/Makefile \
$(DIRECTORY)/progs/images/*.rgb \
$(DIRECTORY)/progs/images/*.rgba \
$(DIRECTORY)/progs/demos/Makefile* \
$(DIRECTORY)/progs/demos/descrip.mms \
$(DIRECTORY)/progs/demos/*.[ch] \
$(DIRECTORY)/progs/demos/*.cxx \
$(DIRECTORY)/progs/demos/*.dat \
$(DIRECTORY)/progs/demos/README \
$(DIRECTORY)/progs/osdemos/Makefile \
$(DIRECTORY)/progs/osdemos/*.c \
$(DIRECTORY)/progs/xdemos/Makefile* \
$(DIRECTORY)/progs/xdemos/descrip.mms \
$(DIRECTORY)/progs/xdemos/*.[chf] \
$(DIRECTORY)/progs/redbook/Makefile* \
$(DIRECTORY)/progs/redbook/README \
$(DIRECTORY)/progs/redbook/*.[ch] \
$(DIRECTORY)/progs/samples/Makefile* \
$(DIRECTORY)/progs/samples/README \
$(DIRECTORY)/progs/samples/*.c \
$(DIRECTORY)/progs/windml/Makefile.ugl \
$(DIRECTORY)/progs/windml/*.c \
$(DIRECTORY)/progs/windml/*.bmp \
$(DIRECTORY)/progs/ggi/*.c \
$(DIRECTORY)/windows/VC6/progs/demos/*.dsp \
$(DIRECTORY)/windows/VC6/progs/progs.dsw \
$(DIRECTORY)/windows/VC7/progs/demos/*.vcproj \
$(DIRECTORY)/windows/VC7/progs/progs.sln
GLUT_FILES = \
$(DIRECTORY)/include/GL/glut.h \
$(DIRECTORY)/include/GL/glutf90.h \
$(DIRECTORY)/src/glut/glx/Makefile* \
$(DIRECTORY)/src/glut/glx/depend \
$(DIRECTORY)/src/glut/glx/*def \
$(DIRECTORY)/src/glut/glx/descrip.mms \
$(DIRECTORY)/src/glut/glx/mms_depend \
$(DIRECTORY)/src/glut/glx/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.[ch] \
$(DIRECTORY)/src/glut/beos/*.cpp \
$(DIRECTORY)/src/glut/beos/Makefile \
$(DIRECTORY)/src/glut/dos/*.[ch] \
$(DIRECTORY)/src/glut/dos/Makefile.DJ \
$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
$(DIRECTORY)/src/glut/ggi/*.[ch] \
$(DIRECTORY)/src/glut/ggi/Makefile \
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj
DEPEND_FILES = \
$(TOP)/src/mesa/depend \
$(TOP)/src/glw/depend \
$(TOP)/src/glut/glx/depend \
$(TOP)/src/glu/sgi/depend
LIB_FILES = $(MAIN_FILES) $(DRI_FILES) $(SGI_GLU_FILES) $(GLW_FILES)
# Everything for new a Mesa release:
tarballs: rm_depend lib_gz demo_gz glut_gz lib_bz2 demo_bz2 glut_bz2 lib_zip demo_zip glut_zip md5
rm_depend:
@for dep in $(DEPEND_FILES) ; do \
rm -f $$dep ; \
touch $$dep ; \
done
lib_gz:
rm -f configs/current ; \
cd .. ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
gzip $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.gz $(DIRECTORY)
demo_gz:
cd .. ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
gzip $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.gz $(DIRECTORY)
glut_gz:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
gzip $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.gz $(DIRECTORY)
lib_bz2:
rm -f configs/current ; \
cd .. ; \
tar -cf $(LIB_NAME).tar $(LIB_FILES) ; \
bzip2 $(LIB_NAME).tar ; \
mv $(LIB_NAME).tar.bz2 $(DIRECTORY)
demo_bz2:
cd .. ; \
tar -cf $(DEMO_NAME).tar $(DEMO_FILES) ; \
bzip2 $(DEMO_NAME).tar ; \
mv $(DEMO_NAME).tar.bz2 $(DIRECTORY)
glut_bz2:
cd .. ; \
tar -cf $(GLUT_NAME).tar $(GLUT_FILES) ; \
bzip2 $(GLUT_NAME).tar ; \
mv $(GLUT_NAME).tar.bz2 $(DIRECTORY)
lib_zip:
rm -f configs/current ; \
rm -f $(LIB_NAME).zip ; \
cd .. ; \
zip -qr $(LIB_NAME).zip $(LIB_FILES) ; \
mv $(LIB_NAME).zip $(DIRECTORY)
demo_zip:
rm -f $(DEMO_NAME).zip ; \
cd .. ; \
zip -qr $(DEMO_NAME).zip $(DEMO_FILES) ; \
mv $(DEMO_NAME).zip $(DIRECTORY)
glut_zip:
rm -f $(GLUT_NAME).zip ; \
cd .. ; \
zip -qr $(GLUT_NAME).zip $(GLUT_FILES) ; \
mv $(GLUT_NAME).zip $(DIRECTORY)
md5:
@-md5sum $(LIB_NAME).tar.gz
@-md5sum $(LIB_NAME).tar.bz2
@-md5sum $(LIB_NAME).zip
@-md5sum $(DEMO_NAME).tar.gz
@-md5sum $(DEMO_NAME).tar.bz2
@-md5sum $(DEMO_NAME).zip
@-md5sum $(GLUT_NAME).tar.gz
@-md5sum $(GLUT_NAME).tar.bz2
@-md5sum $(GLUT_NAME).zip

179
Mesa.dsw
View File

@@ -1,179 +0,0 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "array_cache"=".\SRC\MESA\array_cache\array_cache.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "gdi"=".\src\mesa\drivers\windows\gdi\gdi.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name array_cache
End Project Dependency
Begin Project Dependency
Project_Dep_Name main
End Project Dependency
Begin Project Dependency
Project_Dep_Name math
End Project Dependency
Begin Project Dependency
Project_Dep_Name swrast_setup
End Project Dependency
Begin Project Dependency
Project_Dep_Name swrast
End Project Dependency
Begin Project Dependency
Project_Dep_Name tnl
End Project Dependency
Begin Project Dependency
Project_Dep_Name glapi
End Project Dependency
Begin Project Dependency
Project_Dep_Name shader
End Project Dependency
}}}
###############################################################################
Project: "glapi"=".\SRC\MESA\glapi\glapi.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "glu"=".\src\glu\sgi\glu.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name gdi
End Project Dependency
}}}
###############################################################################
Project: "main"=".\SRC\MESA\main\main.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "math"=".\SRC\MESA\math\math.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "osmesa"=".\SRC\MESA\DRIVERS\osmesa\osmesa.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name gdi
End Project Dependency
}}}
###############################################################################
Project: "shader"=".\SRC\MESA\shader\shader.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "swrast"=".\SRC\MESA\swrast\swrast.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "swrast_setup"=".\SRC\MESA\swrast_setup\swrast_setup.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "tnl"=".\SRC\MESA\tnl\tnl.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -12,7 +12,7 @@ TOP=.
INCLUDE_DIR="/usr/local/include"
LIB_DIR="/usr/local/lib"
if [ "x$#" = "x0" ] ; then
echo
echo "***** Mesa installation - You may need root privileges to do this *****"
echo
@@ -20,7 +20,7 @@ echo "Default directory for header files is:" ${INCLUDE_DIR}
echo "Enter new directory or press <Enter> to accept this default."
read INPUT
if [ x${INPUT} != "x" ] ; then
if [ "x${INPUT}" != "x" ] ; then
INCLUDE_DIR=${INPUT}
fi
@@ -29,11 +29,10 @@ echo "Default directory for library files is:" ${LIB_DIR}
echo "Enter new directory or press <Enter> to accept this default."
read INPUT
if [ x${INPUT} != "x" ] ; then
if [ "x${INPUT}" != "x" ] ; then
LIB_DIR=${INPUT}
fi
echo
echo "About to install Mesa header files (GL/*.h) in: " ${INCLUDE_DIR}/GL
echo "and Mesa library files (libGL.*, etc) in: " ${LIB_DIR}
@@ -41,17 +40,35 @@ echo "Press <Enter> to continue, or <ctrl>-C to abort."
read INPUT
else
INCLUDE_DIR=$1/include
LIB_DIR=$1/lib
fi
# flags:
# -f = force
# -d = preserve symlinks
# -d = preserve symlinks (does not work on BSD)
if [ `uname` = "FreeBSD" ] ; then
CP_FLAGS="-f"
elif [ `uname` = "Darwin" ] ; then
CP_FLAGS="-f"
elif [ `uname` = "AIX" ] ; then
CP_FLAGS="-fh"
else
CP_FLAGS="-fd"
fi
set -v
mkdir ${INCLUDE_DIR}
mkdir ${INCLUDE_DIR}/GL
mkdir ${LIB_DIR}
mkdir -p ${INCLUDE_DIR}
mkdir -p ${INCLUDE_DIR}/GL
# NOT YET: mkdir -p ${INCLUDE_DIR}/GLES
mkdir -p ${LIB_DIR}
cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL
cp -fd ${TOP}/lib*/lib* ${LIB_DIR}
cp -f ${TOP}/src/glw/*.h ${INCLUDE_DIR}/GL
# NOT YET: cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES
cp ${CP_FLAGS} ${TOP}/lib*/lib* ${LIB_DIR}
echo "Done."

88
bin/minstall Executable file
View File

@@ -0,0 +1,88 @@
#!/bin/sh
# A minimal replacement for 'install' that supports installing symbolic links.
# Only a limited number of options are supported:
# -d dir Create a directory
# -m mode Sets a file's mode when installing
# If these commands aren't portable, we'll need some "if (arch)" type stuff
SYMLINK="ln -s"
MKDIR="mkdir -p"
RM="rm -f"
MODE=""
if [ "$1" = "-d" ] ; then
# make a directory path
$MKDIR "$2"
exit 0
fi
if [ "$1" = "-m" ] ; then
# set file mode
MODE=$2
shift 2
fi
# install file(s) into destination
if [ $# -ge 2 ] ; then
# Last cmd line arg is the dest dir
for FILE in $@ ; do
DEST="$FILE"
done
# Loop over args, moving them to DEST directory
I=1
for FILE in $@ ; do
if [ $I = $# ] ; then
# stop, don't want to install $DEST into $DEST
exit 0
fi
# determine file's type
if [ -h "$FILE" ] ; then
#echo $FILE is a symlink
# Unfortunately, cp -d isn't universal so we have to
# use a work-around.
# Use ls -l to find the target that the link points to
LL=`ls -l "$FILE"`
for L in $LL ; do
TARGET=$L
done
#echo $FILE is a symlink pointing to $TARGET
FILE=`basename "$FILE"`
# Go to $DEST and make the link
PWDSAVE="$PWD"
cd "$DEST" # pushd
$RM "$FILE"
$SYMLINK "$TARGET" "$FILE"
cd "$PWDSAVE" # popd
elif [ -f "$FILE" ] ; then
#echo "$FILE" is a regular file
cp "$FILE" "$DEST"
if [ $MODE ] ; then
FILE=`basename "$FILE"`
chmod $MODE "$DEST/$FILE"
fi
else
echo "Unknown type of argument: " "$FILE"
exit 1
fi
I=`expr $I + 1`
done
exit 0
fi
# If we get here, we didn't find anything to do
echo "Usage:"
echo " install -d dir Create named directory"
echo " install [-m mode] file [...] dest Install files in destination"

453
bin/mklib
View File

@@ -1,38 +1,28 @@
#!/bin/sh
# Make a shared library.
# Basically do a switch/case depending on the OS and make a shared (or static)
# library conforming to that OS.
# This script should be useful for projects other than Mesa.
# Improvements/fixes are welcome.
# Usage:
# mklib [options] objects ...
# Options:
# -o LIBRARY specifies the name of resulting library
# ("-o GL" for example, might result in "libGL.so" being made)
# -major N specifies major version number (default is 1)
# -minor N specifies minor version number (default is 0)
# -patch N specifies patch version number (default is 0)
# -lLIBRARY specifies a dependency on LIBRARY
# -LDIR search in DIR for library dependencies
# -cplusplus link with C++ runtime
# -static make a static library (default is dynamic/shared)
# -install DIR move resulting library file(s) to DIR
# -arch ARCH override using `uname` to determine architecture
# -archopt OPT specify an extra achitecture-specific option OPT
# -noprefix don't prefix library name with "lib" or any suffix
# -exports FILE only export the symbols listed in FILE
# Copyright (C) 1999-2006 Brian Paul All Rights Reserved.
#
# The library name should just be "GL" or "GLU", etc. The 'lib' prefix
# will be added here if needed, as well as the ".so" or ".a" suffix,
# etc (unless the -noprefix option is used).
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# objects should be: foo.o bar.o etc.o
#
# Environment variables recognized:
# CC C compiler command
# CXX C++ compiler command
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
@@ -43,8 +33,10 @@ MAJOR=1
MINOR=0
PATCH=""
DEPS=""
LINK=""
CPLUSPLUS=0
STATIC=0
DLOPEN=0
INSTALLDIR="."
ARCH="auto"
ARCHOPT=""
@@ -58,26 +50,97 @@ EXPORTS=""
while true
do
case $1 in
'-o') shift 1; LIBNAME=$1;;
'-major') shift 1; MAJOR=$1;;
'-minor') shift 1; MINOR=$1;;
'-patch') shift 1; PATCH=$1;;
-l*) DEPS="$DEPS $1";;
-L*) DEPS="$DEPS $1";;
'-cplusplus') CPLUSPLUS=1;;
'-static') STATIC=1;;
'-install') shift 1; INSTALLDIR=$1;;
'-arch') shift 1; ARCH=$1;;
'-archopt') shift 1; ARCHOPT=$1;;
'-noprefix') NOPREFIX=1;;
'-exports') shift 1; EXPORTS=$1;;
-*) echo "mklib: Unknown option: " $1 ; exit 1;;
*) break
'-h' | '--help')
echo 'Usage: mklib [options] objects'
echo 'Create a shared library from object files.'
echo ' -o LIBRARY specifies the name of the resulting library, without'
echo ' the leading "lib" or any suffix.'
echo ' (eg: "-o GL" might result in "libGL.so" being made)'
echo ' -major N specifies major version number (default is 1)'
echo ' -minor N specifies minor version number (default is 0)'
echo ' -patch N specifies patch version number (default is 0)'
echo ' -lLIBRARY specifies a dependency on LIBRARY'
echo ' -LDIR search in DIR for library dependencies'
echo ' -linker L explicity specify the linker program to use (eg: gcc, g++)'
echo ' Not observed on all systems at this time.'
echo ' -cplusplus link with C++ runtime'
echo ' -static make a static library (default is dynamic/shared)'
echo ' -dlopen make a shared library suitable for dynamic loading'
echo ' -install DIR put resulting library file(s) in DIR'
echo ' -arch ARCH override using `uname` to determine host system'
echo ' -archopt OPT specify an extra achitecture-specific option OPT'
echo " -noprefix don't prefix library name with 'lib' nor add any suffix"
echo ' -exports FILE only export the symbols listed in FILE'
echo ' -h, --help display this information and exit'
exit 1
;;
'-o')
shift 1;
LIBNAME=$1
;;
'-major')
shift 1;
MAJOR=$1
;;
'-minor')
shift 1;
MINOR=$1
;;
'-patch')
shift 1;
PATCH=$1
;;
'-linker')
shift 1;
LINK=$1
;;
-l*)
DEPS="$DEPS $1"
;;
-L*)
DEPS="$DEPS $1"
;;
'-cplusplus')
CPLUSPLUS=1
;;
'-static')
STATIC=1
;;
'-dlopen')
DLOPEN=1
;;
'-install')
shift 1;
INSTALLDIR=$1
;;
'-arch')
shift 1;
ARCH=$1
;;
'-archopt')
shift 1;
ARCHOPT=$1
;;
'-noprefix')
NOPREFIX=1
;;
'-exports')
shift 1;
EXPORTS=$1
;;
-*)
echo "mklib: Unknown option: " $1 ;
exit 1
;;
*)
# This should be the first object file, stop parsing
break
esac
shift 1
done
OBJECTS=$@
if [ ${ARCH} = "auto" ] ; then
ARCH=`uname`
fi
@@ -117,15 +180,16 @@ fi
#
case $ARCH in
'Linux' | 'OpenBSD')
'Linux' | 'OpenBSD' | 'GNU' | GNU/*)
# we assume gcc
# Set default compilers if env vars not set
if [ "x$CXX" = "x" ] ; then
CXX=g++
fi
if [ "x$CC" = "x" ] ; then
CC=gcc
if [ "x$LINK" = "x" ] ; then
# -linker was not specified so set default link command now
if [ $CPLUSPLUS = 1 ] ; then
LINK=g++
else
LINK=gcc
fi
fi
if [ $NOPREFIX = 1 ] ; then
@@ -133,13 +197,16 @@ case $ARCH in
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}
#OPTS="-shared -Wl,-soname,${LIBNAME}" # soname???
OPTS="-shared"
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
fi
rm -f ${LIBNAME}
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
OPTS="-m32 ${OPTS}"
fi
rm -f ${LIBNAME}
# make lib
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
# finish up
@@ -156,11 +223,13 @@ case $ARCH in
FINAL_LIBS=${LIBNAME}.a
else
LIBNAME="lib${LIBNAME}" # prefix with "lib"
if [ $ARCH = 'Linux' ] ; then
case $ARCH in 'Linux' | 'GNU' | GNU/*)
OPTS="-Xlinker -Bsymbolic -shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
else
;;
*)
OPTS="-shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
fi
;;
esac
if [ $EXPORTS ] ; then
#OPTS="${OPTS} -Xlinker --retain-symbols-file ${EXPORTS}"
# Make the 'exptmp' file for --version-script option
@@ -173,6 +242,15 @@ case $ARCH in
OPTS="${OPTS} -Xlinker --version-script=exptmp"
# exptmp is removed below
fi
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
OPTS="-m32 ${OPTS}"
fi
if [ x${PATCH} = "x" ] ; then
VERSION="${MAJOR}.${MINOR}"
else
@@ -181,12 +259,6 @@ case $ARCH in
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}.so.${VERSION}
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
fi
# rm any old libs
rm -f ${LIBNAME}.so.${VERSION}
rm -f ${LIBNAME}.so.${MAJOR}
@@ -211,60 +283,88 @@ case $ARCH in
ar -ruv ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
LIBNAME="lib${LIBNAME}.so"
if [ $NOPREFIX = 0 ] ; then
LIBNAME="lib${LIBNAME}.so"
fi
echo "mklib: Making SunOS shared library: " ${LIBNAME}
# XXX OPTS for gcc should be -shared, but that doesn't work.
# Using -G does work though.
if [ $CPLUSPLUS = 1 ] ; then
# determine linker and options for C++ code
if [ "x${CXX}" = "xg++" ] ; then
# use g++
LINK="g++"
OPTS="-G"
elif [ "x${CXX}" = "xCC" ] ; then
# use Sun CC
LINK="CC"
OPTS="-G"
elif [ "x${CXX}" = "xc++" ] ; then
# use Sun c++
LINK="c++"
OPTS="-G"
elif [ `which c++` ] ; then
# use Sun c++
LINK="c++"
OPTS="-G"
elif [ `type g++` ] ; then
# use g++
LINK="g++"
OPTS="-G"
if [ "x$LINK" = "x" ] ; then
# -linker was not specified, choose default linker now
if [ $CPLUSPLUS = 1 ] ; then
# determine linker and options for C++ code
if [ `which c++` ] ; then
# use Sun c++
LINK="c++"
elif [ `type g++` ] ; then
# use g++
LINK="g++"
else
echo "mklib: warning: can't find C++ comiler, trying CC."
LINK="CC"
fi
else
echo "mklib: warning: can't find C++ comiler, trying CC."
LINK="CC"
OPTS="-G"
# use native Sun linker for C code
LINK="ld"
fi
elif [ "x${CC}" = "xgcc" ] ; then
# use gcc for linking
LINK="gcc"
fi
# linker options
if [ ${LINK} = "ld" -o ${LINK} = "cc" -o ${LINK} = "CC" ] ; then
# SunOS tools, -G to make shared libs
OPTS="-G"
else
# use native Sun linker
LINK="ld"
OPTS="-G"
# gcc linker
# Check if objects are 32-bit and we're running in 64-bit
# environment. If so, pass -m32 flag to linker.
set ${OBJECTS}
ABI32=`file $1 | grep 32-bit`
if [ "${ABI32}" ] ; then
OPTS="-m32 -shared -Wl,-Bdynamic"
else
OPTS="-m64 -shared -Wl,-Bdynamic"
fi
fi
# Check if objects are SPARC v9
# file says: ELF 64-bit MSB relocatable SPARCV9 Version 1
set ${OBJECTS}
SPARCV9=`file $1 | grep SPARCV9`
if [ "${SPARCV9}" ] ; then
OPTS="${OPTS} -xarch=v9"
fi
# for debug:
#echo "mklib: linker is" ${LINK} ${OPTS}
if [ $NOPREFIX = 1 ] ; then
rm -f ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
else
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
fi
echo "mklib: linker is" ${LINK} ${OPTS}
rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
fi
;;
'FreeBSD')
# we assume gcc
if [ "x$LINK" = "x" ] ; then
# -linker was not specified so set default link command now
if [ $CPLUSPLUS = 1 ] ; then
LINK=g++
else
LINK=gcc
fi
fi
if [ $NOPREFIX = 1 ] ; then
# No "lib" or ".so" part
echo "mklib: Making FreeBSD shared library: " ${LIBNAME}
OPTS="-shared"
rm -f ${LIBNAME}
ld -Bshareable -o ${LIBNAME} ${OBJECTS}
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
elif [ $STATIC = 1 ] ; then
STLIB="lib${LIBNAME}.a"
@@ -274,12 +374,13 @@ case $ARCH in
ranlib ${STLIB}
FINAL_LIBS=${STLIB}
else
SHLIB="lib${LIBNAME}.so.${MAJOR}.${MINOR}"
SHLIB="lib${LIBNAME}.so.${MAJOR}"
OPTS="-shared -Wl,-soname,${SHLIB}"
echo "mklib: Making FreeBSD shared library: " ${SHLIB}
rm -f ${SHLIB}
ld -Bshareable -o ${SHLIB} ${OBJECTS}
# XXX make lib${LIBNAME}.so.${MAJOR} symlink?
FINAL_LIBS=${SHLIB}
${LINK} ${OPTS} -o ${SHLIB} ${OBJECTS} ${DEPS}
ln -sf ${SHLIB} "lib${LIBNAME}.so"
FINAL_LIBS="${SHLIB} lib${LIBNAME}.so"
fi
;;
@@ -308,24 +409,33 @@ case $ARCH in
FINAL_LIBS=${LIBNAME}
else
LIBNAME="lib${LIBNAME}.so" # prefix with "lib", suffix with ".so"
if [ $ARCHOPT = "64" ] ; then
# 64-bit ABI
OPTS="-64 -shared -all"
echo "mklib: Making IRIX 64-bit shared library: " ${LIBNAME}
elif [ $ARCHOPT = "o32" ] ; then
# old 32-bit ABI
# examine first object to determine ABI
set ${OBJECTS}
ABI_O32=`file $1 | grep 'ELF 32-bit'`
ABI_N32=`file $1 | grep 'ELF N32'`
ABI_N64=`file $1 | grep 'ELF 64-bit'`
if [ "${ABI_O32}" ] ; then
OPTS="-32 -shared -all"
echo "mklib: Making IRIX o32-bit shared library: " ${LIBNAME}
else
# new 32-bit ABI
ABI="o32-bit"
elif [ "${ABI_N32}" ] ; then
OPTS="-n32 -shared -all"
echo "mklib: Making IRIX n32-bit shared library: " ${LIBNAME}
ABI="n32-bit"
elif [ "${ABI_N64}" ] ; then
OPTS="-64 -shared -all"
ABI="64-bit"
else
echo "Error: Unexpected IRIX ABI!"
exit 1
fi
if [ $CPLUSPLUS = 1 ] ; then
LINK="CC"
else
LINK="ld"
fi
echo "mklib: Making IRIX " ${ABI} " shared library: " ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
fi
@@ -347,6 +457,10 @@ case $ARCH in
ar -ruv ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
# HP uses a .2 for their current GL/GLU libraries
if [ ${LIBNAME} = "GL" -o ${LIBNAME} = "GLU" ] ; then
MAJOR=2
fi
RUNLIB="lib${LIBNAME}.${MAJOR}"
DEVLIB="lib${LIBNAME}.sl"
echo "mklib: Making HP-UX shared library: " ${RUNLIB} ${DEVLIB}
@@ -356,25 +470,27 @@ case $ARCH in
fi
;;
'AIX' | 'AIX64')
if [ $ARCH = "AIX64" ] ; then
'AIX' )
# examine first object to determine ABI
set ${OBJECTS}
ABI_64=`file $1 | grep '64-bit'`
if [ "${ABI_64}" ] ; then
X64="-X64"
Q64="-q64"
OFILE=shr_64.o
else
OFILE=shr.o #Want to be consistent with the IBM libGL.a
fi
if [ $STATIC = 1 ] ; then
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making AIX static library: " ${LIBNAME}
ar -ruv ${X64} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
if [ $STATIC = 1 ] ; then
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making AIX static library: " ${LIBNAME}
ar -ruv ${X64} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
EXPFILE="lib${LIBNAME}.exp"
OFILE=shr.o #Want to be consistent with the IBM libGL.a
LIBNAME="lib${LIBNAME}.a" # shared objects are still stored in the .a libraries
if [ $ARCH = "AIX64" ] ; then
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry -q64"
else
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry"
fi
OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry ${Q64}"
rm -f ${EXPFILE} ${OFILE}
NM="/bin/nm -eC ${X64}"
echo "#! /usr/lib/${LIBNAME}" > ${EXPFILE}
@@ -392,8 +508,16 @@ case $ARCH in
}
}
}' | sort -u >> ${EXPFILE}
cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS}
ar ${X64} -r ${LIBNAME} ${OFILE}
# On AIX a shared library is linked differently when
# you want to dlopen the file
if [ $DLOPEN = "1" ] ; then
cc -G ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
else
cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS}
ar ${X64} -r ${LIBNAME} ${OFILE}
fi
FINAL_LIBS="${LIBNAME}"
fi
;;
@@ -416,10 +540,12 @@ case $ARCH in
VERSION="${MAJOR}.${MINOR}"
LIBNAME="lib${LIBNAME}.so"
echo "mklib: Making OSF/1 shared library: " ${LIBNAME}
if [ $CPLUSPLUS = 1 ] ; then
LINK=$CXX
else
LINK=$CC
if [ "x$LINK" = "x" ] ; then
if [ $CPLUSPLUS = 1 ] ; then
LINK=cxx
else
LINK=cc
fi
fi
rm -f ${LIBNAME}.${VERSION}
${LINK} -o ${LIBNAME}.${VERSION} -shared -set_version ${VERSION} -soname ${LIBNAME}.${VERSION} -expect_unresolved \* -all ${OBJECTS} ${DEPS}
@@ -433,20 +559,46 @@ case $ARCH in
LIBNAME="lib${LIBNAME}.a"
echo "mklib: Making Darwin static library: " ${LIBNAME}
LINK="ar"
OPTS="-ruv"
OPTS="-ruvs"
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
LIBNAME="${LIBNAME}.dylib"
echo "mklib: Making Darwin shared library: " ${LIBNAME}
FLAGS="-dynamiclib -multiply_defined suppress"
# On Darwin a .bundle is used for a library that you want to dlopen
if [ $DLOPEN = "1" ] ; then
LIBSUFFIX="bundle"
OPTS="${ARCHOPT} -bundle -multiply_defined suppress"
else
LIBSUFFIX="dylib"
OPTS="${ARCHOPT} -dynamiclib -multiply_defined suppress -current_version ${MAJOR}.${MINOR}.0 -compatibility_version ${MAJOR}.${MINOR}.0 -install_name lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}"
fi
LINKNAME="lib${LIBNAME}.${LIBSUFFIX}"
LIBNAME="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}"
# examine first object to determine ABI
set ${OBJECTS}
ABI_PPC=`file $1 | grep 'object ppc'`
ABI_I386=`file $1 | grep 'object i386'`
if [ "${ABI_PPC}" ] ; then
OPTS="${OPTS} -arch ppc"
fi
if [ "${ABI_I386}" ] ; then
OPTS="${OPTS} -arch i386"
fi
# XXX can we always add -isysroot /Developer/SDKs/MacOSX10.4u.sdk
# to OPTS here?
# determine linker
if [ $CPLUSPLUS = 1 ] ; then
LINK="g++"
else
LINK="cc"
fi
${LINK} ${FLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
echo "mklib: Making Darwin shared library: " ${LIBNAME}
${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME} ${LINKNAME}
FINAL_LIBS="${LIBNAME} ${LINKNAME}"
fi
;;
@@ -468,6 +620,7 @@ case $ARCH in
echo "mklib: Making BeOS shared library: " ${LIBNAME}
gcc -nostart -Xlinker "-soname=${LIBNAME}" -L/Be/develop/lib/x86 -lbe ${DEPS} ${OBJECTS} -o "${LIBNAME}"
mimeset -f "${LIBNAME}"
# XXX remove the Mesa3D stuff here since mklib isn't mesa-specific.
setversion "${LIBNAME}" -app ${MAJOR} ${MINOR} ${PATCH} -short "Powered by Mesa3D!" -long "Powered by Mesa3D!"
fi
FINAL_LIBS=${LIBNAME}
@@ -487,8 +640,10 @@ case $ARCH in
FINAL_LIBS="${LIBNAME}"
;;
'icc')
'icc' | 'icc-istatic')
# Intel C compiler
# This should get merged into the Linux code, above, since this isn't
# really a different architecture.
LIBNAME="lib${LIBNAME}" # prefix with "lib"
if [ $STATIC = 1 ] ; then
@@ -500,12 +655,16 @@ case $ARCH in
# finish up
FINAL_LIBS="${LIBNAME}.a"
else
OPTS="-shared"
if [ $ARCH = icc-istatic ] ; then
OPTS="-shared -i-static -cxxlib-icc"
else
OPTS="-shared"
fi
VERSION="${MAJOR}.${MINOR}.${PATCH}"
echo "mklib: Making Intel ICC shared library: " ${LIBNAME}.so.${VERSION}
if [ $CPLUSPLUS = 1 ] ; then
LINK="icc"
LINK="icpc"
else
LINK="icc"
fi
@@ -606,7 +765,7 @@ case $ARCH in
ar rv ${LIBNAME} ${OBJECTS}
FINAL_LIBS="${LIBNAME}"
else
LIBNAME="lib${LIBNAME}.so" # prefix with "lib"
LIBNAME="lib${LIBNAME}.so" # prefix with "lib", suffix with ".so"
echo "mklib: Making shared library for example arch: " ${LIBNAME}
ld -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS="${LIBNAME}"

View File

@@ -8,8 +8,10 @@ CONFIG_NAME = aix
CC = cc
CXX = xlC
CFLAGS = -O -DAIXV3
CXXFLAGS = -O -DAIXV3
CFLAGS = -O -DAIXV3 -DPTHREADS
CXXFLAGS = -O -DAIXV3 -DPTHREADS
# Misc tools and flags
MKLIB_OPTIONS =
# Library names (actual file names)
@@ -19,10 +21,10 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -lX11 -lXext -lm
GL_LIB_DEPS = -lX11 -lXext -lpthread -lm
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXm -lXt -lX11
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = aix-64
CC = xlc
CXX = xlC
CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
MKLIB_OPTIONS = -arch AIX64
CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS
CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3 -DPTHREADS
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -19,10 +19,9 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -lX11 -lXext -lm
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lC
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXm -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/lib64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lpthread -lC

25
configs/aix-64-static Normal file
View File

@@ -0,0 +1,25 @@
# Configuration for AIX, static libs
include $(TOP)/configs/default
CONFIG_NAME = aix-64-static
# Compiler and flags
CC = cc
CXX = xlC
CFLAGS = -q64 -O -DAIXV3 -DPTHREADS
CXXFLAGS = -q64 -O -DAIXV3 -DPTHREADS
MKLIB_OPTIONS = -static
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
APP_LIB_DEPS = -q64 -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
-lX11 -lXext -lXmu -lXi -lm -lpthread -lC

View File

@@ -13,7 +13,7 @@ CXXFLAGS = -O2 -DAIXV3
MKLIB_OPTIONS = -arch aix-gcc
GL_LIB_DEPS = -lX11 -lXext -lm
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu
APP_LIB_DEPS = -L$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi

View File

@@ -8,8 +8,8 @@ CONFIG_NAME = aix-static
CC = cc
CXX = xlC
CFLAGS = -O -DAIXV3
CXXFLAGS = -O -DAIXV3
CFLAGS = -O -DAIXV3 -DPTHREADS
CXXFLAGS = -O -DAIXV3 -DPTHREADS
MKLIB_OPTIONS = -static
# Library names (actual file names)
@@ -19,5 +19,7 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
APP_LIB_DEPS = -L$(LIB_DIR) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
-lX11 -lXext -lXmu -lXi -lm -lpthread -lC

View File

@@ -26,7 +26,8 @@ ifeq ($(CPU), x86)
-DUSE_3DNOW_ASM \
-DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
CC = gcc
CXX = g++
@@ -92,8 +93,8 @@ PROGRAM_DIRS = beos samples redbook demos tests
# Library/program dependencies
GL_LIB_DEPS =
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS =
GLUT_LIB_DEPS = -lgame -L$(LIB_DIR) -l$(GL_LIB)
APP_LIB_DEPS = -lbe -L$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)
GLUT_LIB_DEPS = -lgame -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
APP_LIB_DEPS = -lbe -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)

View File

@@ -18,8 +18,12 @@ GLW_LIB_NAME = libGLw.dylib
OSMESA_LIB_NAME = libOSMesa.dylib
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = $(TOP)/lib/GL.dylib
GLU_LIB_DEPS = $(TOP)/lib/GL.dylib
GLUT_LIB_DEPS =
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL -lGLU -L/usr/X11R6/lib -lX11 -lXmu -lXi -lXext
GLW_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXt $(TOP)/lib/GL.dylib
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
# omit glw lib for now:
SRC_DIRS = mesa glu glut/glx

View File

@@ -16,9 +16,9 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GL_LIB_DEPS =
OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -Wl,-search_paths_first -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lstdc++ -lgcc_s.1 -lm

View File

@@ -0,0 +1,26 @@
# Configuration for Darwin / MacOS X, making static libs
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-static
# Compiler and flags
CFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
-I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
-I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
MKLIB_OPTIONS = -static -archopt "-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS =
OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -Wl,-search_paths_first -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lstdc++ -lgcc_s.1 -lm

33
configs/darwin-x86ppc Normal file
View File

@@ -0,0 +1,33 @@
# Configuration for Darwin / MacOS X, making dynamic libs
include $(TOP)/configs/default
CONFIG_NAME = darwin
# Compiler and flags
CC = cc
CXX = cc
CFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
-I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk \
-I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
MKLIB_OPTIONS = -archopt "-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
# Library names (actual file names)
GL_LIB_NAME = libGL.dylib
GLU_LIB_NAME = libGLU.dylib
GLUT_LIB_NAME = libglut.dylib
GLW_LIB_NAME = libGLw.dylib
OSMESA_LIB_NAME = libOSMesa.dylib
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -lGL -lGLU -L/usr/X11R6/lib -lX11 -lXmu -lXi -lXext
GLW_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXt $(TOP)/lib/GL.dylib
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
# omit glw lib for now:
SRC_DIRS = mesa glu glut/glx

18
configs/debian-default Normal file
View File

@@ -0,0 +1,18 @@
# Define Debian-specific defaults.
CONFIG_NAME = debian-default
OPT_FLAGS = -O2 -g
CFLAGS += -fno-strict-aliasing
# override settings in configs/linux-x86-64
LIB_DIR = lib
EXTRA_LIB_PATH =
SRC_DIRS = mesa
PROGRAM_DIRS =
INSTALL_DIR = $(DESTDIR)/usr
# vim: ft=make

9
configs/debian-dri-amd64 Normal file
View File

@@ -0,0 +1,9 @@
# Configuration for building the DRI drivers on i386.
include $(TOP)/configs/linux-dri-x86-64
include $(TOP)/configs/debian-dri-default
CONFIG_NAME = debian-dri-amd64
# vim: ft=make

9
configs/debian-dri-any Normal file
View File

@@ -0,0 +1,9 @@
# Configuration for building the DRI drivers on the build architecture.
include $(TOP)/configs/linux-dri
include $(TOP)/configs/debian-dri-default
CONFIG_NAME = debian-dri-any
# vim: ft=make

View File

@@ -0,0 +1,36 @@
# Configuration defaults for building the DRI drivers and DRI/GLX-enabled
# libGL.
include $(TOP)/configs/debian-default
CONFIG_NAME = debian-dri-default
SRC_DIRS = glx/x11 mesa progs
DRIVER_DIRS = dri
PROGRAM_DIRS = xdemos
PROGS = glxdemo \
glxgears \
glxheads \
glxinfo
LIB_DIR = lib/glx
DRI_DRIVER_INSTALL_DIR = $(INSTALL_DIR)/lib/dri
DRI_DRIVER_SEARCH_DIR = /usr/lib/dri
DRI_DIRS = mach64 mga r128 r200 r300 radeon s3v savage tdfx trident
ARCH_X86 = i386 amd64
ifneq ($(findstring $(DEB_BUILD_ARCH), $(ARCH_X86)),)
DRI_DIRS += i810 i915 i915tex i965 sis unichrome
endif
ifeq ($(DEB_BUILD_ARCH), sparc)
DRI_DIRS += ffb
endif
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
# vim: ft=make

9
configs/debian-dri-i386 Normal file
View File

@@ -0,0 +1,9 @@
# Configuration for building the DRI drivers on i386.
include $(TOP)/configs/linux-dri-x86
include $(TOP)/configs/debian-dri-default
CONFIG_NAME = debian-dri-i386
# vim: ft=make

View File

@@ -0,0 +1,14 @@
# Configuration for building the DRI drivers on i386.
include $(TOP)/configs/linux-dri-x86
include $(TOP)/configs/debian-dri-optimized-default
CONFIG_NAME = debian-dri-i386-i686
ARCH_FLAGS = -march=i686
LIB_DIR = lib/glx/i686/cmov
DRI_DRIVER_INSTALL_DIR = $(INSTALL_DIR)/lib/dri/i686/cmov
# vim: ft=make

View File

@@ -0,0 +1,13 @@
# Configuration defaults for CPU-optimized builds of the DRI drivers and
# DRI/GLX-enabled libGL.
include $(TOP)/configs/debian-dri-default
CONFIG_NAME = debian-dri-optimized-default
# override so that the utility programs are not rebuilt with CPU-specific
# optimizations
SRC_DIRS = glx/x11 mesa
# vim: ft=make

9
configs/debian-osmesa Normal file
View File

@@ -0,0 +1,9 @@
# Configuration for building only OSMesa on Debian.
include $(TOP)/configs/linux-osmesa
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration defaults for building OSMesa.
include $(TOP)/configs/debian-default
CONFIG_NAME = debian-osmesa-default
DRIVER_DIRS = osmesa
# vim: ft=make

View File

@@ -0,0 +1,9 @@
# Configuration for building only OSMesa (static version) on Debian.
include $(TOP)/configs/linux-osmesa-static
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa-static
# vim: ft=make

10
configs/debian-osmesa16 Normal file
View File

@@ -0,0 +1,10 @@
# Configuration for building OSMesa with support for 16 bits per color
# channel.
include $(TOP)/configs/linux-osmesa16
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa16
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building a static version of OSMesa with support for 16
# bits per color channel.
include $(TOP)/configs/linux-osmesa16-static
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa16-static
# vim: ft=make

10
configs/debian-osmesa32 Normal file
View File

@@ -0,0 +1,10 @@
# Configuration for building OSMesa with support for 32 bits per color
# channel.
include $(TOP)/configs/linux-osmesa32
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa32
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building a static version of OSMesa with support for 32
# bits per color channel.
include $(TOP)/configs/linux-osmesa32-static
include $(TOP)/configs/debian-osmesa-default
CONFIG_NAME = debian-osmesa32-static
# vim: ft=make

View File

@@ -0,0 +1,12 @@
# Configuration for building Mesa (swx11 and GLU) on alpha (ev5 optimized).
include $(TOP)/configs/linux-alpha
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-alpha-ev5
SRC_DIRS = mesa
LIB_DIR = lib/ev5/cmov
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on amd64.
include $(TOP)/configs/linux-x86-64
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-amd64
# vim: ft=make

View File

@@ -0,0 +1,9 @@
# Configuration for building Mesa (swx11 and GLU) on the build architecture.
include $(TOP)/configs/linux
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-any
# vim: ft=make

View File

@@ -0,0 +1,14 @@
# Configuration defaults for building Mesa (swx11 and GLU).
include $(TOP)/configs/debian-default
CONFIG_NAME = debian-swx11+glu-default
SRC_DIRS = mesa glu glw
DRIVER_DIRS = x11
GLW_SOURCES += GLwMDrawA.c
GLW_LIB_DEPS += -lXm
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on i386.
include $(TOP)/configs/linux-x86
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-i386
# vim: ft=make

View File

@@ -0,0 +1,14 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on i386 (i686 optimized).
include $(TOP)/configs/linux-x86
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-i386-i686
ARCH_FLAGS += -march=i686
SRC_DIRS = mesa
LIB_DIR = lib/i686/cmov
# vim: ft=make

View File

@@ -0,0 +1,13 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on powerpc (603 optimized).
include $(TOP)/configs/linux-ppc
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-powerpc-603
SRC_DIRS = mesa
LIB_DIR = lib/603/cmov
# vim: ft=make

View File

@@ -0,0 +1,11 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on ppc64.
include $(TOP)/configs/debian-swx11+glu-any
CONFIG_NAME = debian-swx11+glu-ppc64
LIB_DIR = lib64
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on sparc.
include $(TOP)/configs/linux-sparc
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-sparc
# vim: ft=make

View File

@@ -0,0 +1,13 @@
# Configuration for building Mesa (swx11 and GLU) with runtime-detected
# assembler optimizations on sparc (ultrasparc-optimized).
include $(TOP)/configs/linux-ultrasparc
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-sparc-ultrasparc
SRC_DIRS = mesa
LIB_DIR = lib/ultrasparc/cmov
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building static versions of the libraries (swx11 and GLU)
# on amd64.
include $(TOP)/configs/linux-x86-64-static
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-static-amd64
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building static versions of the libraries (swx11 and GLU)
# on the build architecture.
include $(TOP)/configs/linux-static
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-static-any
# vim: ft=make

View File

@@ -0,0 +1,10 @@
# Configuration for building static versions of the libraries (swx11 and GLU)
# on i386.
include $(TOP)/configs/linux-x86-static
include $(TOP)/configs/debian-swx11+glu-default
CONFIG_NAME = debian-swx11+glu-static-i386
# vim: ft=make

View File

@@ -0,0 +1,11 @@
# Configuration for building static versions of the libraries (swx11 and GLU)
# on ppc64.
include $(TOP)/configs/debian-swx11+glu-static-any
CONFIG_NAME = debian-swx11+glu-static-ppc64
LIB_DIR = lib64
# vim: ft=make

View File

@@ -2,15 +2,17 @@
# This is included by other config files which may override some
# of these variables.
# Think of this as a base class from which configs are derived.
CONFIG_NAME = default
# Version info
MESA_MAJOR=6
MESA_MINOR=3
MESA_TINY=0
MESA_MINOR=5
MESA_TINY=2
# external projects
# external projects. This should be useless now that we use libdrm.
DRM_SOURCE_PATH=$(TOP)/../drm
# Compiler and flags
@@ -25,6 +27,11 @@ MKLIB_OPTIONS =
MKDEP = makedepend
MKDEP_OPTIONS = -fdepend
MAKE = make
INSTALL = $(TOP)/bin/minstall
# Python and flags (generally only needed by the developers)
PYTHON2 = python
PYTHON_FLAGS = -t -O -O
# Library names (base name)
GL_LIB = GL
@@ -35,11 +42,11 @@ OSMESA_LIB = OSMesa
# Library names (actual file names)
GL_LIB_NAME = libGL.so
GLU_LIB_NAME = libGLU.so
GLUT_LIB_NAME = libglut.so
GLW_LIB_NAME = libGLw.so
OSMESA_LIB_NAME = libOSMesa.so
GL_LIB_NAME = lib$(GL_LIB).so
GLU_LIB_NAME = lib$(GLU_LIB).so
GLUT_LIB_NAME = lib$(GLUT_LIB).so
GLW_LIB_NAME = lib$(GLW_LIB).so
OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
# Optional assembly language optimization files for libGL
@@ -50,19 +57,30 @@ ASM_SOURCES =
GLW_SOURCES = GLwDrawA.c
# Directories
LIB_DIR = $(TOP)/lib
INSTALL_PREFIX = /usr/local
# Directories to build
LIB_DIR = lib
SRC_DIRS = mesa glu glut/glx glw
GLU_DIRS = sgi
DRIVER_DIRS = x11 osmesa
# Which subdirs under $(TOP)/progs/ to enter:
PROGRAM_DIRS = demos redbook samples xdemos
# Library/program dependencies
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
#EXTRA_LIB_PATH ?=
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
# Installation directories (for make install)
INSTALL_DIR = /usr/local
DRI_DRIVER_INSTALL_DIR = /usr/X11R6/lib/modules/dri
# Where libGL will look for DRI hardware drivers
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)

75
configs/default-bp Normal file
View File

@@ -0,0 +1,75 @@
# Default/template configuration
# This is included by other config files which may override some
# of these variables.
CONFIG_NAME = default
# Version info
MESA_MAJOR=6
MESA_MINOR=3
MESA_TINY=0
# external projects
#DRM_SOURCE_PATH=$(TOP)/../drm
DRM_SOURCE_PATH=/home/projects/DRI-freedesktop/drm
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -O
CXXFLAGS = -O
GLU_CFLAGS =
# Misc tools and flags
MKLIB_OPTIONS =
MKDEP = makedepend
MKDEP_OPTIONS = -fdepend
MAKE = make
# Library names (base name)
GL_LIB = GL
GLU_LIB = GLU
GLUT_LIB = glut
GLW_LIB = GLw
OSMESA_LIB = OSMesa
# Library names (actual file names)
GL_LIB_NAME = lib$(GL_LIB).so
GLU_LIB_NAME = lib$(GLU_LIB).so
GLUT_LIB_NAME = lib$(GLUT_LIB).so
GLW_LIB_NAME = lib$(GLW_LIB).so
OSMESA_LIB_NAME = lib$(OSMesa).so
# Optional assembly language optimization files for libGL
ASM_SOURCES =
# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
# order to build the Motif widget too)
GLW_SOURCES = GLwDrawA.c
# Directories
LIB_DIR = $(TOP)/lib
INSTALL_PREFIX = /usr/local
SRC_DIRS = mesa glu glut/glx glw
GLU_DIRS = sgi
DRIVER_DIRS = x11 osmesa
# Which subdirs under $(TOP)/progs/ to enter:
PROGRAM_DIRS = demos redbook samples xdemos
# Library/program dependencies
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
# Shading language support (set to 0 or 1)
SHADING_LANGUAGE = 0

37
configs/diffs Normal file
View File

@@ -0,0 +1,37 @@
? default-bp
? diffs
? linux-dri-bp
? linux-tcc
Index: linux-icc-static
===================================================================
RCS file: /cvs/mesa/Mesa/configs/linux-icc-static,v
retrieving revision 1.4
diff -r1.4 linux-icc-static
9c9
< CXX = g++
---
> CXX = icpc
11c11
< CXXFLAGS = -O3
---
> CXXFLAGS = -O3 -tpp6 -axK -DPTHREADS
22,25c22,24
< GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
< GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
< APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
< MKLIB_OPTIONS = -arch icc
---
> GL_LIB_DEPS =
> GLUT_LIB_DEPS =
> APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm -lpthread -lcxa -lunwind
29,30d27
<
<
Index: linux-x86-64-static
===================================================================
RCS file: /cvs/mesa/Mesa/configs/linux-x86-64-static,v
retrieving revision 1.6
diff -r1.6 linux-x86-64-static
21a22,23
> APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) \
> $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lpthread -lstdc++ -lm

View File

@@ -5,13 +5,23 @@ include $(TOP)/configs/default
CONFIG_NAME = FreeBSD
# Compiler and flags
CC = gcc
CXX = g++
CC = cc
CXX = c++
MAKE = gmake
CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
CXXFLAGS = -O2 -fPIC -pedantic
OPT_FLAGS = -O2
PIC_FLAGS = -fPIC
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DUSE_XSHM \
-DHZ=100 -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES) -ffast-math -pedantic
CXXFLAGS += $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) $(X11_INCLUDES)
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
EXTRA_LIB_PATH = -L/usr/X11R6/lib
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) $(EXTRA_LIB_PATH) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lXext -lXmu -lXi -lX11 -lm

View File

@@ -11,23 +11,31 @@ CXX = g++
WARN_FLAGS = -Wall
OPT_FLAGS = -O
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
DEFINES = -DDRI_NEW_INTERFACE_ONLY
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math -I/usr/local/include $(X11_INCLUDES)
CXXFLAGS = $(DEFINES) -Wall -g -ansi -pedantic -fPIC
EXPAT_INCLUDES = -I/usr/local/include
X11_INCLUDES = -I/usr/X11R6/include
DEFINES = -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
-DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) -Wmissing-prototypes -std=c99 -Wundef -ffast-math \
$(ASM_FLAGS) $(X11_INCLUDES) $(DEFINES)
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(DEFINES) -Wall -ansi -pedantic $(ASM_FLAGS) $(X11_INCLUDES)
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -pthread
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = -L/usr/local/lib -lm -lpthread -lexpat $(LIBDRM_LIB)
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lm -lpthread $(LIBDRM_LIB)
GLUT_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGL -lXt -lXm -lX11
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/X11R6/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/X11R6/lib -lGL -lXt -lX11
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
SRC_DIRS = glx/x11 mesa glu glut/glx glw
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
@@ -36,6 +44,6 @@ DRM_SOURCE_PATH=$(TOP)/../drm
# ffb and gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx \
DRI_DIRS = i810 i915 i965 mach64 mga r128 r200 r300 radeon tdfx \
unichrome savage sis

10
configs/freebsd-dri-amd64 Normal file
View File

@@ -0,0 +1,10 @@
# -*-makefile-*-
# Configuration for freebsd-dri-amd64: FreeBSD DRI hardware drivers
include $(TOP)/configs/freebsd-dri
CONFIG_NAME = freebsd-dri-x86-64
ASM_FLAGS = -DUSE_X86_64_ASM
ASM_SOURCES = $(X86-64_SOURCES)
ASM_API = $(X86-64_API)

View File

@@ -10,3 +10,4 @@ PIC_FLAGS =
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -8,7 +8,7 @@ CONFIG_NAME = hpux10
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
APP_LIB_DEPS = -$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -12,5 +12,5 @@ CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/incl
CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE
GLUT_CFLAGS = -fexceptions
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -8,8 +8,8 @@ CONFIG_NAME = hpux10-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
MKLIB_OPTIONS = -static
@@ -26,5 +26,5 @@ OSMESA_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32
CC = cc
CXX = aCC
CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Aa +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = +z -Ae -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
@@ -23,4 +23,8 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)
GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
@@ -23,4 +23,5 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl

View File

@@ -8,9 +8,9 @@ CONFIG_NAME = hpux11-32-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0 -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
MKLIB_OPTIONS = -static

View File

@@ -8,13 +8,13 @@ CONFIG_NAME = hpux11-64
CC = cc
CXX = aCC
CFLAGS = +z -Ae +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Aa +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = +z -Ae +DD64 -O +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
LIBDIR = $(TOP)/lib64
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,4 +24,8 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)
GL_LIB_DEPS = -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -8,13 +8,13 @@ CONFIG_NAME = hpux11-64-static
CC = cc
CXX = aCC
CFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
CXXFLAGS = -O +DA2.0W -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
LIBDIR = $(TOP)/lib64
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
@@ -24,4 +24,4 @@ GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6/pa20_64 -L/usr/contrib/X11R6/lib/pa20_64 -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread -lCsup -lcl

30
configs/hpux11-ia64 Normal file
View File

@@ -0,0 +1,30 @@
# Configuration for HPUX IA64 v11, 64-bit
include $(TOP)/configs/default
CONFIG_NAME = hpux11-ia64
# Compiler and flags
CC = cc
CXX = aCC
CFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = +z -Ae +DD64 -O +DSmckinley -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS =
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.so
GLU_LIB_NAME = libGLU.so
GLUT_LIB_NAME = libglut.so
GLW_LIB_NAME = libGLw.so
OSMESA_LIB_NAME = libOSMesa.so
# Library/program dependencies
GL_LIB_DEPS = -L/usr/lib/X11R6/ -L/usr/contrib/X11R6/lib/ -lXext -lXmu -lXt -lXi -lX11 -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm -lCsup -lcl
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(GL_LIB_DEPS)
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)

View File

@@ -0,0 +1,27 @@
# Configuration for HPUX v11, 64-bit, static libs
include $(TOP)/configs/default
CONFIG_NAME = hpux11-ia64-static
# Compiler and flags
CC = cc
CXX = aCC
CFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
CXXFLAGS = -O +DD64 -Ae -D_HPUX_SOURCE +DSmckinley -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DPTHREADS
MKLIB_OPTIONS = -static
LIB_DIR = lib64
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
# Library/program dependencies
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lXt -lX11 -lpthread -lm -lCsup -lcl

View File

@@ -9,8 +9,8 @@ CC = cc
# XXX fix this
CXX = c++
CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM
CXXFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5
CFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM
CXXFLAGS = +z -O +Olibcalls +ESlit -Ae +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm

View File

@@ -8,7 +8,7 @@ CONFIG_NAME = hpux9-gcc
CC = cc
CXX = aCC
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
CFLAGS = -O +DAportable +z -Ae -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
CXXFLAGS = -O +DAportable +Z -Ae -D_HPUX_SOURCE
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm

View File

@@ -7,12 +7,11 @@ CONFIG_NAME = irix6-64
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
CXXFLAGS = -64 -O3 -ansi -woff 1174
MKLIB_OPTIONS = -archopt 64
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
APP_LIB_DEPS = -L$(LIB_DIR) -64 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lpthread -lm

View File

@@ -7,15 +7,15 @@ CONFIG_NAME = irix6-64-static
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
CXXFLAGS = -64 -O3 -ansi -woff 1174
MKLIB_OPTIONS = -archopt 64 -static
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -64 -O3 -ansi -woff 1174 -DPTHREADS
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
APP_LIB_DEPS = -L$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
@@ -23,3 +23,4 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a

View File

@@ -7,12 +7,11 @@ CONFIG_NAME = irix6-n32
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM
CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552
MKLIB_OPTIONS = -archopt n32
CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552 -DPTHREADS
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lpthread -lm

View File

@@ -7,15 +7,15 @@ CONFIG_NAME = irix6-n32-static
# Compiler and flags
CC = cc
CXX = CC
CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt n32 -static
CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM -DPTHREADS
CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666 -DPTHREADS
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lpthread -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a

View File

@@ -9,11 +9,10 @@ CC = cc
CXX = CC
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt o32
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -rpath $(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm

View File

@@ -9,13 +9,13 @@ CC = cc
CXX = CC
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
MKLIB_OPTIONS = -archopt o32 -static
MKLIB_OPTIONS = -static
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
LIB_DIR = $(TOP)/lib32
LIB_DIR = lib32
APP_LIB_DEPS = -L$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a

View File

@@ -8,13 +8,26 @@ CONFIG_NAME = linux
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
OPT_FLAGS = -O3 -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. Add -m32
# to build properly on 64-bit platforms.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DPTHREADS -DUSE_XSHM -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
$(DEFINES) $(ASM_FLAGS) $(X11_INCLUDES) -std=c99 -ffast-math
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(X11_INCLUDES)
GLUT_CFLAGS = -fexceptions
# Library/program dependencies
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
EXTRA_LIB_PATH = -L/usr/X11R6/lib

View File

@@ -12,7 +12,7 @@ CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm

View File

@@ -22,6 +22,6 @@ OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm

View File

@@ -1,20 +1,8 @@
# Configuration for debugging on Linux
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-debug
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
GLUT_CFLAGS = -fexceptions
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
OPT_FLAGS = -g -ansi -pedantic
DEFINES += -DDEBUG -DDEBUG_MATH

34
configs/linux-directfb Normal file
View File

@@ -0,0 +1,34 @@
# Configuration for DirectFB
include $(TOP)/configs/default
CONFIG_NAME = linux-directfb
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -Wall -O3 -ffast-math -fPIC -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE -D_SVID_SOURCE \
-D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DPTHREADS
CXXFLAGS = -Wall -O3 -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
HAVE_X86 = $(shell uname -m | grep 'i[3-6]86' >/dev/null && echo yes)
ifeq ($(HAVE_X86), yes)
CFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
CXXFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)
endif
# Directories
SRC_DIRS = mesa glu glut/directfb
GLU_DIRS = sgi
DRIVER_DIRS = directfb
PROGRAM_DIRS = demos directfb
# Library/program dependencies
GL_LIB_DEPS = -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB)
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -l$(GLU_LIB) -l$(GLUT_LIB)

View File

@@ -9,45 +9,61 @@ CONFIG_NAME = linux-dri
CC = gcc
CXX = g++
MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
WARN_FLAGS = -Wall
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DDRI_NEW_INTERFACE_ONLY -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
-DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(ASM_FLAGS) -std=c99 $(PIC_FLAGS) -ffast-math \
$(DEFINES)
CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) \
$(DEFINES)
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
EXTRA_LIB_PATH=-L/usr/X11R6/lib
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl \
$(LIBDRM_LIB)
# This is now 0 by default since it seems to confuse the hell out of people
# and generate a lot of extra noise on bugzilla. If you need to build with
# EGL, do 'make linux-dri USING_EGL=1'
USING_EGL=0
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = egl
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS =
endif
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
# ffb and gamma are missing because they have not been converted to use the new
# gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon s3v \
savage sis tdfx trident unichrome
DRI_DIRS = i810 i915tex i915 i965 mach64 mga r128 r200 r300 radeon s3v \
savage sis tdfx trident unichrome ffb

55
configs/linux-dri-bp Normal file
View File

@@ -0,0 +1,55 @@
# -*-makefile-*-
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/default
CONFIG_NAME = linux-dri
# Compiler and flags
CC = gcc
CXX = g++
MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
WARN_FLAGS = -Wall
OPT_FLAGS = -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DDRI_NEW_INTERFACE_ONLY -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
ASM_SOURCES =
# Library/program dependencies
EXTRA_LIB_PATH=-L/usr/X11R6/lib
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
GLUT_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = $(EXTRA_LIB_PATH) -L$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
# Directories
SRC_DIRS = glx/x11 mesa glu glut/glx glw
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
# ffb and gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon s3v \
savage sis tdfx trident unichrome fb

View File

@@ -13,5 +13,5 @@ ASM_SOURCES = $(PPC_SOURCES)
# Build only the drivers for cards that exist on PowerPC. At some point MGA
# will be added, but not yet.
DRI_DIRS = dri_client mach64 r128 r200 radeon tdfx
DRI_DIRS = mach64 r128 r200 r300 radeon tdfx

View File

@@ -8,5 +8,10 @@ CONFIG_NAME = linux-dri-x86
# Unnecessary on x86, generally.
PIC_FLAGS =
# Add -m32 to CFLAGS:
ARCH_FLAGS = -m32
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -1,40 +1,24 @@
# -*-makefile-*-
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/default
include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-x86-64
# Compiler and flags
CC = gcc
CXX = g++
ARCH_FLAGS = -m64
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -D_GNU_SOURCE -D__AMD64__
ASM_FLAGS = -DUSE_X86_64_ASM
ASM_SOURCES = $(X86-64_SOURCES)
ASM_API = $(X86-64_API)
CFLAGS = -m64 -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math $(DEFINES)
CXXFLAGS = -m64 -Wall -g -ansi -pedantic -fPIC $(DEFINES)
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
#ASM_SOURCES = $(X86_SOURCES)
LIB_DIR = $(TOP)/lib64
LIB_DIR = lib64
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
EXTRA_LIB_PATH=-L/usr/X11R6/lib64
# Directories
SRC_DIRS = mesa glu glut/glx glw glx/x11
DRIVER_DIRS = dri
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
# ffb, gamma, and sis are missing because they have
# not be converted to use the new interface. Do i810 & i830 really
# need to be included here?
# ffb, gamma, and sis are missing because they have not be converted to use
# the new interface. i810 are missing because there is no x86-64
# system where they could *ever* be used.
#
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome savage
DRI_DIRS = i915tex i915 i965 mach64 mga r128 r200 radeon tdfx unichrome savage r300

68
configs/linux-dri-xcb Normal file
View File

@@ -0,0 +1,68 @@
# -*-makefile-*-
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
include $(TOP)/configs/default
CONFIG_NAME = linux-dri-xcb
# Compiler and flags
CC = gcc
CXX = g++
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
OPT_FLAGS = -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER \
-DGLX_DIRECT_RENDERING -DHAVE_ALIAS -DUSE_XCB -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = `pkg-config --cflags-only-I x11` `pkg-config --cflags-only-I xcb` `pkg-config --cflags-only-I x11-xcb` `pkg-config --cflags-only-I xcb-glx`
CFLAGS = -Wall -Wmissing-prototypes $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) \
$(DEFINES) $(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
ASM_SOURCES =
# Library/program dependencies
EXTRA_LIB_PATH=`pkg-config --libs-only-L x11`
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl \
$(LIBDRM_LIB) `pkg-config --libs xcb` `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`
# This is now 0 by default since it seems to confuse the hell out of people
# and generate a lot of extra noise on bugzilla. If you need to build with
# EGL, do 'make linux-dri USING_EGL=1'
USING_EGL=0
# Directories
ifeq ($(USING_EGL), 1)
SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS = egl
else
SRC_DIRS = glx/x11 mesa glu glut/glx glw
PROGRAM_DIRS =
endif
DRIVER_DIRS = dri
WINDOW_SYSTEM=dri
# gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = i810 i915 mach64 mga r128 r200 r300 radeon s3v \
savage sis tdfx trident unichrome ffb

16
configs/linux-fbdev Normal file
View File

@@ -0,0 +1,16 @@
# Configuration for Linux fbdev interface
include $(TOP)/configs/linux
CONFIG_NAME = linux-fbdev
CFLAGS = -O3 -ffast-math -ansi -pedantic -fPIC -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -DUSE_GLFBDEV_DRIVER
SRC_DIRS = mesa glu glut/fbdev
DRIVER_DIRS = fbdev osmesa
PROGRAM_DIRS = fbdev demos redbook samples
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread
OSMESA_LIB_DEPS = -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lgpm -lm

View File

@@ -15,6 +15,6 @@ GLUT_CFLAGS = -fexceptions
# Library/program dependencies
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm

21
configs/linux-ia64-icc Normal file
View File

@@ -0,0 +1,21 @@
# Configuration for Linux with Intel C compiler
include $(TOP)/configs/default
CONFIG_NAME = linux-icc
# Compiler and flags
CC = icc
CXX = icpc
CFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -KPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -arch icc-istatic
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(GL_LIB_DEPS)
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB)

View File

@@ -0,0 +1,27 @@
# Configuration for Linux with Intel C compiler, static libs
include $(TOP)/configs/default
CONFIG_NAME = linux-icc-static
# Compiler and flags
CC = icc
CXX = icpc
CFLAGS = -O3 -ansi -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3 -ansi -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static -arch icc-istatic
# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS =
GLU_LIB_DEPS =
GLUT_LIB_DEPS =
GLW_LIB_DEPS =
APP_LIB_DEPS = -i-static -cxxlib-icc -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lpthread -lm -lcxa -lunwind

View File

@@ -13,9 +13,10 @@ GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -arch icc
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

View File

@@ -6,9 +6,9 @@ CONFIG_NAME = linux-icc-static
# Compiler and flags
CC = icc
CXX = g++
CXX = icpc
CFLAGS = -O3 -tpp6 -axK -D_GCC_LIMITS_H_ -D__GNUC__ -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
CXXFLAGS = -O3
CXXFLAGS = -O3 -tpp6 -axK -DPTHREADS
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static -arch icc
@@ -19,11 +19,9 @@ GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
MKLIB_OPTIONS = -arch icc
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
GL_LIB_DEPS =
GLUT_LIB_DEPS =
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm -lpthread -lcxa -lunwind
ASM_SOURCES = $(X86_SOURCES)
ASM_API = $(X86_API)

50
configs/linux-indirect Normal file
View File

@@ -0,0 +1,50 @@
# -*-makefile-*-
# Configuration for linux-indirect: Builds a libGL capable of indirect
# rendering, but *NOT* capable of direct rendering.
include $(TOP)/configs/default
CONFIG_NAME = linux-dri
# Compiler and flags
CC = gcc
CXX = g++
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
#MKDEP_OPTIONS = -MF depend
WARN_FLAGS = -Wall
OPT_FLAGS = -O -g
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE \
-DGLX_INDIRECT_RENDERING \
-DPTHREADS -DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
X11_INCLUDES = -I/usr/X11R6/include
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
ASM_SOURCES =
# Library/program dependencies
EXTRA_LIB_PATH=-L/usr/X11R6/lib
DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
# Directories
SRC_DIRS = glx/x11 glu glut/glx glw
DRIVER_DIRS =
PROGRAM_DIRS =
WINDOW_SYSTEM=dri

25
configs/linux-osmesa Normal file
View File

@@ -0,0 +1,25 @@
# Configuration for building only libOSMesa on Linux, no Xlib driver
# This doesn't really have any Linux dependencies, so it should be usable
# on other (gcc-based) systems.
include $(TOP)/configs/default
CONFIG_NAME = linux-osmesa
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS = osdemos
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa -lGLU

View File

@@ -0,0 +1,14 @@
# Configuration for building only libOSMesa on Linux, no Xlib driver
# This doesn't really have any Linux dependencies, so it should be usable
# on other (gcc-based) systems.
include $(TOP)/configs/linux-osmesa
CONFIG_NAME = linux-osmesa-static
# Compiler and flags
MKLIB_OPTIONS = -static
# Library names
OSMESA_LIB_NAME = libOSMesa.a

View File

@@ -24,4 +24,5 @@ PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa16

View File

@@ -24,4 +24,5 @@ PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa32

View File

@@ -0,0 +1,28 @@
# Configuration for 32 bits/channel OSMesa library on Linux
include $(TOP)/configs/default
CONFIG_NAME = linux-osmesa32-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
MKLIB_OPTIONS = -static
# Library names
OSMESA_LIB = OSMesa32
OSMESA_LIB_NAME = libOSMesa32.a
# Directories
SRC_DIRS = mesa glu
DRIVER_DIRS = osmesa
PROGRAM_DIRS =
# Dependencies
OSMESA_LIB_DEPS = -lm -lpthread
APP_LIB_DEPS = -lOSMesa32

View File

@@ -1,18 +1,9 @@
# Configuration for Linux on PPC
include $(TOP)/configs/default
include $(TOP)/configs/linux
CONFIG_NAME = linux-ppc
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
OPT_FLAGS = -O3 -mcpu=603 -fsigned-char -funroll-loops
# FIXME: Use of PowerPC assembly should be enabled here.

View File

@@ -1,15 +1,9 @@
# Configuration for Linux on PPC, static libs
include $(TOP)/configs/default
include $(TOP)/configs/linux-ppc
CONFIG_NAME = linux-ppc-static
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
GLUT_CFLAGS = -fexceptions
MKLIB_OPTIONS = -static
# Library names (actual file names)
@@ -18,9 +12,3 @@ GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm

29
configs/linux-profile Normal file
View File

@@ -0,0 +1,29 @@
# Configuration for profiling on Linux with gprof
include $(TOP)/configs/default
CONFIG_NAME = linux-profile
# Compiler and flags
CC = gcc
CXX = g++
CFLAGS = -pg -O -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG
CXXFLAGS = -pg -O -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG
GLUT_CFLAGS = -fexceptions
# Need to have -L/usr/X11R6/lib in these:
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
# Need to make static libs for profiling:
MKLIB_OPTIONS = -static
GL_LIB_NAME = lib$(GL_LIB).a
GLU_LIB_NAME = lib$(GLU_LIB).a
GLUT_LIB_NAME = lib$(GLUT_LIB).a
GLW_LIB_NAME = lib$(GLW_LIB).a
OSMESA_LIB_NAME = lib$(OSMesa).a
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread

View File

@@ -8,26 +8,36 @@ CONFIG_NAME = linux-solo
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE
WARN_FLAGS = -Wall -Wundef
OPT_FLAGS = -O3 -g
PIC_FLAGS = -fPIC
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
ARCH_FLAGS ?=
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
-D_BSD_SOURCE -D_GNU_SOURCE -DHAVE_POSIX_MEMALIGN \
-DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DDRM_USE_MALLOC -DIN_DRI_DRIVER
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
$(ASM_FLAGS) -std=c99 -ffast-math
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
ASM_SOURCES = $(X86_SOURCES)
ASM_SOURCES =
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl -L$(TOP)/$(LIB_DIR)
GL_LIB_DEPS = -lm -lpthread -ldl
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
SRC_DIRS = glx/mini mesa glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
#DRI_DIRS = fb ffb gamma sis savage
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
#DRI_DIRS = ffb gamma sis savage
DRI_DIRS = i810 i915 mach64 mga r128 r200 radeon tdfx unichrome fb

View File

@@ -1,29 +1,7 @@
# Configuration for linux-solo-ia64: Linux DRI hardware drivers for fbdev
include $(TOP)/configs/default
include $(TOP)/configs/linux-solo
CONFIG_NAME = linux-solo-ia64
# Compiler and flags
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
DRI_DIRS = fb mach64 mga r128 r200 radeon sis tdfx unichrome

View File

@@ -1,32 +1,13 @@
# Configuration for linux-solo: Linux DRI hardware drivers for fbdev
# -*-makefile-*-
# Configuration for linux-solo-x86: Linux hardware drivers for fbdev for x86
include $(TOP)/configs/default
include $(TOP)/configs/linux-solo
CONFIG_NAME = linux-solo-x86
# Compiler and flags
CC = gcc
CXX = g++
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS
CFLAGS = $(DEFINES) -Wmissing-prototypes -O3 -g -std=c99 -Wundef -fPIC -ffast-math
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
# Unnecessary on x86, generally.
PIC_FLAGS =
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
# Library/program dependencies
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
GL_LIB_DEPS = -lm -lpthread -ldl
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
# Directories
SRC_DIRS = mesa glx/mini glu glut/mini
DRIVER_DIRS = dri
PROGRAM_DIRS = miniglx
#DRI_DIRS = fb ffb gamma sis savage
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
ASM_API = $(X86_API)

Some files were not shown because too many files have changed in this diff Show More