Compare commits
286 Commits
the_perfec
...
mesa_20050
Author | SHA1 | Date | |
---|---|---|---|
|
8d3aca655e | ||
|
1f88391747 | ||
|
d39760d718 | ||
|
df0350b7ec | ||
|
b0489d4f82 | ||
|
8ec981c469 | ||
|
4eb3a0f076 | ||
|
4c72778251 | ||
|
badad72383 | ||
|
c62c24c72f | ||
|
b127cfeb7a | ||
|
3f7cb794ea | ||
|
c472dcdac0 | ||
|
ce721143b4 | ||
|
9311bc253e | ||
|
0cfbd849ec | ||
|
6d5d1f8a41 | ||
|
38e2fa385d | ||
|
2550844c6e | ||
|
259f096ed8 | ||
|
f3186e5789 | ||
|
4cf6718725 | ||
|
78be0b5dad | ||
|
f0ff50d4ed | ||
|
1a9cac10b8 | ||
|
9204e87b2e | ||
|
4f178c6e3a | ||
|
ef2ce9d003 | ||
|
c1c684b0f3 | ||
|
666dcaaf05 | ||
|
7b12220256 | ||
|
5f79d27b82 | ||
|
c136b41b09 | ||
|
ee850657e6 | ||
|
0cf67634bb | ||
|
101d05ad94 | ||
|
c5b6580c6f | ||
|
35a11c14ee | ||
|
ec171b7d02 | ||
|
2de5f6e252 | ||
|
b64d60a2a6 | ||
|
eac7688231 | ||
|
219f3c4489 | ||
|
06abb854f0 | ||
|
7fe8696d01 | ||
|
9b56781986 | ||
|
758f334717 | ||
|
8e8fa63cb4 | ||
|
559c494fc8 | ||
|
03f52fea63 | ||
|
6d3284efd4 | ||
|
58a9573b08 | ||
|
0d34c0158d | ||
|
f4f1c29597 | ||
|
bb5c84fcbc | ||
|
446e258940 | ||
|
54fb9226e4 | ||
|
30aea49cf6 | ||
|
cf5b2f7419 | ||
|
c212abf99a | ||
|
1ac8ae446a | ||
|
aa70253cbb | ||
|
049e320f46 | ||
|
f138b977d0 | ||
|
4d652b7855 | ||
|
b0d62880e8 | ||
|
0e55891674 | ||
|
ccda2162f6 | ||
|
b6c0d753fa | ||
|
ec17e7941a | ||
|
b6c5116171 | ||
|
84f8d7aafb | ||
|
39a488ed63 | ||
|
2dbffb30f0 | ||
|
397088ff5e | ||
|
c43f03e38d | ||
|
3f9839a52b | ||
|
a4eb693b5f | ||
|
32b898126e | ||
|
3b817fde88 | ||
|
845f2a7350 | ||
|
f8582b6c1f | ||
|
394fd40a53 | ||
|
4e1aae6e0e | ||
|
5aafea03af | ||
|
3fb86eefe8 | ||
|
1c5caba184 | ||
|
2636e853f6 | ||
|
814e5360b0 | ||
|
66a5548fbb | ||
|
f292e13a20 | ||
|
1e4744d2b9 | ||
|
ebd99043ed | ||
|
a5fb15cb87 | ||
|
04f863e856 | ||
|
23606a5704 | ||
|
90b40c33e7 | ||
|
dc137ddb3f | ||
|
a6a3e01b09 | ||
|
4378dee78c | ||
|
38332a6d94 | ||
|
4e7df27466 | ||
|
3c6f17be32 | ||
|
af02907b4c | ||
|
463c1d6c57 | ||
|
0e288e58ef | ||
|
3176f8e2e1 | ||
|
6c2098ffd4 | ||
|
f445aaa67a | ||
|
aa26915472 | ||
|
fb818a0b11 | ||
|
6b9d9c5039 | ||
|
2d218885ec | ||
|
902e70875d | ||
|
b675c48027 | ||
|
4476978856 | ||
|
252d8e78cc | ||
|
5d6ecf25f8 | ||
|
b4979ec178 | ||
|
6c1948d593 | ||
|
729cccba5d | ||
|
7e8e4c500e | ||
|
f6e7cfb60d | ||
|
52608d2d21 | ||
|
1c48986e54 | ||
|
1fc4bcbb17 | ||
|
44367aab2a | ||
|
2c6e8e90ec | ||
|
81032030ff | ||
|
a8534885ef | ||
|
79b7bd18bb | ||
|
8e56122782 | ||
|
ea93b2986b | ||
|
002d0ad3e9 | ||
|
562bdaf70e | ||
|
9899f58c76 | ||
|
dce3a91a8d | ||
|
2d2f5a4b19 | ||
|
ee7ad16f3f | ||
|
2c7336af4e | ||
|
012de39c23 | ||
|
60339c7062 | ||
|
7fb16836e7 | ||
|
d45cb9a836 | ||
|
681b758f11 | ||
|
a0b5c98364 | ||
|
31d0cedd78 | ||
|
7477a7d366 | ||
|
4417d4cb61 | ||
|
ed7f3aead8 | ||
|
395280bf88 | ||
|
a4691981d9 | ||
|
1d60469c4c | ||
|
461a2a799a | ||
|
757e0855ad | ||
|
17d249d31b | ||
|
4f923fb0bc | ||
|
c20a2b0b72 | ||
|
ef9e0be0cb | ||
|
2e7dcdd38b | ||
|
d59fbcdee5 | ||
|
3c4c6d1f80 | ||
|
40b8b57ed4 | ||
|
df5e2b934b | ||
|
d96dd3cd49 | ||
|
bb8b302dbc | ||
|
5ec5c6b222 | ||
|
863bd56520 | ||
|
5821f3d70c | ||
|
5b10d71559 | ||
|
516546ad5b | ||
|
3fe9c40cb2 | ||
|
13c8f985d9 | ||
|
1516f559bc | ||
|
c4fbdb090c | ||
|
589a3a3f6e | ||
|
f090fdc50b | ||
|
d638f6a0bb | ||
|
502504de23 | ||
|
f772e3dd15 | ||
|
c7264415b6 | ||
|
1b93953fbc | ||
|
5d5100aabc | ||
|
2e081cd90e | ||
|
0009e3d97d | ||
|
628b18b8ca | ||
|
4ec6eceea9 | ||
|
8c2a9a9166 | ||
|
ef377c3c00 | ||
|
b79c47e90c | ||
|
8a1df96862 | ||
|
9dff2ca07a | ||
|
12eabeb3b9 | ||
|
c7f8d36451 | ||
|
993d8ad5ef | ||
|
b328dded75 | ||
|
c1b87b2a06 | ||
|
0936eeb456 | ||
|
f2149a7a66 | ||
|
0b73889d54 | ||
|
2962f88189 | ||
|
f054fa85d8 | ||
|
2ed4c296d9 | ||
|
22b0a42465 | ||
|
0bae91562e | ||
|
908dbc44c2 | ||
|
74e412c695 | ||
|
0080faf83e | ||
|
d322810e13 | ||
|
6580a6d561 | ||
|
70dbbbf89a | ||
|
497dd3e920 | ||
|
249db89b00 | ||
|
020225496e | ||
|
69509641a8 | ||
|
978d2fda3c | ||
|
ae516306b4 | ||
|
e45b5a4fa8 | ||
|
8e5099d6a0 | ||
|
d2ee346a93 | ||
|
170999a103 | ||
|
d1834e8c10 | ||
|
0432411837 | ||
|
0f71c6691e | ||
|
fc534034cc | ||
|
1de60fe47f | ||
|
c16264b138 | ||
|
1aadf1c039 | ||
|
1008f57f6f | ||
|
2b73e5aaaf | ||
|
863eca9973 | ||
|
39e14d2cff | ||
|
741b980433 | ||
|
3f6d985753 | ||
|
49109d01c0 | ||
|
8286abd798 | ||
|
53d13e014f | ||
|
f387c83ec1 | ||
|
e87ab8c05f | ||
|
6b5afb0036 | ||
|
89bf62cd49 | ||
|
5dc31379c4 | ||
|
c97a3a3038 | ||
|
7df5eddf6a | ||
|
f7c0c4f485 | ||
|
b4c8b34534 | ||
|
45ab8cb08a | ||
|
b31b1f44f1 | ||
|
7708b75d72 | ||
|
c73968af95 | ||
|
9a726cdf8f | ||
|
7179810375 | ||
|
a1b07e187e | ||
|
39c0e51329 | ||
|
2f9722863d | ||
|
731f1b12a0 | ||
|
2d5f12ae6b | ||
|
afa7f6a0f5 | ||
|
eeada48497 | ||
|
0c4731b27c | ||
|
17bcf9f816 | ||
|
eb9d6f44a9 | ||
|
241b6b7ab1 | ||
|
2dea6df80b | ||
|
6fe176a648 | ||
|
eb8be5d923 | ||
|
446980473d | ||
|
b70a47736a | ||
|
3cc2f82bb5 | ||
|
923515b3f8 | ||
|
e3e8067db7 | ||
|
8f384f0b67 | ||
|
e58d32947e | ||
|
063efce6ee | ||
|
bab559b1fa | ||
|
8f8e0f0b01 | ||
|
18a74321aa | ||
|
c2745ffa49 | ||
|
9557401a98 | ||
|
67cc1f6ba6 | ||
|
c70dace694 | ||
|
6040d34109 | ||
|
8608978aba | ||
|
02168254a8 | ||
|
e5ff2b94ff | ||
|
216f89318e |
53
Makefile
53
Makefile
@@ -28,6 +28,7 @@ realclean:
|
||||
-rm -f `find . -name \*.o`
|
||||
-rm -f `find . -name \*.a`
|
||||
-rm -f `find . -name \*.so`
|
||||
-rm -f `find . -name depend`
|
||||
|
||||
|
||||
|
||||
@@ -61,6 +62,7 @@ darwin \
|
||||
darwin-static \
|
||||
freebsd \
|
||||
freebsd-dri \
|
||||
freebsd-dri-amd64 \
|
||||
freebsd-dri-x86 \
|
||||
hpux10 \
|
||||
hpux10-gcc \
|
||||
@@ -139,7 +141,6 @@ LIB_FILES = \
|
||||
$(DIRECTORY)/Makefile* \
|
||||
$(DIRECTORY)/descrip.mms \
|
||||
$(DIRECTORY)/mms-config. \
|
||||
$(DIRECTORY)/Mesa.dsw \
|
||||
$(DIRECTORY)/bin/mklib \
|
||||
$(DIRECTORY)/bin/installmesa \
|
||||
$(DIRECTORY)/configs/[a-z]* \
|
||||
@@ -179,28 +180,25 @@ LIB_FILES = \
|
||||
$(DIRECTORY)/src/mesa/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/depend \
|
||||
$(DIRECTORY)/src/mesa/main/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/main/main.dsp \
|
||||
$(DIRECTORY)/src/mesa/main/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/glapi/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/glapi/glapi.dsp \
|
||||
$(DIRECTORY)/src/mesa/glapi/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/array_cache/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/array_cache/array_cache.dsp \
|
||||
$(DIRECTORY)/src/mesa/array_cache/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/math/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/math/math.dsp \
|
||||
$(DIRECTORY)/src/mesa/math/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/shader/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/shader/shader.dsp \
|
||||
$(DIRECTORY)/src/mesa/shader/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/shader/grammar/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/shader/grammar/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/shader/slang/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/shader/slang/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/shader/slang/library/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/swrast/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/swrast/swrast.dsp \
|
||||
$(DIRECTORY)/src/mesa/swrast/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/swrast_setup/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/swrast_setup/swrast_setup.dsp \
|
||||
$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/tnl/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/tnl/tnl.dsp \
|
||||
$(DIRECTORY)/src/mesa/tnl/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \
|
||||
@@ -209,13 +207,12 @@ LIB_FILES = \
|
||||
$(DIRECTORY)/src/mesa/drivers/beos/Makefile \
|
||||
$(DIRECTORY)/src/mesa/drivers/common/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/common/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/directfb/Makefile \
|
||||
$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/directfb/Makefile \
|
||||
$(DIRECTORY)/src/mesa/drivers/dos/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c \
|
||||
$(DIRECTORY)/src/mesa/drivers/glide/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/glide/*.def \
|
||||
$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in \
|
||||
$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c \
|
||||
@@ -226,26 +223,26 @@ LIB_FILES = \
|
||||
$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win \
|
||||
$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \
|
||||
$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.dsp \
|
||||
$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/svga/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/drivers/windows/*/*.def \
|
||||
$(DIRECTORY)/src/mesa/drivers/windows/*/*.dsp \
|
||||
$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
|
||||
$(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/ppc/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/sparc/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/x86/Makefile \
|
||||
$(DIRECTORY)/src/mesa/x86/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/x86/*.S \
|
||||
$(DIRECTORY)/src/mesa/x86/rtasm/*.[ch] \
|
||||
$(DIRECTORY)/src/mesa/x86-64/*.[chS] \
|
||||
$(DIRECTORY)/src/mesa/x86-64/Makefile \
|
||||
$(DIRECTORY)/src/glu/Makefile \
|
||||
$(DIRECTORY)/src/glu/descrip.mms \
|
||||
$(DIRECTORY)/src/glu/sgi/Makefile \
|
||||
$(DIRECTORY)/src/glu/sgi/Makefile.win \
|
||||
$(DIRECTORY)/src/glu/sgi/Makefile.DJ \
|
||||
$(DIRECTORY)/src/glu/sgi/cc*.txt \
|
||||
$(DIRECTORY)/src/glu/sgi/glu.def \
|
||||
$(DIRECTORY)/src/glu/sgi/glu.dsp \
|
||||
$(DIRECTORY)/src/glu/sgi/dummy.cc \
|
||||
$(DIRECTORY)/src/glu/sgi/descrip.mms \
|
||||
$(DIRECTORY)/src/glu/sgi/mesaglu.opt \
|
||||
@@ -277,7 +274,18 @@ LIB_FILES = \
|
||||
$(DIRECTORY)/progs/util/sampleMakefile \
|
||||
$(DIRECTORY)/vms/analyze_map.com \
|
||||
$(DIRECTORY)/vms/xlib.opt \
|
||||
$(DIRECTORY)/vms/xlib_share.opt
|
||||
$(DIRECTORY)/vms/xlib_share.opt \
|
||||
$(DIRECTORY)/windows/VC6/mesa/gdi/gdi.dsp \
|
||||
$(DIRECTORY)/windows/VC6/mesa/glu/*.txt \
|
||||
$(DIRECTORY)/windows/VC6/mesa/glu/glu.dsp \
|
||||
$(DIRECTORY)/windows/VC6/mesa/mesa.dsw \
|
||||
$(DIRECTORY)/windows/VC6/mesa/mesa/mesa.dsp \
|
||||
$(DIRECTORY)/windows/VC6/mesa/osmesa/osmesa.dsp \
|
||||
$(DIRECTORY)/windows/VC7/mesa/gdi/gdi.vcproj \
|
||||
$(DIRECTORY)/windows/VC7/mesa/glu/glu.vcproj \
|
||||
$(DIRECTORY)/windows/VC7/mesa/mesa.sln \
|
||||
$(DIRECTORY)/windows/VC7/mesa/mesa/mesa.vcproj \
|
||||
$(DIRECTORY)/windows/VC7/mesa/osmesa/osmesa.vcproj
|
||||
|
||||
|
||||
GLUT_FILES = \
|
||||
@@ -288,7 +296,6 @@ GLUT_FILES = \
|
||||
$(DIRECTORY)/src/glut/glx/*def \
|
||||
$(DIRECTORY)/src/glut/glx/descrip.mms \
|
||||
$(DIRECTORY)/src/glut/glx/mms_depend \
|
||||
$(DIRECTORY)/src/glut/glx/glut.dsp \
|
||||
$(DIRECTORY)/src/glut/glx/*.[ch] \
|
||||
$(DIRECTORY)/src/glut/beos/*.[ch] \
|
||||
$(DIRECTORY)/src/glut/beos/*.cpp \
|
||||
@@ -311,8 +318,6 @@ DEMO_FILES = \
|
||||
$(DIRECTORY)/progs/demos/*.cxx \
|
||||
$(DIRECTORY)/progs/demos/*.dat \
|
||||
$(DIRECTORY)/progs/demos/README \
|
||||
$(DIRECTORY)/progs/demos/Windows/*.dsp \
|
||||
$(DIRECTORY)/progs/demos/Windows/*.dsw \
|
||||
$(DIRECTORY)/progs/xdemos/Makefile* \
|
||||
$(DIRECTORY)/progs/xdemos/descrip.mms \
|
||||
$(DIRECTORY)/progs/xdemos/*.[chf] \
|
||||
@@ -325,7 +330,13 @@ DEMO_FILES = \
|
||||
$(DIRECTORY)/progs/windml/Makefile.ugl \
|
||||
$(DIRECTORY)/progs/windml/*.c \
|
||||
$(DIRECTORY)/progs/windml/*.bmp \
|
||||
$(DIRECTORY)/progs/ggi/*.c
|
||||
$(DIRECTORY)/progs/ggi/*.c \
|
||||
$(DIRECTORY)/windows/VC6/progs/demos/*.dsp \
|
||||
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
|
||||
$(DIRECTORY)/windows/VC6/progs/progs.dsw \
|
||||
$(DIRECTORY)/windows/VC7/progs/demos/*.vcproj \
|
||||
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj \
|
||||
$(DIRECTORY)/windows/VC7/progs/progs.sln
|
||||
|
||||
|
||||
DRI_FILES = \
|
||||
|
@@ -31,8 +31,6 @@
|
||||
# Available options:
|
||||
#
|
||||
# Environment variables:
|
||||
# CPU optimize for the given processor.
|
||||
# default = pentium
|
||||
# GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++)
|
||||
# or `mesa'.
|
||||
# default = mesa
|
||||
@@ -59,12 +57,10 @@
|
||||
|
||||
.PHONY : all libgl libglu libglut clean realclean
|
||||
|
||||
CPU ?= pentium
|
||||
|
||||
GLU ?= mesa
|
||||
|
||||
CFLAGS = -Wall -W -pedantic
|
||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
|
||||
CFLAGS += -O2 -ffast-math
|
||||
|
||||
export CFLAGS
|
||||
|
||||
|
@@ -31,8 +31,6 @@
|
||||
# Available options:
|
||||
#
|
||||
# Environment variables:
|
||||
# CPU optimize for the given processor.
|
||||
# default = pentium
|
||||
# GLIDE path to Glide3 SDK; used with FX.
|
||||
# default = $(TOP)/glide3
|
||||
# FX=1 build for 3dfx Glide3. Note that this disables
|
||||
@@ -57,8 +55,6 @@
|
||||
|
||||
.PHONY : all libgl clean realclean
|
||||
|
||||
CPU ?= pentium
|
||||
|
||||
ifeq ($(ICD),1)
|
||||
# when -std=c99 mingw will not define WIN32
|
||||
CFLAGS = -Wall -W -Werror
|
||||
@@ -66,7 +62,7 @@ else
|
||||
# I love c89
|
||||
CFLAGS = -Wall -W -pedantic
|
||||
endif
|
||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
|
||||
CFLAGS += -O2 -ffast-math
|
||||
|
||||
export CFLAGS
|
||||
|
||||
|
179
Mesa.dsw
179
Mesa.dsw
@@ -1,179 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "array_cache"=".\SRC\MESA\array_cache\array_cache.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "gdi"=".\src\mesa\drivers\windows\gdi\gdi.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name array_cache
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name main
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name math
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name swrast_setup
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name swrast
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name tnl
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name glapi
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name shader
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "glapi"=".\SRC\MESA\glapi\glapi.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "glu"=".\src\glu\sgi\glu.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name gdi
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "main"=".\SRC\MESA\main\main.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "math"=".\SRC\MESA\math\math.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "osmesa"=".\SRC\MESA\DRIVERS\osmesa\osmesa.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name gdi
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "shader"=".\SRC\MESA\shader\shader.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "swrast"=".\SRC\MESA\swrast\swrast.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "swrast_setup"=".\SRC\MESA\swrast_setup\swrast_setup.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "tnl"=".\SRC\MESA\tnl\tnl.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
@@ -53,8 +53,10 @@ set -v
|
||||
|
||||
mkdir ${INCLUDE_DIR}
|
||||
mkdir ${INCLUDE_DIR}/GL
|
||||
mkdir ${INCLUDE_DIR}/GLES
|
||||
mkdir ${LIB_DIR}
|
||||
cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL
|
||||
cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES
|
||||
cp -fd ${TOP}/lib*/lib* ${LIB_DIR}
|
||||
|
||||
echo "Done."
|
||||
|
@@ -446,7 +446,7 @@ case $ARCH in
|
||||
${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
|
||||
FINAL_LIBS=${LIBNAME}
|
||||
else
|
||||
LIBNAME="${LIBNAME}.dylib"
|
||||
LIBNAME="lib${LIBNAME}.dylib"
|
||||
echo "mklib: Making Darwin shared library: " ${LIBNAME}
|
||||
FLAGS="-dynamiclib -multiply_defined suppress"
|
||||
if [ $CPLUSPLUS = 1 ] ; then
|
||||
|
@@ -18,8 +18,12 @@ GLW_LIB_NAME = libGLw.dylib
|
||||
OSMESA_LIB_NAME = libOSMesa.dylib
|
||||
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
OSMESA_LIB_DEPS = $(TOP)/lib/GL.dylib
|
||||
GLU_LIB_DEPS = $(TOP)/lib/GL.dylib
|
||||
GLUT_LIB_DEPS =
|
||||
OSMESA_LIB_DEPS = -L$(LIB_DIR) -lGL
|
||||
GLU_LIB_DEPS = -L$(LIB_DIR) -lGL
|
||||
GLUT_LIB_DEPS = -L$(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
|
||||
|
||||
|
@@ -26,6 +26,10 @@ MKDEP = makedepend
|
||||
MKDEP_OPTIONS = -fdepend
|
||||
MAKE = make
|
||||
|
||||
# Python and flags (generally only needed by the developers)
|
||||
PYTHON2 = python
|
||||
PYTHON_FLAGS = -t -O -O
|
||||
|
||||
# Library names (base name)
|
||||
GL_LIB = GL
|
||||
GLU_LIB = GLU
|
||||
@@ -39,7 +43,7 @@ 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
|
||||
OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
|
||||
|
||||
|
||||
# Optional assembly language optimization files for libGL
|
||||
@@ -61,9 +65,10 @@ PROGRAM_DIRS = demos redbook samples xdemos
|
||||
|
||||
|
||||
# Library/program dependencies
|
||||
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
|
||||
EXTRA_LIB_PATH ?=
|
||||
GL_LIB_DEPS = $(EXTRA_LIB_PATH) -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
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
|
@@ -11,16 +11,18 @@ CXX = g++
|
||||
WARN_FLAGS = -Wall
|
||||
OPT_FLAGS = -O
|
||||
|
||||
EXPAT_INCLUDES = -I/usr/local/include
|
||||
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
|
||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY
|
||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math -I/usr/local/include $(X11_INCLUDES)
|
||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC \
|
||||
-ffast-math $(X11_INCLUDES)
|
||||
CXXFLAGS = $(DEFINES) -Wall -g -ansi -pedantic -fPIC
|
||||
|
||||
ASM_SOURCES =
|
||||
|
||||
# Library/program dependencies
|
||||
DRI_LIB_DEPS = -L/usr/local/lib -lm -lpthread -lexpat
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -pthread
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGL -lXt -lXm -lX11
|
||||
|
9
configs/freebsd-dri-amd64
Normal file
9
configs/freebsd-dri-amd64
Normal file
@@ -0,0 +1,9 @@
|
||||
# -*-makefile-*-
|
||||
# Configuration for freebsd-dri-amd64: FreeBSD DRI hardware drivers
|
||||
|
||||
include $(TOP)/configs/freebsd-dri
|
||||
|
||||
CONFIG_NAME = freebsd-dri-x86-64
|
||||
|
||||
ASM_FLAGS = -DUSE_X86_64_ASM
|
||||
ASM_SOURCES = $(X86-64_SOURCES) $(X86-64_API)
|
@@ -8,13 +8,26 @@ CONFIG_NAME = linux
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
|
||||
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
WARN_FLAGS = -Wall
|
||||
OPT_FLAGS = -O3 -g
|
||||
PIC_FLAGS = -fPIC
|
||||
|
||||
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. Add -m32
|
||||
# to build properly on 64-bit platforms.
|
||||
|
||||
ARCH_FLAGS ?=
|
||||
|
||||
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
|
||||
-D_BSD_SOURCE -DPTHREADS -DUSE_XSHM
|
||||
|
||||
X11_INCLUDES = -I/usr/X11R6/include
|
||||
|
||||
CFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
|
||||
$(ASM_FLAGS) $(X11_INCLUDES) -std=c99 -ffast-math
|
||||
|
||||
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) \
|
||||
$(X11_INCLUDES)
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
|
||||
# Library/program dependencies
|
||||
# Need to have -L/usr/X11R6/lib in these:
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
|
||||
EXTRA_LIB_PATH = -L/usr/X11R6/lib
|
||||
|
@@ -1,20 +1,8 @@
|
||||
# Configuration for debugging on Linux
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux
|
||||
|
||||
CONFIG_NAME = linux-debug
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG
|
||||
|
||||
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
# Need to have -L/usr/X11R6/lib in these:
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
|
||||
OPT_FLAGS = -g
|
||||
DEFINES += -DDEBUG -DMESA_DEBUG -DRUN_DEBUG_BENCHMARK
|
||||
|
@@ -39,8 +39,6 @@ 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
|
||||
|
@@ -8,5 +8,9 @@ CONFIG_NAME = linux-dri-x86
|
||||
# Unnecessary on x86, generally.
|
||||
PIC_FLAGS =
|
||||
|
||||
# Add -m32 to CFLAGS:
|
||||
ARCH_FLAGS = -m32
|
||||
|
||||
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
|
||||
ASM_SOURCES = $(X86_SOURCES)
|
||||
|
||||
|
@@ -7,6 +7,9 @@ CONFIG_NAME = linux-dri-x86-64
|
||||
|
||||
ARCH_FLAGS = -m64
|
||||
|
||||
ASM_FLAGS = -DUSE_X86_64_ASM
|
||||
ASM_SOURCES = $(X86-64_SOURCES) $(X86-64_API)
|
||||
|
||||
LIB_DIR = $(TOP)/lib64
|
||||
|
||||
# Library/program dependencies
|
||||
|
@@ -1,18 +1,9 @@
|
||||
# Configuration for Linux on PPC
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux
|
||||
|
||||
CONFIG_NAME = linux-ppc
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
|
||||
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
OPT_FLAGS = -O3 -mcpu=603 -fsigned-char -funroll-loops
|
||||
|
||||
# FIXME: Use of PowerPC assembly should be enabled here.
|
@@ -1,15 +1,9 @@
|
||||
# Configuration for Linux on PPC, static libs
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux-ppc
|
||||
|
||||
CONFIG_NAME = linux-ppc-static
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
|
||||
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
MKLIB_OPTIONS = -static
|
||||
|
||||
# Library names (actual file names)
|
||||
@@ -18,9 +12,3 @@ GLU_LIB_NAME = libGLU.a
|
||||
GLUT_LIB_NAME = libglut.a
|
||||
GLW_LIB_NAME = libGLw.a
|
||||
OSMESA_LIB_NAME = libOSMesa.a
|
||||
|
||||
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm
|
||||
|
@@ -8,11 +8,23 @@ CONFIG_NAME = linux-solo
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 -DDRM_USE_MALLOC
|
||||
WARN_FLAGS = -Wall -Wundef
|
||||
OPT_FLAGS = -O3 -g
|
||||
PIC_FLAGS = -fPIC
|
||||
|
||||
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
|
||||
ARCH_FLAGS ?=
|
||||
|
||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
|
||||
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 -DDRM_USE_MALLOC
|
||||
|
||||
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
|
||||
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
|
||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl -L$(LIB_DIR) -lEGL -l$(GL_LIB)
|
||||
@@ -22,7 +34,7 @@ GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
|
||||
|
||||
# Directories
|
||||
SRC_DIRS = mesa egl glx/mini glu glut/mini
|
||||
SRC_DIRS = egl mesa glx/mini glu glut/mini
|
||||
DRIVER_DIRS = dri
|
||||
PROGRAM_DIRS = miniglx egl
|
||||
|
||||
|
@@ -1,32 +1,12 @@
|
||||
# Configuration for linux-solo: Linux DRI hardware drivers for fbdev
|
||||
# -*-makefile-*-
|
||||
# Configuration for linux-solo-x86: Linux hardware drivers for fbdev for x86
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux-solo
|
||||
|
||||
CONFIG_NAME = linux-solo-x86
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DDRM_USE_MALLOC
|
||||
|
||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -O3 -g -std=c99 -Wundef -fPIC -ffast-math
|
||||
|
||||
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
|
||||
|
||||
# Unnecessary on x86, generally.
|
||||
PIC_FLAGS =
|
||||
|
||||
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
|
||||
ASM_SOURCES = $(X86_SOURCES)
|
||||
|
||||
# Library/program dependencies
|
||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
|
||||
GL_LIB_DEPS = -lm -lpthread -ldl
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
|
||||
|
||||
# Directories
|
||||
SRC_DIRS = mesa glx/mini glu glut/mini
|
||||
DRIVER_DIRS = dri
|
||||
PROGRAM_DIRS = miniglx
|
||||
|
||||
#DRI_DIRS = fb ffb gamma sis savage
|
||||
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
|
||||
|
@@ -1,17 +1,9 @@
|
||||
# Configuration for generic Linux, making static libs
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux
|
||||
|
||||
CONFIG_NAME = linux-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
|
||||
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
MKLIB_OPTIONS = -static
|
||||
|
||||
# Library names (actual file names)
|
||||
@@ -27,4 +19,3 @@ OSMESA_LIB_DEPS =
|
||||
GLU_LIB_DEPS =
|
||||
GLUT_LIB_DEPS =
|
||||
GLW_LIB_DEPS =
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
|
||||
|
@@ -1,24 +1,8 @@
|
||||
# Configuration for Linux with x86 optimizations
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux
|
||||
|
||||
CONFIG_NAME = linux-x86
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
|
||||
|
||||
CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
|
||||
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
|
||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
|
||||
|
||||
# Library/program dependencies
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
|
@@ -4,10 +4,4 @@ include $(TOP)/configs/linux-x86
|
||||
|
||||
CONFIG_NAME = linux-x86-32
|
||||
|
||||
|
||||
# Other than -m32, these are the same as in linux-x86, which we included above.
|
||||
|
||||
CFLAGS = -m32 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
|
||||
|
||||
CXXFLAGS = -m32 -Wall -O3 fPIC -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
|
||||
ARCH_FLAGS += -m32
|
||||
|
@@ -1,28 +1,13 @@
|
||||
# Configuration for Linux for 64-bit X86 (Opteron)
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux
|
||||
|
||||
CONFIG_NAME = linux-x86-64
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -m64 -Wall -O3 -std=c99 -pedantic -fPIC -D_REENTRANT -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DUSE_X86_64_ASM
|
||||
|
||||
CXXFLAGS = -m64 -Wall -O3 -fPIC -D_REENTRANT -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
|
||||
ASM_SOURCES = $(X86-64_SOURCES)
|
||||
ARCH_FLAGS = -m64
|
||||
|
||||
ASM_SOURCES = $(X86-64_SOURCES) $(X86-64_API)
|
||||
ASM_FLAGS = -DUSE_X86_64_ASM
|
||||
|
||||
LIB_DIR = $(TOP)/lib64
|
||||
|
||||
|
||||
# Library/program dependencies
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
EXTRA_LIB_PATH = -L/usr/X11R6/lib64
|
||||
|
@@ -1,28 +1,7 @@
|
||||
# Configuration for Linux for 64-bit X86 (Opteron)
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux-x86-64
|
||||
|
||||
CONFIG_NAME = linux-x86-64-debug
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -g -m64 -Wall -O3 -std=c99 -pedantic -fPIC -D_REENTRANT -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DUSE_X86_64_ASM -DDEBUG -DMESA_DEBUG -DRUN_DEBUG_BENCHMARK
|
||||
|
||||
CXXFLAGS = -g -m64 -Wall -O3 -ansi -pedantic -fPIC -D_REENTRANT -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG -DRUN_DEBUG_BENCHMARK
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
|
||||
ASM_SOURCES = $(X86-64_SOURCES)
|
||||
|
||||
|
||||
LIB_DIR = $(TOP)/lib64
|
||||
|
||||
|
||||
# Library/program dependencies
|
||||
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lm -lpthread
|
||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
|
||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
|
||||
DEFINES += -DDEBUG -DMESA_DEBUG -DRUN_DEBUG_BENCHMARK
|
||||
|
@@ -1,22 +1,11 @@
|
||||
# Configuration for Linux for 64-bit X86 (Opteron), static libs
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux-x86-64
|
||||
|
||||
CONFIG_NAME = linux-x86-64-static
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -m64 -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
|
||||
|
||||
CXXFLAGS = -m64 -Wall -O3 -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
MKLIB_OPTIONS = -static
|
||||
|
||||
|
||||
# Library names (actual file names)
|
||||
GL_LIB_NAME = libGL.a
|
||||
GLU_LIB_NAME = libGLU.a
|
||||
@@ -24,17 +13,9 @@ GLUT_LIB_NAME = libglut.a
|
||||
GLW_LIB_NAME = libGLw.a
|
||||
OSMESA_LIB_NAME = libOSMesa.a
|
||||
|
||||
|
||||
#ASM_SOURCES = $(X86_SOURCES)
|
||||
|
||||
|
||||
LIB_DIR = $(TOP)/lib64
|
||||
|
||||
|
||||
# Library/program dependencies (static libs don't have dependencies)
|
||||
GL_LIB_DEPS =
|
||||
OSMESA_LIB_DEPS =
|
||||
GLU_LIB_DEPS =
|
||||
GLUT_LIB_DEPS =
|
||||
GLW_LIB_DEPS =
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
|
||||
|
@@ -5,6 +5,5 @@ include $(TOP)/configs/linux-x86
|
||||
|
||||
CONFIG_NAME = linux-x86-debug
|
||||
|
||||
CFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
|
||||
|
||||
CXXFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
OPT_FLAGS = -g
|
||||
DEFINES += -DDEBUG -DMESA_DEBUG -DRUN_DEBUG_BENCHMARK
|
||||
|
@@ -1,22 +1,11 @@
|
||||
# Configuration for Linux with x86 optimizations, static libs
|
||||
|
||||
include $(TOP)/configs/default
|
||||
include $(TOP)/configs/linux-x86
|
||||
|
||||
CONFIG_NAME = linux-x86-static
|
||||
|
||||
# Compiler and flags
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
|
||||
CFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
|
||||
|
||||
CXXFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
|
||||
|
||||
GLUT_CFLAGS = -fexceptions
|
||||
|
||||
MKLIB_OPTIONS = -static
|
||||
|
||||
|
||||
# Library names (actual file names)
|
||||
GL_LIB_NAME = libGL.a
|
||||
GLU_LIB_NAME = libGLU.a
|
||||
@@ -24,14 +13,9 @@ GLUT_LIB_NAME = libglut.a
|
||||
GLW_LIB_NAME = libGLw.a
|
||||
OSMESA_LIB_NAME = libOSMesa.a
|
||||
|
||||
|
||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
|
||||
|
||||
|
||||
# Library/program dependencies (static libs don't have dependencies)
|
||||
GL_LIB_DEPS =
|
||||
OSMESA_LIB_DEPS =
|
||||
GLU_LIB_DEPS =
|
||||
GLUT_LIB_DEPS =
|
||||
GLW_LIB_DEPS =
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
|
||||
|
@@ -9,7 +9,7 @@ CC = cc
|
||||
CFLAGS = -Xa -xO3 -xpentium -KPIC -I/usr/openwin/include -DUSE_XSHM
|
||||
MKLIB_OPTIONS = -static
|
||||
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
|
||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm -lglut -lGLU -lGL
|
||||
|
||||
GL_LIB_NAME = libGL.a
|
||||
GLU_LIB_NAME = libGLU.a
|
||||
|
@@ -14,68 +14,77 @@ Quick & dirty start:
|
||||
|
||||
|
||||
|
||||
Contact:
|
||||
--------
|
||||
|
||||
Daniel Borca <dborca@users.sourceforge.net>
|
||||
|
||||
|
||||
|
||||
WARNING! The info below this line is outdated (yet some of it useful). WARNING!
|
||||
*******************************************************************************
|
||||
The Mingw port for Mesa 3-D Graphics Library was created August 30, 1998 by Paul Garceau.
|
||||
|
||||
|
||||
|
||||
August 30, 1998 -- Paul Garceau
|
||||
Updated January 13, 2000 -- Paul Garceau (pgarceau@teleport.com)
|
||||
Updated January 13, 2000; June 3, 2005 -- Paul Garceau <pgarceau@users.sourceforge.net>
|
||||
|
||||
DISCLAIMER: I make this port of the Mesa 3-D Graphics Library as a service
|
||||
to the general public. I can, in no way support or make any guarantee that the
|
||||
build will work for your system.
|
||||
|
||||
The associated packages and batch files I have included as part of the GCC-2.95.2/Mingw32 extension are provided "As-is" with out any guarantee of support or functionality from this author.
|
||||
Acknowledgements:
|
||||
|
||||
Feel free to modify or change things as you see fit, just remember that
|
||||
I can't support any modifications you might want to make to the files which I
|
||||
have included OR the lgpl protected Mesa 3-D Graphics Library.
|
||||
Daniel Borca, whose work and commitment to maintaining the Mingw port of the Mesa 3-D Graphics Library has been, and will continue to be greatly appreciated by an overworked and underpaid developer such as myself.
|
||||
Without the creative inspiration and personal commitment provided by Mumit Khan, Jan-Jaap Vanderhagen and Colin Peters, Mingw would never have existed. Acknowledgements also need to be given to all of the developers who have worked on Mingw, Mesa and Msys over the years.
|
||||
Last, but certainly far from the least, Brian Paul, who has dedicated at least the last seven or eight years of his life to making Mesa 3-D Graphics Library what it is today and managing the development for all of those years.
|
||||
*********************************************************************************
|
||||
|
||||
I recommend using GCC-2.95.2/Mingw32 which is available at Mumit Khans' ftp site:
|
||||
Greetings,
|
||||
|
||||
(ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/mingw32/)
|
||||
Feel free to modify or change things related to the Mingw build as you see fit, just remember that, the author of the current build may not be able to support any modifications you might want to make to the files which have been included for the build.
|
||||
|
||||
Mesa core components are licensed under XFree-86 (for more on licensing of Mesa 3-D Graphics Library, check out the Mesa homepage (http://www.mesa3d.org).
|
||||
|
||||
The Mingw generated libraries themselves are licensed under the GNU-LGPL license. Source code for Mingw can be found at http://www.mingw.org. For licensing terms on Mingw, please visit http://www.mingw.org.
|
||||
|
||||
It is recommended that you use the latest "stable" release of Mingw. "Candidates" are beta testing distributions for Mingw. Mingw is available at http://www.mingw.org.
|
||||
|
||||
This build has been tested under WinNT4/SP6. Win9x and WinNT5 remain untested by me. I have not tested any of the demos included with Mesa3d.
|
||||
|
||||
I recommend using the GCC-2.95.2/Mingw32.
|
||||
Installation:
|
||||
|
||||
ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/mingw32/gcc-2.95.2
|
||||
This readme assumes that you already have extracted the necessary files to a working directory/folder that Mingw can use to build the Mesa3D libraries and that you know where that directory/folder is located on your Windows system. If you have any questions about how to set things up properly which is specific to Mesa3D, the folks on the Mesa3D mailing lists (http://www.mesa3d.org) would probably be happy to assist you. Also you can probably ask anyone on the Mingw mailing lists for any questions specific to Mingw (http://www.mingw.org)
|
||||
|
||||
Much thanks to the combined efforts of Mumit Khan, Jan-Jaap Vanderhagen
|
||||
and Colin Peters for making it possible for the Mingw32 toolchain to exist. Also, thanks go out to Stephane Rehel for the work that was completed on the Cygwin build.
|
||||
Targets and Environment variables used for Mingw build:
|
||||
|
||||
Installing GCC-2.95.2/Mingw32 Build:
|
||||
Before going into the actual build of the libraries, here is a list of available targets for the make process:
|
||||
|
||||
a) Open the file archive (either tar.gz or .zip extensions)
|
||||
"all" or "libgl" -- this target will build libopengl.a, a static library. It will not build the demos, etc.
|
||||
|
||||
b) Decide the directory you want to move the archived files to.
|
||||
clean -- this target will clean up most of the Mesa 3-D Graphics Library/object code from your hard drive.
|
||||
|
||||
realclean -- this target will clean up all of the Mesa 3D Graphics Library and the Mesa object code that it can find.
|
||||
|
||||
Environment Variables:
|
||||
|
||||
The environment variables are used to determine what sort of graphics driver support needs to be included in the finished Mesa 3-D Graphics Library.
|
||||
|
||||
GLIDE path to Glide3 SDK; used with FX.
|
||||
default = $(TOP)/glide3
|
||||
FX=1 build for 3dfx Glide3. Note that this disables
|
||||
compilation of most WMesa code and requires fxMesa.
|
||||
As a consequence, you'll need the Win32 Glide3
|
||||
library to build any application.
|
||||
default = no
|
||||
ICD=1 build the installable client driver interface
|
||||
(windows opengl driver interface)
|
||||
default = no
|
||||
X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
|
||||
default = no
|
||||
|
||||
d) Extract the files from the archive.
|
||||
|
||||
e) Edit the mingw32.bat file to accomodate your choice of directory structure.
|
||||
|
||||
%mesaroot%: This is your root directory (Mesa-3.3)
|
||||
%mesasrc%: This is the Mesa-3.3 src directory (Mesa-3.3\src)
|
||||
%mesalib%: This is where the build will put libGL.a and libGLU.a
|
||||
|
||||
Running the Build:
|
||||
|
||||
Open your Command Prompt or MS-DOS prompt.
|
||||
Go to your Mesa-3.3 'root' directory
|
||||
At the command line type: mingw32
|
||||
Launch Mingw.
|
||||
From the Windows Command Prompt:
|
||||
Set Environment Variables (as needed).
|
||||
"cd" to your Mesa3D 'root' directory.
|
||||
Enter "mingw32-make -f makefile.mgw <target>
|
||||
|
||||
That's all there is to it.
|
||||
|
||||
Enjoy!
|
||||
|
||||
Peace,
|
||||
|
||||
Paul G. (pgarceau@teleport.com)
|
||||
Paul G. <pgarceau@users.sourceforge.net>
|
||||
Daniel Borca <dborca@users.sourceforge.net>
|
||||
|
@@ -1,108 +1,139 @@
|
||||
File: docs/README.WIN32
|
||||
|
||||
Last updated: Oct 01, 2004 - Karl Schultz - kschultz@users.sourceforge.net
|
||||
Last updated: Jul 01, 2005 - Karl Schultz - kschultz@users.sourceforge.net
|
||||
|
||||
Quick Start
|
||||
----- -----
|
||||
|
||||
Unzip both ZIP files (MesaLib and MesaDemos) into the same directory.
|
||||
The libs and demos build separately, so if you do not care about the
|
||||
demos, you do not have to unzip that zip file. But if you do, it does
|
||||
need to be unzipped into the same directory as the lib zip file because
|
||||
the demos depend on the libs.
|
||||
need to be unzipped into the same directory as the lib zip file
|
||||
because the demos depend on the libs.
|
||||
|
||||
The build system has been changed to use Microsoft Visual Studio project
|
||||
workspaces and projects. Makefiles are no longer shipped or supported, but
|
||||
can be generated from the projects using Visual Studio.
|
||||
The Windows build system uses Microsoft Visual Studio. Project files
|
||||
for a specific version of Visual Studio are in their own directory in
|
||||
the top-level "windows" directory. For example, Visual Studio 6 files
|
||||
are in windows/VC6. If a directory does not exist for your version of
|
||||
Visual Studio, you can try importing the project files from an earlier
|
||||
version of Visual Studio. At this time, project files exist for
|
||||
Version 6 and Version 7. The code has been built with a beta version
|
||||
of Version 8 and it runs on 64-bit Windows. If you want to try this,
|
||||
start by importing the VC7 files and create the 64-bit targets in the
|
||||
configuration manager.
|
||||
|
||||
The workspace and project files were created with Visual Studio 6, so that
|
||||
they can be used with VS6 and so that they can also be imported into VS 7.
|
||||
The project files to build the core Mesa library, Windows Mesa
|
||||
drivers, OSMesa, and GLU are in the mesa directory. The project files
|
||||
to build GLUT and some demo programs are in the progs directory.
|
||||
|
||||
Details and Notes
|
||||
Makefiles are no longer shipped or supported, but can be generated
|
||||
from the projects using Visual Studio.
|
||||
|
||||
- To build the Mesa libraries, open the Mesa.dsw workspace file
|
||||
in the top directory. You will need to build at least one
|
||||
driver. Currently, only the gdi and osmesa drivers are available.
|
||||
Select one or the other as the active project and build it.
|
||||
If you want glu, select the glu project as active and build that as well.
|
||||
|
||||
- Glut is no longer in the Mesa.dsw workspace. It is now built in
|
||||
the demo workspace (see below).
|
||||
|
||||
- The build process will create a lib directory in the top directory
|
||||
and will put the following files there as you build them:
|
||||
Windows Drivers
|
||||
------- -------
|
||||
|
||||
At this time, only the GDI driver is known to work, as it has been
|
||||
ported and rewritten to the latest Mesa DD interfaces. Source code
|
||||
also exists in the tree for other drivers in src/mesa/drivers/windows,
|
||||
but the status of this code is unknown.
|
||||
|
||||
The GDI driver operates basically by writing pixel spans into a DIB
|
||||
section and then blitting the DIB to the window. The driver was
|
||||
recently cleaned up and rewitten and so may have bugs or may be
|
||||
missing some functionality. The older versions of the CVS source may
|
||||
be useful in figuring out any problems, or report them to me.
|
||||
|
||||
To build Mesa with the GDI driver, build the mesa, gdi, and glu
|
||||
projects in the Visual Studio workspace found at
|
||||
|
||||
windows/VC6/mesa/mesa.dsw
|
||||
or
|
||||
windows/VC7/mesa/mesa.sln
|
||||
|
||||
The osmesa DLL can also be built with the osmesa project.
|
||||
|
||||
The build system creates a lib top-level directory and copies
|
||||
resulting LIB and DLL files to this lib directory. The files are:
|
||||
|
||||
OPENGL32.LIB, GLU32.LIB, OSMESA32.LIB
|
||||
OPENGL32.DLL, GLU32.DLL, OSMESA32.DLL
|
||||
|
||||
- Some users have reported problems building glu with VS7 after importing
|
||||
and converting the VS6 project files. The problem is caused by a custom
|
||||
build step that was put in place to work around a problem with VS6 not
|
||||
recognizing .cc files as C++ source files. It appears that VS7 can be
|
||||
configured to recognize .cc files as C++ files and so it compiles these
|
||||
glu files with the default settings, and does not use settings that are
|
||||
required to compile the files correctly. The easiest way to solve the
|
||||
problem is to remove the .cc files from the glu project. This does not
|
||||
delete the files, but removes them from the project so that VS does not
|
||||
try to compile them at all. This allows the custom build step to compile
|
||||
the files with the proper settings.
|
||||
If the MesaDemos ZIP file was extracted, the DLL files are also copied
|
||||
to the demos directory. This facilitates running the demos as described
|
||||
below.
|
||||
|
||||
- After building, you can copy the above DLL files to a place in your PATH
|
||||
such as $SystemRoot/SYSTEM32. If you don't like putting things in a
|
||||
system directory, place them in the same directory as the executable(s).
|
||||
Be careful about accidentially overwriting files of the same name in
|
||||
the SYSTEM32 directory.
|
||||
|
||||
- Build the demos by opening the appropriate *.dsw file in the
|
||||
progs directory tree. For example, to build the demos, use
|
||||
progs/demos/Windows/demos.dsw. The Windows directory contains
|
||||
the workspace and all the projects for each demo program. Each
|
||||
project places the executable in the same directory as its source
|
||||
code, which is required for some demos.
|
||||
GLUT and Demos
|
||||
---- --- -----
|
||||
|
||||
- The demo projects also copy the Mesa library DLL files from the lib
|
||||
directory into the same directory as the demo executables, so that
|
||||
the demos use the Mesa libs you just built.
|
||||
A Visual Studio workspace can be found at
|
||||
|
||||
- The DLL files are built so that the external entry points use the
|
||||
stdcall calling convention.
|
||||
windows/VC6/progs/progs.dsw
|
||||
or
|
||||
windows/VC7/progs/progs.sln
|
||||
|
||||
- Static LIB files are not built. The LIB files that are built with
|
||||
are the linker import files associated with the DLL files.
|
||||
It can be used to build GLUT and a few demos. The GLUT lib and DLL
|
||||
are copied to the top-level lib directory, along with the Mesa libs.
|
||||
|
||||
- The si-glu sources are used to build the GLU libs. This was done
|
||||
mainly to get the better tessellator code.
|
||||
The demo build system expects to find the LIB files in the top level
|
||||
lib directory, so you must build the Mesa libs first. The demo
|
||||
executables are placed in the demos directory, because some of them
|
||||
rely on data files found there. Also, the Mesa lib DLL's were copied
|
||||
there by the Mesa lib build process. Therefore, you should be able to
|
||||
simply run the demo executables from the demo directory.
|
||||
|
||||
- The Windows driver (in src/Windows) builds and runs at least at
|
||||
a minimal level. I modified this driver to work with the new
|
||||
Mesa 4.0 code and driver architecture, but I did not do a great
|
||||
deal of optimization and testing. There are many opportunities
|
||||
for optimization, many of which can be done by coding more specific
|
||||
paths for the rasterizers. See src/osmesa/osmesa.c for some good
|
||||
examples.
|
||||
If you want to run the demos from the Visual Studio, you may have to
|
||||
change the startup directory and explicitly state where the executables are.
|
||||
|
||||
- There is DirectDraw support in the Windows driver, updated by
|
||||
Daniel Slater. You'll need to uncomment the #define DDRAW line
|
||||
in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries.
|
||||
On some systems, you will acheive significantly higher framerates
|
||||
with DirectDraw.
|
||||
|
||||
- Some of the more specialized code like FX drivers, stereo, and
|
||||
parallel support isn't compiled or tested. I left much of this
|
||||
code alone, but it may need some work to get it 'turned on' again.
|
||||
Build System Notes
|
||||
----- ------ -----
|
||||
|
||||
- No assembly code is compiled or assembled. Again, this may need
|
||||
some work to turn it back on or use it again.
|
||||
VC6
|
||||
---
|
||||
|
||||
- To build "mangled" Mesa, add the preprocessor define USE_MGL_NAMESPACE
|
||||
to the project settings. You will also need to edit src/mesa.def to change
|
||||
all the gl* symbols to mgl*. Because this is easy to do with a global
|
||||
replace operation in a text editor, no additional mangled version of mesa.def
|
||||
is maintained or shipped.
|
||||
Visual Studio 6 does not recognize files with the .cc extension as C++
|
||||
language files, without a lot of unnatural tweaking. So, the VC6
|
||||
build process uses custom build steps to compile these files in the
|
||||
GLU library.
|
||||
|
||||
|
||||
VC7
|
||||
---
|
||||
|
||||
The above-mentioned .cc problem does not exist in this version.
|
||||
|
||||
|
||||
General
|
||||
-------
|
||||
|
||||
After building, you can copy the above DLL files to a place in your
|
||||
PATH such as $SystemRoot/SYSTEM32. If you don't like putting things
|
||||
in a system directory, place them in the same directory as the
|
||||
executable(s). Be careful about accidentially overwriting files of
|
||||
the same name in the SYSTEM32 directory.
|
||||
|
||||
The DLL files are built so that the external entry points use the
|
||||
stdcall calling convention.
|
||||
|
||||
Static LIB files are not built. The LIB files that are built with are
|
||||
the linker import files associated with the DLL files.
|
||||
|
||||
The si-glu sources are used to build the GLU libs. This was done
|
||||
mainly to get the better tessellator code.
|
||||
|
||||
To build "mangled" Mesa, add the preprocessor define USE_MGL_NAMESPACE
|
||||
to the project settings. You will also need to edit src/mesa.def to
|
||||
change all the gl* symbols to mgl*. Because this is easy to do with a
|
||||
global replace operation in a text editor, no additional mangled
|
||||
version of mesa.def is maintained or shipped.
|
||||
|
||||
If you have a Windows-related build problem or question, it is
|
||||
probably better to direct it to me (kschultz@users.sourceforge.net),
|
||||
rather than directly to the other Mesa developers. I will help you
|
||||
as much as I can. I also monitor the Mesa mailing lists and will
|
||||
answer questions in this area there as well.
|
||||
rather than directly to the other Mesa developers. I will help you as
|
||||
much as I can. I also monitor the Mesa mailing lists and will answer
|
||||
questions in this area there as well.
|
||||
|
||||
|
||||
Karl Schultz
|
||||
|
@@ -62,12 +62,16 @@ Note that textures, programs and buffers can be shared by several rendering
|
||||
contexts so they can't be deleted until they're unbound in _all_ contexts.
|
||||
|
||||
|
||||
GL_EXT_framebuffer_object changes
|
||||
---------------------------------
|
||||
|
||||
XXX describe all the changes made for this extension.
|
||||
|
||||
|
||||
|
||||
To Do before release
|
||||
--------------------
|
||||
Fix dinoshade bug
|
||||
|
||||
To Do (someday) items
|
||||
---------------------
|
||||
Switch to freeglut
|
||||
Increase MAX_DRAWBUFFERS
|
||||
driver hooks for BeginQuery/EndQuery
|
||||
@@ -77,7 +81,7 @@ To Do before release
|
||||
Miscellaneous
|
||||
-------------
|
||||
|
||||
The main/get.c file is now generated with a Python script.
|
||||
The main/get.c file is now generated with a Python script (get_gen.py).
|
||||
|
||||
|
||||
|
||||
@@ -97,4 +101,4 @@ D3D needs updating
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
$Id: RELNOTES-6.3,v 3.9 2005/05/04 20:11:35 brianp Exp $
|
||||
$Id: RELNOTES-6.3,v 3.10 2005/07/01 01:04:31 brianp Exp $
|
||||
|
@@ -4,8 +4,6 @@
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||
|
||||
<body bgcolor="#eeeeee">
|
||||
|
||||
<!--Override a few values from the style sheet: -->
|
||||
<style>
|
||||
<!--
|
||||
|
@@ -82,7 +82,7 @@ my work hours at the Space Science and Engineering Center at the University
|
||||
of Wisconsin in Madison. My supervisor, Bill Hibbard, lets me do this because
|
||||
Mesa is now being using for the <a href="http://www.ssec.wisc.edu/%7Ebillh/vis.html" target="_parent">Vis5D</a> project.
|
||||
</p><p>
|
||||
October 1996: Mesa 2.0 is released. It implementes the OpenGL 1.1 specification.
|
||||
October 1996: Mesa 2.0 is released. It implements the OpenGL 1.1 specification.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -134,8 +134,8 @@ GL_ARB_fragment_program extensions.
|
||||
|
||||
|
||||
<p>
|
||||
Ongoing: Mesa is used as the core of many hardware OpenGL drivers for XFree86
|
||||
within the
|
||||
Ongoing: Mesa is used as the core of many hardware OpenGL drivers for
|
||||
the XFree86 X.org X servers within the
|
||||
<A href="http://dri.sourceforge.net/" target="_parent">DRI project</A>.
|
||||
I continue to enhance Mesa with new extensions and features.
|
||||
</p>
|
||||
|
@@ -1,7 +1,6 @@
|
||||
/* Mesa CSS */
|
||||
body {
|
||||
background-color: #ffffff;
|
||||
/*background-color: #55bbff;*/
|
||||
font: 14px 'Lucida Grande', Geneva, Arial, Verdana, sans-serif;
|
||||
color: black;
|
||||
link: #111188;
|
||||
|
@@ -6,6 +6,8 @@
|
||||
|
||||
<BODY>
|
||||
|
||||
<body bgcolor="#eeeeee">
|
||||
|
||||
<H1>News</H1>
|
||||
|
||||
|
||||
@@ -960,6 +962,6 @@ source code</a>.</p>
|
||||
|
||||
|
||||
<hr>
|
||||
$Id: news.html,v 3.19 2005/05/05 14:18:31 brianp Exp $
|
||||
$Id: news.html,v 3.20 2005/07/01 01:04:31 brianp Exp $
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
|
127
include/GL/gl.h
127
include/GL/gl.h
@@ -2,7 +2,7 @@
|
||||
* Mesa 3-D graphics library
|
||||
* Version: 6.3
|
||||
*
|
||||
* Copyright (C) 1999-2004 Brian Paul All Rights Reserved.
|
||||
* Copyright (C) 1999-2005 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"),
|
||||
@@ -2213,13 +2213,9 @@ GLAPI void GLAPIENTRY glTracePointerRangeMESA( const GLvoid* first, const GLvoid
|
||||
|
||||
typedef void (*GLprogramcallbackMESA)(GLenum target, GLvoid *data);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glProgramCallbackMESA(GLenum target, GLprogramcallbackMESA callback,
|
||||
GLvoid *data);
|
||||
GLAPI void GLAPIENTRY glProgramCallbackMESA(GLenum target, GLprogramcallbackMESA callback, GLvoid *data);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGetProgramRegisterfvMESA(GLenum target, GLsizei len, const GLubyte *name,
|
||||
GLfloat *v);
|
||||
GLAPI void GLAPIENTRY glGetProgramRegisterfvMESA(GLenum target, GLsizei len, const GLubyte *name, GLfloat *v);
|
||||
|
||||
#endif /* GL_MESA_program_debug */
|
||||
|
||||
@@ -2235,123 +2231,6 @@ typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLen
|
||||
#endif /* GL_ATI_blend_equation_separate */
|
||||
|
||||
|
||||
/* XXX this is temporary here! */
|
||||
#ifndef GL_EXT_framebuffer_object
|
||||
#define GL_EXT_framebuffer_object
|
||||
|
||||
GLAPI GLboolean GLAPIENTRY
|
||||
glIsRenderbufferEXT(GLuint renderbuffer);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glDeleteRenderbuffersEXT(GLsizei n, const GLuint *renderbuffers);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGenRenderbuffersEXT(GLsizei n, GLuint *renderbuffers);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glRenderbufferStorageEXT(GLenum target, GLenum internalformat,
|
||||
GLsizei width, GLsizei height);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint *params);
|
||||
|
||||
GLAPI GLboolean GLAPIENTRY
|
||||
glIsFramebufferEXT(GLuint framebuffer);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glBindFramebufferEXT(GLenum target, GLuint framebuffer);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glDeleteFramebuffersEXT(GLsizei n, const GLuint *framebuffers);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGenFramebuffersEXT(GLsizei n, GLuint *framebuffers);
|
||||
|
||||
GLAPI GLenum GLAPIENTRY
|
||||
glCheckFramebufferStatusEXT(GLenum target);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glFramebufferTexture1DEXT(GLenum target, GLenum attachment,
|
||||
GLenum textarget, GLuint texture, GLint level);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glFramebufferTexture2DEXT(GLenum target, GLenum attachment,
|
||||
GLenum textarget, GLuint texture, GLint level);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glFramebufferTexture3DEXT(GLenum target, GLenum attachment,
|
||||
GLenum textarget, GLuint texture,
|
||||
GLint level, GLint zoffset);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glFramebufferRenderbufferEXT(GLenum target, GLenum attachment,
|
||||
GLenum renderbuffertarget,
|
||||
GLuint renderbuffer);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment,
|
||||
GLenum pname, GLint *params);
|
||||
|
||||
GLAPI void GLAPIENTRY
|
||||
glGenerateMipmapEXT(GLenum target);
|
||||
|
||||
|
||||
#define GL_FRAMEBUFFER_EXT 0x8D40
|
||||
#define GL_RENDERBUFFER_EXT 0x8D41
|
||||
#define GL_STENCIL_INDEX_EXT 0x8D45
|
||||
#define GL_STENCIL_INDEX1_EXT 0x8D46
|
||||
#define GL_STENCIL_INDEX4_EXT 0x8D47
|
||||
#define GL_STENCIL_INDEX8_EXT 0x8D48
|
||||
#define GL_STENCIL_INDEX16_EXT 0x8D49
|
||||
#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
|
||||
#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
|
||||
#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
|
||||
#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
|
||||
#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
|
||||
#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
|
||||
#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
|
||||
#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
|
||||
#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
|
||||
#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
|
||||
#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
|
||||
#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
|
||||
#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
|
||||
#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
|
||||
#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
|
||||
#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
|
||||
#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
|
||||
#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
|
||||
#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
|
||||
#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
|
||||
#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
|
||||
#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT 0x8CD8
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
|
||||
#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
|
||||
#define GL_FRAMEBUFFER_STATUS_ERROR_EXT 0x8CDE
|
||||
#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
|
||||
#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
|
||||
#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
|
||||
#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
|
||||
#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
|
||||
|
||||
#endif /* GL_EXT_framebuffer_object */
|
||||
|
||||
|
||||
|
||||
/**
|
||||
** NOTE!!!!! If you add new functions to this file, or update
|
||||
** glext.h be sure to regenerate the gl_mangle.h file. See comments
|
||||
|
@@ -62,11 +62,13 @@
|
||||
#define glBindBufferARB MANGLE(BindBufferARB)
|
||||
#define glBindBuffer MANGLE(BindBuffer)
|
||||
#define glBindFragmentShaderATI MANGLE(BindFragmentShaderATI)
|
||||
#define glBindFramebufferEXT MANGLE(BindFramebufferEXT)
|
||||
#define glBindLightParameterEXT MANGLE(BindLightParameterEXT)
|
||||
#define glBindMaterialParameterEXT MANGLE(BindMaterialParameterEXT)
|
||||
#define glBindParameterEXT MANGLE(BindParameterEXT)
|
||||
#define glBindProgramARB MANGLE(BindProgramARB)
|
||||
#define glBindProgramNV MANGLE(BindProgramNV)
|
||||
#define glBindRenderbufferEXT MANGLE(BindRenderbufferEXT)
|
||||
#define glBindTexGenParameterEXT MANGLE(BindTexGenParameterEXT)
|
||||
#define glBindTextureEXT MANGLE(BindTextureEXT)
|
||||
#define glBindTexture MANGLE(BindTexture)
|
||||
@@ -102,6 +104,7 @@
|
||||
#define glBufferSubData MANGLE(BufferSubData)
|
||||
#define glCallList MANGLE(CallList)
|
||||
#define glCallLists MANGLE(CallLists)
|
||||
#define glCheckFramebufferStatusEXT MANGLE(CheckFramebufferStatusEXT)
|
||||
#define glClampColorARB MANGLE(ClampColorARB)
|
||||
#define glClearAccum MANGLE(ClearAccum)
|
||||
#define glClearColor MANGLE(ClearColor)
|
||||
@@ -244,6 +247,7 @@
|
||||
#define glDeleteFencesAPPLE MANGLE(DeleteFencesAPPLE)
|
||||
#define glDeleteFencesNV MANGLE(DeleteFencesNV)
|
||||
#define glDeleteFragmentShaderATI MANGLE(DeleteFragmentShaderATI)
|
||||
#define glDeleteFramebuffersEXT MANGLE(DeleteFramebuffersEXT)
|
||||
#define glDeleteLists MANGLE(DeleteLists)
|
||||
#define glDeleteObjectARB MANGLE(DeleteObjectARB)
|
||||
#define glDeleteOcclusionQueriesNV MANGLE(DeleteOcclusionQueriesNV)
|
||||
@@ -252,6 +256,7 @@
|
||||
#define glDeleteProgramsNV MANGLE(DeleteProgramsNV)
|
||||
#define glDeleteQueriesARB MANGLE(DeleteQueriesARB)
|
||||
#define glDeleteQueries MANGLE(DeleteQueries)
|
||||
#define glDeleteRenderbuffersEXT MANGLE(DeleteRenderbuffersEXT)
|
||||
#define glDeleteShader MANGLE(DeleteShader)
|
||||
#define glDeleteTexturesEXT MANGLE(DeleteTexturesEXT)
|
||||
#define glDeleteTextures MANGLE(DeleteTextures)
|
||||
@@ -365,6 +370,10 @@
|
||||
#define glFragmentMaterialfvSGIX MANGLE(FragmentMaterialfvSGIX)
|
||||
#define glFragmentMaterialiSGIX MANGLE(FragmentMaterialiSGIX)
|
||||
#define glFragmentMaterialivSGIX MANGLE(FragmentMaterialivSGIX)
|
||||
#define glFramebufferRenderbufferEXT MANGLE(FramebufferRenderbufferEXT)
|
||||
#define glFramebufferTexture1DEXT MANGLE(FramebufferTexture1DEXT)
|
||||
#define glFramebufferTexture2DEXT MANGLE(FramebufferTexture2DEXT)
|
||||
#define glFramebufferTexture3DEXT MANGLE(FramebufferTexture3DEXT)
|
||||
#define glFrameZoomSGIX MANGLE(FrameZoomSGIX)
|
||||
#define glFreeObjectBufferATI MANGLE(FreeObjectBufferATI)
|
||||
#define glFrontFace MANGLE(FrontFace)
|
||||
@@ -372,15 +381,18 @@
|
||||
#define glGenAsyncMarkersSGIX MANGLE(GenAsyncMarkersSGIX)
|
||||
#define glGenBuffersARB MANGLE(GenBuffersARB)
|
||||
#define glGenBuffers MANGLE(GenBuffers)
|
||||
#define glGenerateMipmapEXT MANGLE(GenerateMipmapEXT)
|
||||
#define glGenFencesAPPLE MANGLE(GenFencesAPPLE)
|
||||
#define glGenFencesNV MANGLE(GenFencesNV)
|
||||
#define glGenFragmentShadersATI MANGLE(GenFragmentShadersATI)
|
||||
#define glGenFramebuffersEXT MANGLE(GenFramebuffersEXT)
|
||||
#define glGenLists MANGLE(GenLists)
|
||||
#define glGenOcclusionQueriesNV MANGLE(GenOcclusionQueriesNV)
|
||||
#define glGenProgramsARB MANGLE(GenProgramsARB)
|
||||
#define glGenProgramsNV MANGLE(GenProgramsNV)
|
||||
#define glGenQueriesARB MANGLE(GenQueriesARB)
|
||||
#define glGenQueries MANGLE(GenQueries)
|
||||
#define glGenRenderbuffersEXT MANGLE(GenRenderbuffersEXT)
|
||||
#define glGenSymbolsEXT MANGLE(GenSymbolsEXT)
|
||||
#define glGenTexturesEXT MANGLE(GenTexturesEXT)
|
||||
#define glGenTextures MANGLE(GenTextures)
|
||||
@@ -438,6 +450,7 @@
|
||||
#define glGetFragmentLightivSGIX MANGLE(GetFragmentLightivSGIX)
|
||||
#define glGetFragmentMaterialfvSGIX MANGLE(GetFragmentMaterialfvSGIX)
|
||||
#define glGetFragmentMaterialivSGIX MANGLE(GetFragmentMaterialivSGIX)
|
||||
#define glGetFramebufferAttachmentParameterivEXT MANGLE(GetFramebufferAttachmentParameterivEXT)
|
||||
#define glGetHandleARB MANGLE(GetHandleARB)
|
||||
#define glGetHistogramEXT MANGLE(GetHistogramEXT)
|
||||
#define glGetHistogram MANGLE(GetHistogram)
|
||||
@@ -502,6 +515,7 @@
|
||||
#define glGetProgramNamedParameterfvNV MANGLE(GetProgramNamedParameterfvNV)
|
||||
#define glGetProgramParameterdvNV MANGLE(GetProgramParameterdvNV)
|
||||
#define glGetProgramParameterfvNV MANGLE(GetProgramParameterfvNV)
|
||||
#define glGetProgramRegisterfvMESA MANGLE(GetProgramRegisterfvMESA)
|
||||
#define glGetProgramStringARB MANGLE(GetProgramStringARB)
|
||||
#define glGetProgramStringNV MANGLE(GetProgramStringNV)
|
||||
#define glGetQueryivARB MANGLE(GetQueryivARB)
|
||||
@@ -510,6 +524,7 @@
|
||||
#define glGetQueryObjectiv MANGLE(GetQueryObjectiv)
|
||||
#define glGetQueryObjectuivARB MANGLE(GetQueryObjectuivARB)
|
||||
#define glGetQueryObjectuiv MANGLE(GetQueryObjectuiv)
|
||||
#define glGetRenderbufferParameterivEXT MANGLE(GetRenderbufferParameterivEXT)
|
||||
#define glGetSeparableFilterEXT MANGLE(GetSeparableFilterEXT)
|
||||
#define glGetSeparableFilter MANGLE(GetSeparableFilter)
|
||||
#define glGetShaderInfoLog MANGLE(GetShaderInfoLog)
|
||||
@@ -601,6 +616,7 @@
|
||||
#define glIsEnabled MANGLE(IsEnabled)
|
||||
#define glIsFenceAPPLE MANGLE(IsFenceAPPLE)
|
||||
#define glIsFenceNV MANGLE(IsFenceNV)
|
||||
#define glIsFramebufferEXT MANGLE(IsFramebufferEXT)
|
||||
#define glIsList MANGLE(IsList)
|
||||
#define glIsObjectBufferATI MANGLE(IsObjectBufferATI)
|
||||
#define glIsOcclusionQueryNV MANGLE(IsOcclusionQueryNV)
|
||||
@@ -609,6 +625,7 @@
|
||||
#define glIsProgramNV MANGLE(IsProgramNV)
|
||||
#define glIsQueryARB MANGLE(IsQueryARB)
|
||||
#define glIsQuery MANGLE(IsQuery)
|
||||
#define glIsRenderbufferEXT MANGLE(IsRenderbufferEXT)
|
||||
#define glIsShader MANGLE(IsShader)
|
||||
#define glIsTextureEXT MANGLE(IsTextureEXT)
|
||||
#define glIsTexture MANGLE(IsTexture)
|
||||
@@ -836,6 +853,7 @@
|
||||
#define glPrimitiveRestartNV MANGLE(PrimitiveRestartNV)
|
||||
#define glPrioritizeTexturesEXT MANGLE(PrioritizeTexturesEXT)
|
||||
#define glPrioritizeTextures MANGLE(PrioritizeTextures)
|
||||
#define glProgramCallbackMESA MANGLE(ProgramCallbackMESA)
|
||||
#define glProgramEnvParameter4dARB MANGLE(ProgramEnvParameter4dARB)
|
||||
#define glProgramEnvParameter4dvARB MANGLE(ProgramEnvParameter4dvARB)
|
||||
#define glProgramEnvParameter4fARB MANGLE(ProgramEnvParameter4fARB)
|
||||
@@ -895,6 +913,7 @@
|
||||
#define glRects MANGLE(Rects)
|
||||
#define glRectsv MANGLE(Rectsv)
|
||||
#define glReferencePlaneSGIX MANGLE(ReferencePlaneSGIX)
|
||||
#define glRenderbufferStorageEXT MANGLE(RenderbufferStorageEXT)
|
||||
#define glRenderMode MANGLE(RenderMode)
|
||||
#define glReplacementCodePointerSUN MANGLE(ReplacementCodePointerSUN)
|
||||
#define glReplacementCodeubSUN MANGLE(ReplacementCodeubSUN)
|
||||
@@ -1003,6 +1022,7 @@
|
||||
#define glStencilOpSeparateATI MANGLE(StencilOpSeparateATI)
|
||||
#define glStencilOpSeparate MANGLE(StencilOpSeparate)
|
||||
#define glStopInstrumentsSGIX MANGLE(StopInstrumentsSGIX)
|
||||
#define glStringMarkerGREMEDY MANGLE(StringMarkerGREMEDY)
|
||||
#define glSwizzleEXT MANGLE(SwizzleEXT)
|
||||
#define glTagSampleBufferSGIX MANGLE(TagSampleBufferSGIX)
|
||||
#define glTangent3bEXT MANGLE(Tangent3bEXT)
|
||||
|
@@ -52,9 +52,9 @@ extern "C" {
|
||||
/*************************************************************/
|
||||
|
||||
/* Header file version number, required by OpenGL ABI for Linux */
|
||||
/* glext.h last updated 2005/01/20 */
|
||||
/* glext.h last updated 2005/06/20 */
|
||||
/* Current version at http://oss.sgi.com/projects/ogl-sample/registry/ */
|
||||
#define GL_GLEXT_VERSION 26
|
||||
#define GL_GLEXT_VERSION 29
|
||||
|
||||
#ifndef GL_VERSION_1_2
|
||||
#define GL_UNSIGNED_BYTE_3_3_2 0x8032
|
||||
@@ -2980,6 +2980,64 @@ extern "C" {
|
||||
/* reuse GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB */
|
||||
#endif
|
||||
|
||||
#ifndef GL_EXT_framebuffer_object
|
||||
#define GL_INVALID_FRAMEBUFFER_OPERATION_EXT 0x0506
|
||||
#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
|
||||
#define GL_FRAMEBUFFER_BINDING_EXT 0x8CA6
|
||||
#define GL_RENDERBUFFER_BINDING_EXT 0x8CA7
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT 0x8CD0
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT 0x8CD1
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT 0x8CD2
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT 0x8CD3
|
||||
#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT 0x8CD4
|
||||
#define GL_FRAMEBUFFER_COMPLETE_EXT 0x8CD5
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT 0x8CD6
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT 0x8CD8
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT 0x8CD9
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT 0x8CDA
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT 0x8CDB
|
||||
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
|
||||
#define GL_FRAMEBUFFER_UNSUPPORTED_EXT 0x8CDD
|
||||
#define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
|
||||
#define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
|
||||
#define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
|
||||
#define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
|
||||
#define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
|
||||
#define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
|
||||
#define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
|
||||
#define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
|
||||
#define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
|
||||
#define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
|
||||
#define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
|
||||
#define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
|
||||
#define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
|
||||
#define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
|
||||
#define GL_COLOR_ATTACHMENT13_EXT 0x8CED
|
||||
#define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
|
||||
#define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
|
||||
#define GL_DEPTH_ATTACHMENT_EXT 0x8D00
|
||||
#define GL_STENCIL_ATTACHMENT_EXT 0x8D20
|
||||
#define GL_FRAMEBUFFER_EXT 0x8D40
|
||||
#define GL_RENDERBUFFER_EXT 0x8D41
|
||||
#define GL_RENDERBUFFER_WIDTH_EXT 0x8D42
|
||||
#define GL_RENDERBUFFER_HEIGHT_EXT 0x8D43
|
||||
#define GL_RENDERBUFFER_INTERNAL_FORMAT_EXT 0x8D44
|
||||
#define GL_STENCIL_INDEX1_EXT 0x8D46
|
||||
#define GL_STENCIL_INDEX4_EXT 0x8D47
|
||||
#define GL_STENCIL_INDEX8_EXT 0x8D48
|
||||
#define GL_STENCIL_INDEX16_EXT 0x8D49
|
||||
#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
|
||||
#define GL_RENDERBUFFER_GREEN_SIZE_EXT 0x8D51
|
||||
#define GL_RENDERBUFFER_BLUE_SIZE_EXT 0x8D52
|
||||
#define GL_RENDERBUFFER_ALPHA_SIZE_EXT 0x8D53
|
||||
#define GL_RENDERBUFFER_DEPTH_SIZE_EXT 0x8D54
|
||||
#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
|
||||
#endif
|
||||
|
||||
#ifndef GL_GREMEDY_string_marker
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************/
|
||||
|
||||
@@ -6381,6 +6439,54 @@ typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLen
|
||||
#define GL_NV_vertex_program3 1
|
||||
#endif
|
||||
|
||||
#ifndef GL_EXT_framebuffer_object
|
||||
#define GL_EXT_framebuffer_object 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI GLboolean APIENTRY glIsRenderbufferEXT (GLuint);
|
||||
GLAPI void APIENTRY glBindRenderbufferEXT (GLenum, GLuint);
|
||||
GLAPI void APIENTRY glDeleteRenderbuffersEXT (GLsizei, const GLuint *);
|
||||
GLAPI void APIENTRY glGenRenderbuffersEXT (GLsizei, GLuint *);
|
||||
GLAPI void APIENTRY glRenderbufferStorageEXT (GLenum, GLenum, GLsizei, GLsizei);
|
||||
GLAPI void APIENTRY glGetRenderbufferParameterivEXT (GLenum, GLenum, GLint *);
|
||||
GLAPI GLboolean APIENTRY glIsFramebufferEXT (GLuint);
|
||||
GLAPI void APIENTRY glBindFramebufferEXT (GLenum, GLuint);
|
||||
GLAPI void APIENTRY glDeleteFramebuffersEXT (GLsizei, const GLuint *);
|
||||
GLAPI void APIENTRY glGenFramebuffersEXT (GLsizei, GLuint *);
|
||||
GLAPI GLenum APIENTRY glCheckFramebufferStatusEXT (GLenum);
|
||||
GLAPI void APIENTRY glFramebufferTexture1DEXT (GLenum, GLenum, GLenum, GLuint, GLint);
|
||||
GLAPI void APIENTRY glFramebufferTexture2DEXT (GLenum, GLenum, GLenum, GLuint, GLint);
|
||||
GLAPI void APIENTRY glFramebufferTexture3DEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLint);
|
||||
GLAPI void APIENTRY glFramebufferRenderbufferEXT (GLenum, GLenum, GLenum, GLuint);
|
||||
GLAPI void APIENTRY glGetFramebufferAttachmentParameterivEXT (GLenum, GLenum, GLenum, GLint *);
|
||||
GLAPI void APIENTRY glGenerateMipmapEXT (GLenum);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFEREXTPROC) (GLuint renderbuffer);
|
||||
typedef void (APIENTRYP PFNGLBINDRENDERBUFFEREXTPROC) (GLenum target, GLuint renderbuffer);
|
||||
typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSEXTPROC) (GLsizei n, const GLuint *renderbuffers);
|
||||
typedef void (APIENTRYP PFNGLGENRENDERBUFFERSEXTPROC) (GLsizei n, GLuint *renderbuffers);
|
||||
typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEEXTPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
|
||||
typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFEREXTPROC) (GLuint framebuffer);
|
||||
typedef void (APIENTRYP PFNGLBINDFRAMEBUFFEREXTPROC) (GLenum target, GLuint framebuffer);
|
||||
typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSEXTPROC) (GLsizei n, const GLuint *framebuffers);
|
||||
typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSEXTPROC) (GLsizei n, GLuint *framebuffers);
|
||||
typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC) (GLenum target);
|
||||
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
|
||||
typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||
typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
|
||||
typedef void (APIENTRYP PFNGLGENERATEMIPMAPEXTPROC) (GLenum target);
|
||||
#endif
|
||||
|
||||
#ifndef GL_GREMEDY_string_marker
|
||||
#define GL_GREMEDY_string_marker 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glStringMarkerGREMEDY (GLsizei, const GLvoid *);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLSTRINGMARKERGREMEDYPROC) (GLsizei len, const GLvoid *string);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -36,7 +36,6 @@ PROGS = \
|
||||
morph3d \
|
||||
multiarb \
|
||||
occlude \
|
||||
osdemo \
|
||||
paltex \
|
||||
pixeltex \
|
||||
pointblast \
|
||||
@@ -110,20 +109,6 @@ shadowtex: shadowtex.o showbuffer.o
|
||||
shadowtex.o: shadowtex.c showbuffer.h
|
||||
$(CC) -c -I$(INCDIR) $(CFLAGS) shadowtex.c
|
||||
|
||||
# special case: need the -lOSMesa library:
|
||||
osdemo: osdemo.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo.c $(OSMESA_LIBS) -o $@
|
||||
|
||||
# another special case: need the -lOSMesa16 library:
|
||||
osdemo16: osdemo16.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo16.c $(OSMESA16_LIBS) -o $@
|
||||
|
||||
# another special case: need the -lOSMesa32 library:
|
||||
osdemo32: osdemo32.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo32.c $(OSMESA32_LIBS) -o $@
|
||||
|
||||
|
||||
|
||||
clean:
|
||||
-rm -f $(PROGS)
|
||||
-rm -f *.o *~
|
||||
|
@@ -1,6 +1,6 @@
|
||||
# Makefile for GLUT-based demo programs for VMS
|
||||
# contributed by Jouk Jansen joukj@crys.chem.uva.nl
|
||||
|
||||
# contributed by Jouk Jansen joukj@hrem.stm.tudelft.nl
|
||||
# Last update : 20 May 2005
|
||||
|
||||
.first
|
||||
define gl [--.include.gl]
|
||||
@@ -22,7 +22,7 @@ LIB_DEP = [--.lib]$(GL_LIB) [--.lib]$(GLU_LIB) [--.lib]$(GLUT_LIB)
|
||||
|
||||
|
||||
PROGS = bounce.exe;,clearspd.exe;,drawpix.exe;,gamma.exe;,gears.exe;,\
|
||||
glinfo.exe;,glutfx.exe;,isosurf.exe;,morph3d.exe;,osdemo.exe;,\
|
||||
glinfo.exe;,glutfx.exe;,isosurf.exe;,morph3d.exe;,\
|
||||
paltex.exe;,pointblast.exe;,reflect.exe;,spectex.exe;,stex3d.exe;,\
|
||||
tessdemo.exe;,texcyl.exe;,texobj.exe;,trispd.exe;,winpos.exe;
|
||||
|
||||
@@ -53,7 +53,6 @@ glutfx.exe; : glutfx.obj $(LIB_DEP)
|
||||
isosurf.exe; : isosurf.obj $(LIB_DEP) [-.util]readtex.obj
|
||||
cxxlink $(MMS$TARGET_NAME),[-.util]readtex.obj,$(GL_LIBS)
|
||||
morph3d.exe; : morph3d.obj $(LIB_DEP)
|
||||
osdemo.exe; : osdemo.obj $(LIB_DEP)
|
||||
paltex.exe; : paltex.obj $(LIB_DEP)
|
||||
pointblast.exe; : pointblast.obj $(LIB_DEP)
|
||||
reflect.exe; : reflect.obj [-.util]readtex.obj [-.util]showbuffer.obj\
|
||||
@@ -79,7 +78,6 @@ glinfo.obj : glinfo.c
|
||||
glutfx.obj : glutfx.c
|
||||
isosurf.obj : isosurf.c
|
||||
morph3d.obj : morph3d.c
|
||||
osdemo.obj : osdemo.c
|
||||
paltex.obj : paltex.c
|
||||
pointblast.obj : pointblast.c
|
||||
reflect.obj : reflect.c
|
||||
|
@@ -33,6 +33,7 @@ static GLint Mode = 4;
|
||||
static GLfloat Black[4] = {0.0, 0.0, 0.0, 1.0};
|
||||
static GLfloat White[4] = {1.0, 1.0, 1.0, 1.0};
|
||||
|
||||
static GLboolean smooth = 1;
|
||||
|
||||
static void
|
||||
Idle(void)
|
||||
@@ -143,9 +144,16 @@ static void Key( unsigned char key, int x, int y )
|
||||
(void) x;
|
||||
(void) y;
|
||||
switch (key) {
|
||||
case 27:
|
||||
exit(0);
|
||||
break;
|
||||
case 27:
|
||||
exit(0);
|
||||
break;
|
||||
case 's':
|
||||
smooth = !smooth;
|
||||
if (smooth)
|
||||
glShadeModel(GL_SMOOTH);
|
||||
else
|
||||
glShadeModel(GL_FLAT);
|
||||
break;
|
||||
}
|
||||
glutPostRedisplay();
|
||||
}
|
||||
@@ -175,6 +183,8 @@ static void Init( void )
|
||||
glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, 0);
|
||||
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, Black);
|
||||
|
||||
glShadeModel(GL_SMOOTH);
|
||||
|
||||
glMaterialfv(GL_FRONT, GL_DIFFUSE, White);
|
||||
glMaterialfv(GL_FRONT, GL_SPECULAR, White);
|
||||
glMaterialf(GL_FRONT, GL_SHININESS, 20.0);
|
||||
|
@@ -12,7 +12,8 @@ PROGRAMS = \
|
||||
demo1 \
|
||||
demo2 \
|
||||
demo3 \
|
||||
eglinfo
|
||||
eglinfo \
|
||||
eglgears
|
||||
|
||||
|
||||
.c.o:
|
||||
@@ -51,6 +52,12 @@ eglinfo.o: eglinfo.c $(HEADERS)
|
||||
$(CC) -c $(CFLAGS) -I$(TOP)/include eglinfo.c
|
||||
|
||||
|
||||
eglgears: eglgears.o $(LIB_DIR)/libEGL.so
|
||||
$(CC) eglgears.o -L$(LIB_DIR) -lEGL $(APP_LIB_DEPS) -o $@
|
||||
|
||||
eglgears.o: eglgears.c $(HEADERS)
|
||||
$(CC) -c $(CFLAGS) -I$(TOP)/include eglgears.c
|
||||
|
||||
|
||||
clean:
|
||||
rm -f *.o *~
|
||||
|
@@ -92,7 +92,6 @@ main(int argc, char *argv[])
|
||||
EGLContext ctx;
|
||||
EGLSurface pbuffer;
|
||||
EGLConfig configs[10];
|
||||
EGLint numConfigs, i;
|
||||
EGLBoolean b;
|
||||
const EGLint pbufAttribs[] = {
|
||||
EGL_WIDTH, 500,
|
||||
|
@@ -9,7 +9,7 @@
|
||||
|
||||
#include <GLES/egl.h>
|
||||
|
||||
//#define FRONTBUFFER
|
||||
/*#define FRONTBUFFER*/
|
||||
|
||||
static void _subset_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
|
||||
{
|
||||
|
@@ -56,6 +56,7 @@ static void Reshape(int width, int height)
|
||||
windH = (GLint)height;
|
||||
}
|
||||
|
||||
#if 0
|
||||
static void RotateColorMask(void)
|
||||
{
|
||||
static GLint rotation = 0;
|
||||
@@ -80,6 +81,7 @@ static void RotateColorMask(void)
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static void Viewport(GLint row, GLint column)
|
||||
{
|
||||
@@ -500,6 +502,58 @@ static void Draw(EGLDisplay dpy, EGLSurface surf)
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
write_ppm(const char *filename, const GLubyte *buffer, int width, int height)
|
||||
{
|
||||
const int binary = 0;
|
||||
FILE *f = fopen( filename, "w" );
|
||||
if (f) {
|
||||
int i, x, y;
|
||||
const GLubyte *ptr = buffer;
|
||||
if (binary) {
|
||||
fprintf(f,"P6\n");
|
||||
fprintf(f,"# ppm-file created by osdemo.c\n");
|
||||
fprintf(f,"%i %i\n", width,height);
|
||||
fprintf(f,"255\n");
|
||||
fclose(f);
|
||||
f = fopen( filename, "ab" ); /* reopen in binary append mode */
|
||||
for (y=height-1; y>=0; y--) {
|
||||
for (x=0; x<width; x++) {
|
||||
i = (y*width + x) * 4;
|
||||
fputc(ptr[i], f); /* write red */
|
||||
fputc(ptr[i+1], f); /* write green */
|
||||
fputc(ptr[i+2], f); /* write blue */
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
/*ASCII*/
|
||||
int counter = 0;
|
||||
fprintf(f,"P3\n");
|
||||
fprintf(f,"# ascii ppm file created by osdemo.c\n");
|
||||
fprintf(f,"%i %i\n", width, height);
|
||||
fprintf(f,"255\n");
|
||||
for (y=height-1; y>=0; y--) {
|
||||
for (x=0; x<width; x++) {
|
||||
i = (y*width + x) * 4;
|
||||
fprintf(f, " %3d %3d %3d", ptr[i], ptr[i+1], ptr[i+2]);
|
||||
counter++;
|
||||
if (counter % 5 == 0)
|
||||
fprintf(f, "\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
fclose(f);
|
||||
}
|
||||
}
|
||||
|
||||
#include "../src/egl/main/egldisplay.h"
|
||||
|
||||
typedef struct fb_display
|
||||
{
|
||||
_EGLDisplay Base; /* base class/object */
|
||||
void *pFB;
|
||||
} fbDisplay;
|
||||
|
||||
|
||||
int
|
||||
@@ -561,9 +615,20 @@ main(int argc, char *argv[])
|
||||
Reshape(1024, 768);
|
||||
|
||||
glDrawBuffer( GL_FRONT );
|
||||
glClearColor( 0,
|
||||
1.0,
|
||||
0,
|
||||
1);
|
||||
|
||||
glClear( GL_COLOR_BUFFER_BIT );
|
||||
|
||||
doubleBuffer = 1;
|
||||
glDrawBuffer( GL_BACK );
|
||||
|
||||
Draw(d, screen_surf);
|
||||
|
||||
|
||||
write_ppm("dump.ppm", ((struct fb_display *)_eglLookupDisplay(d))->pFB, 1024, 768);
|
||||
|
||||
eglDestroySurface(d, screen_surf);
|
||||
eglDestroyContext(d, ctx);
|
||||
eglTerminate(d);
|
||||
|
446
progs/egl/eglgears.c
Normal file
446
progs/egl/eglgears.c
Normal file
@@ -0,0 +1,446 @@
|
||||
/*
|
||||
* Copyright (C) 1999-2001 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.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This is a port of the infamous "glxgears" demo to straight EGL
|
||||
* Port by Dane Rushton 10 July 2005
|
||||
*
|
||||
* No command line options.
|
||||
* Program runs for 5 seconds then exits, outputing framerate to console
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <GL/gl.h>
|
||||
#include <GLES/egl.h>
|
||||
#include <assert.h>
|
||||
|
||||
|
||||
#define BENCHMARK
|
||||
|
||||
#ifdef BENCHMARK
|
||||
|
||||
/* XXX this probably isn't very portable */
|
||||
|
||||
#include <sys/time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/* return current time (in seconds) */
|
||||
static double
|
||||
current_time(void)
|
||||
{
|
||||
struct timeval tv;
|
||||
#ifdef __VMS
|
||||
(void) gettimeofday(&tv, NULL );
|
||||
#else
|
||||
struct timezone tz;
|
||||
(void) gettimeofday(&tv, &tz);
|
||||
#endif
|
||||
return (double) tv.tv_sec + tv.tv_usec / 1000000.0;
|
||||
}
|
||||
|
||||
#else /*BENCHMARK*/
|
||||
|
||||
/* dummy */
|
||||
static double
|
||||
current_time(void)
|
||||
{
|
||||
/* update this function for other platforms! */
|
||||
static double t = 0.0;
|
||||
static int warn = 1;
|
||||
if (warn) {
|
||||
fprintf(stderr, "Warning: current_time() not implemented!!\n");
|
||||
warn = 0;
|
||||
}
|
||||
return t += 1.0;
|
||||
}
|
||||
|
||||
#endif /*BENCHMARK*/
|
||||
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.14159265
|
||||
#endif
|
||||
|
||||
|
||||
static GLfloat view_rotx = 20.0, view_roty = 30.0, view_rotz = 0.0;
|
||||
static GLint gear1, gear2, gear3;
|
||||
static GLfloat angle = 0.0;
|
||||
|
||||
static GLfloat eyesep = 5.0; /* Eye separation. */
|
||||
static GLfloat fix_point = 40.0; /* Fixation point distance. */
|
||||
static GLfloat left, right, asp; /* Stereo frustum params. */
|
||||
|
||||
|
||||
/*
|
||||
*
|
||||
* Draw a gear wheel. You'll probably want to call this function when
|
||||
* building a display list since we do a lot of trig here.
|
||||
*
|
||||
* Input: inner_radius - radius of hole at center
|
||||
* outer_radius - radius at center of teeth
|
||||
* width - width of gear
|
||||
* teeth - number of teeth
|
||||
* tooth_depth - depth of tooth
|
||||
*/
|
||||
static void
|
||||
gear(GLfloat inner_radius, GLfloat outer_radius, GLfloat width,
|
||||
GLint teeth, GLfloat tooth_depth)
|
||||
{
|
||||
GLint i;
|
||||
GLfloat r0, r1, r2;
|
||||
GLfloat angle, da;
|
||||
GLfloat u, v, len;
|
||||
|
||||
r0 = inner_radius;
|
||||
r1 = outer_radius - tooth_depth / 2.0;
|
||||
r2 = outer_radius + tooth_depth / 2.0;
|
||||
|
||||
da = 2.0 * M_PI / teeth / 4.0;
|
||||
|
||||
glShadeModel(GL_FLAT);
|
||||
|
||||
glNormal3f(0.0, 0.0, 1.0);
|
||||
|
||||
/* draw front face */
|
||||
glBegin(GL_QUAD_STRIP);
|
||||
for (i = 0; i <= teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5);
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5);
|
||||
if (i < teeth) {
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5);
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
width * 0.5);
|
||||
}
|
||||
}
|
||||
glEnd();
|
||||
|
||||
/* draw front sides of teeth */
|
||||
glBegin(GL_QUADS);
|
||||
da = 2.0 * M_PI / teeth / 4.0;
|
||||
for (i = 0; i < teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da),
|
||||
width * 0.5);
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
width * 0.5);
|
||||
}
|
||||
glEnd();
|
||||
|
||||
glNormal3f(0.0, 0.0, -1.0);
|
||||
|
||||
/* draw back face */
|
||||
glBegin(GL_QUAD_STRIP);
|
||||
for (i = 0; i <= teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5);
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5);
|
||||
if (i < teeth) {
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
-width * 0.5);
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5);
|
||||
}
|
||||
}
|
||||
glEnd();
|
||||
|
||||
/* draw back sides of teeth */
|
||||
glBegin(GL_QUADS);
|
||||
da = 2.0 * M_PI / teeth / 4.0;
|
||||
for (i = 0; i < teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
-width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da),
|
||||
-width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), -width * 0.5);
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5);
|
||||
}
|
||||
glEnd();
|
||||
|
||||
/* draw outward faces of teeth */
|
||||
glBegin(GL_QUAD_STRIP);
|
||||
for (i = 0; i < teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5);
|
||||
glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5);
|
||||
u = r2 * cos(angle + da) - r1 * cos(angle);
|
||||
v = r2 * sin(angle + da) - r1 * sin(angle);
|
||||
len = sqrt(u * u + v * v);
|
||||
u /= len;
|
||||
v /= len;
|
||||
glNormal3f(v, -u, 0.0);
|
||||
glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), -width * 0.5);
|
||||
glNormal3f(cos(angle), sin(angle), 0.0);
|
||||
glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da),
|
||||
width * 0.5);
|
||||
glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da),
|
||||
-width * 0.5);
|
||||
u = r1 * cos(angle + 3 * da) - r2 * cos(angle + 2 * da);
|
||||
v = r1 * sin(angle + 3 * da) - r2 * sin(angle + 2 * da);
|
||||
glNormal3f(v, -u, 0.0);
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
width * 0.5);
|
||||
glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da),
|
||||
-width * 0.5);
|
||||
glNormal3f(cos(angle), sin(angle), 0.0);
|
||||
}
|
||||
|
||||
glVertex3f(r1 * cos(0), r1 * sin(0), width * 0.5);
|
||||
glVertex3f(r1 * cos(0), r1 * sin(0), -width * 0.5);
|
||||
|
||||
glEnd();
|
||||
|
||||
glShadeModel(GL_SMOOTH);
|
||||
|
||||
/* draw inside radius cylinder */
|
||||
glBegin(GL_QUAD_STRIP);
|
||||
for (i = 0; i <= teeth; i++) {
|
||||
angle = i * 2.0 * M_PI / teeth;
|
||||
glNormal3f(-cos(angle), -sin(angle), 0.0);
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5);
|
||||
glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5);
|
||||
}
|
||||
glEnd();
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
draw(void)
|
||||
{
|
||||
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||
|
||||
glPushMatrix();
|
||||
glRotatef(view_rotx, 1.0, 0.0, 0.0);
|
||||
glRotatef(view_roty, 0.0, 1.0, 0.0);
|
||||
glRotatef(view_rotz, 0.0, 0.0, 1.0);
|
||||
|
||||
glPushMatrix();
|
||||
glTranslatef(-3.0, -2.0, 0.0);
|
||||
glRotatef(angle, 0.0, 0.0, 1.0);
|
||||
glCallList(gear1);
|
||||
glPopMatrix();
|
||||
|
||||
glPushMatrix();
|
||||
glTranslatef(3.1, -2.0, 0.0);
|
||||
glRotatef(-2.0 * angle - 9.0, 0.0, 0.0, 1.0);
|
||||
glCallList(gear2);
|
||||
glPopMatrix();
|
||||
|
||||
glPushMatrix();
|
||||
glTranslatef(-3.1, 4.2, 0.0);
|
||||
glRotatef(-2.0 * angle - 25.0, 0.0, 0.0, 1.0);
|
||||
glCallList(gear3);
|
||||
glPopMatrix();
|
||||
|
||||
glPopMatrix();
|
||||
}
|
||||
|
||||
|
||||
/* new window size or exposure */
|
||||
static void
|
||||
reshape(int width, int height)
|
||||
{
|
||||
glViewport(0, 0, (GLint) width, (GLint) height);
|
||||
|
||||
GLfloat h = (GLfloat) height / (GLfloat) width;
|
||||
|
||||
glMatrixMode(GL_PROJECTION);
|
||||
glLoadIdentity();
|
||||
glFrustum(-1.0, 1.0, -h, h, 5.0, 60.0);
|
||||
|
||||
glMatrixMode(GL_MODELVIEW);
|
||||
glLoadIdentity();
|
||||
glTranslatef(0.0, 0.0, -40.0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
static void
|
||||
init(void)
|
||||
{
|
||||
static GLfloat pos[4] = { 5.0, 5.0, 10.0, 0.0 };
|
||||
static GLfloat red[4] = { 0.8, 0.1, 0.0, 1.0 };
|
||||
static GLfloat green[4] = { 0.0, 0.8, 0.2, 1.0 };
|
||||
static GLfloat blue[4] = { 0.2, 0.2, 1.0, 1.0 };
|
||||
|
||||
glLightfv(GL_LIGHT0, GL_POSITION, pos);
|
||||
glEnable(GL_CULL_FACE);
|
||||
glEnable(GL_LIGHTING);
|
||||
glEnable(GL_LIGHT0);
|
||||
glEnable(GL_DEPTH_TEST);
|
||||
|
||||
/* make the gears */
|
||||
gear1 = glGenLists(1);
|
||||
glNewList(gear1, GL_COMPILE);
|
||||
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, red);
|
||||
gear(1.0, 4.0, 1.0, 20, 0.7);
|
||||
glEndList();
|
||||
|
||||
gear2 = glGenLists(1);
|
||||
glNewList(gear2, GL_COMPILE);
|
||||
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, green);
|
||||
gear(0.5, 2.0, 2.0, 10, 0.7);
|
||||
glEndList();
|
||||
|
||||
gear3 = glGenLists(1);
|
||||
glNewList(gear3, GL_COMPILE);
|
||||
glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, blue);
|
||||
gear(1.3, 2.0, 0.5, 10, 0.7);
|
||||
glEndList();
|
||||
|
||||
glEnable(GL_NORMALIZE);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
static void run_gears(EGLDisplay dpy, EGLSurface surf, int ttr)
|
||||
{
|
||||
double st = current_time();
|
||||
double ct = st;
|
||||
int frames = 0;
|
||||
while (ct - st < ttr)
|
||||
{
|
||||
double tt = current_time();
|
||||
double dt = tt - ct;
|
||||
ct = tt;
|
||||
|
||||
/* advance rotation for next frame */
|
||||
angle += 70.0 * dt; /* 70 degrees per second */
|
||||
if (angle > 3600.0)
|
||||
angle -= 3600.0;
|
||||
|
||||
draw();
|
||||
|
||||
// DBR : Swap the Buffers
|
||||
eglSwapBuffers(dpy, surf);
|
||||
|
||||
|
||||
frames++;
|
||||
}
|
||||
|
||||
GLfloat seconds = ct - st;
|
||||
GLfloat fps = frames / seconds;
|
||||
printf("%d frames in %3.1f seconds = %6.3f FPS\n", frames, seconds, fps);
|
||||
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
int maj, min;
|
||||
EGLContext ctx;
|
||||
EGLSurface screen_surf;
|
||||
EGLConfig configs[10];
|
||||
EGLint numConfigs, i;
|
||||
EGLBoolean b;
|
||||
|
||||
const EGLint screenAttribs[] = {
|
||||
EGL_WIDTH, 1024,
|
||||
EGL_HEIGHT, 768,
|
||||
EGL_NONE
|
||||
};
|
||||
|
||||
EGLModeMESA mode;
|
||||
EGLScreenMESA screen;
|
||||
EGLint count;
|
||||
GLboolean printInfo = GL_FALSE;
|
||||
|
||||
for (i = 1; i < argc; i++)
|
||||
{
|
||||
if (strcmp(argv[i], "-info") == 0)
|
||||
{
|
||||
printInfo = GL_TRUE;
|
||||
}
|
||||
else
|
||||
printf("Warning: unknown parameter: %s\n", argv[i]);
|
||||
}
|
||||
|
||||
// DBR : Create EGL context/surface etc
|
||||
EGLDisplay d = eglGetDisplay("!fb_dri");
|
||||
assert(d);
|
||||
|
||||
if (!eglInitialize(d, &maj, &min)) {
|
||||
printf("demo: eglInitialize failed\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
printf("EGL version = %d.%d\n", maj, min);
|
||||
printf("EGL_VENDOR = %s\n", eglQueryString(d, EGL_VENDOR));
|
||||
|
||||
eglGetConfigs(d, configs, 10, &numConfigs);
|
||||
eglGetScreensMESA(d, &screen, 1, &count);
|
||||
eglGetModesMESA(d, screen, &mode, 1, &count);
|
||||
|
||||
ctx = eglCreateContext(d, configs[0], EGL_NO_CONTEXT, NULL);
|
||||
if (ctx == EGL_NO_CONTEXT) {
|
||||
printf("failed to create context\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
screen_surf = eglCreateScreenSurfaceMESA(d, configs[0], screenAttribs);
|
||||
if (screen_surf == EGL_NO_SURFACE) {
|
||||
printf("failed to create screen surface\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
eglShowSurfaceMESA(d, screen, screen_surf, mode);
|
||||
|
||||
b = eglMakeCurrent(d, screen_surf, screen_surf, ctx);
|
||||
if (!b) {
|
||||
printf("make current failed\n");
|
||||
return 0;
|
||||
}
|
||||
// DBR
|
||||
|
||||
if (printInfo)
|
||||
{
|
||||
printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER));
|
||||
printf("GL_VERSION = %s\n", (char *) glGetString(GL_VERSION));
|
||||
printf("GL_VENDOR = %s\n", (char *) glGetString(GL_VENDOR));
|
||||
printf("GL_EXTENSIONS = %s\n", (char *) glGetString(GL_EXTENSIONS));
|
||||
}
|
||||
|
||||
init(); // Initialise the GL visual
|
||||
reshape(1024,768);
|
||||
|
||||
// DBR : Run the simulation
|
||||
run_gears(d, screen_surf, 5.0);
|
||||
|
||||
|
||||
// DBR : Destroy EGL context/surface etc
|
||||
eglDestroySurface(d, screen_surf);
|
||||
eglDestroyContext(d, ctx);
|
||||
eglTerminate(d);
|
||||
// DBR
|
||||
|
||||
return 0;
|
||||
}
|
@@ -33,6 +33,7 @@
|
||||
|
||||
#define MAX_CONFIGS 1000
|
||||
#define MAX_MODES 1000
|
||||
#define MAX_SCREENS 10
|
||||
|
||||
|
||||
/**
|
||||
@@ -97,12 +98,12 @@ PrintModes(EGLDisplay d)
|
||||
{
|
||||
#ifdef EGL_MESA_screen_surface
|
||||
const char *extensions = eglQueryString(d, EGL_EXTENSIONS);
|
||||
if (strstr("EGL_MESA_screen_surface", extensions)) {
|
||||
EGLScreenMESA screens[20];
|
||||
if (strstr(extensions, "EGL_MESA_screen_surface")) {
|
||||
EGLScreenMESA screens[MAX_SCREENS];
|
||||
EGLint numScreens = 1, scrn;
|
||||
EGLModeMESA modes[MAX_MODES];
|
||||
|
||||
eglGetScreensMESA(d, screens, 20, &numScreens);
|
||||
eglGetScreensMESA(d, screens, MAX_SCREENS, &numScreens);
|
||||
printf("Number of Screens: %d\n\n", numScreens);
|
||||
|
||||
for (scrn = 0; scrn < numScreens; scrn++) {
|
||||
@@ -111,15 +112,17 @@ PrintModes(EGLDisplay d)
|
||||
eglGetModesMESA(d, screens[scrn], modes, MAX_MODES, &numModes);
|
||||
|
||||
printf("Screen %d Modes:\n", scrn);
|
||||
printf(" id width height refresh\n");
|
||||
printf("-------------------------\n");
|
||||
printf(" id width height refresh name\n");
|
||||
printf("-----------------------------------------\n");
|
||||
for (i = 0; i < numModes; i++) {
|
||||
EGLint id, w, h, r;
|
||||
const char *str;
|
||||
eglGetModeAttribMESA(d, modes[i], EGL_MODE_ID_MESA, &id);
|
||||
eglGetModeAttribMESA(d, modes[i], EGL_WIDTH, &w);
|
||||
eglGetModeAttribMESA(d, modes[i], EGL_HEIGHT, &h);
|
||||
eglGetModeAttribMESA(d, modes[i], EGL_REFRESH_RATE_MESA, &r);
|
||||
printf("0x%02x %5d %5d %.3f\n", id, w, h, r / 1000.0);
|
||||
str = eglQueryModeStringMESA(d, modes[i]);
|
||||
printf("0x%02x %5d %5d %.3f %s\n", id, w, h, r / 1000.0, str);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -132,7 +135,7 @@ int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
int maj, min;
|
||||
// EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);
|
||||
/*EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY);*/
|
||||
EGLDisplay d = eglGetDisplay("!fb_dri");
|
||||
|
||||
if (!eglInitialize(d, &maj, &min)) {
|
||||
|
73
progs/osdemos/Makefile
Normal file
73
progs/osdemos/Makefile
Normal file
@@ -0,0 +1,73 @@
|
||||
# progs/demos/Makefile
|
||||
|
||||
TOP = ../..
|
||||
include $(TOP)/configs/current
|
||||
|
||||
INCDIR = $(TOP)/include
|
||||
|
||||
OSMESA_LIBS = -L$(LIB_DIR) -lglut -lOSMesa -lGLU -lGL $(APP_LIB_DEPS)
|
||||
|
||||
OSMESA16_LIBS = -L$(LIB_DIR) -lglut -lOSMesa16 -lGLU -lGL $(APP_LIB_DEPS)
|
||||
|
||||
OSMESA32_LIBS = -L$(LIB_DIR) -lglut -lOSMesa32 -lGLU -lGL $(APP_LIB_DEPS)
|
||||
|
||||
LIB_DEP = $(LIB_DIR)/$(GL_LIB_NAME) $(LIB_DIR)/$(GLU_LIB_NAME) $(LIB_DIR)/$(GLUT_LIB_NAME)
|
||||
|
||||
PROGS = \
|
||||
osdemo
|
||||
|
||||
|
||||
##### RULES #####
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .c
|
||||
|
||||
|
||||
# make executable from .c file:
|
||||
.c: $(LIB_DEP) readtex.o
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) $< readtex.o $(APP_LIB_DEPS) -o $@
|
||||
|
||||
|
||||
##### TARGETS #####
|
||||
|
||||
default: readtex.o $(PROGS)
|
||||
|
||||
|
||||
readtex.c: $(TOP)/progs/util/readtex.c
|
||||
cp $< .
|
||||
|
||||
readtex.h: $(TOP)/progs/util/readtex.h
|
||||
cp $< .
|
||||
|
||||
readtex.o: readtex.c readtex.h
|
||||
$(CC) -c -I$(INCDIR) $(CFLAGS) readtex.c
|
||||
|
||||
|
||||
showbuffer.c: $(TOP)/progs/util/showbuffer.c
|
||||
cp $< .
|
||||
|
||||
showbuffer.h: $(TOP)/progs/util/showbuffer.h
|
||||
cp $< .
|
||||
|
||||
showbuffer.o: showbuffer.c showbuffer.h
|
||||
$(CC) -c -I$(INCDIR) $(CFLAGS) showbuffer.c
|
||||
|
||||
|
||||
# special case: need the -lOSMesa library:
|
||||
osdemo: osdemo.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo.c $(OSMESA_LIBS) -o $@
|
||||
|
||||
# another special case: need the -lOSMesa16 library:
|
||||
osdemo16: osdemo16.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo16.c $(OSMESA16_LIBS) -o $@
|
||||
|
||||
# another special case: need the -lOSMesa32 library:
|
||||
osdemo32: osdemo32.c
|
||||
$(CC) -I$(INCDIR) $(CFLAGS) osdemo32.c $(OSMESA32_LIBS) -o $@
|
||||
|
||||
|
||||
|
||||
clean:
|
||||
-rm -f $(PROGS)
|
||||
-rm -f *.o *~
|
||||
-rm -f readtex.[ch] showbuffer.[ch]
|
@@ -31,8 +31,6 @@
|
||||
# Available options:
|
||||
#
|
||||
# Environment variables:
|
||||
# CPU optimize for the given processor.
|
||||
# default = pentium
|
||||
# GLIDE path to Glide3 SDK; used with FX.
|
||||
# default = $(TOP)/glide3
|
||||
# FX=1 build for 3dfx Glide3. Note that this disables
|
||||
@@ -54,12 +52,11 @@
|
||||
.SECONDARY: ../util/readtex.o ../util/showbuffer.o
|
||||
|
||||
TOP = ../..
|
||||
CPU ?= pentium
|
||||
GLIDE ?= $(TOP)/glide3
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -W -pedantic
|
||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
|
||||
CFLAGS += -O2 -ffast-math
|
||||
CFLAGS += -I$(TOP)/include -I../util
|
||||
CFLAGS += -DGLUT_IMPORT_LIB
|
||||
ifeq ($(FX),1)
|
||||
|
@@ -31,8 +31,6 @@
|
||||
# Available options:
|
||||
#
|
||||
# Environment variables:
|
||||
# CPU optimize for the given processor.
|
||||
# default = pentium
|
||||
#
|
||||
# Targets:
|
||||
# <file.exe> build a specific file
|
||||
@@ -45,11 +43,10 @@
|
||||
.SECONDARY: ../util/readtex.o ../util/showbuffer.o
|
||||
|
||||
TOP = ../..
|
||||
CPU ?= pentium
|
||||
|
||||
CC = mingw32-gcc
|
||||
CFLAGS = -Wall -W -pedantic
|
||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
|
||||
CFLAGS += -O2 -ffast-math
|
||||
CFLAGS += -I$(TOP)/include -I../util
|
||||
ifeq ($(FX),1)
|
||||
CFLAGS += -DFX
|
||||
|
2
progs/tests/.cvsignore
Normal file
2
progs/tests/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
.cvsignore
|
||||
getproclist.h
|
@@ -22,6 +22,7 @@ SOURCES = antialias.c \
|
||||
blendminmax.c \
|
||||
blendsquare.c \
|
||||
bufferobj.c \
|
||||
bug_3101.c \
|
||||
crossbar.c \
|
||||
cva.c \
|
||||
dinoshade.c \
|
||||
|
@@ -83,8 +83,8 @@ static void Display( void )
|
||||
DO_FUNC( glTexCoord3fv, (v) );
|
||||
DO_FUNC( glMultiTexCoord2fv, (GL_TEXTURE0, v) );
|
||||
DO_FUNC( glMultiTexCoord2f, (GL_TEXTURE0, 0.0, 0.0) );
|
||||
DO_FUNC( glFogCoordfv, (v) );
|
||||
DO_FUNC( glFogCoordf, (0.5) );
|
||||
DO_FUNC( glFogCoordfvEXT, (v) );
|
||||
DO_FUNC( glFogCoordfEXT, (0.5) );
|
||||
|
||||
glEnd();
|
||||
|
||||
|
128
progs/tests/bug_3101.c
Normal file
128
progs/tests/bug_3101.c
Normal file
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* (C) Copyright IBM Corporation 2005
|
||||
* 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
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, 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 (including the next
|
||||
* paragraph) 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 NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file bug_3101.c
|
||||
*
|
||||
* Simple regression test for bug #3101. Attempt to draw a single square.
|
||||
* After emiting the first vertex, call \c glEdgeFlag to change the vertex
|
||||
* format. If the bug still exists, this will cause a segfault.
|
||||
*
|
||||
* \author Ian Romanick <idr@us.ibm.com>
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <GL/glut.h>
|
||||
|
||||
static int Width = 400;
|
||||
static int Height = 200;
|
||||
static const GLfloat Near = 5.0, Far = 25.0;
|
||||
|
||||
|
||||
static void Display( void )
|
||||
{
|
||||
glClearColor(0.2, 0.2, 0.8, 0);
|
||||
glClear( GL_COLOR_BUFFER_BIT );
|
||||
|
||||
glPushMatrix();
|
||||
|
||||
/* This is the "reference" square.
|
||||
*/
|
||||
|
||||
glTranslatef(-4.5, 0, 0);
|
||||
glBlendEquation( GL_FUNC_ADD );
|
||||
glBlendFunc( GL_ONE, GL_ZERO );
|
||||
glBegin(GL_QUADS);
|
||||
glColor3f( 0.5, 0.5, 0.5 );
|
||||
glVertex2f(-1, -1);
|
||||
glVertex2f( 1, -1);
|
||||
glEdgeFlag(GL_TRUE);
|
||||
glVertex2f( 1, 1);
|
||||
glVertex2f(-1, 1);
|
||||
glEnd();
|
||||
|
||||
glPopMatrix();
|
||||
|
||||
glutSwapBuffers();
|
||||
}
|
||||
|
||||
|
||||
static void Reshape( int width, int height )
|
||||
{
|
||||
GLfloat ar = (float) width / (float) height;
|
||||
Width = width;
|
||||
Height = height;
|
||||
glViewport( 0, 0, width, height );
|
||||
glMatrixMode( GL_PROJECTION );
|
||||
glLoadIdentity();
|
||||
glFrustum( -ar, ar, -1.0, 1.0, Near, Far );
|
||||
glMatrixMode( GL_MODELVIEW );
|
||||
glLoadIdentity();
|
||||
glTranslatef( 0.0, 0.0, -15.0 );
|
||||
}
|
||||
|
||||
|
||||
static void Key( unsigned char key, int x, int y )
|
||||
{
|
||||
(void) x;
|
||||
(void) y;
|
||||
switch (key) {
|
||||
case 27:
|
||||
exit(0);
|
||||
break;
|
||||
}
|
||||
glutPostRedisplay();
|
||||
}
|
||||
|
||||
|
||||
static void Init( void )
|
||||
{
|
||||
const char * const ver_string = (const char * const)
|
||||
glGetString( GL_VERSION );
|
||||
|
||||
printf("GL_RENDERER = %s\n", (char *) glGetString(GL_RENDERER));
|
||||
printf("GL_VERSION = %s\n", ver_string);
|
||||
|
||||
printf("\nThis program should draw a single square, but not crash.\n");
|
||||
printf("This is a regression test for bug #3101.\n");
|
||||
printf("https://bugs.freedesktop.org/show_bug.cgi?id=3101\n");
|
||||
glEnable( GL_BLEND );
|
||||
}
|
||||
|
||||
|
||||
int main( int argc, char *argv[] )
|
||||
{
|
||||
glutInit( &argc, argv );
|
||||
glutInitWindowPosition( 0, 0 );
|
||||
glutInitWindowSize( Width, Height );
|
||||
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE );
|
||||
glutCreateWindow( "Bug #3101 Test" );
|
||||
glutReshapeFunc( Reshape );
|
||||
glutKeyboardFunc( Key );
|
||||
glutDisplayFunc( Display );
|
||||
Init();
|
||||
glutMainLoop();
|
||||
return 0;
|
||||
}
|
@@ -145,6 +145,19 @@ Init( void )
|
||||
|
||||
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_RGB, Width, Height);
|
||||
|
||||
{
|
||||
GLint r, g, b, a;
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_RED_SIZE_EXT, &r);
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_GREEN_SIZE_EXT, &g);
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_BLUE_SIZE_EXT, &b);
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_ALPHA_SIZE_EXT, &a);
|
||||
printf("renderbuffer RGBA sizes = %d %d %d %d\n", r, g, b, a);
|
||||
}
|
||||
|
||||
CheckError(__LINE__);
|
||||
|
||||
/* restore to default */
|
||||
|
@@ -223,6 +223,10 @@ Init(void)
|
||||
glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, DepthRB);
|
||||
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT,
|
||||
TexWidth, TexHeight);
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_DEPTH_SIZE_EXT, &i);
|
||||
printf("Depth renderbuffer size = %d bits\n", i);
|
||||
assert(i > 0);
|
||||
|
||||
/* make stencil renderbuffer */
|
||||
glGenRenderbuffersEXT(1, &StencilRB);
|
||||
@@ -231,6 +235,10 @@ Init(void)
|
||||
glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, StencilRB);
|
||||
glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_STENCIL_INDEX,
|
||||
TexWidth, TexHeight);
|
||||
glGetRenderbufferParameterivEXT(GL_RENDERBUFFER_EXT,
|
||||
GL_RENDERBUFFER_STENCIL_SIZE_EXT, &i);
|
||||
printf("Stencil renderbuffer size = %d bits\n", i);
|
||||
assert(i > 0);
|
||||
|
||||
/* attach DepthRB to MyFB */
|
||||
glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT,
|
||||
|
@@ -1,13 +1,9 @@
|
||||
#!/usr/bin/env python
|
||||
|
||||
# $Id: getprocaddress.py,v 1.6 2004/11/27 19:57:46 brianp Exp $
|
||||
# $Id: getprocaddress.py,v 1.7 2005/06/21 23:42:43 idr Exp $
|
||||
|
||||
# Helper for the getprocaddress.c test.
|
||||
|
||||
from xml.sax import saxutils
|
||||
from xml.sax import make_parser
|
||||
from xml.sax.handler import feature_namespaces
|
||||
|
||||
import sys, getopt, re
|
||||
sys.path.append("../../src/mesa/glapi/" )
|
||||
import gl_XML
|
||||
@@ -30,16 +26,19 @@ def FindTestFunctions():
|
||||
return functions
|
||||
|
||||
|
||||
class PrintExports(gl_XML.FilterGLAPISpecBase):
|
||||
name = "gl_exports.py (from Mesa)"
|
||||
|
||||
class PrintExports(gl_XML.gl_print_base):
|
||||
def __init__(self):
|
||||
gl_XML.FilterGLAPISpecBase.__init__(self)
|
||||
gl_XML.gl_print_base.__init__(self)
|
||||
|
||||
self.name = "getprocaddress.py (from Mesa)"
|
||||
self.license = license.bsd_license_template % ( \
|
||||
"""Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
|
||||
(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
|
||||
|
||||
self.tests = FindTestFunctions()
|
||||
self.prevCategory = ""
|
||||
return
|
||||
|
||||
|
||||
def printRealHeader(self):
|
||||
print """
|
||||
@@ -50,22 +49,28 @@ struct name_test_pair {
|
||||
|
||||
static struct name_test_pair functions[] = {"""
|
||||
|
||||
def printRealFooter(self):
|
||||
print"""
|
||||
{ NULL, NULL }
|
||||
};
|
||||
"""
|
||||
def printBody(self, api):
|
||||
prev_category = None
|
||||
|
||||
|
||||
def printFunction(self, f):
|
||||
if f.category != self.prevCategory:
|
||||
print ' { "-%s", NULL},' % f.category
|
||||
self.prevCategory = f.category
|
||||
for f in api.functionIterateByOffset():
|
||||
[category, num] = api.get_category_for_name( f.name )
|
||||
if category != prev_category:
|
||||
print ' { "-%s", NULL},' % category
|
||||
prev_category = category
|
||||
|
||||
if f.name in self.tests:
|
||||
test = "test_%s" % f.name
|
||||
else:
|
||||
test = "NULL"
|
||||
print ' { "gl%s", %s },' % (f.name, test)
|
||||
for name in f.entry_points:
|
||||
if name in self.tests:
|
||||
test = "test_%s" % name
|
||||
break
|
||||
|
||||
print ' { "gl%s", %s },' % (f.name, test)
|
||||
|
||||
print ''
|
||||
print ' { NULL, NULL }'
|
||||
print '};'
|
||||
print ''
|
||||
return
|
||||
|
||||
|
||||
@@ -81,15 +86,8 @@ if __name__ == '__main__':
|
||||
if arg == "-f":
|
||||
file_name = val
|
||||
|
||||
dh = PrintExports()
|
||||
printer = PrintExports()
|
||||
|
||||
parser = make_parser()
|
||||
parser.setFeature(feature_namespaces, 0)
|
||||
parser.setContentHandler(dh)
|
||||
api = gl_XML.parse_GL_API( file_name, gl_XML.gl_item_factory() )
|
||||
|
||||
f = open(file_name)
|
||||
|
||||
parser.parse(f)
|
||||
dh.printHeader()
|
||||
dh.printFunctions()
|
||||
dh.printFooter()
|
||||
printer.Print( api )
|
||||
|
@@ -51,10 +51,10 @@ clean:
|
||||
|
||||
# special cases
|
||||
pbinfo: pbinfo.o pbutil.o
|
||||
$(CC) pbinfo.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
$(CC) $(CFLAGS) pbinfo.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
|
||||
pbdemo: pbdemo.o pbutil.o
|
||||
$(CC) pbdemo.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
$(CC) $(CFLAGS) pbdemo.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
|
||||
pbinfo.o: pbinfo.c pbutil.h
|
||||
$(CC) -c -I. -I$(INCDIR) $(CFLAGS) pbinfo.c
|
||||
@@ -66,13 +66,13 @@ pbutil.o: pbutil.c pbutil.h
|
||||
$(CC) -c -I. -I$(INCDIR) $(CFLAGS) pbutil.c
|
||||
|
||||
glxgears_fbconfig: glxgears_fbconfig.o pbutil.o
|
||||
$(CC) glxgears_fbconfig.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
$(CC) $(CFLAGS) glxgears_fbconfig.o pbutil.o $(APP_LIB_DEPS) -o $@
|
||||
|
||||
glxgears_fbconfig.o: glxgears_fbconfig.c pbutil.h
|
||||
$(CC) -c -I. -I$(INCDIR) $(CFLAGS) glxgears_fbconfig.c
|
||||
$(CC) $(CFLAGS) -c -I. -I$(INCDIR) $(CFLAGS) glxgears_fbconfig.c
|
||||
|
||||
xrotfontdemo: xrotfontdemo.o xuserotfont.o
|
||||
$(CC) xrotfontdemo.o xuserotfont.o $(APP_LIB_DEPS) -o $@
|
||||
$(CC) $(CFLAGS) xrotfontdemo.o xuserotfont.o $(APP_LIB_DEPS) -o $@
|
||||
|
||||
xuserotfont.o: xuserotfont.c xuserotfont.h
|
||||
$(CC) -c -I. -I$(INCDIR) $(CFLAGS) xuserotfont.c
|
||||
|
@@ -1,82 +0,0 @@
|
||||
/nologo /W2 /GX- /ZI /Od /c /TP
|
||||
/I "../../../include"
|
||||
/I "./include"
|
||||
/I "./libnurbs/interface"
|
||||
/I "./libnurbs/internals"
|
||||
/I "./libnurbs/nurbtess"
|
||||
/D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS"
|
||||
/D "_USRDLL" /D "GLU_EXPORTS" /D "BUILD_GL32" /D "LIBRARYBUILD"
|
||||
/Fo"Debug/" /Fd"Debug/" /GZ
|
||||
libnurbs/interface/bezierEval.cc
|
||||
libnurbs/interface/bezierPatch.cc
|
||||
libnurbs/interface/bezierPatchMesh.cc
|
||||
libnurbs/interface/glcurveval.cc
|
||||
libnurbs/interface/glinterface.cc
|
||||
libnurbs/interface/glrenderer.cc
|
||||
libnurbs/interface/glsurfeval.cc
|
||||
libnurbs/interface/incurveeval.cc
|
||||
libnurbs/interface/insurfeval.cc
|
||||
libnurbs/internals/arc.cc
|
||||
libnurbs/internals/arcsorter.cc
|
||||
libnurbs/internals/arctess.cc
|
||||
libnurbs/internals/backend.cc
|
||||
libnurbs/internals/basiccrveval.cc
|
||||
libnurbs/internals/basicsurfeval.cc
|
||||
libnurbs/internals/bin.cc
|
||||
libnurbs/internals/bufpool.cc
|
||||
libnurbs/internals/cachingeval.cc
|
||||
libnurbs/internals/ccw.cc
|
||||
libnurbs/internals/coveandtiler.cc
|
||||
libnurbs/internals/curve.cc
|
||||
libnurbs/internals/curvelist.cc
|
||||
libnurbs/internals/curvesub.cc
|
||||
libnurbs/internals/dataTransform.cc
|
||||
libnurbs/internals/displaylist.cc
|
||||
libnurbs/internals/flist.cc
|
||||
libnurbs/internals/flistsorter.cc
|
||||
libnurbs/internals/hull.cc
|
||||
libnurbs/internals/intersect.cc
|
||||
libnurbs/internals/knotvector.cc
|
||||
libnurbs/internals/mapdesc.cc
|
||||
libnurbs/internals/mapdescv.cc
|
||||
libnurbs/internals/maplist.cc
|
||||
libnurbs/internals/mesher.cc
|
||||
libnurbs/internals/monoTriangulationBackend.cc
|
||||
libnurbs/internals/monotonizer.cc
|
||||
libnurbs/internals/mycode.cc
|
||||
libnurbs/internals/nurbsinterfac.cc
|
||||
libnurbs/internals/nurbstess.cc
|
||||
libnurbs/internals/patch.cc
|
||||
libnurbs/internals/patchlist.cc
|
||||
libnurbs/internals/quilt.cc
|
||||
libnurbs/internals/reader.cc
|
||||
libnurbs/internals/renderhints.cc
|
||||
libnurbs/internals/slicer.cc
|
||||
libnurbs/internals/sorter.cc
|
||||
libnurbs/internals/splitarcs.cc
|
||||
libnurbs/internals/subdivider.cc
|
||||
libnurbs/internals/tobezier.cc
|
||||
libnurbs/internals/trimline.cc
|
||||
libnurbs/internals/trimregion.cc
|
||||
libnurbs/internals/trimvertpool.cc
|
||||
libnurbs/internals/uarray.cc
|
||||
libnurbs/internals/varray.cc
|
||||
libnurbs/nurbtess/directedLine.cc
|
||||
libnurbs/nurbtess/gridWrap.cc
|
||||
libnurbs/nurbtess/monoChain.cc
|
||||
libnurbs/nurbtess/monoPolyPart.cc
|
||||
libnurbs/nurbtess/monoTriangulation.cc
|
||||
libnurbs/nurbtess/partitionX.cc
|
||||
libnurbs/nurbtess/partitionY.cc
|
||||
libnurbs/nurbtess/polyDBG.cc
|
||||
libnurbs/nurbtess/polyUtil.cc
|
||||
libnurbs/nurbtess/primitiveStream.cc
|
||||
libnurbs/nurbtess/quicksort.cc
|
||||
libnurbs/nurbtess/rectBlock.cc
|
||||
libnurbs/nurbtess/sampleComp.cc
|
||||
libnurbs/nurbtess/sampleCompBot.cc
|
||||
libnurbs/nurbtess/sampleCompRight.cc
|
||||
libnurbs/nurbtess/sampleCompTop.cc
|
||||
libnurbs/nurbtess/sampleMonoPoly.cc
|
||||
libnurbs/nurbtess/sampledLine.cc
|
||||
libnurbs/nurbtess/searchTree.cc
|
@@ -1,82 +0,0 @@
|
||||
/nologo /W2 /GX- /O2 /c /TP
|
||||
/I "../../../include"
|
||||
/I "./include"
|
||||
/I "./libnurbs/interface"
|
||||
/I "./libnurbs/internals"
|
||||
/I "./libnurbs/nurbtess"
|
||||
/D "WIN32" /D "_WINDOWS" /D "_MBCS"
|
||||
/D "_USRDLL" /D "GLU_EXPORTS" /D "BUILD_GL32" /D "LIBRARYBUILD"
|
||||
/Fo"Release/"
|
||||
libnurbs/interface/bezierEval.cc
|
||||
libnurbs/interface/bezierPatch.cc
|
||||
libnurbs/interface/bezierPatchMesh.cc
|
||||
libnurbs/interface/glcurveval.cc
|
||||
libnurbs/interface/glinterface.cc
|
||||
libnurbs/interface/glrenderer.cc
|
||||
libnurbs/interface/glsurfeval.cc
|
||||
libnurbs/interface/incurveeval.cc
|
||||
libnurbs/interface/insurfeval.cc
|
||||
libnurbs/internals/arc.cc
|
||||
libnurbs/internals/arcsorter.cc
|
||||
libnurbs/internals/arctess.cc
|
||||
libnurbs/internals/backend.cc
|
||||
libnurbs/internals/basiccrveval.cc
|
||||
libnurbs/internals/basicsurfeval.cc
|
||||
libnurbs/internals/bin.cc
|
||||
libnurbs/internals/bufpool.cc
|
||||
libnurbs/internals/cachingeval.cc
|
||||
libnurbs/internals/ccw.cc
|
||||
libnurbs/internals/coveandtiler.cc
|
||||
libnurbs/internals/curve.cc
|
||||
libnurbs/internals/curvelist.cc
|
||||
libnurbs/internals/curvesub.cc
|
||||
libnurbs/internals/dataTransform.cc
|
||||
libnurbs/internals/displaylist.cc
|
||||
libnurbs/internals/flist.cc
|
||||
libnurbs/internals/flistsorter.cc
|
||||
libnurbs/internals/hull.cc
|
||||
libnurbs/internals/intersect.cc
|
||||
libnurbs/internals/knotvector.cc
|
||||
libnurbs/internals/mapdesc.cc
|
||||
libnurbs/internals/mapdescv.cc
|
||||
libnurbs/internals/maplist.cc
|
||||
libnurbs/internals/mesher.cc
|
||||
libnurbs/internals/monoTriangulationBackend.cc
|
||||
libnurbs/internals/monotonizer.cc
|
||||
libnurbs/internals/mycode.cc
|
||||
libnurbs/internals/nurbsinterfac.cc
|
||||
libnurbs/internals/nurbstess.cc
|
||||
libnurbs/internals/patch.cc
|
||||
libnurbs/internals/patchlist.cc
|
||||
libnurbs/internals/quilt.cc
|
||||
libnurbs/internals/reader.cc
|
||||
libnurbs/internals/renderhints.cc
|
||||
libnurbs/internals/slicer.cc
|
||||
libnurbs/internals/sorter.cc
|
||||
libnurbs/internals/splitarcs.cc
|
||||
libnurbs/internals/subdivider.cc
|
||||
libnurbs/internals/tobezier.cc
|
||||
libnurbs/internals/trimline.cc
|
||||
libnurbs/internals/trimregion.cc
|
||||
libnurbs/internals/trimvertpool.cc
|
||||
libnurbs/internals/uarray.cc
|
||||
libnurbs/internals/varray.cc
|
||||
libnurbs/nurbtess/directedLine.cc
|
||||
libnurbs/nurbtess/gridWrap.cc
|
||||
libnurbs/nurbtess/monoChain.cc
|
||||
libnurbs/nurbtess/monoPolyPart.cc
|
||||
libnurbs/nurbtess/monoTriangulation.cc
|
||||
libnurbs/nurbtess/partitionX.cc
|
||||
libnurbs/nurbtess/partitionY.cc
|
||||
libnurbs/nurbtess/polyDBG.cc
|
||||
libnurbs/nurbtess/polyUtil.cc
|
||||
libnurbs/nurbtess/primitiveStream.cc
|
||||
libnurbs/nurbtess/quicksort.cc
|
||||
libnurbs/nurbtess/rectBlock.cc
|
||||
libnurbs/nurbtess/sampleComp.cc
|
||||
libnurbs/nurbtess/sampleCompBot.cc
|
||||
libnurbs/nurbtess/sampleCompRight.cc
|
||||
libnurbs/nurbtess/sampleCompTop.cc
|
||||
libnurbs/nurbtess/sampleMonoPoly.cc
|
||||
libnurbs/nurbtess/sampledLine.cc
|
||||
libnurbs/nurbtess/searchTree.cc
|
@@ -1,888 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="glu" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
||||
|
||||
CFG=glu - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "glu.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "glu.mak" CFG="glu - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "glu - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "glu - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "glu - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLU_EXPORTS" /YX /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /GX /O2 /I "../../../include" /I "./include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLU_EXPORTS" /D "BUILD_GL32" /YX /FD /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
|
||||
# ADD LINK32 msvcrt.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ../../../lib/OPENGL32.LIB Release/GLUCC.LIB /nologo /dll /machine:I386 /nodefaultlib /out:"Release/GLU32.DLL"
|
||||
# Begin Special Build Tool
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Cmds=cl @ccRelease.txt LIB /OUT:Release/GLUCC.LIB @ccReleaseObj.txt
|
||||
PostBuild_Desc=Copy import lib and dll
|
||||
PostBuild_Cmds=if not exist ..\..\..\lib md ..\..\..\lib copy Release\GLU32.LIB ..\..\..\lib copy Release\GLU32.DLL ..\..\..\lib
|
||||
# End Special Build Tool
|
||||
|
||||
!ELSEIF "$(CFG)" == "glu - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLU_EXPORTS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../../../include" /I "./include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GLU_EXPORTS" /D "BUILD_GL32" /FR /YX /FD /GZ /c
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 msvcrtd.lib winmm.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ../../../lib/OPENGL32.LIB Debug/GLUCC.LIB /nologo /dll /debug /machine:I386 /nodefaultlib /out:"Debug/GLU32.DLL" /pdbtype:sept
|
||||
# Begin Special Build Tool
|
||||
SOURCE="$(InputPath)"
|
||||
PreLink_Desc=C++ compilations
|
||||
PreLink_Cmds=cl @ccDebug.txt LIB /OUT:Debug/GLUCC.LIB @ccDebugObj.txt
|
||||
PostBuild_Desc=Copy import lib and dll
|
||||
PostBuild_Cmds=if not exist ..\..\..\lib md ..\..\..\lib copy Debug\GLU32.LIB ..\..\..\lib copy Debug\GLU32.DLL ..\..\..\lib
|
||||
# End Special Build Tool
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "glu - Win32 Release"
|
||||
# Name "glu - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arc.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arcsorter.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arctess.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\backend.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\basiccrveval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\basicsurfeval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierEval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierPatch.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierPatchMesh.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\bin.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\bufpool.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\cachingeval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\ccw.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\coveandtiler.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\curve.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\curvelist.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\curvesub.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\dataTransform.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\dict.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\directedLine.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\displaylist.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\error.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\flist.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\flistsorter.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\geom.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glcurveval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glinterface.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glrenderer.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glsurfeval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\glu.def
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\glue.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\gridWrap.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\hull.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\incurveeval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\insurfeval.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\intersect.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\knotvector.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mapdesc.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mapdescv.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\maplist.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\memalloc.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\mesh.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mesher.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\mipmap.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoChain.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoPolyPart.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\monotonizer.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoTriangulation.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\monoTriangulationBackend.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mycode.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\normal.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\nurbsinterfac.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\nurbstess.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\partitionX.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\partitionY.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\patch.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\patchlist.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\polyDBG.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\polyUtil.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\primitiveStream.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\priorityq.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\project.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\quad.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\quicksort.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\quilt.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\reader.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\rectBlock.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\registry.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\render.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\renderhints.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleComp.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompBot.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompRight.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompTop.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampledLine.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleMonoPoly.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\searchTree.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\slicer.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\sorter.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\splitarcs.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\subdivider.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\sweep.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\tess.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\tessmono.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\tobezier.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimline.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimregion.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimvertpool.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\uarray.cc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\varray.cc
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arcsorter.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\arctess.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\backend.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\basiccrveval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\basicsurfeval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\bezierarc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierEval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierPatch.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\bezierPatchMesh.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\bin.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\bufpool.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\cachingeval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\coveandtiler.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\curve.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\curvelist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\dataTransform.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\defines.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\definitions.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=".\libtess\dict-list.h"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\dict.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\directedLine.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\displaylist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\displaymode.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\flist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\flistsorter.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\geom.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glcurveval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glimports.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\glimports.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glrenderer.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\glsurfeval.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libutil\gluint.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\include\gluos.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\gridline.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\gridtrimvertex.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\gridvertex.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\gridWrap.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\hull.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\jarcloc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\knotvector.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mapdesc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\maplist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\memalloc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\mesh.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mesher.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoChain.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoPolyPart.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\monotonizer.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\monoTriangulation.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\myassert.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mymath.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mysetjmp.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\mystdio.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\mystdio.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\interface\mystdlib.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\mystdlib.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\mystring.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\normal.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\nurbsconsts.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\nurbstess.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\partitionX.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\partitionY.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\patch.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\patchlist.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\polyDBG.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\polyUtil.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\primitiveStream.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=".\libtess\priorityq-sort.h"
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\priorityq.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\pwlarc.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\quicksort.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\quilt.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\reader.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\rectBlock.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\render.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\renderhints.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleComp.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompBot.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompRight.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleCompTop.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampledLine.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\sampleMonoPoly.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\searchTree.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\simplemath.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\slicer.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\sorter.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\subdivider.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\sweep.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\tess.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libtess\tessmono.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimline.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimregion.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimvertex.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\trimvertpool.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\types.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\uarray.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\internals\varray.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\libnurbs\nurbtess\zlassert.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ccDebug.txt
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ccDebugObj.txt
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ccRelease.txt
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ccReleaseObj.txt
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
@@ -49,6 +49,7 @@ C_SOURCES = \
|
||||
XF86dri.c \
|
||||
|
||||
X86_SOURCES = $(TOP)/src/mesa/x86/glapi_x86.S
|
||||
X86-64_SOURCES = $(TOP)/src/mesa/x86-64/glapi_x86-64.S
|
||||
|
||||
# ASM_SOURCES = $(X86_SOURCES)
|
||||
|
||||
@@ -67,7 +68,7 @@ INCLUDES = -I. \
|
||||
-I$(TOP)/src/mesa/swrast_setup \
|
||||
-I$(TOP)/src/mesa/drivers/dri/common \
|
||||
-I$(DRM_SOURCE_PATH)/libdrm \
|
||||
-I$(DRM_SOURCE_PATH)/shared \
|
||||
-I$(DRM_SOURCE_PATH)/shared-core \
|
||||
$(X11_INCLUDES)
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -543,10 +543,10 @@ extern HIDDEN void __indirect_glSecondaryColor3usEXT(GLushort red, GLushort gree
|
||||
extern HIDDEN void __indirect_glSecondaryColor3usvEXT(const GLushort * v);
|
||||
extern HIDDEN void __indirect_glSecondaryColorPointerEXT(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer);
|
||||
extern HIDDEN GLboolean __indirect_glAreProgramsResidentNV(GLsizei n, const GLuint * ids, GLboolean * residences);
|
||||
extern HIDDEN void __indirect_glBindProgramNV(GLenum target, GLuint id);
|
||||
extern HIDDEN void __indirect_glDeleteProgramsNV(GLsizei n, const GLuint * ids);
|
||||
extern HIDDEN void __indirect_glBindProgramNV(GLenum target, GLuint program);
|
||||
extern HIDDEN void __indirect_glDeleteProgramsNV(GLsizei n, const GLuint * programs);
|
||||
extern HIDDEN void __indirect_glExecuteProgramNV(GLenum target, GLuint id, const GLfloat * params);
|
||||
extern HIDDEN void __indirect_glGenProgramsNV(GLsizei n, GLuint * ids);
|
||||
extern HIDDEN void __indirect_glGenProgramsNV(GLsizei n, GLuint * programs);
|
||||
extern HIDDEN void __indirect_glGetProgramParameterdvNV(GLenum target, GLuint index, GLenum pname, GLdouble * params);
|
||||
extern HIDDEN void __indirect_glGetProgramParameterfvNV(GLenum target, GLuint index, GLenum pname, GLfloat * params);
|
||||
extern HIDDEN void __indirect_glGetProgramivNV(GLuint id, GLenum pname, GLint * params);
|
||||
@@ -555,8 +555,8 @@ extern HIDDEN void __indirect_glGetTrackMatrixivNV(GLenum target, GLuint address
|
||||
extern HIDDEN void __indirect_glGetVertexAttribdvARB(GLuint index, GLenum pname, GLdouble * params);
|
||||
extern HIDDEN void __indirect_glGetVertexAttribfvARB(GLuint index, GLenum pname, GLfloat * params);
|
||||
extern HIDDEN void __indirect_glGetVertexAttribivARB(GLuint index, GLenum pname, GLint * params);
|
||||
extern HIDDEN void __indirect_glGetVertexAttribPointervNV(GLuint index, GLenum pname, GLvoid ** pointer);
|
||||
extern HIDDEN GLboolean __indirect_glIsProgramNV(GLuint id);
|
||||
extern HIDDEN void __indirect_glGetVertexAttribPointervNV(GLuint index, GLenum pname, GLvoid ** params);
|
||||
extern HIDDEN GLboolean __indirect_glIsProgramNV(GLuint program);
|
||||
extern HIDDEN void __indirect_glLoadProgramNV(GLenum target, GLuint id, GLsizei len, const GLubyte * program);
|
||||
extern HIDDEN void __indirect_glProgramParameter4dNV(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w);
|
||||
extern HIDDEN void __indirect_glProgramParameter4dvNV(GLenum target, GLuint index, const GLdouble * params);
|
||||
@@ -606,7 +606,7 @@ extern HIDDEN void __indirect_glVertexAttribs4dvNV(GLuint index, GLsizei n, cons
|
||||
extern HIDDEN void __indirect_glVertexAttribs4fvNV(GLuint index, GLsizei n, const GLfloat * v);
|
||||
extern HIDDEN void __indirect_glVertexAttribs4svNV(GLuint index, GLsizei n, const GLshort * v);
|
||||
extern HIDDEN void __indirect_glVertexAttribs4ubvNV(GLuint index, GLsizei n, const GLubyte * v);
|
||||
extern HIDDEN void __indirect_glPointParameteriNV(GLenum pname, GLint params);
|
||||
extern HIDDEN void __indirect_glPointParameteriNV(GLenum pname, GLint param);
|
||||
extern HIDDEN void __indirect_glPointParameterivNV(GLenum pname, const GLint * params);
|
||||
extern HIDDEN void __indirect_glMultiDrawArraysEXT(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount);
|
||||
extern HIDDEN void __indirect_glMultiDrawElementsEXT(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount);
|
||||
@@ -682,6 +682,23 @@ extern HIDDEN void __indirect_glVertexAttrib4sNV(GLuint index, GLshort x, GLshor
|
||||
extern HIDDEN void __indirect_glVertexAttrib4svNV(GLuint index, const GLshort * v);
|
||||
extern HIDDEN void __indirect_glVertexAttrib4ubNV(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w);
|
||||
extern HIDDEN void __indirect_glVertexAttrib4ubvNV(GLuint index, const GLubyte * v);
|
||||
extern HIDDEN GLboolean __indirect_glIsRenderbufferEXT(GLuint renderbuffer);
|
||||
extern HIDDEN void __indirect_glBindRenderbufferEXT(GLenum target, GLuint renderbuffer);
|
||||
extern HIDDEN void __indirect_glDeleteRenderbuffersEXT(GLsizei n, const GLuint * renderbuffers);
|
||||
extern HIDDEN void __indirect_glGenRenderbuffersEXT(GLsizei n, GLuint * renderbuffers);
|
||||
extern HIDDEN void __indirect_glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||
extern HIDDEN void __indirect_glGetRenderbufferParameterivEXT(GLenum target, GLenum pname, GLint * params);
|
||||
extern HIDDEN GLboolean __indirect_glIsFramebufferEXT(GLuint framebuffer);
|
||||
extern HIDDEN void __indirect_glBindFramebufferEXT(GLenum target, GLuint framebuffer);
|
||||
extern HIDDEN void __indirect_glDeleteFramebuffersEXT(GLsizei n, const GLuint * framebuffers);
|
||||
extern HIDDEN void __indirect_glGenFramebuffersEXT(GLsizei n, GLuint * framebuffers);
|
||||
extern HIDDEN GLenum __indirect_glCheckFramebufferStatusEXT(GLenum target);
|
||||
extern HIDDEN void __indirect_glFramebufferTexture1DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
extern HIDDEN void __indirect_glFramebufferTexture2DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
|
||||
extern HIDDEN void __indirect_glFramebufferTexture3DEXT(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
|
||||
extern HIDDEN void __indirect_glFramebufferRenderbufferEXT(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
|
||||
extern HIDDEN void __indirect_glGetFramebufferAttachmentParameterivEXT(GLenum target, GLenum attachment, GLenum pname, GLint * params);
|
||||
extern HIDDEN void __indirect_glGenerateMipmapEXT(GLenum target);
|
||||
|
||||
# undef HIDDEN
|
||||
# undef FASTCALL
|
||||
|
@@ -72,7 +72,7 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
|
||||
/* now, initialize the entries we understand */
|
||||
|
||||
/* GL_VERSION_1_0 */
|
||||
/* 1.0 */
|
||||
|
||||
glAPI->NewList = __indirect_glNewList;
|
||||
glAPI->EndList = __indirect_glEndList;
|
||||
@@ -381,7 +381,7 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->Translatef = __indirect_glTranslatef;
|
||||
glAPI->Viewport = __indirect_glViewport;
|
||||
|
||||
/* GL_VERSION_1_1 */
|
||||
/* 1.1 */
|
||||
|
||||
glAPI->ArrayElement = __indirect_glArrayElement;
|
||||
glAPI->BindTexture = __indirect_glBindTexture;
|
||||
@@ -414,7 +414,7 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->PopClientAttrib = __indirect_glPopClientAttrib;
|
||||
glAPI->PushClientAttrib = __indirect_glPushClientAttrib;
|
||||
|
||||
/* GL_VERSION_1_2 */
|
||||
/* 1.2 */
|
||||
|
||||
glAPI->BlendColor = __indirect_glBlendColor;
|
||||
glAPI->BlendEquation = __indirect_glBlendEquation;
|
||||
@@ -455,18 +455,8 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->TexSubImage3D = __indirect_glTexSubImage3D;
|
||||
glAPI->CopyTexSubImage3D = __indirect_glCopyTexSubImage3D;
|
||||
|
||||
/* GL_ARB_multitexture */
|
||||
/* 1. GL_ARB_multitexture */
|
||||
|
||||
glAPI->ActiveTextureARB = __indirect_glActiveTextureARB;
|
||||
glAPI->ClientActiveTextureARB = __indirect_glClientActiveTextureARB;
|
||||
glAPI->MultiTexCoord1dARB = __indirect_glMultiTexCoord1dARB;
|
||||
glAPI->MultiTexCoord1dvARB = __indirect_glMultiTexCoord1dvARB;
|
||||
glAPI->MultiTexCoord1fARB = __indirect_glMultiTexCoord1fARB;
|
||||
glAPI->MultiTexCoord1fvARB = __indirect_glMultiTexCoord1fvARB;
|
||||
glAPI->MultiTexCoord1iARB = __indirect_glMultiTexCoord1iARB;
|
||||
glAPI->MultiTexCoord1ivARB = __indirect_glMultiTexCoord1ivARB;
|
||||
glAPI->MultiTexCoord1sARB = __indirect_glMultiTexCoord1sARB;
|
||||
glAPI->MultiTexCoord1svARB = __indirect_glMultiTexCoord1svARB;
|
||||
glAPI->MultiTexCoord2dARB = __indirect_glMultiTexCoord2dARB;
|
||||
glAPI->MultiTexCoord2dvARB = __indirect_glMultiTexCoord2dvARB;
|
||||
glAPI->MultiTexCoord2fARB = __indirect_glMultiTexCoord2fARB;
|
||||
@@ -491,79 +481,29 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->MultiTexCoord4ivARB = __indirect_glMultiTexCoord4ivARB;
|
||||
glAPI->MultiTexCoord4sARB = __indirect_glMultiTexCoord4sARB;
|
||||
glAPI->MultiTexCoord4svARB = __indirect_glMultiTexCoord4svARB;
|
||||
glAPI->ActiveTextureARB = __indirect_glActiveTextureARB;
|
||||
glAPI->ClientActiveTextureARB = __indirect_glClientActiveTextureARB;
|
||||
glAPI->MultiTexCoord1dARB = __indirect_glMultiTexCoord1dARB;
|
||||
glAPI->MultiTexCoord1dvARB = __indirect_glMultiTexCoord1dvARB;
|
||||
glAPI->MultiTexCoord1fARB = __indirect_glMultiTexCoord1fARB;
|
||||
glAPI->MultiTexCoord1fvARB = __indirect_glMultiTexCoord1fvARB;
|
||||
glAPI->MultiTexCoord1iARB = __indirect_glMultiTexCoord1iARB;
|
||||
glAPI->MultiTexCoord1ivARB = __indirect_glMultiTexCoord1ivARB;
|
||||
glAPI->MultiTexCoord1sARB = __indirect_glMultiTexCoord1sARB;
|
||||
glAPI->MultiTexCoord1svARB = __indirect_glMultiTexCoord1svARB;
|
||||
|
||||
/* GL_ARB_transpose_matrix */
|
||||
/* 3. GL_ARB_transpose_matrix */
|
||||
|
||||
glAPI->LoadTransposeMatrixfARB = __indirect_glLoadTransposeMatrixfARB;
|
||||
glAPI->LoadTransposeMatrixdARB = __indirect_glLoadTransposeMatrixdARB;
|
||||
glAPI->MultTransposeMatrixfARB = __indirect_glMultTransposeMatrixfARB;
|
||||
glAPI->MultTransposeMatrixdARB = __indirect_glMultTransposeMatrixdARB;
|
||||
|
||||
/* GL_ARB_multisample */
|
||||
/* 5. GL_ARB_multisample */
|
||||
|
||||
glAPI->SampleCoverageARB = __indirect_glSampleCoverageARB;
|
||||
|
||||
/* GL_ARB_draw_buffers */
|
||||
|
||||
glAPI->DrawBuffersARB = __indirect_glDrawBuffersARB;
|
||||
|
||||
/* GL_EXT_texture_object */
|
||||
|
||||
glAPI->AreTexturesResidentEXT = __indirect_glAreTexturesResidentEXT;
|
||||
glAPI->GenTexturesEXT = __indirect_glGenTexturesEXT;
|
||||
glAPI->IsTextureEXT = __indirect_glIsTextureEXT;
|
||||
|
||||
/* GL_SGIS_multisample */
|
||||
|
||||
glAPI->SampleMaskSGIS = __indirect_glSampleMaskSGIS;
|
||||
glAPI->SamplePatternSGIS = __indirect_glSamplePatternSGIS;
|
||||
|
||||
/* GL_EXT_vertex_array */
|
||||
|
||||
glAPI->ColorPointerEXT = __indirect_glColorPointerEXT;
|
||||
glAPI->EdgeFlagPointerEXT = __indirect_glEdgeFlagPointerEXT;
|
||||
glAPI->IndexPointerEXT = __indirect_glIndexPointerEXT;
|
||||
glAPI->NormalPointerEXT = __indirect_glNormalPointerEXT;
|
||||
glAPI->TexCoordPointerEXT = __indirect_glTexCoordPointerEXT;
|
||||
glAPI->VertexPointerEXT = __indirect_glVertexPointerEXT;
|
||||
|
||||
/* GL_EXT_point_parameters */
|
||||
|
||||
glAPI->PointParameterfEXT = __indirect_glPointParameterfEXT;
|
||||
glAPI->PointParameterfvEXT = __indirect_glPointParameterfvEXT;
|
||||
|
||||
/* GL_MESA_window_pos */
|
||||
|
||||
glAPI->WindowPos2dMESA = __indirect_glWindowPos2dMESA;
|
||||
glAPI->WindowPos2dvMESA = __indirect_glWindowPos2dvMESA;
|
||||
glAPI->WindowPos2fMESA = __indirect_glWindowPos2fMESA;
|
||||
glAPI->WindowPos2fvMESA = __indirect_glWindowPos2fvMESA;
|
||||
glAPI->WindowPos2iMESA = __indirect_glWindowPos2iMESA;
|
||||
glAPI->WindowPos2ivMESA = __indirect_glWindowPos2ivMESA;
|
||||
glAPI->WindowPos2sMESA = __indirect_glWindowPos2sMESA;
|
||||
glAPI->WindowPos2svMESA = __indirect_glWindowPos2svMESA;
|
||||
glAPI->WindowPos3dMESA = __indirect_glWindowPos3dMESA;
|
||||
glAPI->WindowPos3dvMESA = __indirect_glWindowPos3dvMESA;
|
||||
glAPI->WindowPos3fMESA = __indirect_glWindowPos3fMESA;
|
||||
glAPI->WindowPos3fvMESA = __indirect_glWindowPos3fvMESA;
|
||||
glAPI->WindowPos3iMESA = __indirect_glWindowPos3iMESA;
|
||||
glAPI->WindowPos3ivMESA = __indirect_glWindowPos3ivMESA;
|
||||
glAPI->WindowPos3sMESA = __indirect_glWindowPos3sMESA;
|
||||
glAPI->WindowPos3svMESA = __indirect_glWindowPos3svMESA;
|
||||
|
||||
/* GL_EXT_blend_func_separate */
|
||||
|
||||
glAPI->BlendFuncSeparateEXT = __indirect_glBlendFuncSeparateEXT;
|
||||
|
||||
/* GL_EXT_fog_coord */
|
||||
|
||||
glAPI->FogCoordfEXT = __indirect_glFogCoordfEXT;
|
||||
glAPI->FogCoordfvEXT = __indirect_glFogCoordfvEXT;
|
||||
glAPI->FogCoorddEXT = __indirect_glFogCoorddEXT;
|
||||
glAPI->FogCoorddvEXT = __indirect_glFogCoorddvEXT;
|
||||
glAPI->FogCoordPointerEXT = __indirect_glFogCoordPointerEXT;
|
||||
|
||||
/* GL_ARB_texture_compression */
|
||||
/* 12. GL_ARB_texture_compression */
|
||||
|
||||
glAPI->CompressedTexImage3DARB = __indirect_glCompressedTexImage3DARB;
|
||||
glAPI->CompressedTexImage2DARB = __indirect_glCompressedTexImage2DARB;
|
||||
@@ -573,120 +513,7 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->CompressedTexSubImage1DARB = __indirect_glCompressedTexSubImage1DARB;
|
||||
glAPI->GetCompressedTexImageARB = __indirect_glGetCompressedTexImageARB;
|
||||
|
||||
/* GL_EXT_secondary_color */
|
||||
|
||||
glAPI->SecondaryColor3bEXT = __indirect_glSecondaryColor3bEXT;
|
||||
glAPI->SecondaryColor3bvEXT = __indirect_glSecondaryColor3bvEXT;
|
||||
glAPI->SecondaryColor3dEXT = __indirect_glSecondaryColor3dEXT;
|
||||
glAPI->SecondaryColor3dvEXT = __indirect_glSecondaryColor3dvEXT;
|
||||
glAPI->SecondaryColor3fEXT = __indirect_glSecondaryColor3fEXT;
|
||||
glAPI->SecondaryColor3fvEXT = __indirect_glSecondaryColor3fvEXT;
|
||||
glAPI->SecondaryColor3iEXT = __indirect_glSecondaryColor3iEXT;
|
||||
glAPI->SecondaryColor3ivEXT = __indirect_glSecondaryColor3ivEXT;
|
||||
glAPI->SecondaryColor3sEXT = __indirect_glSecondaryColor3sEXT;
|
||||
glAPI->SecondaryColor3svEXT = __indirect_glSecondaryColor3svEXT;
|
||||
glAPI->SecondaryColor3ubEXT = __indirect_glSecondaryColor3ubEXT;
|
||||
glAPI->SecondaryColor3ubvEXT = __indirect_glSecondaryColor3ubvEXT;
|
||||
glAPI->SecondaryColor3uiEXT = __indirect_glSecondaryColor3uiEXT;
|
||||
glAPI->SecondaryColor3uivEXT = __indirect_glSecondaryColor3uivEXT;
|
||||
glAPI->SecondaryColor3usEXT = __indirect_glSecondaryColor3usEXT;
|
||||
glAPI->SecondaryColor3usvEXT = __indirect_glSecondaryColor3usvEXT;
|
||||
glAPI->SecondaryColorPointerEXT = __indirect_glSecondaryColorPointerEXT;
|
||||
|
||||
/* GL_NV_vertex_program */
|
||||
|
||||
glAPI->AreProgramsResidentNV = __indirect_glAreProgramsResidentNV;
|
||||
glAPI->BindProgramNV = __indirect_glBindProgramNV;
|
||||
glAPI->DeleteProgramsNV = __indirect_glDeleteProgramsNV;
|
||||
glAPI->ExecuteProgramNV = __indirect_glExecuteProgramNV;
|
||||
glAPI->GenProgramsNV = __indirect_glGenProgramsNV;
|
||||
glAPI->GetProgramParameterdvNV = __indirect_glGetProgramParameterdvNV;
|
||||
glAPI->GetProgramParameterfvNV = __indirect_glGetProgramParameterfvNV;
|
||||
glAPI->GetProgramivNV = __indirect_glGetProgramivNV;
|
||||
glAPI->GetProgramStringNV = __indirect_glGetProgramStringNV;
|
||||
glAPI->GetTrackMatrixivNV = __indirect_glGetTrackMatrixivNV;
|
||||
|
||||
/* GL_ARB_vertex_program */
|
||||
|
||||
glAPI->GetVertexAttribdvARB = __indirect_glGetVertexAttribdvARB;
|
||||
glAPI->GetVertexAttribfvARB = __indirect_glGetVertexAttribfvARB;
|
||||
glAPI->GetVertexAttribivARB = __indirect_glGetVertexAttribivARB;
|
||||
|
||||
/* GL_NV_vertex_program */
|
||||
|
||||
glAPI->GetVertexAttribPointervNV = __indirect_glGetVertexAttribPointervNV;
|
||||
glAPI->IsProgramNV = __indirect_glIsProgramNV;
|
||||
glAPI->LoadProgramNV = __indirect_glLoadProgramNV;
|
||||
glAPI->ProgramParameter4dNV = __indirect_glProgramParameter4dNV;
|
||||
glAPI->ProgramParameter4dvNV = __indirect_glProgramParameter4dvNV;
|
||||
glAPI->ProgramParameter4fNV = __indirect_glProgramParameter4fNV;
|
||||
glAPI->ProgramParameter4fvNV = __indirect_glProgramParameter4fvNV;
|
||||
glAPI->ProgramParameters4dvNV = __indirect_glProgramParameters4dvNV;
|
||||
glAPI->ProgramParameters4fvNV = __indirect_glProgramParameters4fvNV;
|
||||
glAPI->RequestResidentProgramsNV = __indirect_glRequestResidentProgramsNV;
|
||||
glAPI->TrackMatrixNV = __indirect_glTrackMatrixNV;
|
||||
glAPI->VertexAttribPointerNV = __indirect_glVertexAttribPointerNV;
|
||||
|
||||
/* GL_ARB_vertex_program */
|
||||
|
||||
glAPI->VertexAttrib1dARB = __indirect_glVertexAttrib1dARB;
|
||||
glAPI->VertexAttrib1dvARB = __indirect_glVertexAttrib1dvARB;
|
||||
glAPI->VertexAttrib1fARB = __indirect_glVertexAttrib1fARB;
|
||||
glAPI->VertexAttrib1fvARB = __indirect_glVertexAttrib1fvARB;
|
||||
glAPI->VertexAttrib1sARB = __indirect_glVertexAttrib1sARB;
|
||||
glAPI->VertexAttrib1svARB = __indirect_glVertexAttrib1svARB;
|
||||
glAPI->VertexAttrib2dARB = __indirect_glVertexAttrib2dARB;
|
||||
glAPI->VertexAttrib2dvARB = __indirect_glVertexAttrib2dvARB;
|
||||
glAPI->VertexAttrib2fARB = __indirect_glVertexAttrib2fARB;
|
||||
glAPI->VertexAttrib2fvARB = __indirect_glVertexAttrib2fvARB;
|
||||
glAPI->VertexAttrib2sARB = __indirect_glVertexAttrib2sARB;
|
||||
glAPI->VertexAttrib2svARB = __indirect_glVertexAttrib2svARB;
|
||||
glAPI->VertexAttrib3dARB = __indirect_glVertexAttrib3dARB;
|
||||
glAPI->VertexAttrib3dvARB = __indirect_glVertexAttrib3dvARB;
|
||||
glAPI->VertexAttrib3fARB = __indirect_glVertexAttrib3fARB;
|
||||
glAPI->VertexAttrib3fvARB = __indirect_glVertexAttrib3fvARB;
|
||||
glAPI->VertexAttrib3sARB = __indirect_glVertexAttrib3sARB;
|
||||
glAPI->VertexAttrib3svARB = __indirect_glVertexAttrib3svARB;
|
||||
glAPI->VertexAttrib4dARB = __indirect_glVertexAttrib4dARB;
|
||||
glAPI->VertexAttrib4dvARB = __indirect_glVertexAttrib4dvARB;
|
||||
glAPI->VertexAttrib4fARB = __indirect_glVertexAttrib4fARB;
|
||||
glAPI->VertexAttrib4fvARB = __indirect_glVertexAttrib4fvARB;
|
||||
glAPI->VertexAttrib4sARB = __indirect_glVertexAttrib4sARB;
|
||||
glAPI->VertexAttrib4svARB = __indirect_glVertexAttrib4svARB;
|
||||
glAPI->VertexAttrib4NubARB = __indirect_glVertexAttrib4NubARB;
|
||||
glAPI->VertexAttrib4NubvARB = __indirect_glVertexAttrib4NubvARB;
|
||||
|
||||
/* GL_NV_vertex_program */
|
||||
|
||||
glAPI->VertexAttribs1dvNV = __indirect_glVertexAttribs1dvNV;
|
||||
glAPI->VertexAttribs1fvNV = __indirect_glVertexAttribs1fvNV;
|
||||
glAPI->VertexAttribs1svNV = __indirect_glVertexAttribs1svNV;
|
||||
glAPI->VertexAttribs2dvNV = __indirect_glVertexAttribs2dvNV;
|
||||
glAPI->VertexAttribs2fvNV = __indirect_glVertexAttribs2fvNV;
|
||||
glAPI->VertexAttribs2svNV = __indirect_glVertexAttribs2svNV;
|
||||
glAPI->VertexAttribs3dvNV = __indirect_glVertexAttribs3dvNV;
|
||||
glAPI->VertexAttribs3fvNV = __indirect_glVertexAttribs3fvNV;
|
||||
glAPI->VertexAttribs3svNV = __indirect_glVertexAttribs3svNV;
|
||||
glAPI->VertexAttribs4dvNV = __indirect_glVertexAttribs4dvNV;
|
||||
glAPI->VertexAttribs4fvNV = __indirect_glVertexAttribs4fvNV;
|
||||
glAPI->VertexAttribs4svNV = __indirect_glVertexAttribs4svNV;
|
||||
glAPI->VertexAttribs4ubvNV = __indirect_glVertexAttribs4ubvNV;
|
||||
|
||||
/* GL_NV_point_sprite */
|
||||
|
||||
glAPI->PointParameteriNV = __indirect_glPointParameteriNV;
|
||||
glAPI->PointParameterivNV = __indirect_glPointParameterivNV;
|
||||
|
||||
/* GL_EXT_multi_draw_arrays */
|
||||
|
||||
glAPI->MultiDrawArraysEXT = __indirect_glMultiDrawArraysEXT;
|
||||
glAPI->MultiDrawElementsEXT = __indirect_glMultiDrawElementsEXT;
|
||||
|
||||
/* EXT_stencil_two_side */
|
||||
|
||||
glAPI->ActiveStencilFaceEXT = __indirect_glActiveStencilFaceEXT;
|
||||
|
||||
/* GL_ARB_vertex_program */
|
||||
/* 26. GL_ARB_vertex_program */
|
||||
|
||||
glAPI->VertexAttrib4bvARB = __indirect_glVertexAttrib4bvARB;
|
||||
glAPI->VertexAttrib4ivARB = __indirect_glVertexAttrib4ivARB;
|
||||
@@ -716,8 +543,209 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->GetProgramLocalParameterfvARB = __indirect_glGetProgramLocalParameterfvARB;
|
||||
glAPI->GetProgramivARB = __indirect_glGetProgramivARB;
|
||||
glAPI->GetProgramStringARB = __indirect_glGetProgramStringARB;
|
||||
glAPI->GetVertexAttribdvARB = __indirect_glGetVertexAttribdvARB;
|
||||
glAPI->GetVertexAttribfvARB = __indirect_glGetVertexAttribfvARB;
|
||||
glAPI->GetVertexAttribivARB = __indirect_glGetVertexAttribivARB;
|
||||
glAPI->VertexAttrib1dARB = __indirect_glVertexAttrib1dARB;
|
||||
glAPI->VertexAttrib1dvARB = __indirect_glVertexAttrib1dvARB;
|
||||
glAPI->VertexAttrib1fARB = __indirect_glVertexAttrib1fARB;
|
||||
glAPI->VertexAttrib1fvARB = __indirect_glVertexAttrib1fvARB;
|
||||
glAPI->VertexAttrib1sARB = __indirect_glVertexAttrib1sARB;
|
||||
glAPI->VertexAttrib1svARB = __indirect_glVertexAttrib1svARB;
|
||||
glAPI->VertexAttrib2dARB = __indirect_glVertexAttrib2dARB;
|
||||
glAPI->VertexAttrib2dvARB = __indirect_glVertexAttrib2dvARB;
|
||||
glAPI->VertexAttrib2fARB = __indirect_glVertexAttrib2fARB;
|
||||
glAPI->VertexAttrib2fvARB = __indirect_glVertexAttrib2fvARB;
|
||||
glAPI->VertexAttrib2sARB = __indirect_glVertexAttrib2sARB;
|
||||
glAPI->VertexAttrib2svARB = __indirect_glVertexAttrib2svARB;
|
||||
glAPI->VertexAttrib3dARB = __indirect_glVertexAttrib3dARB;
|
||||
glAPI->VertexAttrib3dvARB = __indirect_glVertexAttrib3dvARB;
|
||||
glAPI->VertexAttrib3fARB = __indirect_glVertexAttrib3fARB;
|
||||
glAPI->VertexAttrib3fvARB = __indirect_glVertexAttrib3fvARB;
|
||||
glAPI->VertexAttrib3sARB = __indirect_glVertexAttrib3sARB;
|
||||
glAPI->VertexAttrib3svARB = __indirect_glVertexAttrib3svARB;
|
||||
glAPI->VertexAttrib4dARB = __indirect_glVertexAttrib4dARB;
|
||||
glAPI->VertexAttrib4dvARB = __indirect_glVertexAttrib4dvARB;
|
||||
glAPI->VertexAttrib4fARB = __indirect_glVertexAttrib4fARB;
|
||||
glAPI->VertexAttrib4fvARB = __indirect_glVertexAttrib4fvARB;
|
||||
glAPI->VertexAttrib4sARB = __indirect_glVertexAttrib4sARB;
|
||||
glAPI->VertexAttrib4svARB = __indirect_glVertexAttrib4svARB;
|
||||
glAPI->VertexAttrib4NubARB = __indirect_glVertexAttrib4NubARB;
|
||||
glAPI->VertexAttrib4NubvARB = __indirect_glVertexAttrib4NubvARB;
|
||||
|
||||
/* GL_NV_fragment_program */
|
||||
/* 29. GL_ARB_occlusion_query */
|
||||
|
||||
glAPI->EndQueryARB = __indirect_glEndQueryARB;
|
||||
glAPI->GetQueryivARB = __indirect_glGetQueryivARB;
|
||||
glAPI->GetQueryObjectivARB = __indirect_glGetQueryObjectivARB;
|
||||
glAPI->GetQueryObjectuivARB = __indirect_glGetQueryObjectuivARB;
|
||||
glAPI->GenQueriesARB = __indirect_glGenQueriesARB;
|
||||
glAPI->DeleteQueriesARB = __indirect_glDeleteQueriesARB;
|
||||
glAPI->IsQueryARB = __indirect_glIsQueryARB;
|
||||
glAPI->BeginQueryARB = __indirect_glBeginQueryARB;
|
||||
|
||||
/* 37. GL_ARB_draw_buffers */
|
||||
|
||||
glAPI->DrawBuffersARB = __indirect_glDrawBuffersARB;
|
||||
|
||||
/* 20. GL_EXT_texture_object */
|
||||
|
||||
glAPI->GenTexturesEXT = __indirect_glGenTexturesEXT;
|
||||
glAPI->IsTextureEXT = __indirect_glIsTextureEXT;
|
||||
glAPI->AreTexturesResidentEXT = __indirect_glAreTexturesResidentEXT;
|
||||
|
||||
/* 25. GL_SGIS_multisample */
|
||||
|
||||
glAPI->SampleMaskSGIS = __indirect_glSampleMaskSGIS;
|
||||
glAPI->SamplePatternSGIS = __indirect_glSamplePatternSGIS;
|
||||
|
||||
/* 30. GL_EXT_vertex_array */
|
||||
|
||||
glAPI->ColorPointerEXT = __indirect_glColorPointerEXT;
|
||||
glAPI->EdgeFlagPointerEXT = __indirect_glEdgeFlagPointerEXT;
|
||||
glAPI->IndexPointerEXT = __indirect_glIndexPointerEXT;
|
||||
glAPI->NormalPointerEXT = __indirect_glNormalPointerEXT;
|
||||
glAPI->TexCoordPointerEXT = __indirect_glTexCoordPointerEXT;
|
||||
glAPI->VertexPointerEXT = __indirect_glVertexPointerEXT;
|
||||
|
||||
/* 54. GL_EXT_point_parameters */
|
||||
|
||||
glAPI->PointParameterfEXT = __indirect_glPointParameterfEXT;
|
||||
glAPI->PointParameterfvEXT = __indirect_glPointParameterfvEXT;
|
||||
|
||||
/* 145. GL_EXT_secondary_color */
|
||||
|
||||
glAPI->SecondaryColor3usvEXT = __indirect_glSecondaryColor3usvEXT;
|
||||
glAPI->SecondaryColorPointerEXT = __indirect_glSecondaryColorPointerEXT;
|
||||
glAPI->SecondaryColor3bEXT = __indirect_glSecondaryColor3bEXT;
|
||||
glAPI->SecondaryColor3bvEXT = __indirect_glSecondaryColor3bvEXT;
|
||||
glAPI->SecondaryColor3dEXT = __indirect_glSecondaryColor3dEXT;
|
||||
glAPI->SecondaryColor3dvEXT = __indirect_glSecondaryColor3dvEXT;
|
||||
glAPI->SecondaryColor3fEXT = __indirect_glSecondaryColor3fEXT;
|
||||
glAPI->SecondaryColor3fvEXT = __indirect_glSecondaryColor3fvEXT;
|
||||
glAPI->SecondaryColor3iEXT = __indirect_glSecondaryColor3iEXT;
|
||||
glAPI->SecondaryColor3ivEXT = __indirect_glSecondaryColor3ivEXT;
|
||||
glAPI->SecondaryColor3sEXT = __indirect_glSecondaryColor3sEXT;
|
||||
glAPI->SecondaryColor3svEXT = __indirect_glSecondaryColor3svEXT;
|
||||
glAPI->SecondaryColor3ubEXT = __indirect_glSecondaryColor3ubEXT;
|
||||
glAPI->SecondaryColor3ubvEXT = __indirect_glSecondaryColor3ubvEXT;
|
||||
glAPI->SecondaryColor3uiEXT = __indirect_glSecondaryColor3uiEXT;
|
||||
glAPI->SecondaryColor3uivEXT = __indirect_glSecondaryColor3uivEXT;
|
||||
glAPI->SecondaryColor3usEXT = __indirect_glSecondaryColor3usEXT;
|
||||
|
||||
/* 148. GL_EXT_multi_draw_arrays */
|
||||
|
||||
glAPI->MultiDrawArraysEXT = __indirect_glMultiDrawArraysEXT;
|
||||
glAPI->MultiDrawElementsEXT = __indirect_glMultiDrawElementsEXT;
|
||||
|
||||
/* 149. GL_EXT_fog_coord */
|
||||
|
||||
glAPI->FogCoordfEXT = __indirect_glFogCoordfEXT;
|
||||
glAPI->FogCoordfvEXT = __indirect_glFogCoordfvEXT;
|
||||
glAPI->FogCoorddEXT = __indirect_glFogCoorddEXT;
|
||||
glAPI->FogCoorddvEXT = __indirect_glFogCoorddvEXT;
|
||||
glAPI->FogCoordPointerEXT = __indirect_glFogCoordPointerEXT;
|
||||
|
||||
/* 173. GL_EXT_blend_func_separate */
|
||||
|
||||
glAPI->BlendFuncSeparateEXT = __indirect_glBlendFuncSeparateEXT;
|
||||
|
||||
/* 197. GL_MESA_window_pos */
|
||||
|
||||
glAPI->WindowPos2dMESA = __indirect_glWindowPos2dMESA;
|
||||
glAPI->WindowPos2dvMESA = __indirect_glWindowPos2dvMESA;
|
||||
glAPI->WindowPos2fMESA = __indirect_glWindowPos2fMESA;
|
||||
glAPI->WindowPos2fvMESA = __indirect_glWindowPos2fvMESA;
|
||||
glAPI->WindowPos2iMESA = __indirect_glWindowPos2iMESA;
|
||||
glAPI->WindowPos2ivMESA = __indirect_glWindowPos2ivMESA;
|
||||
glAPI->WindowPos2sMESA = __indirect_glWindowPos2sMESA;
|
||||
glAPI->WindowPos2svMESA = __indirect_glWindowPos2svMESA;
|
||||
glAPI->WindowPos3dMESA = __indirect_glWindowPos3dMESA;
|
||||
glAPI->WindowPos3dvMESA = __indirect_glWindowPos3dvMESA;
|
||||
glAPI->WindowPos3fMESA = __indirect_glWindowPos3fMESA;
|
||||
glAPI->WindowPos3fvMESA = __indirect_glWindowPos3fvMESA;
|
||||
glAPI->WindowPos3iMESA = __indirect_glWindowPos3iMESA;
|
||||
glAPI->WindowPos3ivMESA = __indirect_glWindowPos3ivMESA;
|
||||
glAPI->WindowPos3sMESA = __indirect_glWindowPos3sMESA;
|
||||
glAPI->WindowPos3svMESA = __indirect_glWindowPos3svMESA;
|
||||
|
||||
/* 233. GL_NV_vertex_program */
|
||||
|
||||
glAPI->VertexAttribs4svNV = __indirect_glVertexAttribs4svNV;
|
||||
glAPI->VertexAttribs4ubvNV = __indirect_glVertexAttribs4ubvNV;
|
||||
glAPI->VertexAttrib3fNV = __indirect_glVertexAttrib3fNV;
|
||||
glAPI->VertexAttrib3fvNV = __indirect_glVertexAttrib3fvNV;
|
||||
glAPI->VertexAttrib3sNV = __indirect_glVertexAttrib3sNV;
|
||||
glAPI->VertexAttrib3svNV = __indirect_glVertexAttrib3svNV;
|
||||
glAPI->VertexAttrib4dNV = __indirect_glVertexAttrib4dNV;
|
||||
glAPI->VertexAttrib3dvNV = __indirect_glVertexAttrib3dvNV;
|
||||
glAPI->VertexAttrib4fNV = __indirect_glVertexAttrib4fNV;
|
||||
glAPI->VertexAttrib4fvNV = __indirect_glVertexAttrib4fvNV;
|
||||
glAPI->VertexAttrib4sNV = __indirect_glVertexAttrib4sNV;
|
||||
glAPI->VertexAttrib4svNV = __indirect_glVertexAttrib4svNV;
|
||||
glAPI->VertexAttrib4ubNV = __indirect_glVertexAttrib4ubNV;
|
||||
glAPI->VertexAttrib4ubvNV = __indirect_glVertexAttrib4ubvNV;
|
||||
glAPI->VertexAttrib1fvNV = __indirect_glVertexAttrib1fvNV;
|
||||
glAPI->VertexAttrib3dNV = __indirect_glVertexAttrib3dNV;
|
||||
glAPI->VertexAttrib4dvNV = __indirect_glVertexAttrib4dvNV;
|
||||
glAPI->VertexAttrib1sNV = __indirect_glVertexAttrib1sNV;
|
||||
glAPI->VertexAttrib1fNV = __indirect_glVertexAttrib1fNV;
|
||||
glAPI->VertexAttrib1svNV = __indirect_glVertexAttrib1svNV;
|
||||
glAPI->VertexAttrib1dvNV = __indirect_glVertexAttrib1dvNV;
|
||||
glAPI->AreProgramsResidentNV = __indirect_glAreProgramsResidentNV;
|
||||
glAPI->BindProgramNV = __indirect_glBindProgramNV;
|
||||
glAPI->DeleteProgramsNV = __indirect_glDeleteProgramsNV;
|
||||
glAPI->ExecuteProgramNV = __indirect_glExecuteProgramNV;
|
||||
glAPI->GenProgramsNV = __indirect_glGenProgramsNV;
|
||||
glAPI->GetProgramParameterdvNV = __indirect_glGetProgramParameterdvNV;
|
||||
glAPI->GetProgramParameterfvNV = __indirect_glGetProgramParameterfvNV;
|
||||
glAPI->GetProgramivNV = __indirect_glGetProgramivNV;
|
||||
glAPI->GetProgramStringNV = __indirect_glGetProgramStringNV;
|
||||
glAPI->GetTrackMatrixivNV = __indirect_glGetTrackMatrixivNV;
|
||||
glAPI->GetVertexAttribPointervNV = __indirect_glGetVertexAttribPointervNV;
|
||||
glAPI->IsProgramNV = __indirect_glIsProgramNV;
|
||||
glAPI->LoadProgramNV = __indirect_glLoadProgramNV;
|
||||
glAPI->ProgramParameter4dNV = __indirect_glProgramParameter4dNV;
|
||||
glAPI->ProgramParameter4dvNV = __indirect_glProgramParameter4dvNV;
|
||||
glAPI->ProgramParameter4fNV = __indirect_glProgramParameter4fNV;
|
||||
glAPI->ProgramParameter4fvNV = __indirect_glProgramParameter4fvNV;
|
||||
glAPI->ProgramParameters4dvNV = __indirect_glProgramParameters4dvNV;
|
||||
glAPI->ProgramParameters4fvNV = __indirect_glProgramParameters4fvNV;
|
||||
glAPI->RequestResidentProgramsNV = __indirect_glRequestResidentProgramsNV;
|
||||
glAPI->TrackMatrixNV = __indirect_glTrackMatrixNV;
|
||||
glAPI->VertexAttribPointerNV = __indirect_glVertexAttribPointerNV;
|
||||
glAPI->VertexAttrib2dNV = __indirect_glVertexAttrib2dNV;
|
||||
glAPI->VertexAttrib2sNV = __indirect_glVertexAttrib2sNV;
|
||||
glAPI->VertexAttrib2dvNV = __indirect_glVertexAttrib2dvNV;
|
||||
glAPI->VertexAttrib2fNV = __indirect_glVertexAttrib2fNV;
|
||||
glAPI->VertexAttrib2svNV = __indirect_glVertexAttrib2svNV;
|
||||
glAPI->VertexAttrib2fvNV = __indirect_glVertexAttrib2fvNV;
|
||||
glAPI->GetVertexAttribdvNV = __indirect_glGetVertexAttribdvNV;
|
||||
glAPI->GetVertexAttribfvNV = __indirect_glGetVertexAttribfvNV;
|
||||
glAPI->GetVertexAttribivNV = __indirect_glGetVertexAttribivNV;
|
||||
glAPI->VertexAttrib1dNV = __indirect_glVertexAttrib1dNV;
|
||||
glAPI->VertexAttribs1dvNV = __indirect_glVertexAttribs1dvNV;
|
||||
glAPI->VertexAttribs1fvNV = __indirect_glVertexAttribs1fvNV;
|
||||
glAPI->VertexAttribs1svNV = __indirect_glVertexAttribs1svNV;
|
||||
glAPI->VertexAttribs2dvNV = __indirect_glVertexAttribs2dvNV;
|
||||
glAPI->VertexAttribs2fvNV = __indirect_glVertexAttribs2fvNV;
|
||||
glAPI->VertexAttribs2svNV = __indirect_glVertexAttribs2svNV;
|
||||
glAPI->VertexAttribs3dvNV = __indirect_glVertexAttribs3dvNV;
|
||||
glAPI->VertexAttribs3fvNV = __indirect_glVertexAttribs3fvNV;
|
||||
glAPI->VertexAttribs3svNV = __indirect_glVertexAttribs3svNV;
|
||||
glAPI->VertexAttribs4dvNV = __indirect_glVertexAttribs4dvNV;
|
||||
glAPI->VertexAttribs4fvNV = __indirect_glVertexAttribs4fvNV;
|
||||
|
||||
/* 262. GL_NV_point_sprite */
|
||||
|
||||
glAPI->PointParameteriNV = __indirect_glPointParameteriNV;
|
||||
glAPI->PointParameterivNV = __indirect_glPointParameterivNV;
|
||||
|
||||
/* 268. GL_EXT_stencil_two_side */
|
||||
|
||||
glAPI->ActiveStencilFaceEXT = __indirect_glActiveStencilFaceEXT;
|
||||
|
||||
/* 282. GL_NV_fragment_program */
|
||||
|
||||
glAPI->ProgramNamedParameter4fNV = __indirect_glProgramNamedParameter4fNV;
|
||||
glAPI->ProgramNamedParameter4dNV = __indirect_glProgramNamedParameter4dNV;
|
||||
@@ -726,48 +754,25 @@ __GLapi * __glXNewIndirectAPI( void )
|
||||
glAPI->GetProgramNamedParameterfvNV = __indirect_glGetProgramNamedParameterfvNV;
|
||||
glAPI->GetProgramNamedParameterdvNV = __indirect_glGetProgramNamedParameterdvNV;
|
||||
|
||||
/* GL_ARB_occlusion_query */
|
||||
/* 310. GL_EXT_framebuffer_object */
|
||||
|
||||
glAPI->GenQueriesARB = __indirect_glGenQueriesARB;
|
||||
glAPI->DeleteQueriesARB = __indirect_glDeleteQueriesARB;
|
||||
glAPI->IsQueryARB = __indirect_glIsQueryARB;
|
||||
glAPI->BeginQueryARB = __indirect_glBeginQueryARB;
|
||||
glAPI->EndQueryARB = __indirect_glEndQueryARB;
|
||||
glAPI->GetQueryivARB = __indirect_glGetQueryivARB;
|
||||
glAPI->GetQueryObjectivARB = __indirect_glGetQueryObjectivARB;
|
||||
glAPI->GetQueryObjectuivARB = __indirect_glGetQueryObjectuivARB;
|
||||
|
||||
/* GL_NV_vertex_program */
|
||||
|
||||
glAPI->GetVertexAttribdvNV = __indirect_glGetVertexAttribdvNV;
|
||||
glAPI->GetVertexAttribfvNV = __indirect_glGetVertexAttribfvNV;
|
||||
glAPI->GetVertexAttribivNV = __indirect_glGetVertexAttribivNV;
|
||||
glAPI->VertexAttrib1dNV = __indirect_glVertexAttrib1dNV;
|
||||
glAPI->VertexAttrib1dvNV = __indirect_glVertexAttrib1dvNV;
|
||||
glAPI->VertexAttrib1fNV = __indirect_glVertexAttrib1fNV;
|
||||
glAPI->VertexAttrib1fvNV = __indirect_glVertexAttrib1fvNV;
|
||||
glAPI->VertexAttrib1sNV = __indirect_glVertexAttrib1sNV;
|
||||
glAPI->VertexAttrib1svNV = __indirect_glVertexAttrib1svNV;
|
||||
glAPI->VertexAttrib2dNV = __indirect_glVertexAttrib2dNV;
|
||||
glAPI->VertexAttrib2dvNV = __indirect_glVertexAttrib2dvNV;
|
||||
glAPI->VertexAttrib2fNV = __indirect_glVertexAttrib2fNV;
|
||||
glAPI->VertexAttrib2fvNV = __indirect_glVertexAttrib2fvNV;
|
||||
glAPI->VertexAttrib2sNV = __indirect_glVertexAttrib2sNV;
|
||||
glAPI->VertexAttrib2svNV = __indirect_glVertexAttrib2svNV;
|
||||
glAPI->VertexAttrib3dNV = __indirect_glVertexAttrib3dNV;
|
||||
glAPI->VertexAttrib3dvNV = __indirect_glVertexAttrib3dvNV;
|
||||
glAPI->VertexAttrib3fNV = __indirect_glVertexAttrib3fNV;
|
||||
glAPI->VertexAttrib3fvNV = __indirect_glVertexAttrib3fvNV;
|
||||
glAPI->VertexAttrib3sNV = __indirect_glVertexAttrib3sNV;
|
||||
glAPI->VertexAttrib3svNV = __indirect_glVertexAttrib3svNV;
|
||||
glAPI->VertexAttrib4dNV = __indirect_glVertexAttrib4dNV;
|
||||
glAPI->VertexAttrib4dvNV = __indirect_glVertexAttrib4dvNV;
|
||||
glAPI->VertexAttrib4fNV = __indirect_glVertexAttrib4fNV;
|
||||
glAPI->VertexAttrib4fvNV = __indirect_glVertexAttrib4fvNV;
|
||||
glAPI->VertexAttrib4sNV = __indirect_glVertexAttrib4sNV;
|
||||
glAPI->VertexAttrib4svNV = __indirect_glVertexAttrib4svNV;
|
||||
glAPI->VertexAttrib4ubNV = __indirect_glVertexAttrib4ubNV;
|
||||
glAPI->VertexAttrib4ubvNV = __indirect_glVertexAttrib4ubvNV;
|
||||
glAPI->RenderbufferStorageEXT = __indirect_glRenderbufferStorageEXT;
|
||||
glAPI->GetRenderbufferParameterivEXT = __indirect_glGetRenderbufferParameterivEXT;
|
||||
glAPI->IsFramebufferEXT = __indirect_glIsFramebufferEXT;
|
||||
glAPI->BindFramebufferEXT = __indirect_glBindFramebufferEXT;
|
||||
glAPI->DeleteFramebuffersEXT = __indirect_glDeleteFramebuffersEXT;
|
||||
glAPI->GenFramebuffersEXT = __indirect_glGenFramebuffersEXT;
|
||||
glAPI->CheckFramebufferStatusEXT = __indirect_glCheckFramebufferStatusEXT;
|
||||
glAPI->FramebufferTexture1DEXT = __indirect_glFramebufferTexture1DEXT;
|
||||
glAPI->FramebufferTexture2DEXT = __indirect_glFramebufferTexture2DEXT;
|
||||
glAPI->FramebufferTexture3DEXT = __indirect_glFramebufferTexture3DEXT;
|
||||
glAPI->FramebufferRenderbufferEXT = __indirect_glFramebufferRenderbufferEXT;
|
||||
glAPI->GetFramebufferAttachmentParameterivEXT = __indirect_glGetFramebufferAttachmentParameterivEXT;
|
||||
glAPI->GenerateMipmapEXT = __indirect_glGenerateMipmapEXT;
|
||||
glAPI->IsRenderbufferEXT = __indirect_glIsRenderbufferEXT;
|
||||
glAPI->BindRenderbufferEXT = __indirect_glBindRenderbufferEXT;
|
||||
glAPI->DeleteRenderbuffersEXT = __indirect_glDeleteRenderbuffersEXT;
|
||||
glAPI->GenRenderbuffersEXT = __indirect_glGenRenderbuffersEXT;
|
||||
|
||||
return glAPI;
|
||||
}
|
||||
|
@@ -334,22 +334,18 @@ __glPointParameterfvEXT_size( GLenum e )
|
||||
switch( e ) {
|
||||
case GL_POINT_SIZE_MIN:
|
||||
/* case GL_POINT_SIZE_MIN_ARB:*/
|
||||
/* case GL_POINT_SIZE_MIN_EXT:*/
|
||||
/* case GL_POINT_SIZE_MIN_SGIS:*/
|
||||
case GL_POINT_SIZE_MAX:
|
||||
/* case GL_POINT_SIZE_MAX_ARB:*/
|
||||
/* case GL_POINT_SIZE_MAX_EXT:*/
|
||||
/* case GL_POINT_SIZE_MAX_SGIS:*/
|
||||
case GL_POINT_FADE_THRESHOLD_SIZE:
|
||||
/* case GL_POINT_FADE_THRESHOLD_SIZE_ARB:*/
|
||||
/* case GL_POINT_FADE_THRESHOLD_SIZE_EXT:*/
|
||||
/* case GL_POINT_FADE_THRESHOLD_SIZE_SGIS:*/
|
||||
case GL_POINT_SPRITE_R_MODE_NV:
|
||||
case GL_POINT_SPRITE_COORD_ORIGIN:
|
||||
return 1;
|
||||
case GL_POINT_DISTANCE_ATTENUATION:
|
||||
/* case GL_POINT_DISTANCE_ATTENUATION_ARB:*/
|
||||
/* case GL_POINT_DISTANCE_ATTENUATION_EXT:*/
|
||||
/* case GL_POINT_DISTANCE_ATTENUATION_SGIS:*/
|
||||
return 3;
|
||||
default: return 0;
|
||||
@@ -369,3 +365,8 @@ ALIAS( Map2f, Map2d )
|
||||
ALIAS( ColorTableParameteriv, ColorTableParameterfv )
|
||||
ALIAS( ConvolutionParameteriv, ConvolutionParameterfv )
|
||||
ALIAS( PointParameterivNV, PointParameterfvEXT )
|
||||
|
||||
# undef HAVE_ALIAS
|
||||
# undef PURE
|
||||
# undef FASTCALL
|
||||
# undef INTERNAL
|
||||
|
@@ -220,6 +220,7 @@ tags:
|
||||
|
||||
clean:
|
||||
-rm -f */*.o
|
||||
-rm -f */*/*.o
|
||||
-rm -f depend depend.bak mesa.a
|
||||
-rm -f drivers/*/*.o
|
||||
(cd drivers/dri ; $(MAKE) clean)
|
||||
|
@@ -1,108 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="array_cache" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static Library" 0x0104
|
||||
|
||||
CFG=array_cache - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "array_cache.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "array_cache.mak" CFG="array_cache - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "array_cache - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "array_cache - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "array_cache - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /I "../../../include" /I "../" /I "../main" /I "../glapi" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo
|
||||
|
||||
!ELSEIF "$(CFG)" == "array_cache - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "../../../include" /I "../" /I "../main" /I "../glapi" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /FR /YX /FD /GZ /c
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "array_cache - Win32 Release"
|
||||
# Name "array_cache - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ac_context.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ac_import.c
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ac_context.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\acache.h
|
||||
# End Source File
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
@@ -107,6 +107,7 @@ _mesa_init_driver_functions(struct dd_function_table *driver)
|
||||
driver->DeleteTexture = _mesa_delete_texture_object;
|
||||
driver->NewTextureImage = _mesa_new_texture_image;
|
||||
driver->FreeTexImageData = _mesa_free_texture_image_data;
|
||||
driver->TextureMemCpy = _mesa_memcpy;
|
||||
driver->IsTextureResident = NULL;
|
||||
driver->PrioritizeTexture = NULL;
|
||||
driver->ActiveTexture = NULL;
|
||||
|
@@ -45,7 +45,8 @@ install:
|
||||
echo "*** Installation aborted."; \
|
||||
exit 1; \
|
||||
fi;
|
||||
install -m 0755 $(DIRECTFBGL_MESA) $(DFB_MODULEDIR)/interfaces/IDirectFBGL/
|
||||
test -d $(DFB_MODULEDIR)/interfaces/IDirectFBGL/ || mkdir $(DFB_MODULEDIR)/interfaces/IDirectFBGL/
|
||||
install -m 755 $(DIRECTFBGL_MESA) $(DFB_MODULEDIR)/interfaces/IDirectFBGL/
|
||||
|
||||
|
||||
clean:
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (C) 2004 Claudio Ciccani <klan@users.sf.net>
|
||||
* Copyright (C) 2004-2005 Claudio Ciccani <klan@users.sf.net>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
@@ -38,6 +38,8 @@
|
||||
#include "buffers.h"
|
||||
#include "context.h"
|
||||
#include "extensions.h"
|
||||
#include "framebuffer.h"
|
||||
#include "renderbuffer.h"
|
||||
#include "imports.h"
|
||||
#include "texformat.h"
|
||||
#include "teximage.h"
|
||||
@@ -84,6 +86,7 @@ typedef struct {
|
||||
GLvisual visual;
|
||||
GLframebuffer framebuffer;
|
||||
GLcontext context;
|
||||
struct gl_renderbuffer render;
|
||||
} IDirectFBGL_data;
|
||||
|
||||
|
||||
@@ -93,7 +96,7 @@ static bool dfb_mesa_create_context ( GLcontext *context,
|
||||
GLframebuffer *framebuffer,
|
||||
GLvisual *visual,
|
||||
DFBSurfacePixelFormat format,
|
||||
void *data );
|
||||
IDirectFBGL_data *data );
|
||||
static void dfb_mesa_destroy_context( GLcontext *context,
|
||||
GLframebuffer *framebuffer );
|
||||
|
||||
@@ -155,6 +158,8 @@ IDirectFBGL_Lock( IDirectFBGL *thiz )
|
||||
return err;
|
||||
}
|
||||
data->video.end = data->video.start + (height-1) * data->video.pitch;
|
||||
|
||||
data->render.Data = data->video.start;
|
||||
|
||||
if (data->width != width || data->height != height) {
|
||||
data->width = width;
|
||||
@@ -248,7 +253,7 @@ Construct( IDirectFBGL *thiz,
|
||||
|
||||
/* Create context. */
|
||||
if (!dfb_mesa_create_context( &data->context, &data->framebuffer,
|
||||
&data->visual, data->format, (void*) data )) {
|
||||
&data->visual, data->format, data )) {
|
||||
D_ERROR( "DirectFBGL/Mesa: failed to create context.\n" );
|
||||
surface->Release( surface );
|
||||
return DFB_UNSUPPORTED;
|
||||
@@ -312,134 +317,144 @@ set_buffer( GLcontext *ctx, GLframebuffer *buffer, GLuint bufferBit )
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
delete_renderbuffer( struct gl_renderbuffer *render )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
static GLboolean
|
||||
renderbuffer_storage( GLcontext *ctx, struct gl_renderbuffer *render,
|
||||
GLenum internalFormat, GLuint width, GLuint height )
|
||||
{
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
|
||||
/* RGB332 */
|
||||
#define NAME(PREFIX) PREFIX##_RGB332
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLubyte *P = data->video.end - (Y) * data->video.pitch + (X)
|
||||
GLubyte *P = data->video.end - (Y) * data->video.pitch + (X);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( (((R) & 0xe0)) | (((G) & 0xe0) >> 3) | ((B) >> 6) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( (((R) & 0xe0)) | (((G) & 0xe0) >> 3) | ((B) >> 6) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0xe0) ); \
|
||||
G = ((*P & 0x1c) << 3); \
|
||||
B = ((*P & 0x03) << 6); \
|
||||
A = CHAN_MAX
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( (((S[RCOMP]) & 0xe0)) | (((S[GCOMP]) & 0xe0) >> 3) | ((S[BCOMP]) >> 6) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0xe0) ); \
|
||||
D[GCOMP] = ((*P & 0x1c) << 3); \
|
||||
D[BCOMP] = ((*P & 0x03) << 6); \
|
||||
D[ACOMP] = 0xff
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* ARGB1555 */
|
||||
#define NAME(PREFIX) PREFIX##_ARGB1555
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLushort *P = (GLushort *) (data->video.end - (Y) * data->video.pitch + (X) * 2)
|
||||
GLushort *P = (GLushort *) (data->video.end - (Y) * data->video.pitch + (X) * 2);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( (((R) & 0xf8) << 7) | (((G) & 0xf8) << 2) | ((B) >> 3) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( (((A) & 0x80) << 8) | (((R) & 0xf8) << 7) | (((G) & 0xf8) << 2) | ((B) >> 3) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0x7c00) >> 7); \
|
||||
G = ((*P & 0x03e0) >> 2); \
|
||||
B = ((*P & 0x001f) << 3); \
|
||||
A = ((*P & 0x8000) ? 0xff : 0)
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( (((S[RCOMP]) & 0xf8) << 7) | (((S[GCOMP]) & 0xf8) << 2) | ((S[BCOMP]) >> 3) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0x7c00) >> 7); \
|
||||
D[GCOMP] = ((*P & 0x03e0) >> 2); \
|
||||
D[BCOMP] = ((*P & 0x001f) << 3); \
|
||||
D[ACOMP] = ((*P & 0x8000) ? 0xff : 0)
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* RGB16 */
|
||||
#define NAME(PREFIX) PREFIX##_RGB16
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLushort *P = (GLushort *) (data->video.end - (Y) * data->video.pitch + (X) * 2)
|
||||
GLushort *P = (GLushort *) (data->video.end - (Y) * data->video.pitch + (X) * 2);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( (((R) & 0xf8) << 8) | (((G) & 0xfc) << 3) | ((B) >> 3) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( (((R) & 0xf8) << 8) | (((G) & 0xfc) << 3) | ((B) >> 3) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0xf800) >> 8); \
|
||||
G = ((*P & 0x07e0) >> 3); \
|
||||
B = ((*P & 0x001f) << 3); \
|
||||
A = CHAN_MAX
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( (((S[RCOMP]) & 0xf8) << 8) | (((S[GCOMP]) & 0xfc) << 3) | ((S[BCOMP]) >> 3) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0xf800) >> 8); \
|
||||
D[GCOMP] = ((*P & 0x07e0) >> 3); \
|
||||
D[BCOMP] = ((*P & 0x001f) << 3); \
|
||||
D[ACOMP] = 0xff
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* RGB24 */
|
||||
#define NAME(PREFIX) PREFIX##_RGB24
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLubyte *P = data->video.end - (Y) * data->video.pitch + (X) * 3
|
||||
GLubyte *P = data->video.end - (Y) * data->video.pitch + (X) * 3;
|
||||
#define INC_PIXEL_PTR(P) P += 3
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
P[0] = B; P[1] = G; P[2] = R
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
P[0] = B; P[1] = G; P[2] = R
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = P[2]; G = P[1]; B = P[0]; A = CHAN_MAX
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
P[0] = S[BCOMP]; P[1] = S[GCOMP]; P[2] = S[BCOMP]
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = P[2]; D[GCOMP] = P[1]; D[BCOMP] = P[0]; D[ACOMP] = 0xff
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* RGB32 */
|
||||
#define NAME(PREFIX) PREFIX##_RGB32
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4)
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0x00ff0000) >> 16); \
|
||||
G = ((*P & 0x0000ff00) >> 8); \
|
||||
B = ((*P & 0x000000ff) ); \
|
||||
A = CHAN_MAX
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( ((S[RCOMP]) << 16) | ((S[GCOMP]) << 8) | (S[BCOMP]) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0x00ff0000) >> 16); \
|
||||
D[GCOMP] = ((*P & 0x0000ff00) >> 8); \
|
||||
D[BCOMP] = ((*P & 0x000000ff) ); \
|
||||
D[ACOMP] = 0xff
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* ARGB */
|
||||
#define NAME(PREFIX) PREFIX##_ARGB
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4)
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( 0xff000000 | ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( ((A) << 24) | ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0x00ff0000) >> 16); \
|
||||
G = ((*P & 0x0000ff00) >> 8); \
|
||||
B = ((*P & 0x000000ff) ); \
|
||||
A = ((*P & 0xff000000) >> 24)
|
||||
#define STORE_PIXEL_RGB(P, X, Y, S) \
|
||||
*P = ( 0xff000000 | ((S[RCOMP]) << 16) | ((S[GCOMP]) << 8) | (S[BCOMP]) )
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( ((S[ACOMP]) << 24) | ((S[RCOMP]) << 16) | ((S[GCOMP]) << 8) | (S[BCOMP]) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0x00ff0000) >> 16); \
|
||||
D[GCOMP] = ((*P & 0x0000ff00) >> 8); \
|
||||
D[BCOMP] = ((*P & 0x000000ff) ); \
|
||||
D[ACOMP] = ((*P & 0xff000000) >> 24)
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
/* AiRGB */
|
||||
#define NAME(PREFIX) PREFIX##_AiRGB
|
||||
#define FORMAT GL_RGBA8
|
||||
#define SPAN_VARS \
|
||||
IDirectFBGL_data *data = (IDirectFBGL_data*) ctx->DriverCtx;
|
||||
#define INIT_PIXEL_PTR(P, X, Y) \
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4)
|
||||
GLuint *P = (GLuint*) (data->video.end - (Y) * data->video.pitch + (X) * 4);
|
||||
#define INC_PIXEL_PTR(P) P += 1
|
||||
#define STORE_RGB_PIXEL(P, X, Y, R, G, B) \
|
||||
*P = ( ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define STORE_RGBA_PIXEL(P, X, Y, R, G, B, A) \
|
||||
*P = ( ((0xff - (A)) << 24) | ((R) << 16) | ((G) << 8) | (B) )
|
||||
#define FETCH_RGBA_PIXEL(R, G, B, A, P) \
|
||||
R = ((*P & 0x00ff0000) >> 16); \
|
||||
G = ((*P & 0x0000ff00) >> 8); \
|
||||
B = ((*P & 0x000000ff) ); \
|
||||
A = (0xff - ((*P & 0xff000000) >> 24))
|
||||
#define STORE_PIXEL_RGB(P, X, Y, S) \
|
||||
*P = ( ((S[RCOMP]) << 16) | ((S[GCOMP]) << 8) | (S[BCOMP]) )
|
||||
#define STORE_PIXEL(P, X, Y, S) \
|
||||
*P = ( ((0xff - (S[ACOMP])) << 24) | ((S[RCOMP]) << 16) | ((S[GCOMP]) << 8) | (S[BCOMP]) )
|
||||
#define FETCH_PIXEL(D, P) \
|
||||
D[RCOMP] = ((*P & 0x00ff0000) >> 16); \
|
||||
D[GCOMP] = ((*P & 0x0000ff00) >> 8); \
|
||||
D[BCOMP] = ((*P & 0x000000ff) ); \
|
||||
D[ACOMP] = (0xff - ((*P & 0xff000000) >> 24))
|
||||
|
||||
#include "swrast/s_spantemp.h"
|
||||
|
||||
@@ -520,16 +535,12 @@ dfb_mesa_create_context( GLcontext *context,
|
||||
GLframebuffer *framebuffer,
|
||||
GLvisual *visual,
|
||||
DFBSurfacePixelFormat format,
|
||||
void *data )
|
||||
IDirectFBGL_data *data )
|
||||
{
|
||||
struct dd_function_table functions;
|
||||
struct swrast_device_driver *swdd;
|
||||
|
||||
_mesa_initialize_framebuffer( framebuffer, visual,
|
||||
visual->haveDepthBuffer,
|
||||
visual->haveStencilBuffer,
|
||||
visual->haveAccumBuffer,
|
||||
visual->accumAlphaBits > 0 );
|
||||
_mesa_initialize_framebuffer( framebuffer, visual );
|
||||
|
||||
_mesa_init_driver_functions( &functions );
|
||||
functions.GetString = get_string;
|
||||
@@ -538,7 +549,7 @@ dfb_mesa_create_context( GLcontext *context,
|
||||
functions.Viewport = set_viewport;
|
||||
|
||||
if (!_mesa_initialize_context( context, visual, NULL,
|
||||
&functions, data )) {
|
||||
&functions, (void*) data )) {
|
||||
D_DEBUG( "DirectFBGL/Mesa: _mesa_initialize_context() failed.\n" );
|
||||
_mesa_free_framebuffer_data( framebuffer );
|
||||
return false;
|
||||
@@ -552,80 +563,92 @@ dfb_mesa_create_context( GLcontext *context,
|
||||
|
||||
swdd = _swrast_GetDeviceDriverReference( context );
|
||||
swdd->SetBuffer = set_buffer;
|
||||
|
||||
_mesa_init_renderbuffer( &data->render, 0 );
|
||||
data->render.InternalFormat = GL_RGBA;
|
||||
data->render._BaseFormat = GL_RGBA;
|
||||
data->render.DataType = GL_UNSIGNED_BYTE;
|
||||
data->render.Data = data->video.start;
|
||||
data->render.Delete = delete_renderbuffer;
|
||||
data->render.AllocStorage = renderbuffer_storage;
|
||||
|
||||
switch (format) {
|
||||
case DSPF_RGB332:
|
||||
swdd->WriteRGBASpan = write_rgba_span_RGB332;
|
||||
swdd->WriteRGBSpan = write_rgb_span_RGB332;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_RGB332;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_RGB332;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_RGB332;
|
||||
swdd->ReadRGBASpan = read_rgba_span_RGB332;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_RGB332;
|
||||
case DSPF_RGB332:
|
||||
data->render.GetRow = get_row_RGB332;
|
||||
data->render.GetValues = get_values_RGB332;
|
||||
data->render.PutRow = put_row_RGB332;
|
||||
data->render.PutMonoRow = put_mono_row_RGB332;
|
||||
data->render.PutValues = put_values_RGB332;
|
||||
data->render.PutMonoValues = put_mono_values_RGB332;
|
||||
break;
|
||||
case DSPF_ARGB1555:
|
||||
swdd->WriteRGBASpan = write_rgba_span_ARGB1555;
|
||||
swdd->WriteRGBSpan = write_rgb_span_ARGB1555;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_ARGB1555;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_ARGB1555;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_ARGB1555;
|
||||
swdd->ReadRGBASpan = read_rgba_span_ARGB1555;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_ARGB1555;
|
||||
data->render.GetRow = get_row_ARGB1555;
|
||||
data->render.GetValues = get_values_ARGB1555;
|
||||
data->render.PutRow = put_row_ARGB1555;
|
||||
data->render.PutMonoRow = put_mono_row_ARGB1555;
|
||||
data->render.PutValues = put_values_ARGB1555;
|
||||
data->render.PutMonoValues = put_mono_values_ARGB1555;
|
||||
break;
|
||||
case DSPF_RGB16:
|
||||
swdd->WriteRGBASpan = write_rgba_span_RGB16;
|
||||
swdd->WriteRGBSpan = write_rgb_span_RGB16;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_RGB16;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_RGB16;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_RGB16;
|
||||
swdd->ReadRGBASpan = read_rgba_span_RGB16;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_RGB16;
|
||||
data->render.GetRow = get_row_RGB16;
|
||||
data->render.GetValues = get_values_RGB16;
|
||||
data->render.PutRow = put_row_RGB16;
|
||||
data->render.PutMonoRow = put_mono_row_RGB16;
|
||||
data->render.PutValues = put_values_RGB16;
|
||||
data->render.PutMonoValues = put_mono_values_RGB16;
|
||||
break;
|
||||
case DSPF_RGB24:
|
||||
swdd->WriteRGBASpan = write_rgba_span_RGB24;
|
||||
swdd->WriteRGBSpan = write_rgb_span_RGB24;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_RGB24;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_RGB24;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_RGB24;
|
||||
swdd->ReadRGBASpan = read_rgba_span_RGB24;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_RGB24;
|
||||
case DSPF_RGB24:
|
||||
data->render.GetRow = get_row_RGB24;
|
||||
data->render.GetValues = get_values_RGB24;
|
||||
data->render.PutRow = put_row_RGB24;
|
||||
data->render.PutMonoRow = put_mono_row_RGB24;
|
||||
data->render.PutValues = put_values_RGB24;
|
||||
data->render.PutMonoValues = put_mono_values_RGB24;
|
||||
break;
|
||||
case DSPF_RGB32:
|
||||
swdd->WriteRGBASpan = write_rgba_span_RGB32;
|
||||
swdd->WriteRGBSpan = write_rgb_span_RGB32;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_RGB32;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_RGB32;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_RGB32;
|
||||
swdd->ReadRGBASpan = read_rgba_span_RGB32;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_RGB32;
|
||||
data->render.GetRow = get_row_RGB32;
|
||||
data->render.GetValues = get_values_RGB32;
|
||||
data->render.PutRow = put_row_RGB32;
|
||||
data->render.PutMonoRow = put_mono_row_RGB32;
|
||||
data->render.PutValues = put_values_RGB32;
|
||||
data->render.PutMonoValues = put_mono_values_RGB32;
|
||||
break;
|
||||
case DSPF_ARGB:
|
||||
swdd->WriteRGBASpan = write_rgba_span_ARGB;
|
||||
swdd->WriteRGBSpan = write_rgb_span_ARGB;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_ARGB;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_ARGB;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_ARGB;
|
||||
swdd->ReadRGBASpan = read_rgba_span_ARGB;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_ARGB;
|
||||
data->render.GetRow = get_row_ARGB;
|
||||
data->render.GetValues = get_values_ARGB;
|
||||
data->render.PutRow = put_row_ARGB;
|
||||
data->render.PutMonoRow = put_mono_row_ARGB;
|
||||
data->render.PutValues = put_values_ARGB;
|
||||
data->render.PutMonoValues = put_mono_values_ARGB;
|
||||
break;
|
||||
case DSPF_AiRGB:
|
||||
swdd->WriteRGBASpan = write_rgba_span_AiRGB;
|
||||
swdd->WriteRGBSpan = write_rgb_span_AiRGB;
|
||||
swdd->WriteMonoRGBASpan = write_monorgba_span_AiRGB;
|
||||
swdd->WriteRGBAPixels = write_rgba_pixels_AiRGB;
|
||||
swdd->WriteMonoRGBAPixels = write_monorgba_pixels_AiRGB;
|
||||
swdd->ReadRGBASpan = read_rgba_span_AiRGB;
|
||||
swdd->ReadRGBAPixels = read_rgba_pixels_AiRGB;
|
||||
data->render.GetRow = get_row_AiRGB;
|
||||
data->render.GetValues = get_values_AiRGB;
|
||||
data->render.PutRow = put_row_AiRGB;
|
||||
data->render.PutMonoRow = put_mono_row_AiRGB;
|
||||
data->render.PutValues = put_values_AiRGB;
|
||||
data->render.PutMonoValues = put_mono_values_AiRGB;
|
||||
break;
|
||||
default:
|
||||
D_BUG( "unexpected pixelformat" );
|
||||
return false;
|
||||
}
|
||||
|
||||
_mesa_add_renderbuffer( framebuffer, BUFFER_FRONT_LEFT, &data->render );
|
||||
|
||||
_mesa_add_soft_renderbuffers( framebuffer,
|
||||
GL_FALSE,
|
||||
visual->haveDepthBuffer,
|
||||
visual->haveStencilBuffer,
|
||||
visual->haveAccumBuffer,
|
||||
GL_FALSE,
|
||||
GL_FALSE );
|
||||
|
||||
TNL_CONTEXT( context )->Driver.RunPipeline = _tnl_run_pipeline;
|
||||
|
||||
_mesa_enable_sw_extensions( context );
|
||||
|
||||
_mesa_make_current( context, framebuffer );
|
||||
_mesa_make_current( context, framebuffer, framebuffer );
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -634,7 +657,7 @@ static void
|
||||
dfb_mesa_destroy_context( GLcontext *context,
|
||||
GLframebuffer *framebuffer )
|
||||
{
|
||||
_mesa_make_current( NULL, NULL );
|
||||
_mesa_make_current( NULL, NULL, NULL );
|
||||
_mesa_free_framebuffer_data( framebuffer );
|
||||
_mesa_notifyDestroy( context );
|
||||
_mesa_free_context_data( context );
|
||||
|
@@ -16,7 +16,7 @@ COMMON_SOURCES = \
|
||||
ifeq ($(WINDOW_SYSTEM),dri)
|
||||
WINOBJ=../dri_client/dri.a
|
||||
WINLIB=
|
||||
INCLUDES = $(SHARED_INCLUDES) \
|
||||
INCLUDES = $(SHARED_INCLUDES) $(EXPAT_INCLUDES) \
|
||||
-I../dri_client \
|
||||
-I../dri_client/imports
|
||||
|
||||
@@ -38,9 +38,6 @@ OBJECTS = $(C_SOURCES:.c=.o) \
|
||||
endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
### Include directories
|
||||
SHARED_INCLUDES = \
|
||||
-I. \
|
||||
@@ -78,9 +75,10 @@ default: depend symlinks $(LIBNAME) $(LIB_DIR)/$(LIBNAME)
|
||||
# $(TOP)/bin/mklib -o $(LIBNAME) -noprefix -install $(LIB_DIR) \
|
||||
# $(WINLIB) $(LIB_DEPS) $(WINOBJ) $(MESA_MODULES) $(OBJECTS)
|
||||
|
||||
# XXX we should use the mklib script here
|
||||
$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
|
||||
rm -f $@
|
||||
gcc $(ARCH_FLAGS) -o $@ -shared $(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
|
||||
$(CC) $(ARCH_FLAGS) -o $@ -shared $(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
|
||||
|
||||
|
||||
$(LIB_DIR)/$(LIBNAME): $(LIBNAME)
|
||||
|
@@ -1,4 +1,3 @@
|
||||
/* $XFree86: xc/lib/GL/mesa/src/drv/common/depthtmp.h,v 1.5 2001/03/21 16:14:20 dawes Exp $ */
|
||||
|
||||
/*
|
||||
* Notes:
|
||||
@@ -8,25 +7,20 @@
|
||||
*/
|
||||
|
||||
|
||||
#include "spantmp_common.h"
|
||||
|
||||
#ifndef DBG
|
||||
#define DBG 0
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef HAVE_HW_DEPTH_SPANS
|
||||
#define HAVE_HW_DEPTH_SPANS 0
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_HW_DEPTH_PIXELS
|
||||
#define HAVE_HW_DEPTH_PIXELS 0
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_LOCK
|
||||
#define HW_READ_LOCK() HW_LOCK()
|
||||
#endif
|
||||
#ifndef HW_READ_UNLOCK
|
||||
#define HW_READ_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
static void TAG(WriteDepthSpan)( GLcontext *ctx,
|
||||
struct gl_renderbuffer *rb,
|
||||
GLuint n, GLint x, GLint y,
|
||||
|
@@ -8,6 +8,8 @@
|
||||
/**
|
||||
* This will get called when a window is resized.
|
||||
* Just update width, height and internal format fields for now.
|
||||
* There's usually no memory allocation above because the present
|
||||
* DRI drivers use statically-allocated full-screen buffers.
|
||||
*/
|
||||
static GLboolean
|
||||
driRenderbufferStorage(GLcontext *ctx, struct gl_renderbuffer *rb,
|
||||
|
5886
src/mesa/drivers/dri/common/extension_helper.h
Normal file
5886
src/mesa/drivers/dri/common/extension_helper.h
Normal file
File diff suppressed because it is too large
Load Diff
@@ -27,26 +27,12 @@
|
||||
* Gareth Hughes <gareth@nvidia.com>
|
||||
*/
|
||||
|
||||
#include "spantmp_common.h"
|
||||
|
||||
#ifndef DBG
|
||||
#define DBG 0
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_LOCK
|
||||
#define HW_WRITE_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_UNLOCK
|
||||
#define HW_WRITE_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_LOCK
|
||||
#define HW_READ_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_UNLOCK
|
||||
#define HW_READ_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_CLIPLOOP
|
||||
#define HW_READ_CLIPLOOP() HW_CLIPLOOP()
|
||||
#endif
|
||||
|
@@ -34,27 +34,12 @@
|
||||
*/
|
||||
|
||||
#include "colormac.h"
|
||||
#include "spantmp_common.h"
|
||||
|
||||
#ifndef DBG
|
||||
#define DBG 0
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_LOCK
|
||||
#define HW_WRITE_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_UNLOCK
|
||||
#define HW_WRITE_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_LOCK
|
||||
#define HW_READ_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_UNLOCK
|
||||
#define HW_READ_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_CLIPLOOP
|
||||
#define HW_READ_CLIPLOOP() HW_CLIPLOOP()
|
||||
#endif
|
||||
@@ -65,6 +50,14 @@
|
||||
|
||||
#if (SPANTMP_PIXEL_FMT == GL_RGB) && (SPANTMP_PIXEL_TYPE == GL_UNSIGNED_SHORT_5_6_5)
|
||||
|
||||
#ifndef GET_SRC_PTR
|
||||
#define GET_SRC_PTR(_x, _y) (read_buf + (_x) * 2 + (_y) * pitch)
|
||||
#endif
|
||||
|
||||
#ifndef GET_DST_PTR
|
||||
#define GET_DST_PTR(_x, _y) ( buf + (_x) * 2 + (_y) * pitch)
|
||||
#endif
|
||||
|
||||
#define INIT_MONO_PIXEL(p, color) \
|
||||
p = PACK_COLOR_565( color[0], color[1], color[2] )
|
||||
|
||||
@@ -92,9 +85,17 @@
|
||||
|
||||
#elif (SPANTMP_PIXEL_FMT == GL_BGRA) && (SPANTMP_PIXEL_TYPE == GL_UNSIGNED_INT_8_8_8_8_REV)
|
||||
|
||||
#ifndef GET_SRC_PTR
|
||||
#define GET_SRC_PTR(_x, _y) (read_buf + (_x) * 4 + (_y) * pitch)
|
||||
#endif
|
||||
|
||||
#ifndef GET_DST_PTR
|
||||
#define GET_DST_PTR(_x, _y) ( buf + (_x) * 4 + (_y) * pitch)
|
||||
#endif
|
||||
|
||||
# define INIT_MONO_PIXEL(p, color) \
|
||||
p = PACK_COLOR_8888(color[3], color[0], color[1], color[2])
|
||||
|
||||
|
||||
# define WRITE_RGBA(_x, _y, r, g, b, a) \
|
||||
do { \
|
||||
GLuint * _p = (GLuint *) GET_DST_PTR(_x, _y); \
|
||||
|
81
src/mesa/drivers/dri/common/spantmp_common.h
Normal file
81
src/mesa/drivers/dri/common/spantmp_common.h
Normal file
@@ -0,0 +1,81 @@
|
||||
/*
|
||||
* Copyright 2000-2001 VA Linux Systems, Inc.
|
||||
* (C) Copyright IBM Corporation 2004
|
||||
* 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
|
||||
* on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
* license, 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 (including the next
|
||||
* paragraph) 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 NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
* VA LINUX SYSTEM, IBM AND/OR THEIR SUPPLIERS 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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file spantmp_common.h
|
||||
*
|
||||
* common macros for span read / write functions to be used in the depth,
|
||||
* stencil and pixel span templates.
|
||||
*/
|
||||
|
||||
#ifndef HW_WRITE_LOCK
|
||||
#define HW_WRITE_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_UNLOCK
|
||||
#define HW_WRITE_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_LOCK
|
||||
#define HW_READ_LOCK() HW_LOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_UNLOCK
|
||||
#define HW_READ_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_CLIPLOOP
|
||||
#define HW_CLIPLOOP() \
|
||||
do { \
|
||||
int _nc = dPriv->numClipRects; \
|
||||
while ( _nc-- ) { \
|
||||
int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
|
||||
int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
|
||||
int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
|
||||
int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
|
||||
#endif
|
||||
|
||||
#ifndef HW_ENDCLIPLOOP
|
||||
#define HW_ENDCLIPLOOP() \
|
||||
} \
|
||||
} while (0)
|
||||
#endif
|
||||
|
||||
#ifndef CLIPPIXEL
|
||||
#define CLIPPIXEL( _x, _y ) \
|
||||
((_x >= minx) && (_x < maxx) && (_y >= miny) && (_y < maxy))
|
||||
#endif
|
||||
|
||||
#ifndef CLIPSPAN
|
||||
#define CLIPSPAN( _x, _y, _n, _x1, _n1, _i ) \
|
||||
if ( _y < miny || _y >= maxy /*|| _x + n < minx || _x >=maxx*/ ) { \
|
||||
_n1 = 0, _x1 = x; \
|
||||
} else { \
|
||||
_n1 = _n; \
|
||||
_x1 = _x; \
|
||||
if ( _x1 < minx ) _i += (minx-_x1), n1 -= (minx-_x1), _x1 = minx; \
|
||||
if ( _x1 + _n1 >= maxx ) n1 -= (_x1 + n1 - maxx); \
|
||||
}
|
||||
#endif
|
@@ -1,23 +1,11 @@
|
||||
/* $XFree86: xc/lib/GL/mesa/src/drv/common/stenciltmp.h,v 1.3 2001/03/21 16:14:20 dawes Exp $ */
|
||||
|
||||
#include "spantmp_common.h"
|
||||
|
||||
#ifndef DBG
|
||||
#define DBG 0
|
||||
#endif
|
||||
|
||||
#ifndef HW_WRITE_LOCK
|
||||
#define HW_WRITE_LOCK() HW_LOCK()
|
||||
#endif
|
||||
#ifndef HW_WRITE_UNLOCK
|
||||
#define HW_WRITE_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
#ifndef HW_READ_LOCK
|
||||
#define HW_READ_LOCK() HW_LOCK()
|
||||
#endif
|
||||
#ifndef HW_READ_UNLOCK
|
||||
#define HW_READ_UNLOCK() HW_UNLOCK()
|
||||
#endif
|
||||
|
||||
static void TAG(WriteStencilSpan)( GLcontext *ctx,
|
||||
struct gl_renderbuffer *rb,
|
||||
GLuint n, GLint x, GLint y,
|
||||
|
@@ -180,9 +180,18 @@ driGetRendererString( char * buffer, const char * hardware_name,
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Enable extensions supported by the driver.
|
||||
*
|
||||
* \bug
|
||||
* ARB_imaging isn't handled properly. In Mesa, enabling ARB_imaging also
|
||||
* enables all the sub-extensions that are folded into it. This means that
|
||||
* we need to add entry-points (via \c driInitSingleExtension) for those
|
||||
* new functions here.
|
||||
*/
|
||||
void driInitExtensions( GLcontext * ctx,
|
||||
const char * const extensions_to_enable[],
|
||||
GLboolean enable_imaging )
|
||||
const struct dri_extension * extensions_to_enable,
|
||||
GLboolean enable_imaging )
|
||||
{
|
||||
unsigned i;
|
||||
|
||||
@@ -190,14 +199,84 @@ void driInitExtensions( GLcontext * ctx,
|
||||
_mesa_enable_imaging_extensions( ctx );
|
||||
}
|
||||
|
||||
for ( i = 0 ; extensions_to_enable[i] != NULL ; i++ ) {
|
||||
_mesa_enable_extension( ctx, extensions_to_enable[i] );
|
||||
for ( i = 0 ; extensions_to_enable[i].name != NULL ; i++ ) {
|
||||
driInitSingleExtension( ctx, & extensions_to_enable[i] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Enable and add dispatch functions for a single extension
|
||||
*
|
||||
* \param ctx Context where extension is to be enabled.
|
||||
* \param ext Extension that is to be enabled.
|
||||
*
|
||||
* \sa driInitExtensions, _mesa_enable_extension, _glapi_add_entrypoint
|
||||
*
|
||||
* \todo
|
||||
* Determine if it would be better to use \c strlen instead of the hardcoded
|
||||
* for-loops.
|
||||
*/
|
||||
void driInitSingleExtension( GLcontext * ctx,
|
||||
const struct dri_extension * ext )
|
||||
{
|
||||
unsigned i;
|
||||
|
||||
if ( ext->functions != NULL ) {
|
||||
for ( i = 0 ; ext->functions[i].strings != NULL ; i++ ) {
|
||||
const char * functions[16];
|
||||
const char * parameter_signature;
|
||||
const char * str = ext->functions[i].strings;
|
||||
unsigned j;
|
||||
|
||||
|
||||
/* Separate the parameter signature from the rest of the string.
|
||||
* If the parameter signature is empty (i.e., the string starts
|
||||
* with a NUL character), then the function has a void parameter
|
||||
* list.
|
||||
*/
|
||||
parameter_signature = str;
|
||||
while ( str[0] != '\0' ) {
|
||||
str++;
|
||||
}
|
||||
str++;
|
||||
|
||||
|
||||
/* Divide the string into the substrings that name each
|
||||
* entry-point for the function.
|
||||
*/
|
||||
for ( j = 0 ; j < 16 ; j++ ) {
|
||||
if ( str[0] == '\0' ) {
|
||||
functions[j] = NULL;
|
||||
break;
|
||||
}
|
||||
|
||||
functions[j] = str;
|
||||
|
||||
while ( str[0] != '\0' ) {
|
||||
str++;
|
||||
}
|
||||
str++;
|
||||
}
|
||||
|
||||
|
||||
/* Add each entry-point to the dispatch table.
|
||||
*/
|
||||
for ( j = 0 ; functions[j] != NULL ; j++ ) {
|
||||
_glapi_add_entrypoint( functions[j],
|
||||
ext->functions[i].offset );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_mesa_enable_extension( ctx, ext->name );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#ifndef DRI_NEW_INTERFACE_ONLY
|
||||
/**
|
||||
* Utility function used by drivers to test the verions of other components.
|
||||
|
@@ -32,12 +32,52 @@
|
||||
#include "context.h"
|
||||
#include "dri_util.h"
|
||||
|
||||
struct dri_debug_control
|
||||
{
|
||||
struct dri_debug_control {
|
||||
const char * string;
|
||||
unsigned flag;
|
||||
};
|
||||
|
||||
/**
|
||||
* Description of the entry-points and parameters for an OpenGL function.
|
||||
*/
|
||||
struct dri_extension_function {
|
||||
/**
|
||||
* \brief
|
||||
* Packed string describing the parameter signature and the entry-point
|
||||
* names.
|
||||
*
|
||||
* The parameter signature and the names of the entry-points for this
|
||||
* function are packed into a single string. The substrings are
|
||||
* separated by NUL characters. The whole string is terminated by
|
||||
* two consecutive NUL characters.
|
||||
*/
|
||||
const char * strings;
|
||||
|
||||
|
||||
/**
|
||||
* Offset of the function in the dispatch table.
|
||||
*/
|
||||
unsigned offset;
|
||||
};
|
||||
|
||||
/**
|
||||
* Description of the API for an extension to OpenGL.
|
||||
*/
|
||||
struct dri_extension {
|
||||
/**
|
||||
* Name of the extension.
|
||||
*/
|
||||
const char * name;
|
||||
|
||||
|
||||
/**
|
||||
* Pointer to a list of \c dri_extension_function structures. The list
|
||||
* is terminated by a structure with a \c NULL
|
||||
* \c dri_extension_function::strings pointer.
|
||||
*/
|
||||
const struct dri_extension_function * functions;
|
||||
};
|
||||
|
||||
extern unsigned driParseDebugString( const char * debug,
|
||||
const struct dri_debug_control * control );
|
||||
|
||||
@@ -45,7 +85,10 @@ extern unsigned driGetRendererString( char * buffer,
|
||||
const char * hardware_name, const char * driver_date, GLuint agp_mode );
|
||||
|
||||
extern void driInitExtensions( GLcontext * ctx,
|
||||
const char * const card_extensions[], GLboolean enable_imaging );
|
||||
const struct dri_extension * card_extensions, GLboolean enable_imaging );
|
||||
|
||||
extern void driInitSingleExtension( GLcontext * ctx,
|
||||
const struct dri_extension * ext );
|
||||
|
||||
#ifndef DRI_NEW_INTERFACE_ONLY
|
||||
extern GLboolean driCheckDriDdxDrmVersions( __DRIscreenPrivate *sPriv,
|
||||
|
@@ -19,7 +19,7 @@ OBJECTS = $(C_SOURCES:.c=.o)
|
||||
|
||||
INCLUDES = \
|
||||
-I$(TOP)/include \
|
||||
-I$(DRM_SOURCE_PATH)/shared \
|
||||
-I$(DRM_SOURCE_PATH)/shared-core \
|
||||
-I$(TOP)/include/GL/internal \
|
||||
-I$(TOP)/src/mesa \
|
||||
-I$(TOP)/src/mesa/main \
|
||||
|
@@ -316,6 +316,13 @@ fbDestroyScreen( __DRIscreenPrivate *sPriv )
|
||||
{
|
||||
}
|
||||
|
||||
void fbSetBuffer( GLcontext *ctx,
|
||||
GLframebuffer *colorBuffer,
|
||||
GLuint bufferBit )
|
||||
{
|
||||
/* NOP until SetBuffer is fully removed */
|
||||
}
|
||||
|
||||
/* Create the device specific context.
|
||||
*/
|
||||
static GLboolean
|
||||
@@ -368,6 +375,7 @@ fbCreateContext( const __GLcontextModes *glVisual,
|
||||
{
|
||||
struct swrast_device_driver *swdd;
|
||||
swdd = _swrast_GetDeviceDriverReference( ctx );
|
||||
swdd->SetBuffer = fbSetBuffer;
|
||||
}
|
||||
|
||||
/* use default TCL pipeline */
|
||||
|
@@ -37,6 +37,8 @@
|
||||
|
||||
extern void
|
||||
fbSetSpanFunctions(driRenderbuffer *drb, const GLvisual *vis);
|
||||
extern void
|
||||
fbSetBuffer( GLcontext *ctx, GLframebuffer *colorBuffer, GLuint bufferBit);
|
||||
|
||||
/**
|
||||
* fb driver-specific driver class derived from _EGLDriver
|
||||
@@ -202,9 +204,40 @@ fbSetupFramebuffer(fbDisplay *disp, char *fbdev)
|
||||
strerror(errno));
|
||||
return EGL_FALSE;
|
||||
}
|
||||
|
||||
if (fixedInfo.visual == FB_VISUAL_DIRECTCOLOR) {
|
||||
struct fb_cmap cmap;
|
||||
unsigned short red[256], green[256], blue[256];
|
||||
int rcols = 1 << varInfo.red.length;
|
||||
int gcols = 1 << varInfo.green.length;
|
||||
int bcols = 1 << varInfo.blue.length;
|
||||
int i;
|
||||
|
||||
cmap.start = 0;
|
||||
cmap.len = gcols;
|
||||
cmap.red = red;
|
||||
cmap.green = green;
|
||||
cmap.blue = blue;
|
||||
cmap.transp = NULL;
|
||||
|
||||
for (i = 0; i < rcols ; i++)
|
||||
red[i] = (65536/(rcols-1)) * i;
|
||||
|
||||
for (i = 0; i < gcols ; i++)
|
||||
green[i] = (65536/(gcols-1)) * i;
|
||||
|
||||
for (i = 0; i < bcols ; i++)
|
||||
blue[i] = (65536/(bcols-1)) * i;
|
||||
|
||||
if (ioctl(fd, FBIOPUTCMAP, (void *) &cmap) < 0) {
|
||||
fprintf(stderr, "ioctl(FBIOPUTCMAP) failed [%d]\n", i);
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
/* mmap the framebuffer into our address space */
|
||||
disp->pFB = (caddr_t)mmap(0, /* start */
|
||||
if (!disp->pFB)
|
||||
disp->pFB = (caddr_t)mmap(0, /* start */
|
||||
fixedInfo.smem_len, /* bytes */
|
||||
PROT_READ | PROT_WRITE, /* prot */
|
||||
MAP_SHARED, /* flags */
|
||||
@@ -422,7 +455,6 @@ fbCreateContext(_EGLDriver *drv, EGLDisplay dpy, EGLConfig config, EGLContext sh
|
||||
c->Base.Config = conf;
|
||||
c->Base.DrawSurface = EGL_NO_SURFACE;
|
||||
c->Base.ReadSurface = EGL_NO_SURFACE;
|
||||
printf("fbCreateContext\n");
|
||||
|
||||
/* generate handle and insert into hash table */
|
||||
_eglSaveContext(&c->Base);
|
||||
@@ -455,6 +487,7 @@ fbCreateContext(_EGLDriver *drv, EGLDisplay dpy, EGLConfig config, EGLContext sh
|
||||
{
|
||||
struct swrast_device_driver *swdd;
|
||||
swdd = _swrast_GetDeviceDriverReference( ctx );
|
||||
swdd->SetBuffer = fbSetBuffer;
|
||||
}
|
||||
|
||||
/* use default TCL pipeline */
|
||||
@@ -609,7 +642,6 @@ fbMakeCurrent(_EGLDriver *drv, EGLDisplay dpy, EGLSurface draw, EGLSurface read,
|
||||
} else
|
||||
_mesa_make_current( NULL, NULL, NULL );
|
||||
|
||||
printf("eglMakeCurrent()\n");
|
||||
return EGL_TRUE;
|
||||
}
|
||||
|
||||
@@ -702,10 +734,11 @@ static EGLBoolean
|
||||
fbShowSurfaceMESA(_EGLDriver *drv, EGLDisplay dpy, EGLScreenMESA screen,
|
||||
EGLSurface surface, EGLModeMESA m)
|
||||
{
|
||||
FILE *file;
|
||||
char buffer[NAME_MAX];
|
||||
fbDisplay *display = Lookup_fbDisplay(dpy);
|
||||
fbScreen *scrn = Lookup_fbScreen(dpy, screen);
|
||||
fbSurface *surf = Lookup_fbSurface(surface);
|
||||
FILE *file;
|
||||
char buffer[NAME_MAX];
|
||||
_EGLMode *mode = _eglLookupMode(dpy, m);
|
||||
int bits;
|
||||
|
||||
@@ -745,6 +778,8 @@ err:
|
||||
fputs(buffer, file);
|
||||
fclose(file);
|
||||
|
||||
fbSetupFramebuffer(display, scrn->fb);
|
||||
|
||||
snprintf(buffer, sizeof(buffer), "%s/%s/blank", sysfs, scrn->fb);
|
||||
|
||||
file = fopen(buffer, "r+");
|
||||
@@ -801,7 +836,9 @@ fbSwapBuffers(_EGLDriver *drv, EGLDisplay dpy, EGLSurface draw)
|
||||
else {
|
||||
/* XXX this shouldn't be an error but we can't handle it for now */
|
||||
_mesa_problem(NULL, "fbSwapBuffers: drawable has no context!\n");
|
||||
return EGL_FALSE;
|
||||
}
|
||||
return EGL_TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
@@ -40,21 +40,6 @@
|
||||
|
||||
#define LOCAL_STENCIL_VARS LOCAL_DEPTH_VARS
|
||||
|
||||
|
||||
#define CLIPPIXEL( _x, _y ) \
|
||||
((_x >= minx) && (_x < maxx) && (_y >= miny) && (_y < maxy))
|
||||
|
||||
|
||||
#define CLIPSPAN( _x, _y, _n, _x1, _n1, _i ) \
|
||||
if ( _y < miny || _y >= maxy ) { \
|
||||
_n1 = 0, _x1 = x; \
|
||||
} else { \
|
||||
_n1 = _n; \
|
||||
_x1 = _x; \
|
||||
if ( _x1 < minx ) _i += (minx-_x1), n1 -= (minx-_x1), _x1 = minx; \
|
||||
if ( _x1 + _n1 >= maxx ) n1 -= (_x1 + n1 - maxx); \
|
||||
}
|
||||
|
||||
#define Y_FLIP( _y ) (height - _y - 1)
|
||||
|
||||
#define HW_LOCK() \
|
||||
@@ -63,21 +48,6 @@
|
||||
gammaGetLock( gmesa, DRM_LOCK_FLUSH | DRM_LOCK_QUIESCENT ); \
|
||||
GAMMAHW_LOCK( gmesa );
|
||||
|
||||
#define HW_CLIPLOOP() \
|
||||
do { \
|
||||
__DRIdrawablePrivate *dPriv = gmesa->driDrawable; \
|
||||
int _nc = dPriv->numClipRects; \
|
||||
\
|
||||
while ( _nc-- ) { \
|
||||
int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
|
||||
int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
|
||||
int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
|
||||
int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
|
||||
|
||||
#define HW_ENDCLIPLOOP() \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define HW_UNLOCK() GAMMAHW_UNLOCK( gmesa )
|
||||
|
||||
|
||||
@@ -156,7 +126,6 @@ do { \
|
||||
#include "depthtmp.h"
|
||||
|
||||
|
||||
|
||||
#if 0 /* Unused */
|
||||
/* 32 bit depthbuffer functions.
|
||||
*/
|
||||
|
@@ -61,6 +61,10 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#include "i810ioctl.h"
|
||||
|
||||
#include "utils.h"
|
||||
|
||||
#define need_GL_ARB_multisample
|
||||
#include "extension_helper.h"
|
||||
|
||||
#ifndef I810_DEBUG
|
||||
int I810_DEBUG = (0);
|
||||
#endif
|
||||
@@ -97,17 +101,18 @@ static void i810BufferSize(GLframebuffer *buffer, GLuint *width, GLuint *height)
|
||||
|
||||
/* Extension strings exported by the i810 driver.
|
||||
*/
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_multitexture",
|
||||
"GL_ARB_texture_env_add",
|
||||
"GL_ARB_texture_mirrored_repeat",
|
||||
"GL_EXT_stencil_wrap",
|
||||
"GL_EXT_texture_edge_clamp",
|
||||
"GL_EXT_texture_lod_bias",
|
||||
"GL_MESA_ycbcr_texture",
|
||||
"GL_SGIS_generate_mipmap",
|
||||
NULL
|
||||
{ "GL_ARB_multisample", GL_ARB_multisample_functions },
|
||||
{ "GL_ARB_multitexture", NULL },
|
||||
{ "GL_ARB_texture_env_add", NULL },
|
||||
{ "GL_ARB_texture_mirrored_repeat", NULL },
|
||||
{ "GL_EXT_stencil_wrap", NULL },
|
||||
{ "GL_EXT_texture_edge_clamp", NULL },
|
||||
{ "GL_EXT_texture_lod_bias", NULL },
|
||||
{ "GL_MESA_ycbcr_texture", NULL },
|
||||
{ "GL_SGIS_generate_mipmap", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
extern const struct tnl_pipeline_stage _i810_render_stage;
|
||||
|
@@ -41,39 +41,10 @@
|
||||
#define INIT_MONO_PIXEL(p, color) \
|
||||
p = PACK_COLOR_565( color[0], color[1], color[2] )
|
||||
|
||||
#define CLIPPIXEL(_x,_y) (_x >= minx && _x < maxx && \
|
||||
_y >= miny && _y < maxy)
|
||||
|
||||
|
||||
#define CLIPSPAN( _x, _y, _n, _x1, _n1, _i ) \
|
||||
if ( _y < miny || _y >= maxy ) { \
|
||||
_n1 = 0, _x1 = x; \
|
||||
} else { \
|
||||
_n1 = _n; \
|
||||
_x1 = _x; \
|
||||
if ( _x1 < minx ) _i += (minx-_x1), n1 -= (minx-_x1), _x1 = minx; \
|
||||
if ( _x1 + _n1 >= maxx ) n1 -= (_x1 + n1 - maxx); \
|
||||
}
|
||||
|
||||
#define Y_FLIP(_y) (height - _y - 1)
|
||||
|
||||
#define HW_LOCK()
|
||||
|
||||
#define HW_CLIPLOOP() \
|
||||
do { \
|
||||
__DRIdrawablePrivate *dPriv = imesa->driDrawable; \
|
||||
int _nc = dPriv->numClipRects; \
|
||||
while (_nc--) { \
|
||||
int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
|
||||
int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
|
||||
int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
|
||||
int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
|
||||
|
||||
|
||||
#define HW_ENDCLIPLOOP() \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define HW_UNLOCK()
|
||||
|
||||
/* 16 bit, 565 rgb color spanline and pixel functions
|
||||
@@ -97,8 +68,6 @@ do { \
|
||||
#define TAG(x) i810##x##_565
|
||||
#include "spantmp.h"
|
||||
|
||||
|
||||
|
||||
/* 16 bit depthbuffer functions.
|
||||
*/
|
||||
#define WRITE_DEPTH( _x, _y, d ) \
|
||||
|
@@ -65,6 +65,17 @@
|
||||
|
||||
|
||||
#include "utils.h"
|
||||
|
||||
#define need_GL_ARB_multisample
|
||||
#define need_GL_ARB_texture_compression
|
||||
#define need_GL_EXT_blend_color
|
||||
#define need_GL_EXT_blend_equation_separate
|
||||
#define need_GL_EXT_blend_func_separate
|
||||
#define need_GL_EXT_blend_minmax
|
||||
#define need_GL_EXT_fog_coord
|
||||
#define need_GL_EXT_secondary_color
|
||||
#include "extension_helper.h"
|
||||
|
||||
#include "xmlpool.h" /* for symbolic values of enum-type options */
|
||||
#ifndef I830_DEBUG
|
||||
int I830_DEBUG = (0);
|
||||
@@ -138,35 +149,35 @@ static void i830BufferSize(GLframebuffer *buffer,
|
||||
|
||||
/* Extension strings exported by the i830 driver.
|
||||
*/
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_multisample",
|
||||
"GL_ARB_multitexture",
|
||||
"GL_ARB_texture_border_clamp",
|
||||
"GL_ARB_texture_compression",
|
||||
"GL_ARB_texture_env_add",
|
||||
"GL_ARB_texture_env_combine",
|
||||
"GL_ARB_texture_env_crossbar",
|
||||
"GL_ARB_texture_env_dot3",
|
||||
"GL_ARB_texture_mirrored_repeat",
|
||||
"GL_EXT_blend_color",
|
||||
"GL_EXT_blend_equation_separate",
|
||||
"GL_EXT_blend_func_separate",
|
||||
"GL_EXT_blend_minmax",
|
||||
"GL_EXT_blend_subtract",
|
||||
"GL_EXT_fog_coord",
|
||||
"GL_EXT_secondary_color",
|
||||
"GL_EXT_stencil_wrap",
|
||||
"GL_EXT_texture_edge_clamp",
|
||||
"GL_EXT_texture_env_combine",
|
||||
"GL_EXT_texture_env_dot3",
|
||||
"GL_EXT_texture_filter_anisotropic",
|
||||
"GL_EXT_texture_lod_bias",
|
||||
"GL_EXT_texture_rectangle",
|
||||
"GL_NV_blend_square",
|
||||
"GL_MESA_ycbcr_texture",
|
||||
"GL_SGIS_generate_mipmap",
|
||||
NULL
|
||||
{ "GL_ARB_multisample", GL_ARB_multisample_functions },
|
||||
{ "GL_ARB_multitexture", NULL },
|
||||
{ "GL_ARB_texture_border_clamp", NULL },
|
||||
{ "GL_ARB_texture_compression", GL_ARB_texture_compression_functions },
|
||||
{ "GL_ARB_texture_env_add", NULL },
|
||||
{ "GL_ARB_texture_env_combine", NULL },
|
||||
{ "GL_ARB_texture_env_crossbar", NULL },
|
||||
{ "GL_ARB_texture_env_dot3", NULL },
|
||||
{ "GL_ARB_texture_mirrored_repeat", NULL },
|
||||
{ "GL_EXT_blend_color", GL_EXT_blend_color_functions },
|
||||
{ "GL_EXT_blend_equation_separate", GL_EXT_blend_equation_separate_functions },
|
||||
{ "GL_EXT_blend_func_separate", GL_EXT_blend_func_separate_functions },
|
||||
{ "GL_EXT_blend_minmax", GL_EXT_blend_minmax_functions },
|
||||
{ "GL_EXT_blend_subtract", NULL },
|
||||
{ "GL_EXT_fog_coord", GL_EXT_fog_coord_functions },
|
||||
{ "GL_EXT_secondary_color", GL_EXT_secondary_color_functions },
|
||||
{ "GL_EXT_stencil_wrap", NULL },
|
||||
{ "GL_EXT_texture_edge_clamp", NULL },
|
||||
{ "GL_EXT_texture_env_combine", NULL },
|
||||
{ "GL_EXT_texture_env_dot3", NULL },
|
||||
{ "GL_EXT_texture_filter_anisotropic", NULL },
|
||||
{ "GL_EXT_texture_lod_bias", NULL },
|
||||
{ "GL_EXT_texture_rectangle", NULL },
|
||||
{ "GL_MESA_ycbcr_texture", NULL },
|
||||
{ "GL_NV_blend_square", NULL },
|
||||
{ "GL_SGIS_generate_mipmap", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
|
||||
|
@@ -81,39 +81,10 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#define INIT_MONO_PIXEL(p,color)\
|
||||
p = PACK_COLOR_565(color[0],color[1],color[2])
|
||||
|
||||
#define CLIPPIXEL(_x,_y) (_x >= minx && _x < maxx && \
|
||||
_y >= miny && _y < maxy)
|
||||
|
||||
#define CLIPSPAN( _x, _y, _n, _x1, _n1, _i ) \
|
||||
if ( _y < miny || _y >= maxy ) { \
|
||||
_n1 = 0, _x1 = x; \
|
||||
} else { \
|
||||
_n1 = _n; \
|
||||
_x1 = _x; \
|
||||
if ( _x1 < minx ) _i += (minx-_x1), n1 -= (minx-_x1), _x1 = minx; \
|
||||
if ( _x1 + _n1 >= maxx ) n1 -= (_x1 + n1 - maxx); \
|
||||
}
|
||||
|
||||
#define Y_FLIP(_y) (height - _y - 1)
|
||||
|
||||
|
||||
#define HW_LOCK()
|
||||
|
||||
#define HW_CLIPLOOP() \
|
||||
do { \
|
||||
__DRIdrawablePrivate *dPriv = imesa->driDrawable; \
|
||||
int _nc = dPriv->numClipRects; \
|
||||
while (_nc--) { \
|
||||
int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
|
||||
int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
|
||||
int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
|
||||
int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
|
||||
|
||||
|
||||
#define HW_ENDCLIPLOOP() \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define HW_UNLOCK()
|
||||
|
||||
/* 16 bit, 565 rgb color spanline and pixel functions
|
||||
@@ -137,9 +108,6 @@ do { \
|
||||
#define TAG(x) i830##x##_565
|
||||
#include "spantmp.h"
|
||||
|
||||
|
||||
|
||||
|
||||
/* 15 bit, 555 rgb color spanline and pixel functions
|
||||
*/
|
||||
#define WRITE_RGBA( _x, _y, r, g, b, a ) \
|
||||
|
@@ -38,10 +38,10 @@
|
||||
* Mesa's Driver Functions
|
||||
***************************************/
|
||||
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_texture_env_crossbar",
|
||||
NULL
|
||||
{ "GL_ARB_texture_env_crossbar", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
|
||||
|
@@ -45,14 +45,15 @@
|
||||
* Mesa's Driver Functions
|
||||
***************************************/
|
||||
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_depth_texture", /* New: alanh 06-Jan-2005 */
|
||||
"GL_ARB_fragment_program",
|
||||
"GL_ARB_shadow", /* New: alanh 06-Jan-2005 */
|
||||
"GL_EXT_shadow_funcs", /* New: alanh 06-Jan-2005 */
|
||||
"GL_SGIX_depth_texture", /* ARB extn won't work if not enabled */
|
||||
NULL
|
||||
{ "GL_ARB_depth_texture", NULL },
|
||||
{ "GL_ARB_fragment_program", NULL },
|
||||
{ "GL_ARB_shadow", NULL },
|
||||
{ "GL_EXT_shadow_funcs", NULL },
|
||||
/* ARB extn won't work if not enabled */
|
||||
{ "GL_SGIX_depth_texture", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
/* Override intel default.
|
||||
|
@@ -191,6 +191,203 @@ static void i915LayoutTextureImages( i915ContextPtr i915,
|
||||
}
|
||||
|
||||
|
||||
static void i945LayoutTextureImages( i915ContextPtr i915,
|
||||
struct gl_texture_object *tObj )
|
||||
{
|
||||
const struct gl_texture_image *baseImage = tObj->Image[0][tObj->BaseLevel];
|
||||
i915TextureObjectPtr t = (i915TextureObjectPtr) tObj->DriverData;
|
||||
GLint firstLevel, lastLevel, numLevels;
|
||||
GLint i, total_height, pitch, sz, max_offset = 0, offset;
|
||||
|
||||
|
||||
/* Compute which mipmap levels we really want to send to the hardware.
|
||||
*/
|
||||
driCalculateTextureFirstLastLevel( (driTextureObject *) t );
|
||||
|
||||
/* Figure out the amount of memory required to hold all the mipmap
|
||||
* levels. Choose the smallest pitch to accomodate the largest
|
||||
* mipmap:
|
||||
*/
|
||||
firstLevel = t->intel.base.firstLevel;
|
||||
lastLevel = t->intel.base.lastLevel;
|
||||
numLevels = lastLevel - firstLevel + 1;
|
||||
|
||||
|
||||
|
||||
/* All images must be loaded at this pitch. Count the number of
|
||||
* lines required:
|
||||
*/
|
||||
switch (tObj->Target) {
|
||||
case GL_TEXTURE_CUBE_MAP: {
|
||||
const GLuint dim = tObj->Image[0][firstLevel]->Width;
|
||||
GLuint face;
|
||||
|
||||
/* Depending on the size of the largest images, pitch can be
|
||||
* determined either by the old-style packing of cubemap faces,
|
||||
* or the final row of 4x4, 2x2 and 1x1 faces below this.
|
||||
*/
|
||||
if (dim > 32) {
|
||||
pitch = dim * t->intel.texelBytes;
|
||||
pitch *= 2; /* double pitch for cube layouts */
|
||||
pitch = (pitch + 3) & ~3;
|
||||
}
|
||||
else {
|
||||
pitch = 14 * 8 * t->intel.texelBytes; /* determined by row of
|
||||
* little maps at
|
||||
* bottom */
|
||||
}
|
||||
|
||||
total_height = dim * 4 + 4;
|
||||
|
||||
for ( face = 0 ; face < 6 ; face++) {
|
||||
GLuint x = initial_offsets[face][0] * dim;
|
||||
GLuint y = initial_offsets[face][1] * dim;
|
||||
GLuint d = dim;
|
||||
|
||||
if (dim == 4 && face >= 4) {
|
||||
y = total_height - 4;
|
||||
x = (face - 4) * 8;
|
||||
}
|
||||
else if (dim < 4) {
|
||||
y = total_height - 4;
|
||||
x = face * 8;
|
||||
}
|
||||
|
||||
t->intel.base.dirty_images[face] = ~0;
|
||||
|
||||
assert(tObj->Image[face][firstLevel]->Width == dim);
|
||||
assert(tObj->Image[face][firstLevel]->Height == dim);
|
||||
|
||||
for (i = 0; i < numLevels; i++) {
|
||||
|
||||
|
||||
t->intel.image[face][i].image = tObj->Image[face][firstLevel + i];
|
||||
assert(t->intel.image[face][i].image);
|
||||
|
||||
t->intel.image[face][i].offset =
|
||||
y * pitch + x * t->intel.texelBytes;
|
||||
t->intel.image[face][i].internalFormat = baseImage->Format;
|
||||
|
||||
d >>= 1;
|
||||
|
||||
switch (d) {
|
||||
case 4:
|
||||
switch (face) {
|
||||
case FACE_POS_X:
|
||||
case FACE_NEG_X:
|
||||
x += step_offsets[face][0] * d;
|
||||
y += step_offsets[face][1] * d;
|
||||
break;
|
||||
case FACE_POS_Y:
|
||||
case FACE_NEG_Y:
|
||||
y += 12;
|
||||
x -= 8;
|
||||
break;
|
||||
case FACE_POS_Z:
|
||||
case FACE_NEG_Z:
|
||||
y = total_height - 4;
|
||||
x = (face - 4) * 8;
|
||||
break;
|
||||
}
|
||||
|
||||
case 2:
|
||||
y = total_height - 4;
|
||||
x = 16 + face * 8;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
x += 48;
|
||||
break;
|
||||
|
||||
default:
|
||||
x += step_offsets[face][0] * d;
|
||||
y += step_offsets[face][1] * d;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
max_offset = total_height * pitch;
|
||||
break;
|
||||
}
|
||||
case GL_TEXTURE_3D: {
|
||||
GLuint depth_packing = 0, depth_pack_pitch;
|
||||
GLuint tmp_numLevels = numLevels;
|
||||
pitch = tObj->Image[0][firstLevel]->Width * t->intel.texelBytes;
|
||||
pitch = (pitch + 3) & ~3;
|
||||
depth_pack_pitch = pitch;
|
||||
|
||||
t->intel.base.dirty_images[0] = ~0;
|
||||
|
||||
|
||||
for ( total_height = i = 0 ; i < tmp_numLevels ; i++ ) {
|
||||
t->intel.image[0][i].image = tObj->Image[0][firstLevel + i];
|
||||
if (!t->intel.image[0][i].image)
|
||||
break;
|
||||
|
||||
|
||||
t->intel.image[0][i].offset = total_height * pitch;
|
||||
t->intel.image[0][i].internalFormat = baseImage->Format;
|
||||
|
||||
|
||||
|
||||
total_height += MAX2(2, t->intel.image[0][i].image->Height) *
|
||||
MAX2((t->intel.image[0][i].image->Depth >> depth_packing), 1);
|
||||
|
||||
/* When alignment dominates, can't increase depth packing?
|
||||
* Or does pitch grow??? What are the alignment constraints,
|
||||
* anyway?
|
||||
*/
|
||||
if (depth_pack_pitch > 4) {
|
||||
depth_packing++;
|
||||
depth_pack_pitch <<= 2;
|
||||
}
|
||||
}
|
||||
|
||||
max_offset = total_height * pitch;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
pitch = tObj->Image[0][firstLevel]->Width * t->intel.texelBytes;
|
||||
pitch = (pitch + 3) & ~3;
|
||||
t->intel.base.dirty_images[0] = ~0;
|
||||
max_offset = 0;
|
||||
|
||||
for ( offset = i = 0 ; i < numLevels ; i++ ) {
|
||||
t->intel.image[0][i].image = tObj->Image[0][firstLevel + i];
|
||||
if (!t->intel.image[0][i].image)
|
||||
break;
|
||||
|
||||
t->intel.image[0][i].offset = offset;
|
||||
t->intel.image[0][i].internalFormat = baseImage->Format;
|
||||
|
||||
if (t->intel.image[0][i].image->IsCompressed)
|
||||
sz = MAX2(1, t->intel.image[0][i].image->Height/4) * pitch;
|
||||
else
|
||||
sz = MAX2(2, t->intel.image[0][i].image->Height) * pitch;
|
||||
|
||||
/* Because the images are packed better, the final offset
|
||||
* might not be the maximal one:
|
||||
*/
|
||||
max_offset = MAX2(max_offset, offset + sz);
|
||||
|
||||
/* LPT change: step right after second mipmap.
|
||||
*/
|
||||
if (i == 1)
|
||||
offset += pitch / 2;
|
||||
else
|
||||
offset += sz;
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
t->intel.Pitch = pitch;
|
||||
t->intel.base.totalSize = max_offset;
|
||||
t->intel.max_level = numLevels-1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
static void i915SetTexImages( i915ContextPtr i915,
|
||||
struct gl_texture_object *tObj )
|
||||
@@ -298,7 +495,11 @@ static void i915SetTexImages( i915ContextPtr i915,
|
||||
abort();
|
||||
}
|
||||
|
||||
i915LayoutTextureImages( i915, tObj );
|
||||
|
||||
if (i915->intel.intelScreen->deviceID == PCI_CHIP_I945_G)
|
||||
i945LayoutTextureImages( i915, tObj );
|
||||
else
|
||||
i915LayoutTextureImages( i915, tObj );
|
||||
|
||||
t->Setup[I915_TEXREG_MS3] =
|
||||
(((tObj->Image[0][t->intel.base.firstLevel]->Height - 1) << MS3_HEIGHT_SHIFT) |
|
||||
|
@@ -60,6 +60,23 @@
|
||||
int INTEL_DEBUG = (0);
|
||||
#endif
|
||||
|
||||
#define need_GL_ARB_multisample
|
||||
#define need_GL_ARB_point_parameters
|
||||
#define need_GL_ARB_texture_compression
|
||||
#define need_GL_ARB_vertex_buffer_object
|
||||
#define need_GL_ARB_vertex_program
|
||||
#define need_GL_ARB_window_pos
|
||||
#define need_GL_EXT_blend_color
|
||||
#define need_GL_EXT_blend_equation_separate
|
||||
#define need_GL_EXT_blend_func_separate
|
||||
#define need_GL_EXT_blend_minmax
|
||||
#define need_GL_EXT_cull_vertex
|
||||
#define need_GL_EXT_fog_coord
|
||||
#define need_GL_EXT_multi_draw_arrays
|
||||
#define need_GL_EXT_secondary_color
|
||||
#define need_GL_NV_vertex_program
|
||||
#include "extension_helper.h"
|
||||
|
||||
#ifndef VERBOSE
|
||||
int VERBOSE = 0;
|
||||
#endif
|
||||
@@ -73,7 +90,7 @@ int prevLockLine;
|
||||
* Mesa's Driver Functions
|
||||
***************************************/
|
||||
|
||||
#define DRIVER_DATE "20041217"
|
||||
#define DRIVER_DATE "20050225"
|
||||
|
||||
const GLubyte *intelGetString( GLcontext *ctx, GLenum name )
|
||||
{
|
||||
@@ -99,6 +116,8 @@ const GLubyte *intelGetString( GLcontext *ctx, GLenum name )
|
||||
chipset = "Intel(R) 915G"; break;
|
||||
case PCI_CHIP_I915_GM:
|
||||
chipset = "Intel(R) 915GM"; break;
|
||||
case PCI_CHIP_I945_G:
|
||||
chipset = "Intel(R) 945G"; break;
|
||||
default:
|
||||
chipset = "Unknown Intel Chipset"; break;
|
||||
}
|
||||
@@ -134,48 +153,46 @@ static void intelBufferSize(GLframebuffer *buffer,
|
||||
* It appears that ARB_texture_env_crossbar has "disappeared" compared to the
|
||||
* old i830-specific driver.
|
||||
*/
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_multisample",
|
||||
"GL_ARB_multitexture",
|
||||
"GL_ARB_point_parameters",
|
||||
"GL_ARB_texture_border_clamp",
|
||||
"GL_ARB_texture_compression",
|
||||
"GL_ARB_texture_cube_map",
|
||||
"GL_ARB_texture_env_add",
|
||||
"GL_ARB_texture_env_combine",
|
||||
"GL_ARB_texture_env_dot3",
|
||||
"GL_ARB_texture_mirrored_repeat",
|
||||
"GL_ARB_texture_rectangle",
|
||||
"GL_ARB_vertex_buffer_object",
|
||||
"GL_ARB_vertex_program",
|
||||
"GL_ARB_window_pos",
|
||||
"GL_EXT_abgr",
|
||||
"GL_EXT_bgra",
|
||||
"GL_EXT_blend_color",
|
||||
"GL_EXT_blend_equation_separate",
|
||||
"GL_EXT_blend_func_separate",
|
||||
"GL_EXT_blend_minmax",
|
||||
"GL_EXT_blend_subtract",
|
||||
"GL_EXT_cull_vertex", /* New: alanh 06-Jan-2005 */
|
||||
"GL_EXT_fog_coord",
|
||||
"GL_EXT_multi_draw_arrays",
|
||||
"GL_EXT_secondary_color",
|
||||
"GL_EXT_stencil_wrap",
|
||||
"GL_EXT_texture_edge_clamp",
|
||||
"GL_EXT_texture_env_combine",
|
||||
"GL_EXT_texture_env_dot3",
|
||||
"GL_EXT_texture_filter_anisotropic",
|
||||
"GL_EXT_texture_lod_bias",
|
||||
"GL_3DFX_texture_compression_FXT1",
|
||||
"GL_APPLE_client_storage",
|
||||
"GL_MESA_pack_invert",
|
||||
"GL_MESA_ycbcr_texture",
|
||||
"GL_NV_blend_square",
|
||||
"GL_NV_vertex_program",
|
||||
"GL_NV_vertex_program1_1",
|
||||
"GL_SGIS_generate_mipmap",
|
||||
NULL
|
||||
{ "GL_ARB_multisample", GL_ARB_multisample_functions },
|
||||
{ "GL_ARB_multitexture", NULL },
|
||||
{ "GL_ARB_point_parameters", GL_ARB_point_parameters_functions },
|
||||
{ "GL_ARB_texture_border_clamp", NULL },
|
||||
{ "GL_ARB_texture_compression", GL_ARB_texture_compression_functions },
|
||||
{ "GL_ARB_texture_cube_map", NULL },
|
||||
{ "GL_ARB_texture_env_add", NULL },
|
||||
{ "GL_ARB_texture_env_combine", NULL },
|
||||
{ "GL_ARB_texture_env_dot3", NULL },
|
||||
{ "GL_ARB_texture_mirrored_repeat", NULL },
|
||||
{ "GL_ARB_texture_rectangle", NULL },
|
||||
{ "GL_ARB_vertex_buffer_object", GL_ARB_vertex_buffer_object_functions },
|
||||
{ "GL_ARB_vertex_program", GL_ARB_vertex_program_functions },
|
||||
{ "GL_ARB_window_pos", GL_ARB_window_pos_functions },
|
||||
{ "GL_EXT_blend_color", GL_EXT_blend_color_functions },
|
||||
{ "GL_EXT_blend_equation_separate", GL_EXT_blend_equation_separate_functions },
|
||||
{ "GL_EXT_blend_func_separate", GL_EXT_blend_func_separate_functions },
|
||||
{ "GL_EXT_blend_minmax", GL_EXT_blend_minmax_functions },
|
||||
{ "GL_EXT_blend_subtract", NULL },
|
||||
{ "GL_EXT_cull_vertex", GL_EXT_cull_vertex_functions },
|
||||
{ "GL_EXT_fog_coord", GL_EXT_fog_coord_functions },
|
||||
{ "GL_EXT_multi_draw_arrays", GL_EXT_multi_draw_arrays_functions },
|
||||
{ "GL_EXT_secondary_color", GL_EXT_secondary_color_functions },
|
||||
{ "GL_EXT_stencil_wrap", NULL },
|
||||
{ "GL_EXT_texture_edge_clamp", NULL },
|
||||
{ "GL_EXT_texture_env_combine", NULL },
|
||||
{ "GL_EXT_texture_env_dot3", NULL },
|
||||
{ "GL_EXT_texture_filter_anisotropic", NULL },
|
||||
{ "GL_EXT_texture_lod_bias", NULL },
|
||||
{ "GL_3DFX_texture_compression_FXT1", NULL },
|
||||
{ "GL_APPLE_client_storage", NULL },
|
||||
{ "GL_MESA_pack_invert", NULL },
|
||||
{ "GL_MESA_ycbcr_texture", NULL },
|
||||
{ "GL_NV_blend_square", NULL },
|
||||
{ "GL_NV_vertex_program", GL_NV_vertex_program_functions },
|
||||
{ "GL_NV_vertex_program1_1", NULL },
|
||||
{ "GL_SGIS_generate_mipmap", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
extern const struct tnl_pipeline_stage _intel_render_stage;
|
||||
|
@@ -412,6 +412,7 @@ extern int INTEL_DEBUG;
|
||||
#define PCI_CHIP_I865_G 0x2572
|
||||
#define PCI_CHIP_I915_G 0x2582
|
||||
#define PCI_CHIP_I915_GM 0x2592
|
||||
#define PCI_CHIP_I945_G 0x2772
|
||||
|
||||
|
||||
/* ================================================================
|
||||
|
@@ -349,6 +349,7 @@ static GLboolean intelCreateContext( const __GLcontextModes *mesaVis,
|
||||
|
||||
case PCI_CHIP_I915_G:
|
||||
case PCI_CHIP_I915_GM:
|
||||
case PCI_CHIP_I945_G:
|
||||
return i915CreateContext( mesaVis, driContextPriv,
|
||||
sharedContextPrivate );
|
||||
|
||||
@@ -405,28 +406,30 @@ intelFillInModes( unsigned pixel_bits, unsigned depth_bits,
|
||||
GLenum fb_format;
|
||||
GLenum fb_type;
|
||||
|
||||
/* GLX_SWAP_COPY_OML is only supported because the MGA driver doesn't
|
||||
/* GLX_SWAP_COPY_OML is only supported because the Intel driver doesn't
|
||||
* support pageflipping at all.
|
||||
*/
|
||||
static const GLenum back_buffer_modes[] = {
|
||||
GLX_NONE, GLX_SWAP_UNDEFINED_OML, GLX_SWAP_COPY_OML
|
||||
};
|
||||
|
||||
u_int8_t depth_bits_array[2];
|
||||
u_int8_t stencil_bits_array[2];
|
||||
u_int8_t depth_bits_array[3];
|
||||
u_int8_t stencil_bits_array[3];
|
||||
|
||||
|
||||
depth_bits_array[0] = 0;
|
||||
depth_bits_array[1] = depth_bits;
|
||||
depth_bits_array[2] = depth_bits;
|
||||
|
||||
/* Just like with the accumulation buffer, always provide some modes
|
||||
* with a stencil buffer. It will be a sw fallback, but some apps won't
|
||||
* care about that.
|
||||
*/
|
||||
stencil_bits_array[0] = 0;
|
||||
stencil_bits_array[1] = (stencil_bits == 0) ? 8 : stencil_bits;
|
||||
stencil_bits_array[1] = 0;
|
||||
stencil_bits_array[2] = (stencil_bits == 0) ? 8 : stencil_bits;
|
||||
|
||||
depth_buffer_factor = ((depth_bits != 0) || (stencil_bits != 0)) ? 2 : 1;
|
||||
depth_buffer_factor = ((depth_bits != 0) || (stencil_bits != 0)) ? 3 : 1;
|
||||
back_buffer_factor = (have_back_buffer) ? 3 : 1;
|
||||
|
||||
num_modes = depth_buffer_factor * back_buffer_factor * 4;
|
||||
|
@@ -69,39 +69,10 @@
|
||||
#define INIT_MONO_PIXEL(p,color)\
|
||||
p = INTEL_PACKCOLOR565(color[0],color[1],color[2])
|
||||
|
||||
#define CLIPPIXEL(_x,_y) (_x >= minx && _x < maxx && \
|
||||
_y >= miny && _y < maxy)
|
||||
|
||||
#define CLIPSPAN( _x, _y, _n, _x1, _n1, _i ) \
|
||||
if ( _y < miny || _y >= maxy ) { \
|
||||
_n1 = 0, _x1 = x; \
|
||||
} else { \
|
||||
_n1 = _n; \
|
||||
_x1 = _x; \
|
||||
if ( _x1 < minx ) _i += (minx-_x1), n1 -= (minx-_x1), _x1 = minx; \
|
||||
if ( _x1 + _n1 >= maxx ) n1 -= (_x1 + n1 - maxx); \
|
||||
}
|
||||
|
||||
#define Y_FLIP(_y) (height - _y - 1)
|
||||
|
||||
|
||||
#define HW_LOCK()
|
||||
|
||||
#define HW_CLIPLOOP() \
|
||||
do { \
|
||||
__DRIdrawablePrivate *dPriv = intel->driDrawable; \
|
||||
int _nc = dPriv->numClipRects; \
|
||||
while (_nc--) { \
|
||||
int minx = dPriv->pClipRects[_nc].x1 - dPriv->x; \
|
||||
int miny = dPriv->pClipRects[_nc].y1 - dPriv->y; \
|
||||
int maxx = dPriv->pClipRects[_nc].x2 - dPriv->x; \
|
||||
int maxy = dPriv->pClipRects[_nc].y2 - dPriv->y;
|
||||
|
||||
|
||||
#define HW_ENDCLIPLOOP() \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define HW_UNLOCK()
|
||||
|
||||
/* 16 bit, 565 rgb color spanline and pixel functions
|
||||
@@ -125,9 +96,6 @@ do { \
|
||||
#define TAG(x) intel##x##_565
|
||||
#include "spantmp.h"
|
||||
|
||||
|
||||
|
||||
|
||||
/* 15 bit, 555 rgb color spanline and pixel functions
|
||||
*/
|
||||
#define WRITE_RGBA( _x, _y, r, g, b, a ) \
|
||||
|
@@ -57,6 +57,9 @@
|
||||
#include "utils.h"
|
||||
#include "vblank.h"
|
||||
|
||||
#define need_GL_ARB_multisample
|
||||
#include "extension_helper.h"
|
||||
|
||||
#ifndef MACH64_DEBUG
|
||||
int MACH64_DEBUG = (0);
|
||||
#endif
|
||||
@@ -72,17 +75,18 @@ static const struct dri_debug_control debug_control[] =
|
||||
{ "prims", DEBUG_VERBOSE_PRIMS },
|
||||
{ "count", DEBUG_VERBOSE_COUNT },
|
||||
{ "nowait", DEBUG_NOWAIT },
|
||||
{ "fall", DEBUG_VERBOSE_FALLBACK },
|
||||
{ NULL, 0 }
|
||||
};
|
||||
|
||||
static const char * const card_extensions[] =
|
||||
static const struct dri_extension card_extensions[] =
|
||||
{
|
||||
"GL_ARB_multitexture",
|
||||
"GL_EXT_texture_edge_clamp",
|
||||
"GL_MESA_ycbcr_texture",
|
||||
"GL_SGIS_generate_mipmap",
|
||||
"GL_SGIS_texture_edge_clamp",
|
||||
NULL
|
||||
{ "GL_ARB_multisample", GL_ARB_multisample_functions },
|
||||
{ "GL_ARB_multitexture", NULL },
|
||||
{ "GL_EXT_texture_edge_clamp", NULL },
|
||||
{ "GL_MESA_ycbcr_texture", NULL },
|
||||
{ "GL_SGIS_generate_mipmap", NULL },
|
||||
{ NULL, NULL }
|
||||
};
|
||||
|
||||
|
||||
@@ -230,6 +234,11 @@ GLboolean mach64CreateContext( const __GLcontextModes *glVisual,
|
||||
|
||||
driContextPriv->driverPrivate = (void *)mmesa;
|
||||
|
||||
if (driQueryOptionb(&mmesa->optionCache, "no_rast")) {
|
||||
fprintf(stderr, "disabling 3D acceleration\n");
|
||||
FALLBACK(mmesa, MACH64_FALLBACK_DISABLE, 1);
|
||||
}
|
||||
|
||||
return GL_TRUE;
|
||||
}
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user