Compare commits

..

100 Commits

Author SHA1 Message Date
Brian
70d227ac62 7.0.3 release candidate 3 2008-04-01 18:04:13 -06:00
Eric Anholt
7f2c4f96f5 Bug #13492: Only call ProgramStringNotify if program parsing succeeded.
Wine intentionally tries some out-of-spec programs to test strictness, and
calling ProgramStringNotify on the results of a failed program parse resulted
in crashes in the 965 driver.
(cherry picked from commit 185320ae13)
2008-04-01 16:27:48 -07:00
Roland Scheidegger
667f0f60fc fix mistakenly set ATIFragmentShader._Enabled bit (bug 15269) 2008-04-01 23:25:04 +02:00
Brian
7592b8cc10 added some missing calls to _mesa_enable_x_y_extensions() 2008-04-01 08:41:24 -06:00
Brian
f55b831859 fix ARB f/v program comment parsing bug 2008-03-31 15:00:18 -06:00
Markus Amsler
217f7f7e5d fix parsing bug involving comments at the end of ARB v/f programs 2008-03-31 15:00:18 -06:00
Xiang, Haihao
1e83d70b6d i965: Apply -ve rhw to 965. Fix the regression introduced by
commit da476ff02d. (bug#14940)
2008-03-31 09:37:55 +08:00
Brian
767dfa5b9c fix texture/renderbuffer mix-up in test_attachment_completeness() 2008-03-28 13:25:25 -06:00
Alan Hourihane
7ff5b38126 Fix build problems 2008-03-27 16:36:12 +00:00
Brian
e209f5300d updated glext.h to version 40 2008-03-25 08:11:47 -06:00
Brian
3c4b50c352 updated to version 40 2008-03-25 08:11:36 -06:00
Brian
4e7c2fcf18 add GL_READ_FRAMEBUFFER_BINDING_EXT case, regenerate get.c file 2008-03-24 19:55:46 -06:00
Brian
22534f94f5 fix wrong values for GL_READ/DRAW_FRAMEBUFFER_BINDING_EXT tokens 2008-03-24 19:55:04 -06:00
Brian
1a6928fdbe use ctx->Driver.DeleteProgram() in a few more places 2008-03-22 10:27:08 -06:00
Brian
325dbbac47 delete default programs with ctx->Driver.DeleteProgram() 2008-03-22 09:11:35 -06:00
Brian
39ac6b0481 Fix some PBO breakage.
In _mesa_Bitmap, can't early return if bitmap ptr is NULL, it may be an offset
into a PBO.  Similarly for _mesa_GetTexImage.
2008-03-21 12:32:29 -06:00
Brian
46cc4854e9 fix IEEE_ONE definition for ICC compiler (bug 15134) 2008-03-19 17:25:18 -06:00
Alan Hourihane
f93882512e set outputs_safe to 0 as it's possible for the code generation
to slip over the allocated memory for the vb.

pull in sse fixes from gallium-0.1
2008-03-19 01:03:48 +00:00
Markus Amsler
0dee2a4f6f only set InputsRead bit if input is really used 2008-03-17 08:35:34 -06:00
Brian
3cebc35669 init tmpNode to zeros 2008-03-14 14:16:00 -06:00
Brian Paul
e75a204fb9 mesa: fix emit_clamp() so that we don't use an output register as temporary
IR_CLAMP is decomposed into OPCODE_MIN+OPCODE_MAX.  Allocate a temporary
register for the intermediate value so we don't inadvertantly use an output
register (which are write-only on some GPUs).
2008-03-14 13:57:53 -06:00
Roland Scheidegger
ac06a5c16a fix state.lightprod ambient/specular w value (bug #14983) 2008-03-13 12:43:53 +01:00
Dan Nicholson
ed758fee0c Merge branch '7.0-glx' into mesa_7_0_branch 2008-03-10 16:45:49 -07:00
Jeremy Huddleston
a21c61ee8b Darwin: Fixed small error in darwin config files 2008-03-10 16:02:55 -07:00
Dan Nicholson
24697da20e glapi: Resync generated files with 7.0 branch
The previous commits pulled in the generated files from master. This
regenerates the files from the source on the 7.0 branch.
2008-03-10 15:17:59 -07:00
Jeremy Huddleston
7120c0089d Darwin: Config/source fixes to now build glxdemo apps and OSMesa
Also added darwin-fat-32bit darwin-fat-all configs and deleted old darwin-x86ppc config
2008-03-10 15:13:44 -07:00
Dan Nicholson
88a436a8f7 glapi: Generate xserver glapi sources in the mesa tree
Instead of generating the glapi sources for the xserver and commiting
them to the xserver tree, we can keep them in the mesa tree and change
the xserver build to use the files from the mesa tree.

This makes the xserver glx build more robust as it reduces the chances
for mismatches of the glX API used in the xserver vs. in mesa.
(cherry picked from commit 7688791fc5)
2008-03-10 15:03:13 -07:00
Dan Nicholson
2fdb5a245d glapi: Correct prerequisites for gl_and_glX_API.xml
The indirect_dispatch.h and indirect_table.c source files use
gl_and_glX_API.xml in their generation rather than glX_API.xml, but it
wasn't listed in their prerequisites. In turn, gl_and_glX_API.xml uses
glX_API.xml, but this is already listed in $(COMMON_GLX).
(cherry picked from commit 929b6d2ebf)
2008-03-10 15:03:01 -07:00
Dan Nicholson
8441b53538 glapi: Use make automatic variables to clean up the commands
Make use of the make automatic variables $@ (the target) and $< (first
prerequisite) to clean up the commands for the glapi generation. This
improves readability and guards against typos since words are repeated
less frequently.
(cherry picked from commit fc67d47708)
2008-03-10 15:02:51 -07:00
Dan Nicholson
d336df8b73 glapi: Use variable for indent and flags
Put the path to indent and the flags to call it with in configs/default
rather than in the Makefile. This makes it easier to change the values
globally.
(cherry picked from commit 817af9bec2)
2008-03-10 15:02:36 -07:00
Brian
8aaf805b8a fix parsing of state.texenv.color (bug 14931) 2008-03-10 07:41:31 -06:00
Markus Amsler
8161fd2785 Set normalized flag for GLubyte arrays in _mesa_VertexAttribPointerNV() 2008-03-09 17:53:00 -06:00
Markus Amsler
2f23025dfe init vertex weight attrib to (1,0,0,0) 2008-03-09 17:51:21 -06:00
Brian
1867eac230 fix __builtin_expect() definition test for IBM XLC (sf bug 1909832) 2008-03-09 10:54:50 -06:00
Roland Scheidegger
096e35d05f state.depth.range alpha value should be 1, not 0 (bug #14733) 2008-03-01 02:57:01 +01:00
Xiang, Haihao
8998f52b97 Don't Swap buffer if a DRIDrawable is entirely obscured by another window. 2008-02-28 11:43:54 +01:00
Brian
0fd38dcc83 Replace glut_fbc.c with glut_fcb.c (cb=callback) 2008-02-25 10:57:54 -07:00
Brian
ff63cf8068 bump libGL.so version number 2008-02-22 07:59:39 -07:00
Brian
4716670de9 prep for 7.0.3 rc-2 2008-02-21 16:59:20 -07:00
Brian
33c5b38034 latest bug fixes 2008-02-20 09:39:59 -07:00
Brian
5737d6c565 Fix point rasterization regression caused by commit 95a2eb9767
Even-sized, non-AA points need 0.5 bias in position to hit the right pixels.
Test program from bug report 11016 retested and is OK.
2008-02-20 09:38:16 -07:00
Brian
08a7f56c6a raise GL_INVALID_OPERATION if glProgramString compilation fails
cherry picked from master.
2008-02-20 09:00:49 -07:00
Brian
7916f2b4aa Fix glBegin-time test for invalid programs/shaders.
Cherry picked from master.
2008-02-20 08:56:20 -07:00
Brian
193d303ac7 Added <size name="Get" mode="get"/> lines for point parameter tokens.
Cherry picked from master
2008-02-19 08:46:39 -07:00
Jeremy Huddleston
e70609b7b8 Apple: Pulled in changes from Apple's patchset to allow mesa to build on darwin again 2008-02-19 00:54:35 -08:00
Xiang, Haihao
da476ff02d i965: new integrated graphics chipset support 2008-02-19 15:59:50 +08:00
Brian
77e3b5d28b Fix potential glDrawPixels(GL_DEPTH_COMPONENT) crashes (bug 13915)
Also, general clean-up of the Xlib-optimized glDraw/CopyPixels code.
2008-02-16 09:56:26 -07:00
Brian
bf97ca448c Fix glBindTexture crash (bug 14514) 2008-02-15 13:42:19 -07:00
Roland Scheidegger
c5f8ff8b32 fix bug with generated fragment programs if vertex shader is active
When generating a fragment program from fixed function, checking
texUnit->_ReallyEnabled is not sufficient, need texUnit->Enabled too
since the former also represents texture enables from an active vertex
shader.
2008-02-15 17:26:58 +01:00
caner
50465766d1 miniglx doc updates 2008-02-14 09:34:08 -07:00
Xiang, Haihao
7d8df58a63 _mesa_swizzle_ubyt_image: Don't use single swizzle_copy call
if components don't match. fix #13508
2008-02-13 07:07:47 -07:00
Andy Skinner
762c074012 added -altopts to allow overriding all other opts 2008-02-07 13:19:55 -07:00
Brian
51f2ee3bfb fix bug 9871 2008-02-06 07:55:26 -07:00
Brian
b5cd34aa21 Fix bug 9871: enable user-defined clip planes for R300
Patch provided by Erkin Bahceci <erkinbah@gmail.com>
2008-02-06 07:54:24 -07:00
Tony DeFeo
ae5c6dcd42 [965] Fix memory leak when deleting buffers with backing store. 2008-02-05 10:49:44 -08:00
Roland Scheidegger
97196d0c8c regenerate glsl library functions 2008-01-31 01:36:23 +01:00
Roland Scheidegger
f6de56b88a fix w component of glsl vec4 asin 2008-01-31 01:35:52 +01:00
Brian
d64ea43b76 fix bugs 13507, 14293 2008-01-30 08:12:06 -07:00
Brian
2deaf93d24 check if fb->Delete is null (bugs 13507,14293) 2008-01-30 08:12:06 -07:00
Alex Deucher
a107ec8300 Add new RV380 pci id
bug 14289
(cherry picked from commit 80efe27560)
2008-01-29 10:15:32 -05:00
Alex Deucher
120a1f9508 Merge branch 'mesa_7_0_branch' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into mesa_7_0_branch 2008-01-29 09:50:26 -05:00
Alex Deucher
bb84007a57 R300: RV410 SE chips have half the pipes of regular RV410
This fixes 3D rendering on x700 SE chips.  Reported
by Kano.
(cherry picked from commit 0b7e0f8159)
2008-01-29 09:46:48 -05:00
Alan Hourihane
86234e55a6 pull some more fixes for pbo access from trunk 2008-01-28 11:23:53 +00:00
Alan Hourihane
61972077cd fix some pbo path problems 2008-01-28 11:15:53 +00:00
Xiang, Haihao
5a7feb8ea2 i965: valid message length includes message header. 2008-01-25 17:23:55 +08:00
Xiang, Haihao
4b4c131cd0 i965: re-define the type of reg.loopcount.
avoid some issues such that 1 + (-2) gets a big
positive value.
2008-01-25 17:23:15 +08:00
Brian
0fd23f01c6 Assorted patches for miniglx/linux-solo (Gavin Li <codeview@gmail.com>) 2008-01-23 16:04:02 -07:00
Adam Jackson
557b0d9df7 glxinfo: Fix multisample visual reporting.
strstr() == 0 tests for the string _not_ being present.  Originally
Red Hat bug #351871.
2008-01-22 14:04:39 -07:00
Brian
888f4380cf fix GLX vertex array bug 14197 2008-01-22 08:41:22 -07:00
Brian
3266c5e95a fix pc vs. gc->ps usage (bug 14197) 2008-01-22 08:38:48 -07:00
Brian
834decdaae Don't build yuvrect_client by default
Added 'extra' rule to build optional yuvrect_client, shape, xdemo programs
2008-01-22 07:56:31 -07:00
Brian
18b2d83173 remove unused var 2008-01-22 07:54:37 -07:00
Alexey Sokolov
30c65c3c62 define M_PI if needed 2008-01-22 07:42:40 -07:00
Brian
04fcc4cf1e prep for 7.0.3 release 2008-01-21 16:21:39 -07:00
Michel Dänzer
48ae5cf09d i965: Fix byte vs. pixel unit mixup for aligned texture pitch.
I sincerely hope I don't manage to mess this up yet again...

Thanks again to Todd Merrill for pointing out the problem and testing the fix
on IRC.
2008-01-14 16:30:58 +01:00
Michel Dänzer
45cdb6eb45 i965: Fix unresolved symbol intel_miptree_pitch_align.
For some reason, I thought that function was shared with i915tex... The good
news is that i965 gets to keep the lower pitch alignment requirements.

Thanks to Todd Merrill for pointing out the problem on IRC.
2008-01-11 16:32:39 +01:00
Keith Packard
b9f3f732aa i915tex: Centralize mipmap pitch computations.
mipmap pitches must account for the device alignment requirements, which
used to be fairly simple; just align to a 4-byte boundary. However, to allow
textures to be drawn to under TTM, they now need to be aligned to a 64-byte
boundary. Placing all of the alignment constraints in a single function
allows this new constraint to be applied uniformly.

There was some pitch constraining code in intel_miptree_create, but that was
modifying the pitch long after the miptree had been layed out, so it only
served to wreck the mipmap and cause rendering errors.

(cherry picked from commit a183efc132 with manual
changes for mesa_7_0_branch by Michel Dänzer. One side effect of this is that
i965 also aligns the pitch of 2D textures to multiples of 64 bytes, hopefully
that won't cause any issues)
2008-01-08 16:48:13 +01:00
Brian
17006ddd6b fix 3d proxy texture depth bug 2008-01-05 15:44:51 -07:00
Brian
b77a354df3 fix depth/1 typo in glTexImage3D proxy code 2008-01-05 15:44:51 -07:00
Brian
71d46beebf additional stub functions 2008-01-02 07:23:41 -07:00
Brian
454e296eb1 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-02 07:20:08 -07:00
Brian
f9b696be2b fix vbo display list memleak upon context destruction 2008-01-01 10:23:56 -07:00
Brian
c923edbc71 additional GL_COLOR_ATTACHMENTx_EXT cases (bug 13767) 2008-01-01 10:10:18 -07:00
Brian
e20c1d987f fix GLSL uniform/attrib bugs (13753) 2008-01-01 09:59:51 -07:00
Bruce Merry
cd354eb10f Convert to 0/1 when setting boolean uniforms
Also add some extra tests to the shader_api regression tests
2008-01-01 09:59:51 -07:00
Bruce Merry
e9ac27ee23 Make use of count in _mesa_uniform_matrix 2008-01-01 09:59:50 -07:00
Bruce Merry
3f9dc9f5b6 Add a test program to test for assorted bugs in shader_api.c 2008-01-01 09:59:50 -07:00
Bruce Merry
ba709875ae More fixes to shader_api
- return GL_INVALID_OPERATION instead of GL_INVALID_VALUE if location is bad
- correct the type-checking of uniforms from my previous commit
- accept location of -1 in _mesa_uniform_matrix
2008-01-01 09:59:50 -07:00
Bruce Merry
80f8397b35 Fix several bugs relating to uniforms and attributes in GLSL API
- fix sizes for GL_FLOAT_MAT2x3 and GL_FLOAT_MAT4x3 in sizeof_glsl_type
- fix size returns in _mesa_get_active_attrib
- fix out-of-bounds array access to vec_types in _mesa_get_active_attrib
- fix queries of matrix uniforms in _mesa_get_uniformfv
- fix _mesa_get_uniformfv to only return one base, even from an array
- allow location == -1 in _mesa_uniform
- validate types in _mesa_uniform
- allow array overruns in _mesa_uniform
2008-01-01 09:59:50 -07:00
Brian
b45fa27fa1 added 'get' info for framebuffer object tokens 2008-01-01 09:26:30 -07:00
Brian
b59480645d add 'Get' info for MAX_3D_TEXTURE_SIZE (for bug 13811) 2008-01-01 09:04:13 -07:00
Brian
148cb36979 add missing double quote (bug 13878) 2008-01-01 07:59:58 -07:00
Roland Scheidegger
c1eb78f7ff fix GL_LINE_LOOP with drivers using own render pipeline stage (#12410, #13527)
primitive needs to include the begin/end flags (broken since vbo-0.2). Should
fix missing first/last line segment on gamma, i810, i915, mga, r200, radeon,
s3v, savage, unichrome (r300 already correct). Tested on r200, fixes #13527.
2007-12-22 18:49:42 +01:00
Brian
8aa0fd6b20 glGetActiveUniform fix 2007-12-20 09:08:12 -07:00
Brian
a1b3a908f5 return correct size from glGetActiveUniform (bug 13751) 2007-12-20 09:08:12 -07:00
Xiang, Haihao
f9e70d951a i965: allocate GRF registers before building subroutines,
it ensures there are sufficient registers for all subroutines.
2007-12-19 10:44:00 +08:00
Xiang, Haihao
41ed6be1da i965: restore the flag after building the subroutine of the
GS thread. fix #13240
2007-12-19 10:36:56 +08:00
Brian
27de28fc3e Remove -I$(TOP)/src/mesa/transform 2007-12-18 17:07:11 -07:00
Brian
dd2f01c229 simplify update two-side lighting test (follow-on to previous front/back-face changes) 2007-12-18 16:28:36 -07:00
Brian
deb5c56c77 fix NEED_SECONDARY_COLOR for vert/frag progs 2007-12-18 16:28:36 -07:00
759 changed files with 162306 additions and 6590 deletions

10
.gitignore vendored Normal file
View File

@@ -0,0 +1,10 @@
*.a
*.o
*.so
*.sw[a-z]
*.pc
*~
depend
depend.bak
lib
lib64

View File

@@ -71,9 +71,10 @@ bluegene-osmesa \
bluegene-xlc-osmesa \
catamount-osmesa-pgi \
darwin \
darwin-fat-32bit \
darwin-fat-all \
darwin-static \
darwin-static-x86ppc \
darwin-x86ppc \
freebsd \
freebsd-dri \
freebsd-dri-amd64 \
@@ -166,10 +167,10 @@ ultrix-gcc:
# Rules for making release tarballs
DIRECTORY = Mesa-7.0.3
LIB_NAME = MesaLib-7.0.3
DEMO_NAME = MesaDemos-7.0.3
GLUT_NAME = MesaGLUT-7.0.3
DIRECTORY = Mesa-7.0.3-rc3
LIB_NAME = MesaLib-7.0.3-rc3
DEMO_NAME = MesaDemos-7.0.3-rc3
GLUT_NAME = MesaGLUT-7.0.3-rc3
MAIN_FILES = \
$(DIRECTORY)/Makefile* \
@@ -415,6 +416,7 @@ GLUT_FILES = \
$(DIRECTORY)/src/glut/fbdev/Makefile \
$(DIRECTORY)/src/glut/fbdev/*[ch] \
$(DIRECTORY)/src/glut/mini/*[ch] \
$(DIRECTORY)/src/glut/mini/glut.pc.in \
$(DIRECTORY)/src/glut/directfb/Makefile \
$(DIRECTORY)/src/glut/directfb/NOTES \
$(DIRECTORY)/src/glut/directfb/*[ch] \

View File

@@ -71,6 +71,7 @@ do
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 ' -altopts OPTS alternate options to override all others'
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'
@@ -111,7 +112,6 @@ do
DEPS="$DEPS $1"
;;
'-pthread')
# for FreeBSD
DEPS="$DEPS -pthread"
;;
'-cplusplus')
@@ -135,6 +135,10 @@ do
shift 1;
ARCHOPT=$1
;;
'-altopts')
shift 1;
ALTOPTS=$1
;;
'-noprefix')
NOPREFIX=1
;;
@@ -225,6 +229,10 @@ case $ARCH in
OPTS="-m32 ${OPTS}"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
# make lib
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
@@ -235,6 +243,9 @@ case $ARCH in
echo "mklib: Making" $ARCH "static library: " ${LIBNAME}
LINK="ar"
OPTS="-ru"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
# make lib
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
@@ -270,6 +281,9 @@ case $ARCH in
if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
OPTS="-m32 ${OPTS}"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
if [ x${PATCH} = "x" ] ; then
VERSION="${MAJOR}.${MINOR}"
@@ -352,7 +366,9 @@ case $ARCH in
if [ "${SPARCV9}" ] ; then
OPTS="${OPTS} -xarch=v9"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# for debug:
#echo "mklib: linker is" ${LINK} ${OPTS}
if [ $NOPREFIX = 1 ] ; then
@@ -383,6 +399,9 @@ case $ARCH in
# No "lib" or ".so" part
echo "mklib: Making FreeBSD shared library: " ${LIBNAME}
OPTS="-shared"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
rm -f ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
FINAL_LIBS=${LIBNAME}
@@ -396,6 +415,9 @@ case $ARCH in
else
SHLIB="lib${LIBNAME}.so.${MAJOR}"
OPTS="-shared -Wl,-soname,${SHLIB}"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
echo "mklib: Making FreeBSD shared library: " ${SHLIB}
rm -f ${SHLIB}
${LINK} ${OPTS} ${LDFLAGS} -o ${SHLIB} ${OBJECTS} ${DEPS}
@@ -449,6 +471,10 @@ case $ARCH in
exit 1
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
if [ $CPLUSPLUS = 1 ] ; then
LINK="CC"
else
@@ -529,6 +555,10 @@ case $ARCH in
}
}' | sort -u >> ${EXPFILE}
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# On AIX a shared library is linked differently when
# you want to dlopen the file
if [ $DLOPEN = "1" ] ; then
@@ -580,6 +610,9 @@ case $ARCH in
echo "mklib: Making Darwin static library: " ${LIBNAME}
LINK="ar"
OPTS="-ruvs"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
FINAL_LIBS=${LIBNAME}
else
@@ -591,19 +624,37 @@ case $ARCH in
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}"
if [ ${EXPORTS} ] ; then
OPTS="${OPTS} -exported_symbols_list ${EXPORTS}"
fi
LINKNAME="lib${LIBNAME}.${MAJOR}.${LIBSUFFIX}"
LINKNAME2="lib${LIBNAME}.${LIBSUFFIX}"
LIBNAME="lib${LIBNAME}.${MAJOR}.${MINOR}.${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
ABI_PPC=`file $1 | grep ' ppc'`
ABI_I386=`file $1 | grep ' i386'`
ABI_PPC64=`file $1 | grep ' ppc64'`
ABI_X86_64=`file $1 | grep ' x86_64'`
if [ "${ABI_PPC}" ] ; then
OPTS="${OPTS} -arch ppc"
fi
if [ "${ABI_I386}" ] ; then
OPTS="${OPTS} -arch i386"
fi
if [ "${ABI_PPC64}" ] ; then
OPTS="${OPTS} -arch ppc64"
fi
if [ "${ABI_X86_64}" ] ; then
OPTS="${OPTS} -arch x86_64"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# XXX can we always add -isysroot /Developer/SDKs/MacOSX10.4u.sdk
# to OPTS here?
@@ -616,9 +667,11 @@ case $ARCH in
fi
echo "mklib: Making Darwin shared library: " ${LIBNAME}
${LINK} ${OPTS} ${LDFLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
ln -s ${LIBNAME} ${LINKNAME}
FINAL_LIBS="${LIBNAME} ${LINKNAME}"
ln -s ${LIBNAME} ${LINKNAME2}
FINAL_LIBS="${LIBNAME} ${LINKNAME} ${LINKNAME2}"
fi
;;
@@ -670,6 +723,9 @@ case $ARCH in
echo "mklib: Making Intel ICC static library: " ${LIBNAME}.a
LINK="ar"
OPTS="-ruv"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# make lib
${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
# finish up
@@ -680,6 +736,9 @@ case $ARCH in
else
OPTS="-shared"
fi
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
VERSION="${MAJOR}.${MINOR}.${PATCH}"
echo "mklib: Making Intel ICC shared library: " ${LIBNAME}.so.${VERSION}
@@ -744,6 +803,9 @@ case $ARCH in
echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a
LINK="ar"
OPTS="-ru"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
# make lib
${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
ranlib ${LIBNAME}.a
@@ -751,6 +813,9 @@ case $ARCH in
FINAL_LIBS=${LIBNAME}.a
else
OPTS="-shared -Wl,-export-all -Wl,--out-implib=${LIBNAME}-${MAJOR}.dll.a"
if [ "${ALTOPTS}" ] ; then
OPTS=${ALTOPTS}
fi
echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}-${MAJOR}.dll
if [ $CPLUSPLUS = 1 ] ; then

1
configs/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
current

View File

@@ -4,11 +4,18 @@ include $(TOP)/configs/default
CONFIG_NAME = darwin
DEFINES = -D_DARWIN_C_SOURCE -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L \
-D_SVID_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE \
-DPTHREADS -DGLX_ALIAS_UNSUPPORTED -DGLX_INDIRECT_RENDERING
# Compiler and flags
CC = cc
CXX = cc
CFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CXXFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
CC = gcc
CXX = gcc
CFLAGS = -I/usr/X11/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin $(DEFINES)
CXXFLAGS = -I/usr/X11/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin $(DEFINES)
CFLAGS += $(RC_CFLAGS)
CXXFLAGS += $(RC_CFLAGS)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
@@ -21,13 +28,13 @@ 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
GL_LIB_DEPS = -L/usr/X11/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
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11/lib -lX11 -lXmu -lXt -lXi -lm
# omit glw lib for now:
SRC_DIRS = mesa glu glut/glx
SRC_DIRS = glx/x11 glu glut/glx mesa
DRIVER_DIRS = osmesa

7
configs/darwin-fat-32bit Normal file
View File

@@ -0,0 +1,7 @@
# Configuration for Darwin / MacOS X, making 32bit fat dynamic libs
RC_CFLAGS=-arch ppc -arch i386
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-fat-32bit

7
configs/darwin-fat-all Normal file
View File

@@ -0,0 +1,7 @@
# Configuration for Darwin / MacOS X, making 32bit and 64bit fat dynamic libs
RC_CFLAGS=-arch ppc -arch i386 -arch ppc64 -arch x86_64
include $(TOP)/configs/darwin
CONFIG_NAME = darwin-fat-all

View File

@@ -1,37 +0,0 @@
# 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"
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
# 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

View File

@@ -1,17 +0,0 @@
# Define Debian-specific defaults.
CONFIG_NAME = debian-default
OPT_FLAGS = -O2 -g
# override settings in configs/linux-x86-64
LIB_DIR = lib
EXTRA_LIB_PATH =
SRC_DIRS = mesa
PROGRAM_DIRS =
INSTALL_DIR = /usr
# vim: ft=make

View File

@@ -1,9 +0,0 @@
# 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

View File

@@ -1,9 +0,0 @@
# 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

@@ -1,36 +0,0 @@
# 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

View File

@@ -1,9 +0,0 @@
# 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

@@ -1,14 +0,0 @@
# 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

@@ -1,13 +0,0 @@
# 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

View File

@@ -1,7 +0,0 @@
# Configuration defaults for building GLX-enabled libGL.
include $(TOP)/configs/debian-dri-default
CONFIG_NAME = debian-indirect-default
DRI_DIRS =

View File

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

View File

@@ -1,9 +0,0 @@
# 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

@@ -1,14 +0,0 @@
# Configuration defaults for building OSMesa.
include $(TOP)/configs/debian-default
CONFIG_NAME = debian-osmesa-default
DRIVER_DIRS = osmesa
ifeq ($(DEB_BUILD_ARCH), hppa)
OPT_FLAGS = -g -O0
endif
# vim: ft=make

View File

@@ -1,9 +0,0 @@
# 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

View File

@@ -1,10 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

View File

@@ -1,10 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,12 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,9 +0,0 @@
# 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

@@ -1,14 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,14 +0,0 @@
# 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

@@ -1,13 +0,0 @@
# 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

@@ -1,11 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,13 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,10 +0,0 @@
# 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

@@ -1,11 +0,0 @@
# 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

@@ -10,7 +10,7 @@ CONFIG_NAME = default
# Version info
MESA_MAJOR=7
MESA_MINOR=0
MESA_TINY=2
MESA_TINY=3
# external projects. This should be useless now that we use libdrm.
DRM_SOURCE_PATH=$(TOP)/../drm
@@ -30,9 +30,11 @@ MKDEP_OPTIONS = -fdepend
MAKE = make
INSTALL = $(TOP)/bin/minstall
# Python and flags (generally only needed by the developers)
# Tools for regenerating glapi (generally only needed by the developers)
PYTHON2 = python
PYTHON_FLAGS = -t -O -O
INDENT = indent
INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
# Library names (base name)
GL_LIB = GL

View File

@@ -1,75 +0,0 @@
# 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

View File

@@ -1,55 +0,0 @@
# -*-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

@@ -1,14 +0,0 @@
# 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

@@ -1,28 +0,0 @@
# 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,22 +0,0 @@
# Configuration for debugging on Linux
include $(TOP)/configs/default
CONFIG_NAME = linux-tcc
# Compiler and flags
CC = gcc
CXX = g++
TCC_DIR=/home/progs/tcc-0.9.20
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 -DUSE_TCC -I$(TCC_DIR)
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
GLUT_CFLAGS = -fexceptions
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L$(TCC_DIR) -ltcc -ldl
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
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm

1129
debian/changelog vendored

File diff suppressed because it is too large Load Diff

1
debian/compat vendored
View File

@@ -1 +0,0 @@
5

356
debian/control vendored
View File

@@ -1,356 +0,0 @@
Source: mesa
Section: graphics
Priority: optional
Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Uploaders: Thierry Reding <thierry@gilfi.de>, Julien Cristau <jcristau@debian.org>, David Nusinow <dnusinow@debian.org>, Brice Goglin <bgoglin@debian.org>
Standards-Version: 3.7.3
Build-Depends: debhelper (>= 5), quilt (>= 0.40), pkg-config, libdrm-dev (>= 2.2.0) [!hurd-i386], libx11-dev, xutils-dev, x11proto-gl-dev (>= 1.4.8), libxxf86vm-dev, libexpat1-dev, lesstif2-dev, dpkg-dev (>= 1.13.19), libxfixes-dev, libxdamage-dev, libxext-dev
Package: libgl1-mesa-swx11
Section: libs
Priority: extra
Architecture: any
Depends: ${shlibs:Depends}, libosmesa6 (>= 6.5.2-1)
Conflicts: mesag3-glide, mesag3-glide2, mesag3+ggi, libgl1, nvidia-glx, mesag3, libgl1-mesa-swrast
Provides: libgl1, mesag3, libgl1-mesa-swrast
Replaces: libgl1, mesag3, libgl1-mesa-swrast
Description: A free implementation of the OpenGL API -- runtime
Mesa is a 3-D graphics library with an API which is very similar to
that of OpenGL. To the extent that Mesa utilizes the OpenGL command
syntax or state machine, it is being used with authorization from
Silicon Graphics, Inc. However, the author makes no claim that Mesa
is in any way a compatible replacement for OpenGL or associated with
Silicon Graphics, Inc.
.
This library provides a pure software rasteriser; it does not provide
a direct rendering-capable library, or one which uses GLX. For that,
please see libgl1-mesa-glx.
.
On Linux, this library is also known as libGL or libGL.so.1.
Package: libgl1-mesa-swx11-dbg
Section: libdevel
Priority: extra
Architecture: any
Depends: libgl1-mesa-swx11 (= ${binary:Version})
Conflicts: libgl1-mesa-swrast-dbg
Provides: libgl1-mesa-swrast-dbg
Replaces: libgl1-mesa-swrast-dbg
Description: A free implementation of the OpenGL API -- debugging symbols
Mesa is a 3-D graphics library with an API which is very similar to
that of OpenGL. To the extent that Mesa utilizes the OpenGL command
syntax or state machine, it is being used with authorization from
Silicon Graphics, Inc. However, the author makes no claim that Mesa
is in any way a compatible replacement for OpenGL or associated with
Silicon Graphics, Inc.
.
This library provides a pure software rasteriser; it does not provide
a direct rendering-capable library, or one which uses GLX. For that,
please see libgl1-mesa-glx.
.
On Linux, this library is also known as libGL or libGL.so.1.
.
This package contains debugging symbols for the software rasterization GL
library.
Package: libgl1-mesa-swx11-i686
Section: libs
Priority: extra
Architecture: i386
Pre-Depends: libgl1-mesa-swx11
Description: Mesa OpenGL runtime [i686 optimized]
Mesa is a 3-D graphics library with an API which is very similar to
that of OpenGL. To the extent that Mesa utilizes the OpenGL command
syntax or state machine, it is being used with authorization from
Silicon Graphics, Inc. However, the author makes no claim that Mesa
is in any way a compatible replacement for OpenGL or associated with
Silicon Graphics, Inc.
.
This library provides a pure software rasteriser; it does not provide
a direct rendering-capable library, or one which uses GLX. For that,
please see libgl1-mesa-glx.
.
On Linux, this library is also known as libGL or libGL.so.1.
.
This set of libraries is optimized for i686 machines and will only be used if
you are running a 2.6 kernel on an i686 class CPU. This includes Pentium Pro,
Pentium II/II/IV, Celeron CPU's and similar class CPU's (including clones
such as AMD Athlon/Opteron, VIA C3 Nehemiah, but not VIA C3 Ezla).
Package: libgl1-mesa-swx11-dev
Section: libdevel
Priority: extra
Architecture: any
Depends: libgl1-mesa-swx11 (= ${binary:Version}), libc6-dev, libx11-dev, libxext6, mesa-common-dev (= ${source:Version})
Provides: libgl-dev, mesag-dev, libgl1-mesa-swrast-dev
Conflicts: mesa-dev, libgl-dev, mesag3 (<< 3.1-1), nvidia-glx-dev, mesag-dev, libgl1-mesa-swrast-dev
Replaces: libgl-dev, mesag-dev, libgl1-mesa-swrast-dev
Description: A free implementation of the OpenGL API -- development files
This package provides the development environment required for
compiling programs with Mesa. For a complete description of Mesa,
please look at the libgl1-mesa-swx11 package.
.
This library provides a pure software rasteriser; it does not provide
a direct rendering-capable library, or one which uses GLX. For that,
please see libgl1-mesa-dev.
Package: libgl1-mesa-glx
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Conflicts: libgl1, libgl1-mesa-dri (<< 6.4.0)
Replaces: libgl1, libgl1-mesa-dri (<< 6.4.0)
Provides: libgl1
Description: A free implementation of the OpenGL API -- GLX runtime
This version of Mesa provides GLX and DRI capabilities: it is capable of
both direct and indirect rendering. For direct rendering, it can use DRI
modules from the libgl1-mesa-dri package to accelerate drawing.
.
This package does not include the modules themselves: these can be found
in the libgl1-mesa-dri package.
.
For a complete description of Mesa, please look at the
libgl1-mesa-swx11 package.
Package: libgl1-mesa-glx-dbg
Section: libdevel
Priority: extra
Architecture: any
Depends: libgl1-mesa-glx (= ${binary:Version})
Description: Debugging symbols for the Mesa GLX runtime
This version of Mesa provides GLX and DRI capabilities: it is capable of
both direct and indirect rendering. For direct rendering, it can use DRI
modules from the libgl1-mesa-dri package to accelerate drawing.
.
This package does not include the modules themselves: these can be found
in the libgl1-mesa-dri package.
.
For a complete description of Mesa, please look at the
libgl1-mesa-swx11 package.
.
This package contains debugging symbols for the GL library with GLX and DRI
capabilities.
#Package: libgl1-mesa-glx-i686
#Section: libs
#Priority: extra
#Architecture: i386
#Pre-Depends: libgl1-mesa-glx
#Description: A free implementation of the OpenGL API -- GLX runtime [i686 optimized]
# This version of Mesa provides GLX and DRI capabilities: it is capable of
# both direct and indirect rendering. For direct rendering, it can use DRI
# modules from the libgl1-mesa-dri package to accelerate drawing.
# .
# This package does not include the modules themselves: these can be found
# in the libgl1-mesa-dri package.
# .
# For a complete description of Mesa, please look at the
# libgl1-mesa-swx11 package.
# .
# This set of libraries is optimized for i686 machines and will only be used if
# you are running a 2.6 kernel on an i686 class CPU. This includes Pentium Pro,
# Pentium II/II/IV, Celeron CPU's and similar class CPU's (including clones
# such as AMD Athlon/Opteron, VIA C3 Nehemiah, but not VIA C3 Ezla).
Package: libgl1-mesa-dri
Section: libs
Priority: optional
Architecture: alpha amd64 arm armeb armel hppa i386 ia64 kfreebsd-i386 kfreebsd-amd64 m68k mips mipsel powerpc s390 sparc
Depends: ${shlibs:Depends}, libgl1-mesa-glx (= ${binary:Version})
Suggests: libglide3
Conflicts: xlibmesa-dri (<< 1:7.0.0)
Replaces: xlibmesa-dri (<< 1:7.0.0)
Description: A free implementation of the OpenGL API -- DRI modules
This version of Mesa provides GLX and DRI capabilities: it is capable of
both direct and indirect rendering. For direct rendering, it can use DRI
modules from the libgl1-mesa-dri package to accelerate drawing.
.
This package does not include the OpenGL library itself, only the DRI
modules for accelerating direct rendering.
.
For a complete description of Mesa, please look at the
libgl1-mesa-swx11 package.
.
The tdfx DRI module needs libglide3 to enable direct rendering.
Package: libgl1-mesa-dri-dbg
Section: libdevel
Priority: extra
Architecture: alpha amd64 arm armeb armel hppa i386 ia64 kfreebsd-i386 kfreebsd-amd64 m68k mips mipsel powerpc s390 sparc
Depends: libgl1-mesa-dri (= ${binary:Version})
Description: Debugging symbols for the Mesa DRI modules
This version of Mesa provides GLX and DRI capabilities: it is capable of
both direct and indirect rendering. For direct rendering, it can use DRI
modules from the libgl1-mesa-dri package to accelerate drawing.
.
This package does not include the OpenGL library itself, only the DRI
modules for accelerating direct rendering.
.
For a complete description of Mesa, please look at the
libgl1-mesa-swx11 package.
.
This package contains debugging symbols for the DRI modules.
#Package: libgl1-mesa-dri-i686
#Section: libs
#Priority: extra
#Architecture: i386
#Pre-Depends: libgl1-mesa-dri
#Description: A free implementation of the OpenGL API -- DRI modules [i686 optimized]
# This version of Mesa provides GLX and DRI capabilities: it is capable of
# both direct and indirect rendering. For direct rendering, it can use DRI
# modules from the libgl1-mesa-dri package to accelerate drawing.
# .
# This package does not include the OpenGL library itself, only the DRI
# modules for accelerating direct rendering.
# .
# For a complete description of Mesa, please look at the
# libgl1-mesa-swx11 package.
# .
# This set of libraries is optimized for i686 machines and will only be used if
# you are running a 2.6 kernel on an i686 class CPU. This includes Pentium Pro,
# Pentium II/II/IV, Celeron CPU's and similar class CPU's (including clones
# such as AMD Athlon/Opteron, VIA C3 Nehemiah, but not VIA C3 Ezla).
Package: libgl1-mesa-dev
Section: libdevel
Architecture: all
Depends: libc6-dev, mesa-common-dev (= ${source:Version}), libgl1-mesa-glx (>= ${source:Upstream-Version})
Conflicts: libgl-dev, libgl1-mesa-dri-dev
Replaces: libgl-dev, libgl1-mesa-dri-dev
Provides: libgl-dev, libgl1-mesa-dri-dev
Description: A free implementation of the OpenGL API -- GLX development files
This version of Mesa provides GLX and DRI capabilities: it is capable of
both direct and indirect rendering. For direct rendering, it can use DRI
modules from the libgl1-mesa-dri package to accelerate drawing.
.
This package includes headers and static libraries for compiling
programs with Mesa.
.
For a complete description of Mesa, please look at the libgl1-mesa-swx11
package.
Package: mesa-common-dev
Section: libdevel
Architecture: all
Replaces: xlibmesa-gl-dev (<< 1:7), xlibosmesa-dev, libgl1-mesa-swx11-dev (<< 6.5.2), libgl1-mesa-dev (<< 6.5.2)
Depends: libx11-dev
Description: Developer documentation for Mesa
This package includes the specifications for the Mesa-specific OpenGL
extensions, the complete set of release notes and the development header
files common to all Mesa packages.
Package: libosmesa6
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Replaces: libgl1-mesa-swx11 (<< 6.5.2)
Description: Mesa Off-screen rendering extension
OSmesa is a Mesa extension that allows programs to render to an
off-screen buffer using the OpenGL API without having to create a
rendering context on an X Server. It uses a pure software renderer.
.
This package provides both 16-bit and 32-bit versions of the off-screen
renderer which do not require external libraries to work.
Package: libosmesa6-dev
Section: libdevel
Architecture: any
Depends: libosmesa6 (= ${binary:Version}), mesa-common-dev (= ${source:Version}) | libgl-dev
Conflicts: xlibosmesa-dev, libosmesa4-dev, libosmesa-dev
Replaces: xlibosmesa-dev, libosmesa-dev, libgl1-mesa-swx11-dev (<< 6.5.2), mesa-common-dev (<< 6.5.2)
Provides: xlibosmesa-dev, libosmesa-dev
Description: Mesa Off-screen rendering extension -- development files
This package provides the required environment for developing programs
that use the off-screen rendering extension of Mesa.
.
For more information on OSmesa see the libosmesa6 package.
Package: libglu1-mesa
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, libgl1-mesa-glx | libgl1
Provides: libglu1
Conflicts: mesag3 (<< 5.0.0-1), xlibmesa3, libglu1
Replaces: libglu1
Description: The OpenGL utility library (GLU)
GLU offers simple interfaces for building mipmaps; checking for the
presence of extensions in the OpenGL (or other libraries which follow
the same conventions for advertising extensions); drawing
piecewise-linear curves, NURBS, quadrics and other primitives
(including, but not limited to, teapots); tesselating surfaces; setting
up projection matrices and unprojecting screen coordinates to world
coordinates.
.
On Linux, this library is also known as libGLU or libGLU.so.1.
.
This package provides the SGI implementation of GLU shipped with the
Mesa package (ergo the "-mesa" suffix).
Package: libglu1-mesa-dev
Section: libdevel
Architecture: any
Depends: libglu1-mesa (= ${binary:Version}), libgl1-mesa-dev | libgl-dev
Provides: libglu-dev, xlibmesa-glu-dev
Conflicts: mesag-dev (<< 5.0.0-1), mesa-glide2-dev (<< 5.0.0-1), mesag3+ggi-dev (<< 5.0.0-1), xlibmesa-dev
Replaces: libglu-dev
Description: The OpenGL utility library -- development files
Includes headers and static libraries for compiling programs with GLU.
.
For a complete description of GLU, please look at the libglu1-mesa
package.
Package: libglw1-mesa
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Provides: libglw1
Description: A free implementation of the OpenGL API -- runtime
Mesa is a 3-D graphics library with an API which is very similar to
that of OpenGL. To the extent that Mesa utilizes the OpenGL command
syntax or state machine, it is being used with authorization from
Silicon Graphics, Inc. However, the author makes no claim that Mesa
is in any way a compatible replacement for OpenGL or associated with
Silicon Graphics, Inc.
.
This package provides a simple widgets library, libGLw, which
allows Motif-based applications to embed an OpenGL drawing context.
.
On Linux, this library is also known as libGLw or libGLw.so.1.
Package: libglw1-mesa-dev
Section: libdevel
Architecture: any
Depends: libglw1-mesa (= ${binary:Version}), libc6-dev, libx11-dev, libxext6, mesa-common-dev (= ${source:Version})
Provides: mesag3-widgets, mesag-widgets-dev, libglw-dev
Conflicts: libglw-dev, libgl1-mesa-swx11-dev (<< 6.5.2-4)
Replaces: libglw-dev
Description: A free implementation of the OpenGL API -- development files
This package provides the development environment required for
compiling programs with the Mesa widgets library, libGLw, which
allows Motif-based applications to embed an OpenGL drawing context.
The headers and static libraries for compiling programs that use this
library are included.
Package: mesa-swx11-source
Section: libdevel
Architecture: all
Description: Mesa software rasteriser source -- development files
This package contains the source to the Mesa software rasteriser, which
implements all of Mesa's GL support in software. It powers the X11 and
X server backends (assuming unaccelerated indirect). This package is
provided mainly for modular X servers which support GL, and need the
software rasteriser source to build the GLcore module for unaccelerated
indirect rendering.
Package: mesa-utils
Section: x11
Priority: optional
Architecture: any
Depends: ${shlibs:Depends}
Replaces: xbase-clients (<< 6.8.2-38)
Description: Miscellaneous Mesa GL utilities
This package provides several basic GL utilities built by Mesa, including
glxinfo and glxgears.
# vim: tw=0

444
debian/copyright vendored
View File

@@ -1,444 +0,0 @@
This package was debianized by James A. Treacy treacy@debian.org on Thu,
6 Jan 2000 01:11:34 -0500. It was newly debianized by Marcelo E.
Magallon <mmagallo@debian.org> on Sat, 25 Dec 2004 14:50:02 -0600. It was
again debianized by Thierry Reding <thierry@gilfi.de> on Sat, 14 Oct 2006
02:01:12 +0200.
It was downloaded from http://www.mesa3d.org/download.html
For more information see:
http://www.mesa3d.org/
Copyright:
Upstream Author: Brian Paul <brian.paul@tungstengraphics.com>
License:
License / Copyright Information
The Mesa distribution consists of several components. Different
copyrights and licenses apply to different components. For
example, GLUT is copyrighted by Mark Kilgard, some demo programs
are copyrighted by SGI, some of the Mesa device drivers are
copyrighted by their authors. See below for a list of Mesa's
components and the copyright/license for each.
The core Mesa library is licensed according to the terms of the
XFree86 copyright (an MIT-style license). This allows integration
with the XFree86/DRI project. Unless otherwise stated, the Mesa
source code and documentation is licensed as follows:
Copyright (C) 1999-2003 Brian Paul All Rights Reserved.
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:
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.
Attention, Contributors
When contributing to the Mesa project you must agree to relinquish
your work to the holder of the copyright for the particular
component you're contributing to. That is, you can't put your own
copyright on the code, unless it's a modular piece that can be
omitted from Mesa (like a new device driver). If for example, you
contribute a bug fix to Mesa's texture mapping code, your code
will become a part of the body of work which is copyrighted by
Brian Paul and licensed by the above terms.
----------------------------------------------------------------------
Some files, as listed below, are made available under the SGI Free B
license. This license is as follows:
SGI FREE SOFTWARE LICENSE B (Version 1.1 [02/22/2000])
1. Definitions.
1.1. "Additional Notice Provisions" means such additional provisions as
appear in the Notice in Original Code under the heading "Additional
Notice Provisions."
1.2. "Covered Code" means the Original Code or Modifications, or any
combination thereof.
1.3. "Hardware" means any physical device that accepts input, processes
input, stores the results of processing, and/or provides output.
1.4. "Larger Work" means a work that combines Covered Code or portions
thereof with code not governed by the terms of this License.
1.5. "Licensable" means having the right to grant, to the maximum extent
possible, whether at the time of the initial grant or subsequently
acquired, any and all of the rights conveyed herein.
1.6. "License" means this document.
1.7. "Licensed Patents" means patent claims Licensable by SGI that are
infringed by the use or sale of Original Code or any Modifications
provided by SGI, or any combination thereof.
1.8. "Modifications" means any addition to or deletion from the
substance or structure of the Original Code or any previous
Modifications. When Covered Code is released as a series of files,
a Modification is:
A. Any addition to the contents of a file containing Original Code
and/or addition to or deletion from the contents of a file
containing previous Modifications.
B. Any new file that contains any part of the Original Code or
previous Modifications.
1.9. "Notice" means any notice in Original Code or Covered Code, as
required by and in compliance with this License.
1.10. "Original Code" means source code of computer software code that
is described in the source code Notice required by Exhibit A as
Original Code, and updates and error corrections specifically
thereto.
1.11. "Recipient" means an individual or a legal entity exercising
rights under, and complying with all of the terms of, this License
or a future version of this License issued under Section 8. For
legal entities, "Recipient" includes any entity that controls, is
controlled by, or is under common control with Recipient. For
purposes of this definition, "control" of an entity means (a) the
power, direct or indirect, to direct or manage such entity, or (b)
ownership of fifty percent (50%) or more of the outstanding shares
or beneficial ownership of such entity.
1.12. "Recipient Patents" means patent claims Licensable by a Recipient
that are infringed by the use or sale of Original Code or any
Modifications provided by SGI, or any combination thereof.
1.13. "SGI" means Silicon Graphics, Inc.
1.14. "SGI Patents" means patent claims Licensable by SGI other than the
Licensed Patents.
2. License Grant and Restrictions.
2.1. SGI License Grant. Subject to the terms of this License and any
third party intellectual property claims, for the duration of
intellectual property protections inherent in the Original Code,
SGI hereby grants Recipient a worldwide, royalty-free,
non-exclusive license, to do the following: (i) under copyrights
Licensable by SGI, to reproduce, distribute, create derivative
works from, and, to the extent applicable, display and perform the
Original Code and/or any Modifications provided by SGI alone and/or
as part of a Larger Work; and (ii) under any Licensable Patents, to
make, have made, use, sell, offer for sale, import and/or otherwise
transfer the Original Code and/or any Modifications provided by
SGI. Recipient accepts the terms and conditions of this License by
undertaking any of the aforementioned actions. The patent license
shall apply to the Covered Code if, at the time any related
Modification is added, such addition of the Modification causes
such combination to be covered by the Licensed Patents. The patent
license in Section 2.1(ii) shall not apply to any other
combinations that include the Modification. No patent license is
provided under SGI Patents for infringements of SGI Patents by
Modifications not provided by SGI or combinations of Original Code
and Modifications not provided by SGI.
2.2. Recipient License Grant. Subject to the terms of this License and
any third party intellectual property claims, Recipient hereby
grants SGI and any other Recipients a worldwide, royalty-free,
non-exclusive license, under any Recipient Patents, to make, have
made, use, sell, offer for sale, import and/or otherwise transfer
the Original Code and/or any Modifications provided by SGI.
2.3. No License For Hardware Implementations. The licenses granted in
Section 2.1 and 2.2 are not applicable to implementation in
Hardware of the algorithms embodied in the Original Code or any
Modifications provided by SGI .
3. Redistributions.
3.1. Retention of Notice/Copy of License. The Notice set forth in
Exhibit A, below, must be conspicuously retained or included in any
and all redistributions of Covered Code. For distributions of the
Covered Code in source code form, the Notice must appear in every
file that can include a text comments field; in executable form,
the Notice and a copy of this License must appear in related
documentation or collateral where the Recipients rights relating
to Covered Code are described. Any Additional Notice Provisions
which actually appears in the Original Code must also be retained
or included in any and all redistributions of Covered Code.
3.2. Alternative License. Provided that Recipient is in compliance with
the terms of this License, Recipient may, so long as without
derogation of any of SGIs rights in and to the Original Code,
distribute the source code and/or executable version(s) of Covered
Code under (1) this License; (2) a license identical to this
License but for only such changes as are necessary in order to
clarify Recipients role as licensor of Modifications; and/or (3) a
license of Recipients choosing, containing terms different from
this License, provided that the license terms include this Section
3 and Sections 4, 6, 7, 10, 12, and 13, which terms may not be
modified or superseded by any other terms of such license. If
Recipient elects to use any license other than this License,
Recipient must make it absolutely clear that any of its terms which
differ from this License are offered by Recipient alone, and not by
SGI. It is emphasized that this License is a limited license, and,
regardless of the license form employed by Recipient in accordance
with this Section 3.2, Recipient may relicense only such rights, in
Original Code and Modifications by SGI, as it has actually been
granted by SGI in this License.
3.3. Indemnity. Recipient hereby agrees to indemnify SGI for any
liability incurred by SGI as a result of any such alternative
license terms Recipient offers.
4. Termination. This License and the rights granted hereunder will
terminate automatically if Recipient breaches any term herein and
fails to cure such breach within 30 days thereof. Any sublicense to
the Covered Code that is properly granted shall survive any
termination of this License, absent termination by the terms of such
sublicense. Provisions that, by their nature, must remain in effect
beyond the termination of this License, shall survive.
5. No Trademark Or Other Rights. This License does not grant any rights
to: (i) any software apart from the Covered Code, nor shall any
other rights or licenses not expressly granted hereunder arise by
implication, estoppel or otherwise with respect to the Covered Code;
(ii) any trade name, trademark or service mark whatsoever, including
without limitation any related right for purposes of endorsement or
promotion of products derived from the Covered Code, without prior
written permission of SGI; or (iii) any title to or ownership of the
Original Code, which shall at all times remains with SGI. All rights
in the Original Code not expressly granted under this License are
reserved.
6. Compliance with Laws; Non-Infringement. There are various worldwide
laws, regulations, and executive orders applicable to dispositions
of Covered Code, including without limitation export, re-export, and
import control laws, regulations, and executive orders, of the U.S.
government and other countries, and Recipient is reminded it is
obliged to obey such laws, regulations, and executive orders.
Recipient may not distribute Covered Code that (i) in any way
infringes (directly or contributorily) any intellectual property
rights of any kind of any other person or entity or (ii) breaches
any representation or warranty, express, implied or statutory, to
which, under any applicable law, it might be deemed to have been
subject.
7. Claims of Infringement. If Recipient learns of any third party claim
that any disposition of Covered Code and/or functionality wholly or
partially infringes the third party's intellectual property rights,
Recipient will promptly notify SGI of such claim.
8. Versions of the License. SGI may publish revised and/or new versions
of the License from time to time, each with a distinguishing version
number. Once Covered Code has been published under a particular
version of the License, Recipient may, for the duration of the
license, continue to use it under the terms of that version, or
choose to use such Covered Code under the terms of any subsequent
version published by SGI. Subject to the provisions of Sections 3
and 4 of this License, only SGI may modify the terms applicable to
Covered Code created under this License.
9. DISCLAIMER OF WARRANTY. COVERED CODE IS PROVIDED "AS IS." ALL
EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS ARE DISCLAIMED,
INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND CONDITIONS
OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR
PURPOSE, AND NON-INFRINGEMENT. SGI ASSUMES NO RISK AS TO THE QUALITY
AND PERFORMANCE OF THE SOFTWARE. SHOULD THE SOFTWARE PROVE DEFECTIVE
IN ANY RESPECT, SGI ASSUMES NO COST OR LIABILITY FOR SERVICING,
REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY IS AN ESSENTIAL
PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED
HEREUNDER EXCEPT SUBJECT TO THIS DISCLAIMER.
10. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES NOR LEGAL THEORY,
WHETHER TORT (INCLUDING, WITHOUT LIMITATION, NEGLIGENCE OR STRICT
LIABILITY), CONTRACT, OR OTHERWISE, SHALL SGI OR ANY SGI LICENSOR
BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR
CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, LOSS OF
DATA, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY
RESULTING FROM SGI's NEGLIGENCE TO THE EXTENT APPLICABLE LAW
PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO
THAT EXCLUSION AND LIMITATION MAY NOT APPLY TO RECIPIENT.
11. Indemnity. Recipient shall be solely responsible for damages
arising, directly or indirectly, out of its utilization of rights
under this License. Recipient will defend, indemnify and hold
harmless Silicon Graphics, Inc. from and against any loss,
liability, damages, costs or expenses (including the payment of
reasonable attorneys fees) arising out of Recipient's use,
modification, reproduction and distribution of the Covered Code or
out of any representation or warranty made by Recipient.
12. U.S. Government End Users. The Covered Code is a "commercial item"
consisting of "commercial computer software" as such terms are
defined in title 48 of the Code of Federal Regulations and all U.S.
Government End Users acquire only the rights set forth in this
License and are subject to the terms of this License.
13. Miscellaneous. This License represents the complete agreement
concerning the its subject matter. If any provision of this License
is held to be unenforceable, such provision shall be reformed so as
to achieve as nearly as possible the same legal and economic effect
as the original provision and the remainder of this License will
remain in effect. This License shall be governed by and construed
in accordance with the laws of the United States and the State of
California as applied to agreements entered into and to be
performed entirely within California between California residents.
Any litigation relating to this License shall be subject to the
exclusive jurisdiction of the Federal Courts of the Northern
District of California (or, absent subject matter jurisdiction in
such courts, the courts of the State of California), with venue
lying exclusively in Santa Clara County, California, with the
losing party responsible for costs, including without limitation,
court costs and reasonable attorneys fees and expenses. The
application of the United Nations Convention on Contracts for the
International Sale of Goods is expressly excluded. Any law or
regulation that provides that the language of a contract shall be
construed against the drafter shall not apply to this License.
Exhibit A
License Applicability. Except to the extent portions of this file are
made subject to an alternative license as permitted in the SGI Free
Software License B, Version 1.1 (the "License"), the contents of this
file are subject only to the provisions of the License. You may not use
this file except in compliance with the License. You may obtain a copy
of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
http://oss.sgi.com/projects/FreeB
Note that, as provided in the License, the Software is distributed on an
"AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
Original Code. The Original Code is: [name of software, version number,
and release date], developed by Silicon Graphics, Inc. The Original Code
is Copyright (c) [dates of first publication, as appearing in the Notice
in the Original Code] Silicon Graphics, Inc. Copyright in any portions
created by third parties is as indicated elsewhere herein. All Rights
Reserved.
Additional Notice Provisions: [such additional provisions, if any, as
appear in the Notice in the Original Code under the heading "Additional
Notice Provisions"]
--------------------------------------------------------------------------
Some other files listed below are made available from Silicon Graphics,
Inc. under a more liberal, MIT-style license, as follows:
Permission to use, copy, modify, and distribute this software for
any purpose and without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both the copyright notice
and this permission notice appear in supporting documentation, and that
the name of Silicon Graphics, Inc. not be used in advertising
or publicity pertaining to distribution of the software without specific,
written prior permission.
THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS"
AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE
INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE.
US Government Users Restricted Rights
Use, duplication, or disclosure by the Government is subject to
restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
(c)(1)(ii) of the Rights in Technical Data and Computer Software
clause at DFARS 252.227-7013 and/or in similar or successor
clauses in the FAR or the DOD or NASA FAR Supplement.
Unpublished-- rights reserved under the copyright laws of the
United States. Contractor/manufacturer is Silicon Graphics,
Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311.
--------------------------------------------------------------------------
Mesa Component Licenses:
Component Files Primary Author License
----------------------------------------------------------------------------
core Mesa code src/*.[ch] Brian Paul Mesa
include/GL/gl.h
GLX driver src/X/* Brian Paul Mesa
include/GL/glx.h
include/GL/xmesa.h
OS/Mesa driver src/OSmesa/* Brian Paul Mesa
include/GL/osmesa.h
3Dfx driver src/FX/* David Bucciarelli Mesa
include/GL/fxmesa.h
BeOS R4 driver mesa/drivers/beos/ Brian Paul Mesa
MGL driver include/GL/mglmesa.h SciTech, Inc GNU LGPL
Windows driver mesa/drivers/windows/ Li Wei GNU LGPL
include/GL/wmesa.h
SVGA driver mesa/drivers/svga/ Brian Paul GNU LGPL
include/GL/svgamesa.h
DOS driver mesa/drivers/dos/ Charlie Wallace GNU LGPL
include/GL/dosmesa.h
GGI driver mesa/drivers/ggi/ Uwe Maurer GNU LGPL
include/GL/ggimesa.h
GLUT src/glut/* Mark Kilgard Mark's copyright
include/GL/*glut*.h
GLU library src/glu/* Brian Paul GNU LGPL
SGI GLU library src/glu/sgi/* SGI SGI Free B
include/GL/glu.h
Ext registry include/GL/glext.h SGI SGI Free B
include/GL/glxext.h
demo programs progs/demos/* various see source files
X demos progs/xdemos/* Brian Paul see source files
SGI demos progs/samples/* SGI SGI MIT-style
RedBook demos progs/redbook/* SGI SGI MIT-style
On Debian systems the full text of the GNU LGPL license is found in
/usr/share/common-licenses/LGPL.
------------------------------------------------------------------------------
The Debian packaging is (C) 2006, Thierry Reding <thierry@gilfi.de> and
is licensed under the GPL, see `/usr/share/common-licenses/GPL'.

15
debian/glxdemo.1 vendored
View File

@@ -1,15 +0,0 @@
.TH glxdemo 1 "2006-11-29"
.SH NAME
glxdemo \- a demonstration of the GLX functions
.SH SYNOPSIS
.B glxdemo
.SH DESCRIPTION
The \fIglxdemo\fP program shows how to use the GLX functions in order to
create an OpenGL program running on top of an X server. This program is most
useful when studied in its source code form.
.SH AUTHOR
glxdemo was written by Brian Paul <brian.paul@tungstengraphics.com>.
.PP
This manual page was written by Thierry Reding <thierry@gilfi.de>, for the
Debian project (but may be used by others).

29
debian/glxgears.1 vendored
View File

@@ -1,29 +0,0 @@
.TH glxgears 1 "2006-11-29"
.SH NAME
glxgears \- ``gears'' demo for GLX
.SH SYNOPSIS
.B glxgears
.RI [ options ]
.SH DESCRIPTION
The \fIglxgears\fP program is a port of the ``gears'' demo to GLX. It displays
a set of rotating gears and prints out the frame rate at regular intervals. It
has become quite popular as basic benchmarking tool.
.SH OPTIONS
.TP 8
.B \-display \fIdisplay\fP
Specify which X display to run on.
.TP 8
.B \-info
Display OpenGL renderer information.
.TP 8
.B \-stereo
Use a stereo enabled GLX visual.
.TP 8
.B \-fullscreen
Run in fullscreen mode.
.SH AUTHOR
glxgears was written by Brian Paul <brian.paul@tungstengraphics.com>.
.PP
This manual page was written by Thierry Reding <thierry@gilfi.de>, for the
Debian project (but may be used by others).

30
debian/glxheads.1 vendored
View File

@@ -1,30 +0,0 @@
.TH glxheads 1 "2006-11-29"
.SH NAME
glxheads \- exercise multiple GLX connections
.SH SYNOPSIS
.B glxheads
[\fIdisplay\fP ...]
.SH DESCRIPTION
The \fIglxheads\fP program will try to open GLX connections on multiple X
displays as specified on the command-line. If a connection can be made it will
try to create a direct GLX context (and fallback to using indirect contexts if
that fails) and open a window displaying a spinning green triangle.
.PP
If no display names are specified, \fIglxheads\fP will default to opening a
single local connection on display 0.
.SH EXAMPLE
To open a local connection on display 0 and two remote connections to the
hosts \fImars\fP (display 0) and \fIvenus\fP (display 1), run glxheads with
the following command-line:
.PP
.RS 3n
.nf
$ glxheads :0 mars:0 venus:1
.fi
.RE
.SH AUTHOR
glxheads was written by Brian Paul <brian.paul@tungstengraphics.com>.
.PP
This manual page was written by Thierry Reding <thierry@gilfi.de> for the
Debian project (but may be used by others).

41
debian/glxinfo.1 vendored
View File

@@ -1,41 +0,0 @@
.TH glxinfo 1 "2006-11-29"
.SH NAME
glxinfo \- show information about the GLX implementation
.SH SYNOPSIS
.B glxinfo
.RI [ options ]
.SH DESCRIPTION
The \fIglxinfo\fP program shows information about the OpenGL and GLX
implementations running on a given X display.
.PP
The information includes details about the server- and client-side GLX
implementation, the OpenGL and GLU implementations as well as a list
of available GLX visuals.
.SH OPTIONS
.TP 8
.B \-v
Print visuals info in verbose form.
.TP 8
.B \-t
Print verbose table.
.TP 8
.B \-display \fIdisplay\fP
Specify the X display to interrogate.
.TP 8
.B \-h
Print usage information.
.TP 8
.B \-i
Force an indirect rendering context.
.TP 8
.B \-b
Find the ``best'' visual and print it's number.
.TP 8
.B \-l
Print interesting OpenGL limits.
.SH AUTHOR
glxinfo was written by Brian Paul <brian.paul@tungstengraphics.com>.
.PP
This manual page was written by Thierry Reding <thierry@gilfi.de>, for the
Debian project (but may be used by others).

View File

@@ -1 +0,0 @@
usr/lib/libGL.so

View File

@@ -1 +0,0 @@
usr/lib/dri/i686/cmov/*.so

View File

@@ -1 +0,0 @@
usr/lib/dri/*.so

View File

@@ -1 +0,0 @@
usr/lib/glx/i686/cmov/libGL.so.* usr/lib/i686/cmov

View File

@@ -1 +0,0 @@
usr/lib/glx/libGL.so.* usr/lib

View File

@@ -1 +0,0 @@
libGL 1 libgl1-mesa-glx | libgl1

View File

@@ -1,2 +0,0 @@
usr/lib/libGL.a
usr/lib/libGL.so

View File

@@ -1 +0,0 @@
usr/lib/i686/cmov/libGL.so.*

View File

@@ -1 +0,0 @@
libGL 1 libgl1-mesa-glx | libgl1

View File

@@ -1 +0,0 @@
usr/lib/libGL.so.*

View File

@@ -1 +0,0 @@
libGL 1 libgl1-mesa-glx | libgl1

View File

@@ -1,4 +0,0 @@
usr/include/GL/glu.h
usr/include/GL/glu_mangle.h
usr/lib/libGLU.a
usr/lib/libGLU.so

View File

@@ -1 +0,0 @@
usr/lib/libGLU.so.*

View File

@@ -1 +0,0 @@
libGLU 1 libglu1-mesa | libglu1

View File

@@ -1,3 +0,0 @@
usr/include/GL/GLw*A.h
usr/lib/libGLw.a
usr/lib/libGLw.so

View File

@@ -1 +0,0 @@
usr/lib/libGLw.so.*

View File

@@ -1 +0,0 @@
libGLw 1 libglw1-mesa | libglw1

View File

@@ -1,7 +0,0 @@
usr/include/GL/osmesa.h
usr/lib/libOSMesa.a
usr/lib/libOSMesa.so
usr/lib/libOSMesa16.a
usr/lib/libOSMesa16.so
usr/lib/libOSMesa32.a
usr/lib/libOSMesa32.so

View File

@@ -1,3 +0,0 @@
usr/lib/libOSMesa.so.*
usr/lib/libOSMesa16.so.*
usr/lib/libOSMesa32.so.*

View File

@@ -1,3 +0,0 @@
libOSMesa 6 libosmesa6 (>= 6.5.2-1) | libgl1-mesa-glide3
libOSMesa16 6 libosmesa6 (>= 6.5.2-1)
libOSMesa32 6 libosmesa6 (>= 6.5.2-1)

View File

@@ -1,8 +0,0 @@
docs/bugs.html
docs/debugging.html
docs/envvars.html
docs/faq.html
docs/osmesa.html
docs/RELNOTES-*
docs/relnotes*
docs/*.spec

View File

@@ -1,4 +0,0 @@
usr/include/GL/gl.h
usr/include/GL/glext.h
usr/include/GL/gl_mangle.h
usr/include/GL/glx*.h

View File

@@ -1 +0,0 @@
usr/share/mesa-source/*

View File

@@ -1,4 +0,0 @@
usr/bin/glxdemo
usr/bin/glxgears
usr/bin/glxheads
usr/bin/glxinfo

View File

@@ -1,4 +0,0 @@
debian/glxdemo.1
debian/glxgears.1
debian/glxheads.1
debian/glxinfo.1

View File

@@ -1,17 +0,0 @@
Patch that allows the Mesa makefile to create a LIB_DIR that is more than one
level below TOP.
This patch by Thierry Reding.
Not submitted to Mesa.
--- a/src/Makefile
+++ b/src/Makefile
@@ -29,7 +29,7 @@
done
$(TOP)/$(LIB_DIR):
- -mkdir $(TOP)/$(LIB_DIR)
+ mkdir -p $(TOP)/$(LIB_DIR)
clean:

View File

@@ -1,18 +0,0 @@
Do not build OSMesa for a standalone configuration, since Debian only ships
OSMesa in a separate package.
This patch by Thierry Reding.
Index: mesa/src/mesa/Makefile
===================================================================
--- mesa.orig/src/mesa/Makefile 2007-04-25 01:44:31.000000000 +0200
+++ mesa/src/mesa/Makefile 2007-04-25 01:44:58.000000000 +0200
@@ -105,7 +105,7 @@
$(OSMESA_DRIVER_OBJECTS)
-stand-alone: depend subdirs $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME)
+stand-alone: depend subdirs $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
osmesa-only: depend subdirs $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME)

View File

@@ -1,19 +0,0 @@
Patch that fixes Debian bug #349437.
This patch by David Nusinow.
Index: mesa/src/mesa/main/imports.h
===================================================================
--- mesa.orig/src/mesa/main/imports.h 2007-04-25 01:44:31.000000000 +0200
+++ mesa/src/mesa/main/imports.h 2007-04-25 01:45:04.000000000 +0200
@@ -158,8 +158,9 @@
*** USE_IEEE: Determine if we're using IEEE floating point
***/
#if defined(__i386__) || defined(__386__) || defined(__sparc__) || \
- defined(__s390x__) || defined(__powerpc__) || \
+ defined(__s390__) || defined(__s390x__) || defined(__powerpc__) || \
defined(__amd64__) || \
+ defined(__m68k__) || \
defined(ia64) || defined(__ia64__) || \
defined(__hppa__) || defined(hpux) || \
defined(__mips) || defined(_MIPS_ARCH) || \

View File

@@ -1,59 +0,0 @@
Allow the programs that are to be built to be defined in the build
configuration.
Provide an install target for installing the programs in $(INSTALL_DIR)/bin.
This patch by Thierry Reding.
Not submitted to Mesa.
--
Also remove references to GLU library since it is not required
and we don't actually build it at this point.
Index: mesa/progs/xdemos/Makefile
===================================================================
--- mesa.orig/progs/xdemos/Makefile 2007-11-11 00:34:12.000000000 +0100
+++ mesa/progs/xdemos/Makefile 2007-11-11 02:07:52.000000000 +0100
@@ -6,11 +6,11 @@
INCDIR = $(TOP)/include
-LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME)
+LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
-LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(APP_LIB_DEPS)
-PROGS = glthreads \
+PROGS ?= glthreads \
glxdemo \
glxgears \
glxgears_fbconfig \
@@ -46,6 +46,9 @@
default: $(PROGS)
+install: $(PROGS)
+ $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/bin
+ $(INSTALL) -m 755 $(PROGS) $(DESTDIR)$(INSTALL_DIR)/bin
clean:
-rm -f $(PROGS)
Index: mesa/progs/Makefile
===================================================================
--- mesa.orig/progs/Makefile 2007-11-11 00:34:12.000000000 +0100
+++ mesa/progs/Makefile 2007-11-11 02:06:48.000000000 +0100
@@ -21,8 +21,12 @@
fi \
done
-# Dummy install target
install:
+ @for dir in $(SUBDIRS) ; do \
+ if [ -d $$dir ] ; then \
+ (cd $$dir ; $(MAKE) install) ; \
+ fi \
+ done
clean:
@for dir in $(SUBDIRS) tests ; do \

View File

@@ -1,197 +0,0 @@
Index: mesa/configs/linux-osmesa
===================================================================
--- mesa.orig/configs/linux-osmesa 2007-11-11 00:24:07.000000000 +0100
+++ mesa/configs/linux-osmesa 2007-11-11 00:33:20.000000000 +0100
@@ -9,8 +9,17 @@
# 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
+
+PIC_FLAGS = -fPIC
+
+DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
+ -D_BSD_SOURCE -D_GNU_SOURCE \
+ -DPTHREADS -DUSE_XSHM -DHAVE_POSIX_MEMALIGN
+
+CFLAGS = -ansi -pedantic $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
+ $(ASM_FLAGS) -ffast-math
+
+CXXFLAGS = -ansi -pedantic $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES)
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
@@ -26,3 +35,4 @@
OSMESA_LIB_DEPS = -lm -lpthread
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa -lGLU
+
Index: mesa/configs/linux-osmesa-static
===================================================================
--- mesa.orig/configs/linux-osmesa-static 2007-11-11 00:24:01.000000000 +0100
+++ mesa/configs/linux-osmesa-static 2007-11-11 00:33:20.000000000 +0100
@@ -8,7 +8,8 @@
# Compiler and flags
MKLIB_OPTIONS = -static
+PIC_FLAGS =
# Library names
-OSMESA_LIB_NAME = libOSMesa.a
+OSMESA_LIB_NAME = lib$(OSMESA_LIB).a
Index: mesa/configs/linux-osmesa16
===================================================================
--- mesa.orig/configs/linux-osmesa16 2007-11-11 00:24:07.000000000 +0100
+++ mesa/configs/linux-osmesa16 2007-11-11 00:33:41.000000000 +0100
@@ -1,31 +1,19 @@
# Configuration for 16 bits/channel OSMesa library on Linux
-include $(TOP)/configs/default
+include $(TOP)/configs/linux-osmesa
CONFIG_NAME = linux-osmesa16
-# 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 -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
-CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
-
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
-
+DEFINES += -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=32
# Library names
OSMESA_LIB = OSMesa16
-OSMESA_LIB_NAME = libOSMesa16.so
-
# Directories
-SRC_DIRS = mesa glu
-DRIVER_DIRS = osmesa
PROGRAM_DIRS =
-
# Dependencies
-OSMESA_LIB_DEPS = -lm -lpthread
-GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
-APP_LIB_DEPS = -lOSMesa16
+APP_LIB_DEPS = -l$(OSMESA_LIB)
+
Index: mesa/configs/linux-osmesa16-static
===================================================================
--- mesa.orig/configs/linux-osmesa16-static 2007-11-11 00:24:07.000000000 +0100
+++ mesa/configs/linux-osmesa16-static 2007-11-11 00:33:20.000000000 +0100
@@ -1,14 +1,10 @@
# Configuration for 16 bits/channel OSMesa library on Linux
-include $(TOP)/configs/default
+include $(TOP)/configs/linux-osmesa16
CONFIG_NAME = linux-osmesa16-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=16 -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
PIC_FLAGS =
@@ -17,16 +13,5 @@
CXXFLAGS += -fno-strict-aliasing
# Library names
-OSMESA_LIB = OSMesa16
-OSMESA_LIB_NAME = libOSMesa16.a
+OSMESA_LIB_NAME = lib$(OSMESA_LIB).a
-
-# Directories
-SRC_DIRS = mesa glu
-DRIVER_DIRS = osmesa
-PROGRAM_DIRS =
-
-
-# Dependencies
-OSMESA_LIB_DEPS = -lm -lpthread
-APP_LIB_DEPS = -lOSMesa16
Index: mesa/configs/linux-osmesa32
===================================================================
--- mesa.orig/configs/linux-osmesa32 2007-11-11 00:24:07.000000000 +0100
+++ mesa/configs/linux-osmesa32 2007-11-11 00:33:51.000000000 +0100
@@ -1,31 +1,22 @@
# Configuration for 32 bits/channel OSMesa library on Linux
-include $(TOP)/configs/default
+include $(TOP)/configs/linux-osmesa
CONFIG_NAME = linux-osmesa32
# 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 -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
-CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
# Work around aliasing bugs - developers should comment this out
CFLAGS += -fno-strict-aliasing
CXXFLAGS += -fno-strict-aliasing
+DEFINES += -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
# Library names
OSMESA_LIB = OSMesa32
-OSMESA_LIB_NAME = libOSMesa32.so
-
# Directories
-SRC_DIRS = mesa glu
-DRIVER_DIRS = osmesa
PROGRAM_DIRS =
-
# Dependencies
-OSMESA_LIB_DEPS = -lm -lpthread
-GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
-APP_LIB_DEPS = -lOSMesa32
+APP_LIB_DEPS = -l$(OSMESA_LIB)
+
Index: mesa/configs/linux-osmesa32-static
===================================================================
--- mesa.orig/configs/linux-osmesa32-static 2007-11-11 00:24:01.000000000 +0100
+++ mesa/configs/linux-osmesa32-static 2007-11-11 00:33:20.000000000 +0100
@@ -1,28 +1,13 @@
# Configuration for 32 bits/channel OSMesa library on Linux
-include $(TOP)/configs/default
+include $(TOP)/configs/linux-osmesa32
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
-
+PIC_FLAGS =
# Library names
-OSMESA_LIB = OSMesa32
-OSMESA_LIB_NAME = libOSMesa32.a
-
-
-# Directories
-SRC_DIRS = mesa glu
-DRIVER_DIRS = osmesa
-PROGRAM_DIRS =
-
+OSMESA_LIB_NAME = lib$(OSMESA_LIB).a
-# Dependencies
-OSMESA_LIB_DEPS = -lm -lpthread
-APP_LIB_DEPS = -lOSMesa32

View File

@@ -1,5 +0,0 @@
00_create-libdir.patch
01_fix-makefile.patch
02_use-ieee-fp-on-s390-and-m68k.patch
03_optional-progs-and-install.patch
04_cleanup-osmesa-configs.patch

139
debian/rules vendored
View File

@@ -1,139 +0,0 @@
#!/usr/bin/make -f
# debian/rules for the Debian mesa package
# Copyright © 2006 Thierry Reding <thierry@gilfi.de>
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
STAMP_DIR = debian/stamp
QUILT_STAMPFN = $(STAMP_DIR)/patch
include /usr/share/quilt/quilt.make
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_BUILD_DIR ?= $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE)
export DEB_BUILD_ARCH
# choose which configurations to build
SWX11_GLU_CONFIGS =
DRI_CONFIGS =
include debian/scripts/choose-configs
# build the following configurations by default
CONFIGS = $(SWX11_GLU_CONFIGS) \
$(DRI_CONFIGS) \
debian-osmesa \
debian-osmesa-static \
debian-osmesa16 \
debian-osmesa16-static \
debian-osmesa32 \
debian-osmesa32-static
STAMP = $(STAMP_DIR)/$(DEB_BUILD_GNU_TYPE)
BUILD_STAMPS = $(addprefix $(STAMP)-build-, $(CONFIGS))
ARCH_INSTALL_STAMPS = $(addprefix $(STAMP)-install-, $(CONFIGS))
INDEP_INSTALL_STAMPS = $(STAMP_DIR)/install-source
# list the configurations that will built
configs:
@echo Building the following configurations: $(CONFIGS)
$(STAMP_DIR):
dh_testdir
mkdir -p $@
$(QUILT_STAMPFN): $(STAMP_DIR)
build: $(BUILD_STAMPS)
$(STAMP)-build-%: patch
dh_testdir
mkdir -p $(DEB_BUILD_DIR)/$*
find $(CURDIR)/* -maxdepth 0 -not -path '$(DEB_BUILD_DIR)*' | \
xargs cp -rlf -t $(DEB_BUILD_DIR)/$*
ln -sf $* $(DEB_BUILD_DIR)/$*/configs/current
cd $(DEB_BUILD_DIR)/$* && $(MAKE)
touch $@
pre-install:
dh_testdir
dh_testroot
dh_clean -k
rm -rf $(INSTALL_STAMPS)
install: pre-install $(ARCH_INSTALL_STAMPS)
$(STAMP)-install-%: $(STAMP)-build-%
# Add here commands to install the package into debian/tmp
cd $(DEB_BUILD_DIR)/$* && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
touch $@
$(STAMP_DIR)/install-source: pre-install
# install Mesa source for mesa-swx11-source package
chmod a+x debian/scripts/install-source.sh
debian/scripts/install-source.sh
touch $@
clean: unpatch
dh_testdir
dh_testroot
dh_clean --exclude ./Makefile.orig
rm -rf $(DEB_BUILD_DIR) $(STAMP_DIR)
# Build architecture-independent files here.
binary-indep: build install $(INDEP_INSTALL_STAMPS)
dh_testdir
dh_testroot
dh_installchangelogs -i
dh_installdocs -i
dh_installexamples -i
dh_install --sourcedir=debian/tmp --list-missing -i
dh_installman -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs -s
dh_installdocs -s
dh_installexamples -s
dh_install --sourcedir=debian/tmp --list-missing -s
dh_installman -s
dh_link -s
dh_strip -plibgl1-mesa-swx11 --dbg-package=libgl1-mesa-swx11-dbg
dh_strip -plibgl1-mesa-glx --dbg-package=libgl1-mesa-glx-dbg
dh_strip -plibgl1-mesa-dri --dbg-package=libgl1-mesa-dri-dbg
dh_strip -s
dh_compress -s
dh_fixperms -s
dh_makeshlibs -s
dh_installdeb -s
dh_shlibdeps -s
dh_gencontrol -s
dh_md5sums -s
dh_builddeb -s
binary: binary-indep binary-arch
.PHONY: configs build clean binary-indep binary-arch binary install configure

View File

@@ -1,56 +0,0 @@
# Script to choose which configurations are to be built depending on the value
# of the DEB_BUILD_ARCH variable.
#
# Copyright © 2006 Thierry Reding <thierry@gilfi.de>
##############################################################################
## architecture-specific configurations ######################################
# choose an architecture-specific build of swx11 and GLU if a matching
# configuration exists
ifneq ($(wildcard configs/debian-swx11+glu-$(DEB_BUILD_ARCH)),)
SWX11_GLU_CONFIGS := debian-swx11+glu-$(DEB_BUILD_ARCH)
else
SWX11_GLU_CONFIGS := debian-swx11+glu-any
endif
# same for static builds
ifneq ($(wildcard configs/debian-swx11+glu-static-$(DEB_BUILD_ARCH)),)
SWX11_GLU_CONFIGS += debian-swx11+glu-static-$(DEB_BUILD_ARCH)
else
SWX11_GLU_CONFIGS += debian-swx11+glu-static-any
endif
# and for the GLX/DRI-enabled libGL
ifneq ($(wildcard configs/debian-indirect-$(DEB_BUILD_ARCH)),)
DRI_CONFIGS := debian-indirect-$(DEB_BUILD_ARCH)
else
ifneq ($(wildcard configs/debian-dri-$(DEB_BUILD_ARCH)),)
DRI_CONFIGS := debian-dri-$(DEB_BUILD_ARCH)
else
DRI_CONFIGS := debian-dri-any
endif
endif
##############################################################################
## CPU-optimized configurations ##############################################
ifeq ($(DEB_BUILD_ARCH), i386)
SWX11_GLU_CONFIGS += debian-swx11+glu-i386-i686
# DRI_CONFIGS += debian-dri-i386-i686
endif
#ifeq ($(DEB_BUILD_ARCH), alpha)
# SWX11_GLU_CONFIGS += debian-swx11+glu-alpha-ev5
#endif
#ifeq ($(DEB_BUILD_ARCH), powerpc)
# SWX11_GLU_CONFIGS += debian-swx11+glu-powerpc-603
#endif
#ifeq ($(DEB_BUILD_ARCH), sparc)
# SWX11_GLU_CONFIGS += debian-swx11+glu-sparc-ultrasparc
#endif
# vim: ft=make

View File

@@ -1,46 +0,0 @@
#!/bin/sh
if [ -n "$1" ]; then
TOP="$1"
else
TOP=`pwd`
fi
SOURCE_DIRS='
include/GL/internal
src/glx/x11
src/mesa/drivers/common
src/mesa/drivers/dri/common
src/mesa/drivers/dri/glcore
src/mesa/drivers/x11
src/mesa/glapi
src/mesa/main
src/mesa/math
src/mesa/ppc
src/mesa/shader
src/mesa/sparc
src/mesa/swrast_setup
src/mesa/swrast
src/mesa/tnl_dd
src/mesa/tnl
src/mesa/vbo
src/mesa/x86-64
src/mesa/x86
'
FILTER="-not -path '*/.svn*'"
TARGET=${TOP}/debian/tmp/usr/share/mesa-source
(
find $SOURCE_DIRS $FILTER -name '*.[ch]';
find include/GL $FILTER -name 'xmesa*.h';
) | \
while read x; do
DIRNAME=`dirname "$x"`
mkdir -p "$TARGET/$DIRNAME"
cp -lf "$x" "$TARGET/$DIRNAME"
done
# fix permissions
find "$TARGET" -type f | xargs chmod 0644

2
debian/watch vendored
View File

@@ -1,2 +0,0 @@
version=3
http://sf.net/mesa3d/MesaLib-(.*)\.tar\.gz

View File

@@ -1,221 +0,0 @@
<HTML>
<TITLE>Writing Mesa Device Drivers</TITLE>
<BODY text="#000000" bgcolor="#55bbff" link="#111188">
<center><h1>Writing Mesa Device Drivers</h1></center>
<h2>Introduction</h2>
<p>
Several different classes of drivers can be identified:
</p>
<ul>
<li><b>100% Software Driver</b> -
a software driver that does not utilize accelerated graphics hardware.
Such a driver will basically just write (and read) pixel values to the
computer's frame buffer or a malloc'd color buffer.
Examples include the X11/XMesa driver, the Windows driver and OSMesa.
</li>
<br>
<li><b>Hardware Rasterization Driver</b> -
for graphics hardware that implements accelerated point/line/triangle
rasterization, but relies on core Mesa for vertex transformation.
Examples include the DRI 3Dfx, Matrox, and Rage 128 drivers.
</li>
<br>
<li><b>Hardware Transformation and Rasterization Driver</b> -
for graphics hardware that implements accelerated rasterization and vertex
transformation.
Examples include the DRI Radeon and R200 drivers.
</li>
</ul>
<p>
Each class of driver builds on the functionality of the preceeding one.
For example, a hardware rasterization driver may need to fall back to
software rasterization when a particular OpenGL state combination is set
but not supported by the hardware (perhaps smooth, stippled, textured
triangles).
</p>
<p>
Likewise, a hardware transformation driver might need to fall back to
software-based transformation when a particular, seldom-used lighting
mode is enabled.
</p>
<h2>Getting Started</h2>
<p>
The best way to get started writing a new driver is to find an existing
driver similar to what you plan to implement, and then study it.
</p>
<p>
It's not feasible for this document to explain every detail of writing
a driver.
The minute details can be gleaned by looking at existing drivers.
This document focuses on the high-level concepts and will perhaps expand
on the details in the future.
</p>
<p>
For examples of 100% software drivers, the OSMesa and XMesa (fake/stand-alone
GLX) drivers are the best examples.
</p>
<p>
For examples of hardware drivers, the DRI Radeon and R200 drivers are good
examples.
</p>
<h2>Programming API vs. Drivers</h2>
<p>
There are two aspects to a Mesa device driver:
</p>
<ul>
<li><b>Public programming API</b> -
this is the interface which application programmers use.
Examples are the GLX, WGL and OSMesa interfaces.
If you're developing a device driver for a new operating system or
window system you'll have to design and implement an <em>OpenGL glue</em>
interface similar to these.
This interface will, in turn, communicate with the internal driver code.
</li>
<br>
<li><b>Private/internal driver code</b> -
this is the code which (effectively) translates OpenGL API calls into
rendering operations.
The device driver must manage hardware resources, track OpenGL state
and implement or dispatch the fundamental rendering operations such as
point, line, triangle and image rendering.
</li>
</ul>
<p>
The remainder of this document will focus on the later part.
Furthermore, we'll use the GLX interface for examples.
</p>
<p>
In the case of the DRI drivers, the public GLX interface is contained in
the <b>libGL.so</b> library.
libGL.so, in turn, dynamically loads one of the DRI drivers (such as
radeon_dri.so).
Both libGL.so and the driver modules talk to the X window system via the
DRI extension.
Furthermore, the driver modules interface to the graphics hardware with
the help of a kernel module and the conventional 2D X server driver.
</p>
<h2>Software Driver Overview</h2>
<p>
A software driver is primarily concerned with writing pixel values to the
system's color buffer (and reading them back).
The color buffers might be window canvases (typically the front
color buffer) and/or off-screen image buffers (typically the back color
buffer).
The depth, stencil and accumulation buffers will be implemented within
core Mesa.
</p>
<p>
The software driver must also be concerned with allocation and deallocation
of rendering contexts, frame buffers and pixel formats (visuals).
</p>
<h3>Rendering Contexts</h3>
<p>
The glue interface will always have a function for creating new rendering
contexts (such as glXCreateContext).
The device driver must have a function which allocates and initializes
a device-specific rendering context.
</p>
<h3>Frame Buffers</h3>
<p>
The <em>frame buffer</em> can either be a screen region defined by a window
or the entire screen.
</p>
<p>
In either case, the device driver must implement functions for allocating,
initializing and managing frame buffers.
<p>
<h3>Spans</h3>
<p>
The fundamental rendering operation is to write (and read)
<em>spans</em> of pixels to the front / back color buffers.
A span is a horizontal array of pixel colors with an array of mask
flags. The span begins at a particular (x,y) screen coordinate,
extends for N pixels, describes N RGBA colors (or color indexes) and
has an array of N boolean flags indicating which pixels to write and skip.
<p>
<h3>Miscellaneous functions</h3>
<p>
Additionally, a software driver will typically have functions for
binding rendering contexts to frame buffers (via glXMakeCurrent),
swapping color buffers (via glXSwapBuffers), synchronization
(via glFlush/glFinish) and queries (via glGetString).
</p>
<h3>Optimizations</h3>
<p>
A software driver might implement optimized routines for drawing lines
and triangles for common cases (such as smooth shading with depth-testing).
Then, the span functions can be bypassed for a little extra speed.
The OSMesa and XMesa drivers have examples of this.
</p>
<h2>Hardware Driver Overview</h2>
<p>
To do...
</p>
<h2>OOP-Style Inheritance and Specialization</h2>
<p>
Even though Mesa and most device drivers are written in C, object oriented
programming principles are used in several places.
</p>
<h3>Rendering Contexts</h3>
<p>
Every Mesa device driver will need to define a device-specific rendering
context structure.
</p>
<h2>State Tracking</h2>
</BODY>
</HTML>

View File

@@ -342,7 +342,7 @@ will fix the problem.
<h2>4.1 How can I contribute?</a></h2>
<p>
First, join the <a href="http://www.mesa3d.org/lists.html>Mesa3d-dev
First, join the <a href="http://www.mesa3d.org/lists.html">Mesa3d-dev
mailing list</a>.
That's where Mesa development is discussed.
</a></p>

View File

@@ -1,15 +1,15 @@
<html>
<html><head><title>Mesa fbdev/DRI Environment</title>
<TITLE>Mesa fbdev/DRI Environment</TITLE>
<link rel="stylesheet" type="text/css" href="mesa.css"></head>
<BODY>
<body>
<center><H1>Mesa fbdev/DRI Drivers</H1></center>
<center><h1>Mesa fbdev/DRI Drivers</h1></center>
<br>
<H1>1. Introduction</H1>
<h1>1. Introduction</h1>
<p>
The fbdev/DRI environment supports hardware-accelerated 3D rendering without
@@ -22,60 +22,131 @@ Contributors to this project include Jon Smirl, Keith Whitwell and Dave Airlie.
<p>
Applications in the fbdev/DRI environment use
the <a href="MiniGXL.html"> MiniGLX</a> interface to choose pixel
the <a href="http://www.nabble.com/file/p15480666/MiniGXL.html"> MiniGLX</a> interface to choose pixel
formats, create rendering contexts, etc. It's a subset of the GLX and
Xlib interfaces allowing some degree of application portability between
the X and X-less environments.
</p>
<p>
Some of the files needed for building this configuration are not included
in the normal Mesa releases so you'll need to get the latest sources
sources from the <a href="repository.html">git repository</a>.
Note that this environment is not well-supported and these instructions
may not be completely up to date.
</p>
<br>
<p>
This fbdev/DRI environment isn't well supported.
Code and documentation updates/patches are welcomed.
</p>
<h1>2. Compilation</h1>
<p>
You'll need the DRM and pciaccess libraries. Check with:
<h2>2.1 glxproto</h2>
Get <a href="http://cvsweb.xfree86.org/cvsweb/*checkout*/xc/include/GL/glxproto.h?rev=1.9">glxproto.h</a>. Copy it to the /mesa/include/GL/ directory.
</p>
<pre>
pkg-config --modversion libdrm
pkg-config --modversion pciaccess
<h2>2.2 libpciaccess</h2>
<p>
Check if you have libpciaccess installed:
</p>
<pre>pkg-config --modversion pciaccess
</pre>
<p>
If not you can download the latest code from:
</p>
<pre> git clone git://anongit.freedesktop.org/git/xorg/lib/libpciaccess
</pre>
<p>
Run autogen.sh to generate a configure file. autogen.sh uses autoconf
utility. This utility may not be installed with your linux distro,
check if it is available. if not you can use your package manager or
type:
</p>
<pre>sudo apt-get install autoconf
</pre>
The next step is to install the libpciaccess library.
<pre>make
make install
</pre>
<p> Now your libpciaccess.a file is saved into /usr/local/lib
directory. If you have a libpciaccess.a in /usr/lib you may simply copy
and overwrite these files. Don't forget to copy libpciaccess.pc file to
/usr/lib/pkgconfig, which is also located in /usr/local/lib/pkgconfig/.
Or you may use the following system variables:
</p>
<pre>export LD_LIBRARY_PATH=/usr/local/lib
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
</pre>
<p>
You can get them from the git repository with:
<h2>2.3 drm</h2>
<p>The next step is to compile the drm. DRM consists of two seperate parts,
the DRM client library(lindrm.so) and kernel device module(such as
radeon.ko). We need to make a small change in kernel device module. So
you need to download the kernel source. You may choose the nearest
mirror from www.kernel.org, or you are using Fedora Core 5, for
example, you may need to install RPMs such as:
kernel-smp-devel-2.16.15-1.2054_FC5.i686.rpm
kernel-devel-2.6.15-1.2054_FC5.i686.rpm
etc. You can find a detailed information <a href="http://www.howtoforge.com/kernel_compilation_fedora">here.</a>
</p>
<p>You will find drm_drv.c at /usr/src/LINUX-VERSION/drivers/char/drm/. Edit this code and comment out the following part:
</p>
<pre>
git clone git://anongit.freedesktop.org/git/mesa/drm
git clone git://anongit.freedesktop.org/git/xorg/lib/libpciaccess
/* ||
((ioctl-&gt;flags &amp; DRM_MASTER) &amp;&amp; !priv-&gt;master)*/
</pre>
<p>
See the README files in those projects for build/install instructions.
</p>
<p>
Now you are ready to compile your kernel. If your kernel version is
identical to the version you have compiled, you can simply over write
your new "ko" files over older ones. If you have compiled a different
kernel, you must configure your grub or lilo to be able to boot your
new kernel. <p>
You'll need fbdev header files. Check with:
</p>
<pre>
ls -l /usr/include/linux/fb.h
ls -l /usr/include/linux/fb.
</pre>
<p>This file may be missing if you have not installed linux header files.
<p>
You'll need to get Mesa from git (see above).
Compile Mesa with the 'linux-solo' configuration:
<h2>2.4 Mesa</h2>
</p><p>Get latest development Mesa sources from git repository
(currently 7.1-prerelease)
</p>
<pre>
make linux-solo
git clone git://anongit.freedesktop.org/git/mesa/mesa
</pre>
<p>You will need the makedepend utility which is a part of mesa project
to build your linux-solo. You probably wont have this utility. You can
download its source from following git repulsitory:
</p>
<pre>
git clone git://anongit.freedesktop.org/git/xorg/util/makedepend
</pre>
<p>Get the latest stable mesa version from SourceForge (currently 7.0.3)
<a href="http://sourceforge.net/project/showfiles.php?group_id=3">http://sourceforge.net/project/showfiles.php?group_id=3</a>
</p>
<p>Copy the miniglx folder from 7.1-prerelease to 7.0.3.
You may also extract GLUT to 7.0.3 version at this step.
</p>
<p>Edit linux-solo.conf at /conf directory, just only compile the
graphics driver you need, delete the unwanted drivers names from the
list(some drivers are causing problems...)
</p>
<pre>
while(build==0)
{
make linux-solo
There will be some missing header files, copy them from 7.1-prerelease
}
</pre>
<p>
@@ -83,22 +154,40 @@ When complete you should have the following:
</p>
<ul>
<li>lib/libGL.so - the GL library which applications link with
<li>lib/*_dri_so - DRI drivers
<li>lib/miniglx.conf - sample MiniGLX config file
<li>progs/miniglx/* - several MiniGLX sample programs
</ul>
</li><li>lib/*_dri_so - DRI drivers
</li><li>lib/miniglx.conf - sample MiniGLX config file
</li><li>progs/miniglx/* - several MiniGLX sample programs
</li></ul>
To install these files into appropriate locations in system:
<pre>
make install
</pre>
Now your openGL libraries are copied to /usr/local/lib and
miniglx.conf is copied to /etc. You may copy them to /usr/lib and
overwrite your old GL libraries. Or you may export following variable:
<pre>
export LIBGL_DRIVERS_PATH=/usr/local/lib
</pre>
<br>
<h1>3. Using fbdev/DRI</h1>
<p>
If an X server currently running, exit/stop it so you're working from
the console.
the console. Following command shuts down the x window and also the multi user support.
</p>
<pre>
init 1
</pre>
<h2>3.1 Load Kernel Modules</h2>
<p>Also you may define the runlevel as 1 in "/etc/inittab". Your system
will always start in single user mode and without x-window with this
option set.
</p><h2>3.1 Load Kernel Modules</h2>
<p>
You'll need to load the kernel modules specific to your graphics hardware.
@@ -112,8 +201,7 @@ As root, the kernel modules can be loaded as follows:
<p>
If you have Intel i915/i945 hardware:
</p>
<pre>
modprobe agpgart # the AGP GART module
<pre> modprobe agpgart # the AGP GART module
modprobe intelfb # the Intel fbdev driver
modprobe i915 # the i915/945 DRI kernel module
</pre>
@@ -121,8 +209,7 @@ If you have Intel i915/i945 hardware:
<p>
If you have ATI Radeon/R200 hardware:
</p>
<pre>
modprobe agpgart # the AGP GART module
<pre> modprobe agpgart # the AGP GART module
modprobe radeonfb # the Radeon fbdev driver
modprobe radeon # the Radeon DRI kernel module
</pre>
@@ -130,8 +217,7 @@ If you have ATI Radeon/R200 hardware:
<p>
If you have ATI Rage 128 hardware:
</p>
<pre>
modprobe agpgart # the AGP GART module
<pre> modprobe agpgart # the AGP GART module
modprobe aty128fb # the Rage 128 fbdev driver
modprobe r128 # the Rage 128 DRI kernel module
</pre>
@@ -139,8 +225,7 @@ If you have ATI Rage 128 hardware:
<p>
If you have Matrox G200/G400 hardware:
</p>
<pre>
modprobe agpgart # the AGP GART module
<pre> modprobe agpgart # the AGP GART module
modprobe mgafb # the Matrox fbdev driver
modprobe mga # the Matrox DRI kernel module
</pre>
@@ -148,8 +233,7 @@ If you have Matrox G200/G400 hardware:
<p>
To verify that the agpgart, fbdev and drm modules are loaded:
</p>
<pre>
ls -l /dev/agpgart /dev/fb* /dev/dri
<pre> ls -l /dev/agpgart /dev/fb* /dev/dri
</pre>
<p>
Alternately, use lsmod to inspect the currently installed modules.
@@ -160,16 +244,15 @@ If you have problems, look at the output of dmesg.
<h2>3.2 Configuration File</h2>
<p>
Copy the sample miniglx.conf to /etc/miniglx.conf and review/edit its contents.
review/edit /etc/miniglx.conf.
Alternately, the MINIGLX_CONF environment variable can be used to
indicate the location of miniglx.conf
</p>
To determine the pciBusID value, run lspci and examine the output.
For example:
</p>
<pre>
/sbin/lspci:
<p></p>
<pre> /sbin/lspci:
00:02.0 VGA compatible controller: Intel Corporation 82915G/GV/910GL Express Chipset Family Graphics Controller (rev 04)
</pre>
<p>
@@ -192,15 +275,13 @@ for example.
Change to the <code>Mesa/progs/miniglx/</code> directory and
start the sample_server program in the background:
</p>
<pre>
./sample_server &amp;
<pre> ./sample_server &amp;
</pre>
<p>
Then try running the <code>miniglxtest</code> program:
</p>
<pre>
./miniglxtest
<pre> ./miniglxtest
</pre>
<p>
You should see a rotating quadrilateral which changes color as it rotates.
@@ -211,7 +292,7 @@ It will exit automatically after a bit.
If you run other tests in the miniglx/ directory, you may want to run
them from a remote shell so that you can stop them with ctrl-C.
</p>
<br>
<h1>4.0 Troubleshooting</h1>
@@ -220,8 +301,7 @@ them from a remote shell so that you can stop them with ctrl-C.
<li>
If you try to run miniglxtest and get the following:
<br>
<pre>
[miniglx] failed to probe chipset
<pre> [miniglx] failed to probe chipset
connect: Connection refused
server connection lost
</pre>
@@ -235,7 +315,7 @@ It means that the sample_server process is not running.
<h1>5.0 Programming Information</h1>
<p>
OpenGL/Mesa is interfaced to fbdev via the <a href="MiniGLX.html">MiniGLX</a>
OpenGL/Mesa is interfaced to fbdev via the <a href="http://www.nabble.com/file/p15480666/MiniGLX.html">MiniGLX</a>
interface.
MiniGLX is a subset of Xlib and GLX API functions which provides just
enough functionality to setup OpenGL rendering and respond to simple
@@ -256,5 +336,6 @@ See the <code>GL/miniglx.h</code> header file for details.
</p>
</body>
</html>

BIN
docs/gears.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -8,7 +8,7 @@
<body bgcolor="#eeeeee">
<H1>Mesa 7.0.3 Release Notes / (TBD) 2007</H1>
<H1>Mesa 7.0.3 Release Notes / March TBD, 2008</H1>
<p>
Mesa 7.0.3 is a stable release with bug fixes since version 7.0.2.
@@ -20,10 +20,6 @@ Mesa 7.0.3 is a stable release with bug fixes since version 7.0.2.
</pre>
<h2>New features</h2>
<ul>
</ul>
<h2>Bug fixes</h2>
<ul>
<li>Added missing glw.pc.in file to release tarball
@@ -33,8 +29,28 @@ Mesa 7.0.3 is a stable release with bug fixes since version 7.0.2.
<li>Two-sided stencil test didn't work in software rendering
<li>Fix two-sided lighting bugs/crashes (bug 13368)
<li>GLSL gl_FrontFacing didn't work properly
<li>glGetActiveUniform returned incorrect sizes (bug 13751)
<li>Fix several bugs relating to uniforms and attributes in GLSL API (Bruce Merry, bug 13753)
<li>glTexImage3D(GL_PROXY_TEXTURE_3D) mis-set teximage depth field
<li>Fixed GLX indirect vertex array rendering bug (14197)
<li>Fixed crash when deleting framebuffer objects (bugs 13507, 14293)
<li>User-defined clip planes enabled for R300 (bug 9871)
<li>Fixed glBindTexture() crash upon bad target (bug 14514)
<li>Fixed potential crash in glDrawPixels(GL_DEPTH_COMPONENT) (bug 13915)
<li>Bad strings given to glProgramStringARB() didn't generate GL_INVALID_OPERATION
<li>Fixed minor point rasterization regression (bug 11016)
<li>state.texenv.color state var didn't work in GL_ARB_fragment_program (bug 14931)
<li>glBitmap from a PBO didn't always work
<li>glGetTexImage into a PBO didn't always work
<li>Comments at the end of ARB vertex/fragment programs crashed the parser
</ul>
<h2>Changes</h2>
<ul>
<li>Updated glext.h to version 40
</ul>
<h2>Driver Status</h2>

15
doxygen/.gitignore vendored Normal file
View File

@@ -0,0 +1,15 @@
*.tag
agpgart
array_cache
core
core_subset
math
math_subset
miniglx
radeon_subset
radeondrm
radeonfb
swrast
swrast_setup
tnl
tnl_dd

33
doxygen/Makefile Normal file
View File

@@ -0,0 +1,33 @@
default: full
all: full subset
%.tag: %.doxy
doxygen $<
FULL = \
main.doxy \
math.doxy \
vbo.doxy \
glapi.doxy \
shader.doxy \
swrast.doxy \
swrast_setup.doxy \
tnl.doxy \
tnl_dd.doxy
full: $(FULL:.doxy=.tag)
$(foreach FILE,$(FULL),doxygen $(FILE);)
SUBSET = \
main.doxy \
math.doxy \
miniglx.doxy
subset: $(SUBSET:.doxy=.tag)
$(foreach FILE,$(SUBSET),doxygen $(FILE);)
clean:
rm -rf $(FULL:.doxy=) $(SUBSET:.doxy=)
rm -rf *.tag

10
doxygen/README Normal file
View File

@@ -0,0 +1,10 @@
This directory is for doxygen (a source code documentation system).
See http://www.doxygen.org/ for more info.
Either run 'make' (Unix) or 'doxy.bat' (Windows) to run doxygen
and generate souce code documentation.
Then, load either doxygen/main/index.html or doxygen/core_subset/index.html into
your web browser.

1153
doxygen/common.doxy Normal file

File diff suppressed because it is too large Load Diff

226
doxygen/core_subset.doxy Normal file
View File

@@ -0,0 +1,226 @@
# Doxyfile 0.1
#---------------------------------------------------------------------------
# General configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = "Mesa Main"
PROJECT_NUMBER =
OUTPUT_DIRECTORY =
OUTPUT_LANGUAGE = English
EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
INTERNAL_DOCS = YES
STRIP_CODE_COMMENTS = YES
CASE_SENSE_NAMES = YES
SHORT_NAMES = NO
HIDE_SCOPE_NAMES = NO
VERBATIM_HEADERS = YES
SHOW_INCLUDE_FILES = YES
JAVADOC_AUTOBRIEF = NO
INHERIT_DOCS = YES
INLINE_INFO = YES
SORT_MEMBER_DOCS = NO
DISTRIBUTE_GROUP_DOC = NO
TAB_SIZE = 8
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
ALIASES =
ENABLED_SECTIONS = subset
MAX_INITIALIZER_LINES = 30
OPTIMIZE_OUTPUT_FOR_C = NO
SHOW_USED_FILES = YES
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = YES
WARNINGS = YES
WARN_IF_UNDOCUMENTED = NO
WARN_FORMAT =
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../src/mesa/main/
FILE_PATTERNS = \
accum.h \
attrib.h \
blend.[ch] \
buffers.[ch] \
dd.h \
debug.h \
depth.h \
dlist.h \
context.[ch] \
config.h \
colormac.h \
colortab.h \
enable.h \
enums.h \
eval.h \
extensions.h \
feedback.[ch] \
fog.h \
get.h \
glheader.h \
glthread.h \
hash.[ch] \
hint.h \
histogram.h \
image.[ch] \
imports.[ch] \
lines.[ch] \
light.h \
matrix.[ch] \
macros.h \
mmath.h \
mtypes.h \
pixel.h \
points.[ch] \
polygon.[ch] \
rastpos.[ch] \
simple_list.h \
state.[ch] \
stencil.[ch] \
subset_*.c \
texformat.h \
teximage.h \
texstate.h \
texstore.h \
texobj.[ch] \
texutil_tmp.h \
varray.h
RECURSIVE = NO
EXCLUDE =
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = YES
INLINE_SOURCES = NO
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = NO
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = core_subset
HTML_HEADER = header_subset.html
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = NO
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NO
TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT =
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT =
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT =
MAN_EXTENSION =
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH = ../include/
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to external references
#---------------------------------------------------------------------------
TAGFILES = \
math_subset.tag=../math_subset \
miniglx.tag=../miniglx
GENERATE_TAGFILE = core_subset.tag
ALLEXTERNALS = NO
PERL_PATH =
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
HAVE_DOT = NO
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
TEMPLATE_RELATIONS = YES
HIDE_UNDOC_RELATIONS = YES
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
GRAPHICAL_HIERARCHY = YES
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO
CGI_NAME =
CGI_URL =
DOC_URL =
DOC_ABSPATH =
BIN_ABSPATH =
EXT_DOC_PATHS =

19
doxygen/doxy.bat Normal file
View File

@@ -0,0 +1,19 @@
doxygen tnl_dd.doxy
doxygen vbo.doxy
doxygen math.doxy
doxygen swrast.doxy
doxygen swrast_setup.doxy
doxygen tnl.doxy
doxygen core.doxy
doxygen glapi.doxy
doxygen shader.doxy
echo Building again, to resolve tags
doxygen tnl_dd.doxy
doxygen vbo.doxy
doxygen math.doxy
doxygen swrast.doxy
doxygen swrast_setup.doxy
doxygen tnl.doxy
doxygen glapi.doxy
doxygen shader.doxy

49
doxygen/glapi.doxy Normal file
View File

@@ -0,0 +1,49 @@
# Doxyfile 0.1
@INCLUDE = common.doxy
#---------------------------------------------------------------------------
# General configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = "Mesa GL API dispatcher"
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../src/mesa/glapi/
FILE_PATTERNS = *.c *.h
RECURSIVE = NO
EXCLUDE =
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
HTML_OUTPUT = glapi
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH = ../include/
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to external references
#---------------------------------------------------------------------------
TAGFILES = main.tag=../core \
math.tag=../math \
tnl_dd.tag=../tnl_dd \
swrast.tag=../swrast \
swrast_setup.tag=../swrast_setup \
tnl.tag=../tnl \
vbo.tag=vbo
GENERATE_TAGFILE = swrast.tag

17
doxygen/header.html Normal file
View File

@@ -0,0 +1,17 @@
<html>
<head>
<title>Mesa Source Code Documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="qindex">
<a class="qindex" href="../main/index.html">core</a> |
<a class="qindex" href="../glapi/index.html">glapi</a> |
<a class="qindex" href="../vbo/index.html">vbo</a> |
<a class="qindex" href="../math/index.html">math</a> |
<a class="qindex" href="../shader/index.html">shader</a> |
<a class="qindex" href="../swrast/index.html">swrast</a> |
<a class="qindex" href="../swrast_setup/index.html">swrast_setup</a> |
<a class="qindex" href="../tnl/index.html">tnl</a> |
<a class="qindex" href="../tnl_dd/index.html">tnl_dd</a>
</div>

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