Compare commits
332 Commits
mesa-7.6-1
...
mesa-7.6.1
Author | SHA1 | Date | |
---|---|---|---|
|
7f8952d242 | ||
|
adae195cc1 | ||
|
3fa885911b | ||
|
ebf57c6202 | ||
|
7d41b4248b | ||
|
d8f8eca9ef | ||
|
5076a4f53a | ||
|
f7f1211b9b | ||
|
1f47135544 | ||
|
ac180fa6a7 | ||
|
94fba49be9 | ||
|
e31df54754 | ||
|
cb1dcb55f9 | ||
|
d38ffed523 | ||
|
1cf60c9810 | ||
|
bc0509bba8 | ||
|
51f52edaf1 | ||
|
dcb4a37fc8 | ||
|
b827578805 | ||
|
444d1f3910 | ||
|
34528a34c4 | ||
|
348883076b | ||
|
6f2d51b81f | ||
|
637970aefd | ||
|
a082d965de | ||
|
3de8fff45d | ||
|
33a120e476 | ||
|
af16c822a5 | ||
|
d33bf38d63 | ||
|
3f7c2ac279 | ||
|
7f146b3824 | ||
|
a1d46fbea0 | ||
|
d88f3b9468 | ||
|
54b0ed8360 | ||
|
1de1deffce | ||
|
7e93e06781 | ||
|
7f8e22aa29 | ||
|
369669ff9a | ||
|
dc0777d3e3 | ||
|
add6dfbba6 | ||
|
3e8b2fda21 | ||
|
9dbd47fc6b | ||
|
7d84169865 | ||
|
7005f7cd1a | ||
|
c994f08eb1 | ||
|
f622b649fb | ||
|
76b3523d75 | ||
|
978b80c8e3 | ||
|
a7109f3ae5 | ||
|
e5e54a9a6e | ||
|
c2ad82a90b | ||
|
3cd745515e | ||
|
9347983556 | ||
|
b2953ee1a6 | ||
|
d74cd04e61 | ||
|
ca8a2150c7 | ||
|
4071d065c2 | ||
|
1446f30875 | ||
|
412aeeed1c | ||
|
6212c8103a | ||
|
2cd2341ce8 | ||
|
d642edd2d1 | ||
|
8d2f3434c5 | ||
|
fe8e18bcd4 | ||
|
4fb5ae7233 | ||
|
5683d7d43f | ||
|
e5bc2a19bd | ||
|
225bc70b77 | ||
|
ca7cd3ade0 | ||
|
fb83fa26c4 | ||
|
8d8fd9776e | ||
|
c74afe0c46 | ||
|
8df551c46b | ||
|
ea487c6d0b | ||
|
7b5eba453e | ||
|
7ed749c062 | ||
|
80a3944a4d | ||
|
6c1fc2b2a5 | ||
|
fe38c16021 | ||
|
d23bb22f62 | ||
|
12a440abfb | ||
|
4bf96ebdae | ||
|
ba3fedf246 | ||
|
8350648401 | ||
|
7324c22024 | ||
|
68d206fafa | ||
|
69ed1147a8 | ||
|
efb582fde7 | ||
|
b210739aad | ||
|
b1a87a3e0b | ||
|
25fd168f03 | ||
|
b803abbaad | ||
|
5820dae4ec | ||
|
fc5f07de1a | ||
|
d245a951f3 | ||
|
905e12f3cc | ||
|
56de7e222e | ||
|
34a0b22a74 | ||
|
9e29242331 | ||
|
a0ac8fc7d8 | ||
|
0a6acecb35 | ||
|
305d4f147e | ||
|
772e004781 | ||
|
f1172c4030 | ||
|
84de1672d3 | ||
|
4ca8e1680e | ||
|
d6a993135f | ||
|
005242f166 | ||
|
d3208678c2 | ||
|
97cbf4943a | ||
|
a99bf51bc8 | ||
|
28474e1225 | ||
|
bb6e3af939 | ||
|
a38776419b | ||
|
791b754687 | ||
|
89e747920f | ||
|
5a25adb646 | ||
|
3910e88ebf | ||
|
2b5618fc5b | ||
|
c3b7f93e02 | ||
|
235c0c8134 | ||
|
0a107d36c2 | ||
|
b094683e7c | ||
|
592c8522a2 | ||
|
8f4d3613da | ||
|
9ed77d12b1 | ||
|
832593772d | ||
|
2a5cd95e24 | ||
|
ccea09cd3a | ||
|
67a0628ab2 | ||
|
908a3e56cc | ||
|
ba97b98842 | ||
|
b9f4a0bd2b | ||
|
d8da270a2b | ||
|
910aaed4da | ||
|
587a52e95b | ||
|
533b766007 | ||
|
718f31b830 | ||
|
d8d49716cf | ||
|
0528f40e3b | ||
|
e4c5fe52c9 | ||
|
b12ca6b87b | ||
|
da0883114b | ||
|
a11750218f | ||
|
601edbef17 | ||
|
3128d65fd7 | ||
|
7593bcb6ec | ||
|
8f24e863c3 | ||
|
4e6e2462ea | ||
|
5117725fd0 | ||
|
e16b59df42 | ||
|
2a1505b42e | ||
|
cba614bd88 | ||
|
3bcf2d49f3 | ||
|
fe5c46546e | ||
|
c5add6a468 | ||
|
13b5a624b1 | ||
|
027abddf4f | ||
|
d449c07b8b | ||
|
2b3ea2be90 | ||
|
514544f373 | ||
|
5f305b1db9 | ||
|
ab12e764ba | ||
|
1220aba99b | ||
|
e5ffb9f5ea | ||
|
23a4a6727e | ||
|
74ef3207d8 | ||
|
2cda507fa1 | ||
|
6d2ceda780 | ||
|
289db82b2d | ||
|
7452877cf6 | ||
|
26d2ce0a09 | ||
|
9348ac03ce | ||
|
d8e256f923 | ||
|
301a9b7e28 | ||
|
1c7337d46e | ||
|
63191bd244 | ||
|
7c623905bc | ||
|
1c3f7ab74c | ||
|
bc4ad7c2ae | ||
|
76aa0c0fd3 | ||
|
60c328db2d | ||
|
f1b91ccc08 | ||
|
51f7763c00 | ||
|
6eb71519f7 | ||
|
c5106339d3 | ||
|
804d367a47 | ||
|
077eb0d81c | ||
|
e713a95c96 | ||
|
a0cd2b7029 | ||
|
e60ebebb39 | ||
|
0197348641 | ||
|
e055665752 | ||
|
35506dec67 | ||
|
02b9fb9c80 | ||
|
635ea87374 | ||
|
96128fdf2f | ||
|
c0a61c8442 | ||
|
0219cd0961 | ||
|
5e3b2baae7 | ||
|
a7d0665c00 | ||
|
93dae6761b | ||
|
8df9587d68 | ||
|
0f255d1956 | ||
|
2643a7ba29 | ||
|
b7eea8c616 | ||
|
498fcfd315 | ||
|
22575abdec | ||
|
517ae7a3b6 | ||
|
70b17db918 | ||
|
43dc91f8bb | ||
|
f9e334cb32 | ||
|
42732611d3 | ||
|
0a47631849 | ||
|
48dad9c93f | ||
|
dc8b139aa2 | ||
|
0acb057ad1 | ||
|
2d17dbfb53 | ||
|
b01937a3c9 | ||
|
96d7d66dff | ||
|
5c0dc902e7 | ||
|
559da98c2b | ||
|
9df9696f6d | ||
|
ff3f09a7fe | ||
|
cd62b4f00a | ||
|
9528dc6ed8 | ||
|
5e4f5e41a4 | ||
|
dd24501665 | ||
|
55058652b8 | ||
|
5e6a6a2719 | ||
|
4837e01bcd | ||
|
61a96a2ac7 | ||
|
8810b8f671 | ||
|
c24466c34e | ||
|
ea659f8917 | ||
|
f9bbbe5803 | ||
|
2f7abf5c04 | ||
|
869e20bcb7 | ||
|
a88c9296cb | ||
|
b86302283b | ||
|
5283a3fb25 | ||
|
4b2cf92ad9 | ||
|
ca940a73a7 | ||
|
16e21191e2 | ||
|
8123180ea6 | ||
|
3594b53c01 | ||
|
946bc9aa42 | ||
|
89b31c9619 | ||
|
3f30b0709b | ||
|
16c6a3b71e | ||
|
a176b1c5d8 | ||
|
e5d6450c2c | ||
|
22a0029a68 | ||
|
a3fec14101 | ||
|
606becc7f3 | ||
|
74c31e5d05 | ||
|
95851d8cb2 | ||
|
bf68e54a4d | ||
|
5101215a64 | ||
|
f7285bdffc | ||
|
6f8b4d9e36 | ||
|
269f16cd96 | ||
|
31f7e8efb2 | ||
|
115edf24a9 | ||
|
9282edfaa0 | ||
|
f3be27c0cf | ||
|
a82da7fa26 | ||
|
768481ed40 | ||
|
194ede4bf9 | ||
|
2738681e84 | ||
|
6164f1fe79 | ||
|
ce64e063a8 | ||
|
f7fb30f03b | ||
|
ee3fbe7067 | ||
|
9f002e4aaa | ||
|
7dd2c0afd6 | ||
|
9fde81bb20 | ||
|
ae351599f1 | ||
|
cdcd9da480 | ||
|
c3eef6021a | ||
|
0526100a5c | ||
|
f36425b569 | ||
|
846a6b0695 | ||
|
edbaa717b4 | ||
|
14f21c7850 | ||
|
4b3cbecb3a | ||
|
e3fff3daf0 | ||
|
f9904edf53 | ||
|
79892e7976 | ||
|
3b7ec94c0d | ||
|
3b29dcbb5e | ||
|
a8768bbc9d | ||
|
a15d9ca9cc | ||
|
43750f1575 | ||
|
3856c3cc46 | ||
|
bbe384c86a | ||
|
c01a77d304 | ||
|
e1bddd159f | ||
|
85ee0ef9a7 | ||
|
584b0879ac | ||
|
abc12d0636 | ||
|
389021220d | ||
|
337480e1f8 | ||
|
167ffa9e03 | ||
|
0574954238 | ||
|
0f291f2efe | ||
|
63064cf7c3 | ||
|
7b568614a2 | ||
|
9b27a0d063 | ||
|
b3e41e0d5e | ||
|
b154497bef | ||
|
495628bc5c | ||
|
18883cdf23 | ||
|
521e4b9b7e | ||
|
49fbdd18ed | ||
|
b77469871a | ||
|
322bc403bc | ||
|
65765c9f2c | ||
|
3c794e45b0 | ||
|
5f1faf4a21 | ||
|
a6b84aef4a | ||
|
86ee448047 | ||
|
ef9cd84521 | ||
|
69a3043f41 | ||
|
2d400d43bf | ||
|
9b5541617f | ||
|
564df9dc5f | ||
|
fbddc75aa2 | ||
|
6829ef7460 | ||
|
d39fd9f641 | ||
|
18f3afbe88 | ||
|
b807d49f18 |
9
Makefile
9
Makefile
@@ -182,7 +182,7 @@ ultrix-gcc:
|
||||
|
||||
# Rules for making release tarballs
|
||||
|
||||
VERSION=7.6
|
||||
VERSION=7.6.1
|
||||
DIRECTORY = Mesa-$(VERSION)
|
||||
LIB_NAME = MesaLib-$(VERSION)
|
||||
DEMO_NAME = MesaDemos-$(VERSION)
|
||||
@@ -433,8 +433,7 @@ DEMO_FILES = \
|
||||
$(DIRECTORY)/progs/windml/Makefile.ugl \
|
||||
$(DIRECTORY)/progs/windml/*.c \
|
||||
$(DIRECTORY)/progs/windml/*.bmp \
|
||||
$(DIRECTORY)/progs/ggi/*.c \
|
||||
$(DIRECTORY)/windows/VC7/progs/progs.sln
|
||||
$(DIRECTORY)/progs/ggi/*.c
|
||||
|
||||
GLUT_FILES = \
|
||||
$(DIRECTORY)/include/GL/glut.h \
|
||||
@@ -457,9 +456,7 @@ GLUT_FILES = \
|
||||
$(DIRECTORY)/src/glut/mini/glut.pc.in \
|
||||
$(DIRECTORY)/src/glut/directfb/Makefile \
|
||||
$(DIRECTORY)/src/glut/directfb/NOTES \
|
||||
$(DIRECTORY)/src/glut/directfb/*[ch] \
|
||||
$(DIRECTORY)/windows/VC6/progs/glut/glut.dsp \
|
||||
$(DIRECTORY)/windows/VC7/progs/glut/glut.vcproj
|
||||
$(DIRECTORY)/src/glut/directfb/*[ch]
|
||||
|
||||
DEPEND_FILES = \
|
||||
$(TOP)/src/mesa/depend \
|
||||
|
@@ -59,7 +59,7 @@ def AddOptions(opts):
|
||||
opts.Add(EnumOption('machine', 'use machine-specific assembly code', default_machine,
|
||||
allowed_values=('generic', 'ppc', 'x86', 'x86_64')))
|
||||
opts.Add(EnumOption('platform', 'target platform', default_platform,
|
||||
allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince')))
|
||||
allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin')))
|
||||
opts.Add(EnumOption('toolchain', 'compiler toolchain', 'default',
|
||||
allowed_values=('default', 'crossmingw', 'winsdk', 'winddk')))
|
||||
opts.Add(BoolOption('llvm', 'use LLVM', 'no'))
|
||||
|
@@ -124,7 +124,7 @@ INSTALL_INC_DIR = $(includedir)
|
||||
DRI_DRIVER_INSTALL_DIR = @DRI_DRIVER_INSTALL_DIR@
|
||||
|
||||
# Where libGL will look for DRI hardware drivers
|
||||
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
||||
DRI_DRIVER_SEARCH_DIR = @DRI_DRIVER_SEARCH_DIR@
|
||||
|
||||
# Xorg driver install directory (for xorg state-tracker)
|
||||
XORG_DRIVER_INSTALL_DIR = @XORG_DRIVER_INSTALL_DIR@
|
||||
|
@@ -10,7 +10,7 @@ CONFIG_NAME = default
|
||||
# Version info
|
||||
MESA_MAJOR=7
|
||||
MESA_MINOR=6
|
||||
MESA_TINY=0
|
||||
MESA_TINY=1
|
||||
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
|
||||
|
||||
# external projects. This should be useless now that we use libdrm.
|
||||
|
14
configure.ac
14
configure.ac
@@ -230,6 +230,8 @@ else
|
||||
LIB_EXTENSION='dylib' ;;
|
||||
cygwin* )
|
||||
LIB_EXTENSION='dll' ;;
|
||||
aix* )
|
||||
LIB_EXTENSION='a' ;;
|
||||
* )
|
||||
LIB_EXTENSION='so' ;;
|
||||
esac
|
||||
@@ -647,6 +649,13 @@ AC_ARG_WITH([dri-driverdir],
|
||||
[DRI_DRIVER_INSTALL_DIR="$withval"],
|
||||
[DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
|
||||
AC_SUBST([DRI_DRIVER_INSTALL_DIR])
|
||||
dnl Extra search path for DRI drivers
|
||||
AC_ARG_WITH([dri-searchpath],
|
||||
[AS_HELP_STRING([--with-dri-searchpath=DIRS...],
|
||||
[semicolon delimited DRI driver search directories @<:@${libdir}/dri@:>@])],
|
||||
[DRI_DRIVER_SEARCH_DIR="$withval"],
|
||||
[DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
|
||||
AC_SUBST([DRI_DRIVER_SEARCH_DIR])
|
||||
dnl Direct rendering or just indirect rendering
|
||||
AC_ARG_ENABLE([driglx-direct],
|
||||
[AS_HELP_STRING([--disable-driglx-direct],
|
||||
@@ -1148,6 +1157,11 @@ yes)
|
||||
if test "$tracker" = egl && test "x$enable_egl" != xyes; then
|
||||
AC_MSG_ERROR([cannot build egl state tracker without EGL library])
|
||||
fi
|
||||
if test "$tracker" = xorg; then
|
||||
PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
|
||||
HAVE_XEXTPROTO_71="yes"; DEFINES="$DEFINES -DHAVE_XEXTPROTO_71",
|
||||
HAVE_XEXTPROTO_71="no")
|
||||
fi
|
||||
done
|
||||
GALLIUM_STATE_TRACKERS_DIRS="$state_trackers"
|
||||
;;
|
||||
|
24
debian/changelog
vendored
24
debian/changelog
vendored
@@ -1,3 +1,27 @@
|
||||
mesa (7.6.1~rc3-1) unstable; urgency=low
|
||||
|
||||
* New upstream release candidate.
|
||||
+ Pull upstream mesa_7_6_branch up to commit 7d41b424.
|
||||
+ Includes sparc64 xform asm patch from #560403.
|
||||
* Update debian/rules to fix sparc64 FTBFS, thanks Aurelien Jarno,
|
||||
closes: #560403.
|
||||
* Build r600 DRI driver.
|
||||
|
||||
-- Brice Goglin <bgoglin@debian.org> Fri, 11 Dec 2009 18:36:36 +0100
|
||||
|
||||
mesa (7.6.1~rc2-1) unstable; urgency=low
|
||||
|
||||
* New upstream release candidate.
|
||||
+ Pull upstream mesa_7_6_branch up to commit b2953ee.
|
||||
+ i965: Fix the bounds emitted in the vertex buffer packets,
|
||||
closes: #556541.
|
||||
+ Fix window drawing regression in Kwin on older Radeon hardware,
|
||||
fix assertion failure leading to crash on kwin when compositing
|
||||
is enabled, closes: #549588.
|
||||
+ Refresh patches.
|
||||
|
||||
-- Brice Goglin <bgoglin@debian.org> Sun, 06 Dec 2009 00:14:34 +0100
|
||||
|
||||
mesa (7.6-1) unstable; urgency=low
|
||||
|
||||
[ Brice Goglin ]
|
||||
|
29
debian/patches/05_hurd-ftbfs.diff
vendored
29
debian/patches/05_hurd-ftbfs.diff
vendored
@@ -1,10 +1,15 @@
|
||||
From: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
||||
Subject: Fix build on GNU/Hurd
|
||||
|
||||
Index: mesa/src/glx/x11/dri2.c
|
||||
---
|
||||
configure.ac | 25 ++++++++++++++-----------
|
||||
src/glx/x11/dri2.c | 2 ++
|
||||
2 files changed, 16 insertions(+), 11 deletions(-)
|
||||
|
||||
Index: mesa-7.6.1~rc2/src/glx/x11/dri2.c
|
||||
===================================================================
|
||||
--- mesa.orig/src/glx/x11/dri2.c 2009-09-29 11:44:48.000000000 +0200
|
||||
+++ mesa/src/glx/x11/dri2.c 2009-09-29 11:44:55.000000000 +0200
|
||||
--- mesa-7.6.1~rc2.orig/src/glx/x11/dri2.c 2009-12-05 23:51:01.000000000 +0100
|
||||
+++ mesa-7.6.1~rc2/src/glx/x11/dri2.c 2009-12-06 00:10:10.000000000 +0100
|
||||
@@ -30,6 +30,7 @@
|
||||
* Kristian Høgsberg (krh@redhat.com)
|
||||
*/
|
||||
@@ -18,11 +23,11 @@ Index: mesa/src/glx/x11/dri2.c
|
||||
SyncHandle();
|
||||
}
|
||||
+#endif
|
||||
Index: mesa/configure.ac
|
||||
Index: mesa-7.6.1~rc2/configure.ac
|
||||
===================================================================
|
||||
--- mesa.orig/configure.ac 2009-09-29 11:44:48.000000000 +0200
|
||||
+++ mesa/configure.ac 2009-09-29 11:44:55.000000000 +0200
|
||||
@@ -536,6 +536,13 @@
|
||||
--- mesa-7.6.1~rc2.orig/configure.ac 2009-12-05 23:50:57.000000000 +0100
|
||||
+++ mesa-7.6.1~rc2/configure.ac 2009-12-06 00:10:27.000000000 +0100
|
||||
@@ -538,6 +538,13 @@
|
||||
enable_xcb=no
|
||||
fi
|
||||
|
||||
@@ -36,7 +41,7 @@ Index: mesa/configure.ac
|
||||
dnl
|
||||
dnl libGL configuration per driver
|
||||
dnl
|
||||
@@ -569,11 +576,13 @@
|
||||
@@ -571,11 +578,13 @@
|
||||
AC_MSG_ERROR([Can't use static libraries for DRI drivers])
|
||||
fi
|
||||
|
||||
@@ -55,10 +60,10 @@ Index: mesa/configure.ac
|
||||
|
||||
PKG_CHECK_MODULES([LIBDRM_RADEON], [libdrm_radeon], HAVE_LIBDRM_RADEON=yes, HAVE_LIBDRM_RADEON=no)
|
||||
|
||||
@@ -647,12 +656,6 @@
|
||||
[DRI_DRIVER_INSTALL_DIR="$withval"],
|
||||
[DRI_DRIVER_INSTALL_DIR='${libdir}/dri'])
|
||||
AC_SUBST([DRI_DRIVER_INSTALL_DIR])
|
||||
@@ -656,12 +665,6 @@
|
||||
[DRI_DRIVER_SEARCH_DIR="$withval"],
|
||||
[DRI_DRIVER_SEARCH_DIR='${DRI_DRIVER_INSTALL_DIR}'])
|
||||
AC_SUBST([DRI_DRIVER_SEARCH_DIR])
|
||||
-dnl Direct rendering or just indirect rendering
|
||||
-AC_ARG_ENABLE([driglx-direct],
|
||||
- [AS_HELP_STRING([--disable-driglx-direct],
|
||||
|
12
debian/patches/06_kfreebsd-ftbfs.diff
vendored
12
debian/patches/06_kfreebsd-ftbfs.diff
vendored
@@ -4,11 +4,15 @@ mesa fails to build on GNU/kFreeBSD, since some parts are not enabled.
|
||||
|
||||
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=524690
|
||||
|
||||
Index: mesa/configure.ac
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
Index: mesa-7.6.1~rc2/configure.ac
|
||||
===================================================================
|
||||
--- mesa.orig/configure.ac 2009-09-29 11:44:55.000000000 +0200
|
||||
+++ mesa/configure.ac 2009-09-29 11:45:12.000000000 +0200
|
||||
@@ -736,7 +736,7 @@
|
||||
--- mesa-7.6.1~rc2.orig/configure.ac 2009-12-06 00:10:10.000000000 +0100
|
||||
+++ mesa-7.6.1~rc2/configure.ac 2009-12-06 00:10:10.000000000 +0100
|
||||
@@ -745,7 +745,7 @@
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
4
debian/rules
vendored
4
debian/rules
vendored
@@ -69,13 +69,15 @@ else
|
||||
ifeq ($(DEB_HOST_ARCH), lpia)
|
||||
DRI_DRIVERS += i915 i965
|
||||
else ifneq ($(DEB_HOST_ARCH), s390)
|
||||
DRI_DRIVERS += mach64 mga r128 r200 r300 radeon s3v savage tdfx trident
|
||||
DRI_DRIVERS += mach64 mga r128 r200 r300 r600 radeon s3v savage tdfx trident
|
||||
ifeq ($(DEB_HOST_GNU_CPU), i486)
|
||||
DRI_DRIVERS += i810 i915 i965 sis unichrome
|
||||
else ifeq ($(DEB_HOST_GNU_CPU), x86_64)
|
||||
DRI_DRIVERS += i915 i965 sis unichrome
|
||||
else ifeq ($(DEB_HOST_ARCH), sparc)
|
||||
DRI_DRIVERS += ffb
|
||||
else ifeq ($(DEB_HOST_ARCH), sparc64)
|
||||
DRI_DRIVERS += ffb
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
@@ -27,12 +27,6 @@ using the SDK with Visual Studio Express can be found at
|
||||
|
||||
http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
|
||||
|
||||
If you are stuck using VC6 or VC7, you may start with these project
|
||||
files, but you may need to modify them to reflect changes in the
|
||||
Mesa source code tree. If you sucessfully update the project files,
|
||||
please submit them to the author of this document so that they may
|
||||
be included in the next distribution.
|
||||
|
||||
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.
|
||||
@@ -106,23 +100,6 @@ should build all the demos.
|
||||
Build System Notes
|
||||
----- ------ -----
|
||||
|
||||
VC6 (not actively supported)
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
Two additional configurations are provided, Debug x86 and Release x86
|
||||
that activate the shader code compilation by defining SLANG_86. It is
|
||||
unknown if and how this works.
|
||||
|
||||
VC7 (not actively supported)
|
||||
---
|
||||
|
||||
The above-mentioned .cc problem does not exist in this version.
|
||||
|
||||
VC8
|
||||
---
|
||||
|
||||
|
@@ -10,6 +10,24 @@
|
||||
|
||||
<H1>News</H1>
|
||||
|
||||
<h2>November XX, 2009</h2>
|
||||
<p>
|
||||
<a href="relnotes-7.6.1.html">Mesa 7.6.1</a> is released. This is a bug-fix
|
||||
release fixing issues found in the 7.6 release.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>September 28, 2009</h2>
|
||||
<p>
|
||||
<a href="relnotes-7.6.html">Mesa 7.6</a> is released. This is a new feature
|
||||
release. Those especially concerned about stability may want to wait for the
|
||||
follow-on 7.6.1 bug-fix release.
|
||||
</p>
|
||||
<p>
|
||||
<a href="relnotes-7.5.2.html">Mesa 7.5.2</a> is also released.
|
||||
This is a stable release fixing bugs since the 7.5.1 release.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>September 3, 2009</h2>
|
||||
<p>
|
||||
|
@@ -8,7 +8,7 @@
|
||||
|
||||
<body bgcolor="#eeeeee">
|
||||
|
||||
<H1>Mesa 7.5.2 Release Notes, (date tbd)</H1>
|
||||
<H1>Mesa 7.5.2 Release Notes, 28 September 2009</H1>
|
||||
|
||||
<p>
|
||||
Mesa 7.5.2 is a bug-fix release fixing issues found since the 7.5.1 release.
|
||||
@@ -31,7 +31,15 @@ for DRI hardware acceleration.
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
tbd
|
||||
43a90191dd9f76cd65dcc1ac91f3be70 MesaLib-7.5.2.tar.gz
|
||||
94e47a499f1226803869c2e37a6a8e3a MesaLib-7.5.2.tar.bz2
|
||||
1ecb822b567ad67a0617361d45206b67 MesaLib-7.5.2.zip
|
||||
2718fdce7e075911d6147beb8f27104b MesaDemos-7.5.2.tar.gz
|
||||
4e0f5ccd58afe21eddcd94327d926e86 MesaDemos-7.5.2.tar.bz2
|
||||
f621f8c223b278d7c8e49a012d56ca25 MesaDemos-7.5.2.zip
|
||||
83c16c1d6bcfcc3f97aab5d2fe430b4c MesaGLUT-7.5.2.tar.gz
|
||||
e5d03bedae369ea3705783573bb33813 MesaGLUT-7.5.2.tar.bz2
|
||||
e82ba28e00d653e6f437d32be8ca8481 MesaGLUT-7.5.2.zip
|
||||
</pre>
|
||||
|
||||
|
||||
@@ -55,6 +63,5 @@ tbd
|
||||
when using Gallium.
|
||||
</ul>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
71
docs/relnotes-7.6.1.html
Normal file
71
docs/relnotes-7.6.1.html
Normal file
@@ -0,0 +1,71 @@
|
||||
<HTML>
|
||||
|
||||
<TITLE>Mesa Release Notes</TITLE>
|
||||
|
||||
<head><link rel="stylesheet" type="text/css" href="mesa.css"></head>
|
||||
|
||||
<BODY>
|
||||
|
||||
<body bgcolor="#eeeeee">
|
||||
|
||||
<H1>Mesa 7.6.1 Release Notes, (date tbd)</H1>
|
||||
|
||||
<p>
|
||||
Mesa 7.6.1 is a bug-fix release fixing issues since version 7.6.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 7.6.1 implements the OpenGL 2.1 API, but the version reported by
|
||||
glGetString(GL_VERSION) depends on the particular driver being used.
|
||||
Some drivers don't support all the features required in OpenGL 2.1.
|
||||
</p>
|
||||
<p>
|
||||
See the <a href="install.html">Compiling/Installing page</a> for prerequisites
|
||||
for DRI hardware acceleration.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>MD5 checksums</h2>
|
||||
<pre>
|
||||
tbd
|
||||
</pre>
|
||||
|
||||
|
||||
<h2>New features</h2>
|
||||
<ul>
|
||||
<li>Upgraded GL/glext.h to version 56, GL/glxext.h to version 25,
|
||||
GL/wglext.h to version 17
|
||||
<li>New 3D driver, r600, for Radeon R6xx, R7xx hardware
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Bug fixes</h2>
|
||||
<ul>
|
||||
<li>Fixed crash caused by glXCopyContext() and glXDestroyContext(), bug 24217
|
||||
<li>glXQueryContext(GLX_RENDER_TYPE) returned wrong values (bug 24211)
|
||||
<li>GLSL sqrt(0) returned unpredictable results
|
||||
<li>Fixed default texture binding bug when a bound texture was deleted.
|
||||
<li>r300: Work around an issue with very large fragment programs on R500.
|
||||
<li>Fake glXQueryDrawable() didn't return good values (bug 24320)
|
||||
<li>Fixed AUX buffer breakage (bug 24426).
|
||||
<li>Fixed locale-dependent float parsing bug in GLSL compiler (bug 24531)
|
||||
<li>Fixed Gallium Cell driver compilation failure.
|
||||
<li>Fixed glGetTexLevelParameter(GL_TEXTURE_INTERNAL_FORMAT) query so that
|
||||
it returns the actual compressed format chosen.
|
||||
<li>Fixed glBitmap bugs in Intel drivers.
|
||||
<li>Fixed a number of Microsoft Visual Studio compilation problems.
|
||||
<li>Fixed clipping / provoking vertex bugs in i965 driver.
|
||||
<li>Assorted build fixes for AIX.
|
||||
<li>Endianness fixes for the DRI swrast driver (bug 22767).</li>
|
||||
<li>Point sprite fixes for i915/945 driver.
|
||||
<li>Fixed assorted memory leaks (usually on error paths)
|
||||
<li>Fixed some GLSL compiler bugs (ex: 25579)
|
||||
</ul>
|
||||
|
||||
<h2>Changes</h2>
|
||||
<ul>
|
||||
<li>Removed old VC6, VC7 project files for Windows
|
||||
</ul>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
@@ -13,6 +13,7 @@ The release notes summarize what's new or changed in each Mesa release.
|
||||
</p>
|
||||
|
||||
<UL>
|
||||
<LI><A HREF="relnotes-7.6.1.html">7.6.1 release notes</A>
|
||||
<LI><A HREF="relnotes-7.6.html">7.6 release notes</A>
|
||||
<LI><A HREF="relnotes-7.5.2.html">7.5.2 release notes</A>
|
||||
<LI><A HREF="relnotes-7.5.1.html">7.5.1 release notes</A>
|
||||
|
@@ -108,12 +108,20 @@
|
||||
#define glBlendColorEXT MANGLE(BlendColorEXT)
|
||||
#define glBlendColor MANGLE(BlendColor)
|
||||
#define glBlendEquationEXT MANGLE(BlendEquationEXT)
|
||||
#define glBlendEquationi MANGLE(BlendEquationi)
|
||||
#define glBlendEquationIndexedAMD MANGLE(BlendEquationIndexedAMD)
|
||||
#define glBlendEquation MANGLE(BlendEquation)
|
||||
#define glBlendEquationSeparateATI MANGLE(BlendEquationSeparateATI)
|
||||
#define glBlendEquationSeparateEXT MANGLE(BlendEquationSeparateEXT)
|
||||
#define glBlendEquationSeparatei MANGLE(BlendEquationSeparatei)
|
||||
#define glBlendEquationSeparateIndexedAMD MANGLE(BlendEquationSeparateIndexedAMD)
|
||||
#define glBlendEquationSeparate MANGLE(BlendEquationSeparate)
|
||||
#define glBlendFunci MANGLE(BlendFunci)
|
||||
#define glBlendFuncIndexedAMD MANGLE(BlendFuncIndexedAMD)
|
||||
#define glBlendFunc MANGLE(BlendFunc)
|
||||
#define glBlendFuncSeparateEXT MANGLE(BlendFuncSeparateEXT)
|
||||
#define glBlendFuncSeparatei MANGLE(BlendFuncSeparatei)
|
||||
#define glBlendFuncSeparateIndexedAMD MANGLE(BlendFuncSeparateIndexedAMD)
|
||||
#define glBlendFuncSeparateINGR MANGLE(BlendFuncSeparateINGR)
|
||||
#define glBlendFuncSeparate MANGLE(BlendFuncSeparate)
|
||||
#define glBlitFramebufferEXT MANGLE(BlitFramebufferEXT)
|
||||
@@ -148,6 +156,7 @@
|
||||
#define glClientActiveTexture MANGLE(ClientActiveTexture)
|
||||
#define glClientActiveVertexStreamATI MANGLE(ClientActiveVertexStreamATI)
|
||||
#define glClientAttribDefaultEXT MANGLE(ClientAttribDefaultEXT)
|
||||
#define glClientWaitSync MANGLE(ClientWaitSync)
|
||||
#define glClipPlane MANGLE(ClipPlane)
|
||||
#define glColor3b MANGLE(Color3b)
|
||||
#define glColor3bv MANGLE(Color3bv)
|
||||
@@ -320,6 +329,7 @@
|
||||
#define glDeleteRenderbuffersEXT MANGLE(DeleteRenderbuffersEXT)
|
||||
#define glDeleteRenderbuffers MANGLE(DeleteRenderbuffers)
|
||||
#define glDeleteShader MANGLE(DeleteShader)
|
||||
#define glDeleteSync MANGLE(DeleteSync)
|
||||
#define glDeleteTexturesEXT MANGLE(DeleteTexturesEXT)
|
||||
#define glDeleteTextures MANGLE(DeleteTextures)
|
||||
#define glDeleteTransformFeedbacksNV MANGLE(DeleteTransformFeedbacksNV)
|
||||
@@ -341,6 +351,7 @@
|
||||
#define glDisableIndexedEXT MANGLE(DisableIndexedEXT)
|
||||
#define glDisable MANGLE(Disable)
|
||||
#define glDisableVariantClientStateEXT MANGLE(DisableVariantClientStateEXT)
|
||||
#define glDisableVertexAttribAPPLE MANGLE(DisableVertexAttribAPPLE)
|
||||
#define glDisableVertexAttribArrayARB MANGLE(DisableVertexAttribArrayARB)
|
||||
#define glDisableVertexAttribArray MANGLE(DisableVertexAttribArray)
|
||||
#define glDrawArraysEXT MANGLE(DrawArraysEXT)
|
||||
@@ -354,7 +365,9 @@
|
||||
#define glDrawBuffers MANGLE(DrawBuffers)
|
||||
#define glDrawElementArrayAPPLE MANGLE(DrawElementArrayAPPLE)
|
||||
#define glDrawElementArrayATI MANGLE(DrawElementArrayATI)
|
||||
#define glDrawElementsBaseVertex MANGLE(DrawElementsBaseVertex)
|
||||
#define glDrawElementsInstancedARB MANGLE(DrawElementsInstancedARB)
|
||||
#define glDrawElementsInstancedBaseVertex MANGLE(DrawElementsInstancedBaseVertex)
|
||||
#define glDrawElementsInstancedEXT MANGLE(DrawElementsInstancedEXT)
|
||||
#define glDrawElementsInstanced MANGLE(DrawElementsInstanced)
|
||||
#define glDrawElements MANGLE(DrawElements)
|
||||
@@ -362,6 +375,7 @@
|
||||
#define glDrawPixels MANGLE(DrawPixels)
|
||||
#define glDrawRangeElementArrayAPPLE MANGLE(DrawRangeElementArrayAPPLE)
|
||||
#define glDrawRangeElementArrayATI MANGLE(DrawRangeElementArrayATI)
|
||||
#define glDrawRangeElementsBaseVertex MANGLE(DrawRangeElementsBaseVertex)
|
||||
#define glDrawRangeElementsEXT MANGLE(DrawRangeElementsEXT)
|
||||
#define glDrawRangeElements MANGLE(DrawRangeElements)
|
||||
#define glDrawTransformFeedbackNV MANGLE(DrawTransformFeedbackNV)
|
||||
@@ -378,6 +392,7 @@
|
||||
#define glEnableIndexedEXT MANGLE(EnableIndexedEXT)
|
||||
#define glEnable MANGLE(Enable)
|
||||
#define glEnableVariantClientStateEXT MANGLE(EnableVariantClientStateEXT)
|
||||
#define glEnableVertexAttribAPPLE MANGLE(EnableVertexAttribAPPLE)
|
||||
#define glEnableVertexAttribArrayARB MANGLE(EnableVertexAttribArrayARB)
|
||||
#define glEnableVertexAttribArray MANGLE(EnableVertexAttribArray)
|
||||
#define glEndConditionalRender MANGLE(EndConditionalRender)
|
||||
@@ -409,6 +424,7 @@
|
||||
#define glExecuteProgramNV MANGLE(ExecuteProgramNV)
|
||||
#define glExtractComponentEXT MANGLE(ExtractComponentEXT)
|
||||
#define glFeedbackBuffer MANGLE(FeedbackBuffer)
|
||||
#define glFenceSync MANGLE(FenceSync)
|
||||
#define glFinalCombinerInputNV MANGLE(FinalCombinerInputNV)
|
||||
#define glFinishAsyncSGIX MANGLE(FinishAsyncSGIX)
|
||||
#define glFinishFenceAPPLE MANGLE(FinishFenceAPPLE)
|
||||
@@ -469,9 +485,11 @@
|
||||
#define glFramebufferTextureEXT MANGLE(FramebufferTextureEXT)
|
||||
#define glFramebufferTextureFaceARB MANGLE(FramebufferTextureFaceARB)
|
||||
#define glFramebufferTextureFaceEXT MANGLE(FramebufferTextureFaceEXT)
|
||||
#define glFramebufferTextureFace MANGLE(FramebufferTextureFace)
|
||||
#define glFramebufferTextureLayerARB MANGLE(FramebufferTextureLayerARB)
|
||||
#define glFramebufferTextureLayerEXT MANGLE(FramebufferTextureLayerEXT)
|
||||
#define glFramebufferTextureLayer MANGLE(FramebufferTextureLayer)
|
||||
#define glFramebufferTexture MANGLE(FramebufferTexture)
|
||||
#define glFrameTerminatorGREMEDY MANGLE(FrameTerminatorGREMEDY)
|
||||
#define glFrameZoomSGIX MANGLE(FrameZoomSGIX)
|
||||
#define glFreeObjectBufferATI MANGLE(FreeObjectBufferATI)
|
||||
@@ -523,6 +541,7 @@
|
||||
#define glGetBooleanIndexedvEXT MANGLE(GetBooleanIndexedvEXT)
|
||||
#define glGetBooleani_v MANGLE(GetBooleani_v)
|
||||
#define glGetBooleanv MANGLE(GetBooleanv)
|
||||
#define glGetBufferParameteri64v MANGLE(GetBufferParameteri64v)
|
||||
#define glGetBufferParameterivARB MANGLE(GetBufferParameterivARB)
|
||||
#define glGetBufferParameteriv MANGLE(GetBufferParameteriv)
|
||||
#define glGetBufferPointervARB MANGLE(GetBufferPointervARB)
|
||||
@@ -586,6 +605,8 @@
|
||||
#define glGetImageTransformParameterivHP MANGLE(GetImageTransformParameterivHP)
|
||||
#define glGetInfoLogARB MANGLE(GetInfoLogARB)
|
||||
#define glGetInstrumentsSGIX MANGLE(GetInstrumentsSGIX)
|
||||
#define glGetInteger64i_v MANGLE(GetInteger64i_v)
|
||||
#define glGetInteger64v MANGLE(GetInteger64v)
|
||||
#define glGetIntegerIndexedvEXT MANGLE(GetIntegerIndexedvEXT)
|
||||
#define glGetIntegeri_v MANGLE(GetIntegeri_v)
|
||||
#define glGetIntegerv MANGLE(GetIntegerv)
|
||||
@@ -615,6 +636,7 @@
|
||||
#define glGetMinmaxParameterfv MANGLE(GetMinmaxParameterfv)
|
||||
#define glGetMinmaxParameterivEXT MANGLE(GetMinmaxParameterivEXT)
|
||||
#define glGetMinmaxParameteriv MANGLE(GetMinmaxParameteriv)
|
||||
#define glGetMultisamplefv MANGLE(GetMultisamplefv)
|
||||
#define glGetMultisamplefvNV MANGLE(GetMultisamplefvNV)
|
||||
#define glGetMultiTexEnvfvEXT MANGLE(GetMultiTexEnvfvEXT)
|
||||
#define glGetMultiTexEnvivEXT MANGLE(GetMultiTexEnvivEXT)
|
||||
@@ -642,6 +664,7 @@
|
||||
#define glGetObjectBufferfvATI MANGLE(GetObjectBufferfvATI)
|
||||
#define glGetObjectBufferivATI MANGLE(GetObjectBufferivATI)
|
||||
#define glGetObjectParameterfvARB MANGLE(GetObjectParameterfvARB)
|
||||
#define glGetObjectParameterivAPPLE MANGLE(GetObjectParameterivAPPLE)
|
||||
#define glGetObjectParameterivARB MANGLE(GetObjectParameterivARB)
|
||||
#define glGetOcclusionQueryivNV MANGLE(GetOcclusionQueryivNV)
|
||||
#define glGetOcclusionQueryuivNV MANGLE(GetOcclusionQueryuivNV)
|
||||
@@ -698,6 +721,7 @@
|
||||
#define glGetSharpenTexFuncSGIS MANGLE(GetSharpenTexFuncSGIS)
|
||||
#define glGetStringi MANGLE(GetStringi)
|
||||
#define glGetString MANGLE(GetString)
|
||||
#define glGetSynciv MANGLE(GetSynciv)
|
||||
#define glGetTexBumpParameterfvATI MANGLE(GetTexBumpParameterfvATI)
|
||||
#define glGetTexBumpParameterivATI MANGLE(GetTexBumpParameterivATI)
|
||||
#define glGetTexEnvfv MANGLE(GetTexEnvfv)
|
||||
@@ -715,6 +739,7 @@
|
||||
#define glGetTexParameterIuivEXT MANGLE(GetTexParameterIuivEXT)
|
||||
#define glGetTexParameterIuiv MANGLE(GetTexParameterIuiv)
|
||||
#define glGetTexParameteriv MANGLE(GetTexParameteriv)
|
||||
#define glGetTexParameterPointervAPPLE MANGLE(GetTexParameterPointervAPPLE)
|
||||
#define glGetTextureImageEXT MANGLE(GetTextureImageEXT)
|
||||
#define glGetTextureLevelParameterfvEXT MANGLE(GetTextureLevelParameterfvEXT)
|
||||
#define glGetTextureLevelParameterivEXT MANGLE(GetTextureLevelParameterivEXT)
|
||||
@@ -825,12 +850,14 @@
|
||||
#define glIsRenderbufferEXT MANGLE(IsRenderbufferEXT)
|
||||
#define glIsRenderbuffer MANGLE(IsRenderbuffer)
|
||||
#define glIsShader MANGLE(IsShader)
|
||||
#define glIsSync MANGLE(IsSync)
|
||||
#define glIsTextureEXT MANGLE(IsTextureEXT)
|
||||
#define glIsTexture MANGLE(IsTexture)
|
||||
#define glIsTransformFeedbackNV MANGLE(IsTransformFeedbackNV)
|
||||
#define glIsVariantEnabledEXT MANGLE(IsVariantEnabledEXT)
|
||||
#define glIsVertexArrayAPPLE MANGLE(IsVertexArrayAPPLE)
|
||||
#define glIsVertexArray MANGLE(IsVertexArray)
|
||||
#define glIsVertexAttribEnabledAPPLE MANGLE(IsVertexAttribEnabledAPPLE)
|
||||
#define glLightEnviSGIX MANGLE(LightEnviSGIX)
|
||||
#define glLightf MANGLE(Lightf)
|
||||
#define glLightfv MANGLE(Lightfv)
|
||||
@@ -877,6 +904,10 @@
|
||||
#define glMapObjectBufferATI MANGLE(MapObjectBufferATI)
|
||||
#define glMapParameterfvNV MANGLE(MapParameterfvNV)
|
||||
#define glMapParameterivNV MANGLE(MapParameterivNV)
|
||||
#define glMapVertexAttrib1dAPPLE MANGLE(MapVertexAttrib1dAPPLE)
|
||||
#define glMapVertexAttrib1fAPPLE MANGLE(MapVertexAttrib1fAPPLE)
|
||||
#define glMapVertexAttrib2dAPPLE MANGLE(MapVertexAttrib2dAPPLE)
|
||||
#define glMapVertexAttrib2fAPPLE MANGLE(MapVertexAttrib2fAPPLE)
|
||||
#define glMaterialf MANGLE(Materialf)
|
||||
#define glMaterialfv MANGLE(Materialfv)
|
||||
#define glMateriali MANGLE(Materiali)
|
||||
@@ -907,9 +938,11 @@
|
||||
#define glMatrixTranslatefEXT MANGLE(MatrixTranslatefEXT)
|
||||
#define glMinmaxEXT MANGLE(MinmaxEXT)
|
||||
#define glMinmax MANGLE(Minmax)
|
||||
#define glMinSampleShading MANGLE(MinSampleShading)
|
||||
#define glMultiDrawArraysEXT MANGLE(MultiDrawArraysEXT)
|
||||
#define glMultiDrawArrays MANGLE(MultiDrawArrays)
|
||||
#define glMultiDrawElementArrayAPPLE MANGLE(MultiDrawElementArrayAPPLE)
|
||||
#define glMultiDrawElementsBaseVertex MANGLE(MultiDrawElementsBaseVertex)
|
||||
#define glMultiDrawElementsEXT MANGLE(MultiDrawElementsEXT)
|
||||
#define glMultiDrawElements MANGLE(MultiDrawElements)
|
||||
#define glMultiDrawRangeElementArrayAPPLE MANGLE(MultiDrawRangeElementArrayAPPLE)
|
||||
@@ -1072,6 +1105,8 @@
|
||||
#define glNormalStream3ivATI MANGLE(NormalStream3ivATI)
|
||||
#define glNormalStream3sATI MANGLE(NormalStream3sATI)
|
||||
#define glNormalStream3svATI MANGLE(NormalStream3svATI)
|
||||
#define glObjectPurgeableAPPLE MANGLE(ObjectPurgeableAPPLE)
|
||||
#define glObjectUnpurgeableAPPLE MANGLE(ObjectUnpurgeableAPPLE)
|
||||
#define glOrtho MANGLE(Ortho)
|
||||
#define glPassTexCoordATI MANGLE(PassTexCoordATI)
|
||||
#define glPassThrough MANGLE(PassThrough)
|
||||
@@ -1162,6 +1197,7 @@
|
||||
#define glProgramParameter4fvNV MANGLE(ProgramParameter4fvNV)
|
||||
#define glProgramParameteriARB MANGLE(ProgramParameteriARB)
|
||||
#define glProgramParameteriEXT MANGLE(ProgramParameteriEXT)
|
||||
#define glProgramParameteri MANGLE(ProgramParameteri)
|
||||
#define glProgramParameters4dvNV MANGLE(ProgramParameters4dvNV)
|
||||
#define glProgramParameters4fvNV MANGLE(ProgramParameters4fvNV)
|
||||
#define glProgramStringARB MANGLE(ProgramStringARB)
|
||||
@@ -1200,6 +1236,7 @@
|
||||
#define glProgramUniformMatrix4x3fvEXT MANGLE(ProgramUniformMatrix4x3fvEXT)
|
||||
#define glProgramVertexLimitNV MANGLE(ProgramVertexLimitNV)
|
||||
#define glProvokingVertexEXT MANGLE(ProvokingVertexEXT)
|
||||
#define glProvokingVertex MANGLE(ProvokingVertex)
|
||||
#define glPushAttrib MANGLE(PushAttrib)
|
||||
#define glPushClientAttribDefaultEXT MANGLE(PushClientAttribDefaultEXT)
|
||||
#define glPushClientAttrib MANGLE(PushClientAttrib)
|
||||
@@ -1283,6 +1320,7 @@
|
||||
#define glSampleCoverage MANGLE(SampleCoverage)
|
||||
#define glSampleMapATI MANGLE(SampleMapATI)
|
||||
#define glSampleMaskEXT MANGLE(SampleMaskEXT)
|
||||
#define glSampleMaski MANGLE(SampleMaski)
|
||||
#define glSampleMaskIndexedNV MANGLE(SampleMaskIndexedNV)
|
||||
#define glSampleMaskSGIS MANGLE(SampleMaskSGIS)
|
||||
#define glSamplePatternEXT MANGLE(SamplePatternEXT)
|
||||
@@ -1454,8 +1492,10 @@
|
||||
#define glTexGeniv MANGLE(TexGeniv)
|
||||
#define glTexImage1D MANGLE(TexImage1D)
|
||||
#define glTexImage2D MANGLE(TexImage2D)
|
||||
#define glTexImage2DMultisample MANGLE(TexImage2DMultisample)
|
||||
#define glTexImage3DEXT MANGLE(TexImage3DEXT)
|
||||
#define glTexImage3D MANGLE(TexImage3D)
|
||||
#define glTexImage3DMultisample MANGLE(TexImage3DMultisample)
|
||||
#define glTexImage4DSGIS MANGLE(TexImage4DSGIS)
|
||||
#define glTexParameterf MANGLE(TexParameterf)
|
||||
#define glTexParameterfv MANGLE(TexParameterfv)
|
||||
@@ -1487,6 +1527,7 @@
|
||||
#define glTextureParameterIivEXT MANGLE(TextureParameterIivEXT)
|
||||
#define glTextureParameterIuivEXT MANGLE(TextureParameterIuivEXT)
|
||||
#define glTextureParameterivEXT MANGLE(TextureParameterivEXT)
|
||||
#define glTextureRangeAPPLE MANGLE(TextureRangeAPPLE)
|
||||
#define glTextureRenderbufferEXT MANGLE(TextureRenderbufferEXT)
|
||||
#define glTextureSubImage1DEXT MANGLE(TextureSubImage1DEXT)
|
||||
#define glTextureSubImage2DEXT MANGLE(TextureSubImage2DEXT)
|
||||
@@ -1828,6 +1869,7 @@
|
||||
#define glVertexWeighthvNV MANGLE(VertexWeighthvNV)
|
||||
#define glVertexWeightPointerEXT MANGLE(VertexWeightPointerEXT)
|
||||
#define glViewport MANGLE(Viewport)
|
||||
#define glWaitSync MANGLE(WaitSync)
|
||||
#define glWeightbvARB MANGLE(WeightbvARB)
|
||||
#define glWeightdvARB MANGLE(WeightdvARB)
|
||||
#define glWeightfvARB MANGLE(WeightfvARB)
|
||||
|
@@ -29,9 +29,9 @@ extern "C" {
|
||||
*/
|
||||
|
||||
/* Header file version number, required by OpenGL ABI for Linux */
|
||||
/* glext.h last updated $Date: 2009-08-03 02:13:51 -0700 (Mon, 03 Aug 2009) $ */
|
||||
/* glext.h last updated $Date: 2009-09-24 13:55:03 -0700 (Thu, 24 Sep 2009) $ */
|
||||
/* Current version at http://www.opengl.org/registry/ */
|
||||
#define GL_GLEXT_VERSION 54
|
||||
#define GL_GLEXT_VERSION 56
|
||||
|
||||
/* Function declaration macros - to move into glplatform.h */
|
||||
|
||||
@@ -4236,7 +4236,7 @@ extern "C" {
|
||||
#define GL_LUMINANCE16_SNORM 0x9019
|
||||
#define GL_LUMINANCE16_ALPHA16_SNORM 0x901A
|
||||
#define GL_INTENSITY16_SNORM 0x901B
|
||||
/* reuse GL_R_SNORM */
|
||||
/* reuse GL_RED_SNORM */
|
||||
/* reuse GL_RG_SNORM */
|
||||
/* reuse GL_RGB_SNORM */
|
||||
/* reuse GL_RGBA_SNORM */
|
||||
@@ -4311,6 +4311,88 @@ extern "C" {
|
||||
#define GL_UNPACK_ROW_BYTES_APPLE 0x8A16
|
||||
#endif
|
||||
|
||||
#ifndef GL_APPLE_rgb_422
|
||||
#define GL_RGB_422_APPLE 0x8A1F
|
||||
/* reuse GL_UNSIGNED_SHORT_8_8_APPLE */
|
||||
/* reuse GL_UNSIGNED_SHORT_8_8_REV_APPLE */
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_video_capture
|
||||
#define GL_VIDEO_BUFFER_NV 0x9020
|
||||
#define GL_VIDEO_BUFFER_BINDING_NV 0x9021
|
||||
#define GL_FIELD_UPPER_NV 0x9022
|
||||
#define GL_FIELD_LOWER_NV 0x9023
|
||||
#define GL_NUM_VIDEO_CAPTURE_STREAMS_NV 0x9024
|
||||
#define GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV 0x9025
|
||||
#define GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV 0x9026
|
||||
#define GL_LAST_VIDEO_CAPTURE_STATUS_NV 0x9027
|
||||
#define GL_VIDEO_BUFFER_PITCH_NV 0x9028
|
||||
#define GL_VIDEO_COLOR_CONVERSION_MATRIX_NV 0x9029
|
||||
#define GL_VIDEO_COLOR_CONVERSION_MAX_NV 0x902A
|
||||
#define GL_VIDEO_COLOR_CONVERSION_MIN_NV 0x902B
|
||||
#define GL_VIDEO_COLOR_CONVERSION_OFFSET_NV 0x902C
|
||||
#define GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV 0x902D
|
||||
#define GL_PARTIAL_SUCCESS_NV 0x902E
|
||||
#define GL_SUCCESS_NV 0x902F
|
||||
#define GL_FAILURE_NV 0x9030
|
||||
#define GL_YCBYCR8_422_NV 0x9031
|
||||
#define GL_YCBAYCR8A_4224_NV 0x9032
|
||||
#define GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV 0x9033
|
||||
#define GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV 0x9034
|
||||
#define GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV 0x9035
|
||||
#define GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV 0x9036
|
||||
#define GL_Z4Y12Z4CB12Z4CR12_444_NV 0x9037
|
||||
#define GL_VIDEO_CAPTURE_FRAME_WIDTH_NV 0x9038
|
||||
#define GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV 0x9039
|
||||
#define GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV 0x903A
|
||||
#define GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV 0x903B
|
||||
#define GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV 0x903C
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_copy_image
|
||||
#endif
|
||||
|
||||
#ifndef GL_EXT_separate_shader_objects
|
||||
#define GL_ACTIVE_PROGRAM_EXT 0x8B8D
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_parameter_buffer_object2
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_shader_buffer_load
|
||||
#define GL_BUFFER_GPU_ADDRESS_NV 0x8F1D
|
||||
#define GL_GPU_ADDRESS_NV 0x8F34
|
||||
#define GL_MAX_SHADER_BUFFER_ADDRESS_NV 0x8F35
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_vertex_buffer_unified_memory
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV 0x8F1E
|
||||
#define GL_ELEMENT_ARRAY_UNIFIED_NV 0x8F1F
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV 0x8F20
|
||||
#define GL_VERTEX_ARRAY_ADDRESS_NV 0x8F21
|
||||
#define GL_NORMAL_ARRAY_ADDRESS_NV 0x8F22
|
||||
#define GL_COLOR_ARRAY_ADDRESS_NV 0x8F23
|
||||
#define GL_INDEX_ARRAY_ADDRESS_NV 0x8F24
|
||||
#define GL_TEXTURE_COORD_ARRAY_ADDRESS_NV 0x8F25
|
||||
#define GL_EDGE_FLAG_ARRAY_ADDRESS_NV 0x8F26
|
||||
#define GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV 0x8F27
|
||||
#define GL_FOG_COORD_ARRAY_ADDRESS_NV 0x8F28
|
||||
#define GL_ELEMENT_ARRAY_ADDRESS_NV 0x8F29
|
||||
#define GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV 0x8F2A
|
||||
#define GL_VERTEX_ARRAY_LENGTH_NV 0x8F2B
|
||||
#define GL_NORMAL_ARRAY_LENGTH_NV 0x8F2C
|
||||
#define GL_COLOR_ARRAY_LENGTH_NV 0x8F2D
|
||||
#define GL_INDEX_ARRAY_LENGTH_NV 0x8F2E
|
||||
#define GL_TEXTURE_COORD_ARRAY_LENGTH_NV 0x8F2F
|
||||
#define GL_EDGE_FLAG_ARRAY_LENGTH_NV 0x8F30
|
||||
#define GL_SECONDARY_COLOR_ARRAY_LENGTH_NV 0x8F31
|
||||
#define GL_FOG_COORD_ARRAY_LENGTH_NV 0x8F32
|
||||
#define GL_ELEMENT_ARRAY_LENGTH_NV 0x8F33
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_texture_barrier
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************/
|
||||
|
||||
@@ -9245,6 +9327,136 @@ typedef void (APIENTRYP PFNGLGETOBJECTPARAMETERIVAPPLEPROC) (GLenum objectType,
|
||||
#define GL_APPLE_row_bytes 1
|
||||
#endif
|
||||
|
||||
#ifndef GL_APPLE_rgb_422
|
||||
#define GL_APPLE_rgb_422 1
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_video_capture
|
||||
#define GL_NV_video_capture 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glBeginVideoCaptureNV (GLuint);
|
||||
GLAPI void APIENTRY glBindVideoCaptureStreamBufferNV (GLuint, GLuint, GLenum, GLintptrARB);
|
||||
GLAPI void APIENTRY glBindVideoCaptureStreamTextureNV (GLuint, GLuint, GLenum, GLenum, GLuint);
|
||||
GLAPI void APIENTRY glEndVideoCaptureNV (GLuint);
|
||||
GLAPI void APIENTRY glGetVideoCaptureivNV (GLuint, GLenum, GLint *);
|
||||
GLAPI void APIENTRY glGetVideoCaptureStreamivNV (GLuint, GLuint, GLenum, GLint *);
|
||||
GLAPI void APIENTRY glGetVideoCaptureStreamfvNV (GLuint, GLuint, GLenum, GLfloat *);
|
||||
GLAPI void APIENTRY glGetVideoCaptureStreamdvNV (GLuint, GLuint, GLenum, GLdouble *);
|
||||
GLAPI GLenum APIENTRY glVideoCaptureNV (GLuint, GLuint *, GLuint64EXT *);
|
||||
GLAPI void APIENTRY glVideoCaptureStreamParameterivNV (GLuint, GLuint, GLenum, const GLint *);
|
||||
GLAPI void APIENTRY glVideoCaptureStreamParameterfvNV (GLuint, GLuint, GLenum, const GLfloat *);
|
||||
GLAPI void APIENTRY glVideoCaptureStreamParameterdvNV (GLuint, GLuint, GLenum, const GLdouble *);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLBEGINVIDEOCAPTURENVPROC) (GLuint video_capture_slot);
|
||||
typedef void (APIENTRYP PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLintptrARB offset);
|
||||
typedef void (APIENTRYP PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC) (GLuint video_capture_slot, GLuint stream, GLenum frame_region, GLenum target, GLuint texture);
|
||||
typedef void (APIENTRYP PFNGLENDVIDEOCAPTURENVPROC) (GLuint video_capture_slot);
|
||||
typedef void (APIENTRYP PFNGLGETVIDEOCAPTUREIVNVPROC) (GLuint video_capture_slot, GLenum pname, GLint *params);
|
||||
typedef void (APIENTRYP PFNGLGETVIDEOCAPTURESTREAMIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLint *params);
|
||||
typedef void (APIENTRYP PFNGLGETVIDEOCAPTURESTREAMFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLfloat *params);
|
||||
typedef void (APIENTRYP PFNGLGETVIDEOCAPTURESTREAMDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, GLdouble *params);
|
||||
typedef GLenum (APIENTRYP PFNGLVIDEOCAPTURENVPROC) (GLuint video_capture_slot, GLuint *sequence_num, GLuint64EXT *capture_time);
|
||||
typedef void (APIENTRYP PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLint *params);
|
||||
typedef void (APIENTRYP PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLfloat *params);
|
||||
typedef void (APIENTRYP PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC) (GLuint video_capture_slot, GLuint stream, GLenum pname, const GLdouble *params);
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_copy_image
|
||||
#define GL_NV_copy_image 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glCopyImageSubDataNV (GLuint, GLenum, GLint, GLint, GLint, GLint, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
#endif
|
||||
|
||||
#ifndef GL_EXT_separate_shader_objects
|
||||
#define GL_EXT_separate_shader_objects 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glUseShaderProgramEXT (GLenum, GLuint);
|
||||
GLAPI void APIENTRY glActiveProgramEXT (GLuint);
|
||||
GLAPI GLuint APIENTRY glCreateShaderProgramEXT (GLenum, const GLchar *);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLUSESHADERPROGRAMEXTPROC) (GLenum type, GLuint program);
|
||||
typedef void (APIENTRYP PFNGLACTIVEPROGRAMEXTPROC) (GLuint program);
|
||||
typedef GLuint (APIENTRYP PFNGLCREATESHADERPROGRAMEXTPROC) (GLenum type, const GLchar *string);
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_parameter_buffer_object2
|
||||
#define GL_NV_parameter_buffer_object2 1
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_shader_buffer_load
|
||||
#define GL_NV_shader_buffer_load 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glMakeBufferResidentNV (GLenum, GLenum);
|
||||
GLAPI void APIENTRY glMakeBufferNonResidentNV (GLenum);
|
||||
GLAPI GLboolean APIENTRY glIsBufferResidentNV (GLenum);
|
||||
GLAPI void APIENTRY glNamedMakeBufferResidentNV (GLuint, GLenum);
|
||||
GLAPI void APIENTRY glNamedMakeBufferNonResidentNV (GLuint);
|
||||
GLAPI GLboolean APIENTRY glIsNamedBufferResidentNV (GLuint);
|
||||
GLAPI void APIENTRY glGetBufferParameterui64vNV (GLenum, GLenum, GLuint64EXT *);
|
||||
GLAPI void APIENTRY glGetNamedBufferParameterui64vNV (GLuint, GLenum, GLuint64EXT *);
|
||||
GLAPI void APIENTRY glGetIntegerui64vNV (GLenum, GLuint64EXT *);
|
||||
GLAPI void APIENTRY glUniformui64NV (GLint, GLuint64EXT);
|
||||
GLAPI void APIENTRY glUniformui64vNV (GLint, GLsizei, const GLuint64EXT *);
|
||||
GLAPI void APIENTRY glGetUniformui64vNV (GLuint, GLint, GLuint64EXT *);
|
||||
GLAPI void APIENTRY glProgramUniformui64NV (GLuint, GLint, GLuint64EXT);
|
||||
GLAPI void APIENTRY glProgramUniformui64vNV (GLuint, GLint, GLsizei, const GLuint64EXT *);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLMAKEBUFFERRESIDENTNVPROC) (GLenum target, GLenum access);
|
||||
typedef void (APIENTRYP PFNGLMAKEBUFFERNONRESIDENTNVPROC) (GLenum target);
|
||||
typedef GLboolean (APIENTRYP PFNGLISBUFFERRESIDENTNVPROC) (GLenum target);
|
||||
typedef void (APIENTRYP PFNGLNAMEDMAKEBUFFERRESIDENTNVPROC) (GLuint buffer, GLenum access);
|
||||
typedef void (APIENTRYP PFNGLNAMEDMAKEBUFFERNONRESIDENTNVPROC) (GLuint buffer);
|
||||
typedef GLboolean (APIENTRYP PFNGLISNAMEDBUFFERRESIDENTNVPROC) (GLuint buffer);
|
||||
typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERUI64VNVPROC) (GLenum target, GLenum pname, GLuint64EXT *params);
|
||||
typedef void (APIENTRYP PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC) (GLuint buffer, GLenum pname, GLuint64EXT *params);
|
||||
typedef void (APIENTRYP PFNGLGETINTEGERUI64VNVPROC) (GLenum value, GLuint64EXT *result);
|
||||
typedef void (APIENTRYP PFNGLUNIFORMUI64NVPROC) (GLint location, GLuint64EXT value);
|
||||
typedef void (APIENTRYP PFNGLUNIFORMUI64VNVPROC) (GLint location, GLsizei count, const GLuint64EXT *value);
|
||||
typedef void (APIENTRYP PFNGLGETUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLuint64EXT *params);
|
||||
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMUI64NVPROC) (GLuint program, GLint location, GLuint64EXT value);
|
||||
typedef void (APIENTRYP PFNGLPROGRAMUNIFORMUI64VNVPROC) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_vertex_buffer_unified_memory
|
||||
#define GL_NV_vertex_buffer_unified_memory 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glBufferAddressRangeNV (GLenum, GLuint, GLuint64EXT, GLsizeiptr);
|
||||
GLAPI void APIENTRY glVertexFormatNV (GLint, GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glNormalFormatNV (GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glColorFormatNV (GLint, GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glIndexFormatNV (GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glTexCoordFormatNV (GLint, GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glEdgeFlagFormatNV (GLsizei);
|
||||
GLAPI void APIENTRY glSecondaryColorFormatNV (GLint, GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glFogCoordFormatNV (GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glVertexAttribFormatNV (GLuint, GLint, GLenum, GLboolean, GLsizei);
|
||||
GLAPI void APIENTRY glVertexAttribIFormatNV (GLuint, GLint, GLenum, GLsizei);
|
||||
GLAPI void APIENTRY glGetIntegerui64i_vNV (GLenum, GLuint, GLuint64EXT *);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLBUFFERADDRESSRANGENVPROC) (GLenum pname, GLuint index, GLuint64EXT address, GLsizeiptr length);
|
||||
typedef void (APIENTRYP PFNGLVERTEXFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLNORMALFORMATNVPROC) (GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLINDEXFORMATNVPROC) (GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLTEXCOORDFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLEDGEFLAGFORMATNVPROC) (GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLSECONDARYCOLORFORMATNVPROC) (GLint size, GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLFOGCOORDFORMATNVPROC) (GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLVERTEXATTRIBFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLVERTEXATTRIBIFORMATNVPROC) (GLuint index, GLint size, GLenum type, GLsizei stride);
|
||||
typedef void (APIENTRYP PFNGLGETINTEGERUI64I_VNVPROC) (GLenum value, GLuint index, GLuint64EXT *result);
|
||||
#endif
|
||||
|
||||
#ifndef GL_NV_texture_barrier
|
||||
#define GL_NV_texture_barrier 1
|
||||
#ifdef GL_GLEXT_PROTOTYPES
|
||||
GLAPI void APIENTRY glTextureBarrierNV (void);
|
||||
#endif /* GL_GLEXT_PROTOTYPES */
|
||||
typedef void (APIENTRYP PFNGLTEXTUREBARRIERNVPROC) (void);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -76,6 +76,7 @@
|
||||
|
||||
/* GLX 1.4 */
|
||||
#define glXGetProcAddress mglXGetProcAddress
|
||||
#define glXGetProcAddressARB mglXGetProcAddressARB
|
||||
|
||||
|
||||
#endif
|
||||
|
@@ -48,9 +48,9 @@ extern "C" {
|
||||
/*************************************************************/
|
||||
|
||||
/* Header file version number, required by OpenGL ABI for Linux */
|
||||
/* glxext.h last updated 2009/08/03 */
|
||||
/* glxext.h last updated 2009/10/08 */
|
||||
/* Current version at http://www.opengl.org/registry/ */
|
||||
#define GLX_GLXEXT_VERSION 23
|
||||
#define GLX_GLXEXT_VERSION 25
|
||||
|
||||
#ifndef GLX_VERSION_1_3
|
||||
#define GLX_WINDOW_BIT 0x00000001
|
||||
@@ -382,6 +382,20 @@ extern "C" {
|
||||
#ifndef GLX_NV_swap_group
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_video_capture
|
||||
#define GLX_DEVICE_ID_NV 0x20CD
|
||||
#define GLX_UNIQUE_ID_NV 0x20CE
|
||||
#define GLX_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
|
||||
#endif
|
||||
|
||||
#ifndef GLX_EXT_swap_control
|
||||
#define GLX_SWAP_INTERVAL_EXT 0x20F1
|
||||
#define GLX_MAX_SWAP_INTERVAL_EXT 0x20F2
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_copy_image
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************/
|
||||
|
||||
@@ -415,6 +429,14 @@ typedef struct {
|
||||
} GLXBufferClobberEventSGIX;
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_video_output
|
||||
typedef unsigned int GLXVideoDeviceNV;
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_video_capture
|
||||
typedef XID GLXVideoCaptureDeviceNV;
|
||||
#endif
|
||||
|
||||
#ifndef GLEXT_64_TYPES_DEFINED
|
||||
/* This code block is duplicated in glext.h, so must be protected */
|
||||
#define GLEXT_64_TYPES_DEFINED
|
||||
@@ -827,14 +849,80 @@ typedef void ( * PFNGLXRELEASETEXIMAGEEXTPROC) (Display *dpy, GLXDrawable drawab
|
||||
|
||||
#ifndef GLX_NV_present_video
|
||||
#define GLX_NV_present_video 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern unsigned int * glXEnumerateVideoDevicesNV (Display *, int, int *);
|
||||
extern int glXBindVideoDeviceNV (Display *, unsigned int, unsigned int, const int *);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef unsigned int * ( * PFNGLXENUMERATEVIDEODEVICESNVPROC) (Display *dpy, int screen, int *nelements);
|
||||
typedef int ( * PFNGLXBINDVIDEODEVICENVPROC) (Display *dpy, unsigned int video_slot, unsigned int video_device, const int *attrib_list);
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_video_out
|
||||
#define GLX_NV_video_out 1
|
||||
#ifndef GLX_NV_video_output
|
||||
#define GLX_NV_video_output 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern int glXGetVideoDeviceNV (Display *, int, int, GLXVideoDeviceNV *);
|
||||
extern int glXReleaseVideoDeviceNV (Display *, int, GLXVideoDeviceNV);
|
||||
extern int glXBindVideoImageNV (Display *, GLXVideoDeviceNV, GLXPbuffer, int);
|
||||
extern int glXReleaseVideoImageNV (Display *, GLXPbuffer);
|
||||
extern int glXSendPbufferToVideoNV (Display *, GLXPbuffer, int, unsigned long *, GLboolean);
|
||||
extern int glXGetVideoInfoNV (Display *, int, GLXVideoDeviceNV, unsigned long *, unsigned long *);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef int ( * PFNGLXGETVIDEODEVICENVPROC) (Display *dpy, int screen, int numVideoDevices, GLXVideoDeviceNV *pVideoDevice);
|
||||
typedef int ( * PFNGLXRELEASEVIDEODEVICENVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice);
|
||||
typedef int ( * PFNGLXBINDVIDEOIMAGENVPROC) (Display *dpy, GLXVideoDeviceNV VideoDevice, GLXPbuffer pbuf, int iVideoBuffer);
|
||||
typedef int ( * PFNGLXRELEASEVIDEOIMAGENVPROC) (Display *dpy, GLXPbuffer pbuf);
|
||||
typedef int ( * PFNGLXSENDPBUFFERTOVIDEONVPROC) (Display *dpy, GLXPbuffer pbuf, int iBufferType, unsigned long *pulCounterPbuffer, GLboolean bBlock);
|
||||
typedef int ( * PFNGLXGETVIDEOINFONVPROC) (Display *dpy, int screen, GLXVideoDeviceNV VideoDevice, unsigned long *pulCounterOutputPbuffer, unsigned long *pulCounterOutputVideo);
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_swap_group
|
||||
#define GLX_NV_swap_group 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern Bool glXJoinSwapGroupNV (Display *, GLXDrawable, GLuint);
|
||||
extern Bool glXBindSwapBarrierNV (Display *, GLuint, GLuint);
|
||||
extern Bool glXQuerySwapGroupNV (Display *, GLXDrawable, GLuint *, GLuint *);
|
||||
extern Bool glXQueryMaxSwapGroupsNV (Display *, int, GLuint *, GLuint *);
|
||||
extern Bool glXQueryFrameCountNV (Display *, int, GLuint *);
|
||||
extern Bool glXResetFrameCountNV (Display *, int);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef Bool ( * PFNGLXJOINSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint group);
|
||||
typedef Bool ( * PFNGLXBINDSWAPBARRIERNVPROC) (Display *dpy, GLuint group, GLuint barrier);
|
||||
typedef Bool ( * PFNGLXQUERYSWAPGROUPNVPROC) (Display *dpy, GLXDrawable drawable, GLuint *group, GLuint *barrier);
|
||||
typedef Bool ( * PFNGLXQUERYMAXSWAPGROUPSNVPROC) (Display *dpy, int screen, GLuint *maxGroups, GLuint *maxBarriers);
|
||||
typedef Bool ( * PFNGLXQUERYFRAMECOUNTNVPROC) (Display *dpy, int screen, GLuint *count);
|
||||
typedef Bool ( * PFNGLXRESETFRAMECOUNTNVPROC) (Display *dpy, int screen);
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_video_capture
|
||||
#define GLX_NV_video_capture 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern int glXBindVideoCaptureDeviceNV (Display *, unsigned int, GLXVideoCaptureDeviceNV);
|
||||
extern GLXVideoCaptureDeviceNV * glXEnumerateVideoCaptureDevicesNV (Display *, int, int *);
|
||||
extern void glXLockVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV);
|
||||
extern int glXQueryVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV, int, int *);
|
||||
extern void glXReleaseVideoCaptureDeviceNV (Display *, GLXVideoCaptureDeviceNV);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef int ( * PFNGLXBINDVIDEOCAPTUREDEVICENVPROC) (Display *dpy, unsigned int video_capture_slot, GLXVideoCaptureDeviceNV device);
|
||||
typedef GLXVideoCaptureDeviceNV * ( * PFNGLXENUMERATEVIDEOCAPTUREDEVICESNVPROC) (Display *dpy, int screen, int *nelements);
|
||||
typedef void ( * PFNGLXLOCKVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
|
||||
typedef int ( * PFNGLXQUERYVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device, int attribute, int *value);
|
||||
typedef void ( * PFNGLXRELEASEVIDEOCAPTUREDEVICENVPROC) (Display *dpy, GLXVideoCaptureDeviceNV device);
|
||||
#endif
|
||||
|
||||
#ifndef GLX_EXT_swap_control
|
||||
#define GLX_EXT_swap_control 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern int glXSwapIntervalEXT (Display *, GLXDrawable, int);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef int ( * PFNGLXSWAPINTERVALEXTPROC) (Display *dpy, GLXDrawable drawable, int interval);
|
||||
#endif
|
||||
|
||||
#ifndef GLX_NV_copy_image
|
||||
#define GLX_NV_copy_image 1
|
||||
#ifdef GLX_GLXEXT_PROTOTYPES
|
||||
extern void glXCopyImageSubDataNV (Display *, GLXContext, GLuint, GLenum, GLint, GLint, GLint, GLint, GLXContext, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei);
|
||||
#endif /* GLX_GLXEXT_PROTOTYPES */
|
||||
typedef void ( * PFNGLXCOPYIMAGESUBDATANVPROC) (Display *dpy, GLXContext srcCtx, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, GLXContext dstCtx, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
#endif
|
||||
|
||||
|
||||
|
@@ -48,9 +48,9 @@ extern "C" {
|
||||
/*************************************************************/
|
||||
|
||||
/* Header file version number */
|
||||
/* wglext.h last updated 2009/08/03 */
|
||||
/* wglext.h last updated 2009/09/16 */
|
||||
/* Current version at http://www.opengl.org/registry/ */
|
||||
#define WGL_WGLEXT_VERSION 15
|
||||
#define WGL_WGLEXT_VERSION 17
|
||||
|
||||
#ifndef WGL_ARB_buffer_region
|
||||
#define WGL_FRONT_COLOR_BUFFER_BIT_ARB 0x00000001
|
||||
@@ -388,6 +388,14 @@ extern "C" {
|
||||
#define WGL_GPU_NUM_SPI_AMD 0x21A8
|
||||
#endif
|
||||
|
||||
#ifndef NV_video_capture
|
||||
#define WGL_UNIQUE_ID_NV 0x20CE
|
||||
#define WGL_NUM_VIDEO_CAPTURE_SLOTS_NV 0x20CF
|
||||
#endif
|
||||
|
||||
#ifndef NV_copy_image
|
||||
#endif
|
||||
|
||||
|
||||
/*************************************************************/
|
||||
|
||||
@@ -400,7 +408,7 @@ DECLARE_HANDLE(HPBUFFEREXT);
|
||||
#ifndef WGL_NV_present_video
|
||||
DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
|
||||
#endif
|
||||
#ifndef WGL_NV_video_out
|
||||
#ifndef WGL_NV_video_output
|
||||
DECLARE_HANDLE(HPVIDEODEV);
|
||||
#endif
|
||||
#ifndef WGL_NV_gpu_affinity
|
||||
@@ -415,6 +423,9 @@ typedef struct _GPU_DEVICE {
|
||||
RECT rcVirtualScreen;
|
||||
} GPU_DEVICE, *PGPU_DEVICE;
|
||||
#endif
|
||||
#ifndef WGL_NV_video_capture
|
||||
DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
|
||||
#endif
|
||||
|
||||
#ifndef WGL_ARB_buffer_region
|
||||
#define WGL_ARB_buffer_region 1
|
||||
@@ -750,8 +761,8 @@ typedef BOOL (WINAPI * PFNWGLBINDVIDEODEVICENVPROC) (HDC hDC, unsigned int uVide
|
||||
typedef BOOL (WINAPI * PFNWGLQUERYCURRENTCONTEXTNVPROC) (int iAttribute, int *piValue);
|
||||
#endif
|
||||
|
||||
#ifndef WGL_NV_video_out
|
||||
#define WGL_NV_video_out 1
|
||||
#ifndef WGL_NV_video_output
|
||||
#define WGL_NV_video_output 1
|
||||
#ifdef WGL_WGLEXT_PROTOTYPES
|
||||
extern BOOL WINAPI wglGetVideoDeviceNV (HDC, int, HPVIDEODEV *);
|
||||
extern BOOL WINAPI wglReleaseVideoDeviceNV (HPVIDEODEV);
|
||||
@@ -826,6 +837,30 @@ typedef HGLRC (WINAPI * PFNWGLGETCURRENTASSOCIATEDCONTEXTAMDPROC) (void);
|
||||
typedef VOID (WINAPI * PFNWGLBLITCONTEXTFRAMEBUFFERAMDPROC) (HGLRC dstCtx, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||
#endif
|
||||
|
||||
#ifndef WGL_NV_video_capture
|
||||
#define WGL_NV_video_capture 1
|
||||
#ifdef WGL_WGLEXT_PROTOTYPES
|
||||
extern BOOL WINAPI wglBindVideoCaptureDeviceNV (UINT, HVIDEOINPUTDEVICENV);
|
||||
extern UINT WINAPI wglEnumerateVideoCaptureDevicesNV (HDC, HVIDEOINPUTDEVICENV *);
|
||||
extern BOOL WINAPI wglLockVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV);
|
||||
extern BOOL WINAPI wglQueryVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV, int, int *);
|
||||
extern BOOL WINAPI wglReleaseVideoCaptureDeviceNV (HDC, HVIDEOINPUTDEVICENV);
|
||||
#endif /* WGL_WGLEXT_PROTOTYPES */
|
||||
typedef BOOL (WINAPI * PFNWGLBINDVIDEOCAPTUREDEVICENVPROC) (UINT uVideoSlot, HVIDEOINPUTDEVICENV hDevice);
|
||||
typedef UINT (WINAPI * PFNWGLENUMERATEVIDEOCAPTUREDEVICESNVPROC) (HDC hDc, HVIDEOINPUTDEVICENV *phDeviceList);
|
||||
typedef BOOL (WINAPI * PFNWGLLOCKVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
|
||||
typedef BOOL (WINAPI * PFNWGLQUERYVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice, int iAttribute, int *piValue);
|
||||
typedef BOOL (WINAPI * PFNWGLRELEASEVIDEOCAPTUREDEVICENVPROC) (HDC hDc, HVIDEOINPUTDEVICENV hDevice);
|
||||
#endif
|
||||
|
||||
#ifndef WGL_NV_copy_image
|
||||
#define WGL_NV_copy_image 1
|
||||
#ifdef WGL_WGLEXT_PROTOTYPES
|
||||
extern BOOL WINAPI wglCopyImageSubDataNV (HGLRC, GLuint, GLenum, GLint, GLint, GLint, GLint, HGLRC, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei);
|
||||
#endif /* WGL_WGLEXT_PROTOTYPES */
|
||||
typedef BOOL (WINAPI * PFNWGLCOPYIMAGESUBDATANVPROC) (HGLRC hSrcRC, GLuint srcName, GLenum srcTarget, GLint srcLevel, GLint srcX, GLint srcY, GLint srcZ, HGLRC hDstRC, GLuint dstName, GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
1
progs/.gitignore
vendored
Normal file
1
progs/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
*.dSYM
|
@@ -15,7 +15,7 @@ message:
|
||||
|
||||
|
||||
subdirs:
|
||||
@for dir in $(SUBDIRS) ; do \
|
||||
@list='$(SUBDIRS)'; for dir in $$list ; do \
|
||||
if [ -d $$dir ] ; then \
|
||||
(cd $$dir && $(MAKE)) || exit 1 ; \
|
||||
fi \
|
||||
@@ -25,7 +25,7 @@ subdirs:
|
||||
install:
|
||||
|
||||
clean:
|
||||
-@for dir in $(SUBDIRS) tests ; do \
|
||||
@list='$(SUBDIRS)'; for dir in $$list tests ; do \
|
||||
if [ -d $$dir ] ; then \
|
||||
(cd $$dir && $(MAKE) clean) ; \
|
||||
fi \
|
||||
|
@@ -15,8 +15,6 @@
|
||||
|
||||
#define DEPTH 5.0f
|
||||
|
||||
static PFNGLFOGCOORDPOINTEREXTPROC glFogCoordPointer_ext;
|
||||
|
||||
static GLfloat camz;
|
||||
|
||||
static GLint fogMode;
|
||||
|
@@ -353,6 +353,7 @@ MakeSphere(void)
|
||||
glNewList(SphereList, GL_COMPILE);
|
||||
gluSphere(obj, 2.0f, 10, 5);
|
||||
glEndList();
|
||||
gluDeleteQuadric(obj);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -133,6 +133,8 @@ initdlists(void)
|
||||
|
||||
glEndList();
|
||||
}
|
||||
|
||||
gluDeleteQuadric(obj);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -245,6 +245,10 @@ loadImageTextures(void)
|
||||
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
|
||||
}
|
||||
glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, borderColor);
|
||||
|
||||
free(texData3);
|
||||
free(texData4);
|
||||
free(image);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -834,6 +834,8 @@ initdlists(void)
|
||||
gluQuadricTexture(obj, GL_TRUE);
|
||||
gluSphere(obj, SPHERE_RADIUS, 16, 16);
|
||||
glEndList();
|
||||
|
||||
gluDeleteQuadric(obj);
|
||||
}
|
||||
|
||||
int
|
||||
|
@@ -31,7 +31,7 @@ void main()
|
||||
float iter;
|
||||
|
||||
// for (iter = 0.0; iter < MaxIterations && r2 < 4.0; ++iter)
|
||||
for (iter = 0.0; iter < 12 && r2 < 4.0; ++iter)
|
||||
for (iter = 0.0; iter < 12.0 && r2 < 4.0; ++iter)
|
||||
{
|
||||
float tempreal = real;
|
||||
|
||||
|
@@ -10,16 +10,15 @@ LIB_DEP = \
|
||||
$(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) \
|
||||
$(TOP)/$(LIB_DIR)/$(GLUT_LIB_NAME)
|
||||
|
||||
LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
|
||||
|
||||
INCLUDE_DIRS = -I$(TOP)/progs/util
|
||||
LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) \
|
||||
-l$(GL_LIB) $(APP_LIB_DEPS)
|
||||
|
||||
# using : to avoid APP_CC pointing to CC loop
|
||||
CC:=$(APP_CC)
|
||||
CFLAGS += -I$(INCDIR)
|
||||
LDLIBS=$(LIBS)
|
||||
CC := $(APP_CC)
|
||||
CFLAGS := -I$(INCDIR) $(CFLAGS)
|
||||
LDLIBS = $(LIBS)
|
||||
|
||||
DEMO_SOURCES = \
|
||||
PROG_SOURCES = \
|
||||
array.c \
|
||||
bitmap.c \
|
||||
brick.c \
|
||||
@@ -59,8 +58,8 @@ UTIL_SOURCES = \
|
||||
readtex.c
|
||||
|
||||
UTIL_OBJS = $(UTIL_SOURCES:.c=.o)
|
||||
PROG_OBJS = $(DEMO_SOURCES:.c=.o)
|
||||
PROGS = $(DEMO_SOURCES:%.c=%)
|
||||
PROG_OBJS = $(PROG_SOURCES:.c=.o)
|
||||
PROGS = $(PROG_SOURCES:%.c=%)
|
||||
|
||||
##### TARGETS #####
|
||||
|
||||
|
@@ -36,7 +36,7 @@ static GLint win = 0;
|
||||
|
||||
static GLfloat xRot = 20.0f, yRot = 0.0f, zRot = 0.0f;
|
||||
|
||||
static GLuint tangentAttrib;
|
||||
static GLint tangentAttrib;
|
||||
|
||||
static GLboolean Anim = GL_FALSE;
|
||||
|
||||
|
@@ -369,7 +369,7 @@ static void keyPress(unsigned char key, int x, int y)
|
||||
case 27:
|
||||
exit(0);
|
||||
default:
|
||||
return;
|
||||
break;
|
||||
}
|
||||
glutPostRedisplay();
|
||||
}
|
||||
|
@@ -140,6 +140,7 @@ MakeSphere(void)
|
||||
glNewList(SphereList, GL_COMPILE);
|
||||
gluSphere(obj, 2.0f, 30, 15);
|
||||
glEndList();
|
||||
gluDeleteQuadric(obj);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -22,22 +22,22 @@ static const char *FragShaderText[ 4 ] = {
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].w ) * 0.5 + 0.5;\n"
|
||||
" gl_FragColor.a = 1;\n"
|
||||
" gl_FragColor.a = 1.0;\n"
|
||||
"}\n",
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xw ) * 0.5 + 0.5;\n"
|
||||
" gl_FragColor.a = 1;\n"
|
||||
" gl_FragColor.a = 1.0;\n"
|
||||
"}\n",
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyw ) * 0.5 + 0.5;\n"
|
||||
" gl_FragColor.a = 1;\n"
|
||||
" gl_FragColor.a = 1.0;\n"
|
||||
"}\n",
|
||||
"void main()\n"
|
||||
"{\n"
|
||||
" gl_FragColor.rgb = noise3( gl_TexCoord[ 0 ].xyzw ) * 0.5 + 0.5;\n"
|
||||
" gl_FragColor.a = 1;\n"
|
||||
" gl_FragColor.a = 1.0;\n"
|
||||
"}\n"
|
||||
};
|
||||
|
||||
@@ -125,6 +125,7 @@ Key(unsigned char key, int x, int y)
|
||||
case 'a':
|
||||
Anim = !Anim;
|
||||
glutIdleFunc(Anim ? Idle : NULL);
|
||||
break;
|
||||
case 's':
|
||||
Slice -= step;
|
||||
break;
|
||||
@@ -193,7 +194,7 @@ LoadAndCompileShader(GLuint shader, const char *text)
|
||||
GLchar log[1000];
|
||||
GLsizei len;
|
||||
glGetShaderInfoLog(shader, 1000, &len, log);
|
||||
fprintf(stderr, "noise: problem compiling shader: %s\n", log);
|
||||
fprintf(stderr, "multinoise: problem compiling shader: %s\n", log);
|
||||
exit(1);
|
||||
}
|
||||
else {
|
||||
|
@@ -28,7 +28,7 @@ static const char *FragShaderText =
|
||||
" vec4 p;\n"
|
||||
" p.xy = gl_TexCoord[0].xy;\n"
|
||||
" p.z = Slice;\n"
|
||||
" p.w = 0;\n"
|
||||
" p.w = 0.0;\n"
|
||||
" vec4 n = noise4(p * scale);\n"
|
||||
" gl_FragColor = n * Scale + Bias;\n"
|
||||
"}\n";
|
||||
@@ -119,6 +119,7 @@ Key(unsigned char key, int x, int y)
|
||||
case 'a':
|
||||
Anim = !Anim;
|
||||
glutIdleFunc(Anim ? Idle : NULL);
|
||||
break;
|
||||
case 's':
|
||||
Slice -= step;
|
||||
break;
|
||||
|
@@ -16,6 +16,9 @@
|
||||
#include <GL/glut.h>
|
||||
#include "shaderutil.h"
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.1415926535
|
||||
#endif
|
||||
|
||||
static char *FragProgFile = "skinning.frag";
|
||||
static char *VertProgFile = "skinning.vert";
|
||||
|
@@ -14,6 +14,9 @@
|
||||
#include <GL/glew.h>
|
||||
#include <GL/glut.h>
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.1415926535
|
||||
#endif
|
||||
|
||||
static GLint WinWidth = 300, WinHeight = 300;
|
||||
static GLint win = 0;
|
||||
|
@@ -179,9 +179,9 @@ Init(void)
|
||||
"\n"
|
||||
"void main() {\n"
|
||||
" vec2 p = gl_FragCoord.xy; \n"
|
||||
" if (crs(v1 - v0, p - v0) >= 0 && \n"
|
||||
" crs(v2 - v1, p - v1) >= 0 && \n"
|
||||
" crs(v0 - v2, p - v2) >= 0) \n"
|
||||
" if (crs(v1 - v0, p - v0) >= 0.0 && \n"
|
||||
" crs(v2 - v1, p - v1) >= 0.0 && \n"
|
||||
" crs(v0 - v2, p - v2) >= 0.0) \n"
|
||||
" gl_FragColor = vec4(1.0); \n"
|
||||
" else \n"
|
||||
" gl_FragColor = vec4(0.5); \n"
|
||||
|
@@ -16,6 +16,9 @@
|
||||
#include <GL/glut.h>
|
||||
#include "shaderutil.h"
|
||||
|
||||
#ifndef M_PI
|
||||
#define M_PI 3.1415926535
|
||||
#endif
|
||||
|
||||
static GLint WinWidth = 300, WinHeight = 300;
|
||||
static char *FragProgFile = NULL;
|
||||
|
@@ -116,6 +116,8 @@ void init(void)
|
||||
glNewList(startList+3, GL_COMPILE);
|
||||
gluPartialDisk(qobj, 0.0, 1.0, 20, 4, 0.0, 225.0);
|
||||
glEndList();
|
||||
|
||||
gluDeleteQuadric(qobj);
|
||||
}
|
||||
|
||||
void display(void)
|
||||
|
@@ -10,7 +10,7 @@ LIB_DEP = $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) $(T
|
||||
LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
|
||||
|
||||
PROGS = accum bitmap1 bitmap2 blendeq blendxor copy cursor depth eval fog \
|
||||
font line logo nurb olympic overlay point prim quad select \
|
||||
font line logo nurb olympic overlay point prim rgbtoppm quad select \
|
||||
shape sphere star stencil stretch texture tri wave
|
||||
|
||||
|
||||
|
@@ -86,13 +86,19 @@ static ImageRec *ImageOpen(char *fileName)
|
||||
exit(1);
|
||||
}
|
||||
if ((image->file = fopen(fileName, "rb")) == NULL) {
|
||||
return NULL;
|
||||
free(image);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
fread(image, 1, 12, image->file);
|
||||
|
||||
if (swapFlag) {
|
||||
ConvertShort(&image->imagic, 6);
|
||||
ConvertShort(&image->imagic, 1);
|
||||
ConvertShort(&image->type, 1);
|
||||
ConvertShort(&image->dim, 1);
|
||||
ConvertShort(&image->xsize, 1);
|
||||
ConvertShort(&image->ysize, 1);
|
||||
ConvertShort(&image->zsize, 1);
|
||||
}
|
||||
|
||||
image->tmp = (unsigned char *)malloc(image->xsize*256);
|
||||
@@ -224,6 +230,7 @@ read_rgb_texture(char *name, int *width, int *height)
|
||||
if (gbuf) free(gbuf);
|
||||
if (bbuf) free(bbuf);
|
||||
if (abuf) free(abuf);
|
||||
ImageClose(image);
|
||||
return NULL;
|
||||
}
|
||||
ptr = base;
|
||||
|
@@ -109,6 +109,7 @@ static rawImageRec *RawImageOpen(const char *fileName)
|
||||
raw->file = fopen(baseName + 1, "rb");
|
||||
if(raw->file == NULL) {
|
||||
perror(fileName);
|
||||
free(raw);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
@@ -116,7 +117,12 @@ static rawImageRec *RawImageOpen(const char *fileName)
|
||||
fread(raw, 1, 12, raw->file);
|
||||
|
||||
if (swapFlag) {
|
||||
ConvertShort(&raw->imagic, 6);
|
||||
ConvertShort(&raw->imagic, 1);
|
||||
ConvertShort(&raw->type, 1);
|
||||
ConvertShort(&raw->dim, 1);
|
||||
ConvertShort(&raw->sizeX, 1);
|
||||
ConvertShort(&raw->sizeY, 1);
|
||||
ConvertShort(&raw->sizeZ, 1);
|
||||
}
|
||||
|
||||
raw->tmp = (unsigned char *)malloc(raw->sizeX*256);
|
||||
@@ -129,6 +135,12 @@ static rawImageRec *RawImageOpen(const char *fileName)
|
||||
if (raw->tmp == NULL || raw->tmpR == NULL || raw->tmpG == NULL ||
|
||||
raw->tmpB == NULL) {
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
free(raw->tmp);
|
||||
free(raw->tmpR);
|
||||
free(raw->tmpG);
|
||||
free(raw->tmpB);
|
||||
free(raw->tmpA);
|
||||
free(raw);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -138,6 +150,14 @@ static rawImageRec *RawImageOpen(const char *fileName)
|
||||
raw->rowSize = (GLint *)malloc(x);
|
||||
if (raw->rowStart == NULL || raw->rowSize == NULL) {
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
free(raw->tmp);
|
||||
free(raw->tmpR);
|
||||
free(raw->tmpG);
|
||||
free(raw->tmpB);
|
||||
free(raw->tmpA);
|
||||
free(raw->rowStart);
|
||||
free(raw->rowSize);
|
||||
free(raw);
|
||||
return NULL;
|
||||
}
|
||||
raw->rleEnd = 512 + (2 * x);
|
||||
@@ -215,6 +235,7 @@ static void RawImageGetData(rawImageRec *raw, TK_RGBImageRec *final)
|
||||
final->data = (unsigned char *)malloc((raw->sizeX+1)*(raw->sizeY+1)*4);
|
||||
if (final->data == NULL) {
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
return;
|
||||
}
|
||||
|
||||
ptr = final->data;
|
||||
@@ -250,6 +271,7 @@ static TK_RGBImageRec *tkRGBImageLoad(const char *fileName)
|
||||
final = (TK_RGBImageRec *)malloc(sizeof(TK_RGBImageRec));
|
||||
if (final == NULL) {
|
||||
fprintf(stderr, "Out of memory!\n");
|
||||
RawImageClose(raw);
|
||||
return NULL;
|
||||
}
|
||||
final->sizeX = raw->sizeX;
|
||||
@@ -305,6 +327,7 @@ GLboolean LoadRGBMipmaps2( const char *imageFile, GLenum target,
|
||||
fprintf(stderr,
|
||||
"Error in LoadRGBMipmaps %d-component images not implemented\n",
|
||||
image->components );
|
||||
FreeImage(image);
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
@@ -356,6 +379,7 @@ GLubyte *LoadRGBImage( const char *imageFile, GLint *width, GLint *height,
|
||||
fprintf(stderr,
|
||||
"Error in LoadRGBImage %d-component images not implemented\n",
|
||||
image->components );
|
||||
FreeImage(image);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -364,8 +388,10 @@ GLubyte *LoadRGBImage( const char *imageFile, GLint *width, GLint *height,
|
||||
|
||||
bytes = image->sizeX * image->sizeY * image->components;
|
||||
buffer = (GLubyte *) malloc(bytes);
|
||||
if (!buffer)
|
||||
if (!buffer) {
|
||||
FreeImage(image);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
memcpy( (void *) buffer, (void *) image->data, bytes );
|
||||
|
||||
@@ -438,6 +464,7 @@ GLushort *LoadYUVImage( const char *imageFile, GLint *width, GLint *height )
|
||||
fprintf(stderr,
|
||||
"Error in LoadYUVImage %d-component images not implemented\n",
|
||||
image->components );
|
||||
FreeImage(image);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@@ -25,7 +25,11 @@ GLboolean
|
||||
ShadersSupported(void)
|
||||
{
|
||||
const char *version = (const char *) glGetString(GL_VERSION);
|
||||
if (version[0] == '2' && version[1] == '.') {
|
||||
|
||||
/* NVIDIA binary drivers will return "3.0.0", and they clearly support
|
||||
* shaders.
|
||||
*/
|
||||
if (version[0] >= '2' && version[1] == '.') {
|
||||
return GL_TRUE;
|
||||
}
|
||||
else if (glutExtensionSupported("GL_ARB_vertex_shader")
|
||||
@@ -34,7 +38,7 @@ ShadersSupported(void)
|
||||
fprintf(stderr, "Warning: Trying ARB GLSL instead of OpenGL 2.x. This may not work.\n");
|
||||
return GL_TRUE;
|
||||
}
|
||||
return GL_TRUE;
|
||||
return GL_FALSE;
|
||||
}
|
||||
|
||||
|
||||
@@ -84,6 +88,7 @@ CompileShaderFile(GLenum shaderType, const char *filename)
|
||||
f = fopen(filename, "r");
|
||||
if (!f) {
|
||||
fprintf(stderr, "Unable to open shader file %s\n", filename);
|
||||
free(buffer);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -94,6 +99,8 @@ CompileShaderFile(GLenum shaderType, const char *filename)
|
||||
shader = CompileShaderText(shaderType, buffer);
|
||||
}
|
||||
else {
|
||||
fclose(f);
|
||||
free(buffer);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -55,6 +55,7 @@ setup_ipc(void)
|
||||
|
||||
printf("Waiting for connection from another 'corender'\n");
|
||||
Sock = AcceptConnection(k);
|
||||
assert(Sock != -1);
|
||||
|
||||
printf("Got connection, sending windowID\n");
|
||||
|
||||
|
@@ -95,7 +95,7 @@ enum sync_type {
|
||||
static void usage(char *name)
|
||||
{
|
||||
printf("usage: %s [-w <width>] [-h <height>] [-s<sync method>] "
|
||||
"[-vc]\n", name);
|
||||
"[-v]\n", name);
|
||||
printf("\t-s<sync method>:\n");
|
||||
printf("\t\tn: none\n");
|
||||
printf("\t\ts: SGI video sync extension\n");
|
||||
|
@@ -401,6 +401,10 @@ print_screen_info(Display *dpy, int scrnum, Bool allowDirect, GLboolean limits)
|
||||
|
||||
root = RootWindow(dpy, scrnum);
|
||||
|
||||
/*
|
||||
* Find a basic GLX visual. We'll then create a rendering context and
|
||||
* query various info strings.
|
||||
*/
|
||||
visinfo = glXChooseVisual(dpy, scrnum, attribSingle);
|
||||
if (!visinfo)
|
||||
visinfo = glXChooseVisual(dpy, scrnum, attribDouble);
|
||||
@@ -409,26 +413,29 @@ print_screen_info(Display *dpy, int scrnum, Bool allowDirect, GLboolean limits)
|
||||
ctx = glXCreateContext( dpy, visinfo, NULL, allowDirect );
|
||||
|
||||
#ifdef GLX_VERSION_1_3
|
||||
{
|
||||
/* Try glXChooseFBConfig() if glXChooseVisual didn't work.
|
||||
* XXX when would that happen?
|
||||
*/
|
||||
if (!visinfo) {
|
||||
int fbAttribSingle[] = {
|
||||
GLX_RENDER_TYPE, GLX_RGBA_BIT,
|
||||
GLX_RED_SIZE, 1,
|
||||
GLX_GREEN_SIZE, 1,
|
||||
GLX_BLUE_SIZE, 1,
|
||||
GLX_DOUBLEBUFFER, GL_TRUE,
|
||||
GLX_DOUBLEBUFFER, GL_FALSE,
|
||||
None };
|
||||
int fbAttribDouble[] = {
|
||||
GLX_RENDER_TYPE, GLX_RGBA_BIT,
|
||||
GLX_RED_SIZE, 1,
|
||||
GLX_GREEN_SIZE, 1,
|
||||
GLX_BLUE_SIZE, 1,
|
||||
GLX_DOUBLEBUFFER, GL_TRUE,
|
||||
None };
|
||||
GLXFBConfig *configs = NULL;
|
||||
int nConfigs;
|
||||
|
||||
if (!visinfo)
|
||||
configs = glXChooseFBConfig(dpy, scrnum, fbAttribSingle, &nConfigs);
|
||||
if (!visinfo)
|
||||
configs = glXChooseFBConfig(dpy, scrnum, fbAttribSingle, &nConfigs);
|
||||
if (!configs)
|
||||
configs = glXChooseFBConfig(dpy, scrnum, fbAttribDouble, &nConfigs);
|
||||
|
||||
if (configs) {
|
||||
@@ -964,8 +971,10 @@ print_fbconfig_info(Display *dpy, int scrnum, InfoMode mode)
|
||||
/* get list of all fbconfigs on this screen */
|
||||
fbconfigs = glXGetFBConfigs(dpy, scrnum, &numFBConfigs);
|
||||
|
||||
if (numFBConfigs == 0)
|
||||
if (numFBConfigs == 0) {
|
||||
XFree(fbconfigs);
|
||||
return;
|
||||
}
|
||||
|
||||
printf("%d GLXFBConfigs:\n", numFBConfigs);
|
||||
if (mode == Normal)
|
||||
|
@@ -294,6 +294,7 @@ process_input(Display *dpy, Window win) {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case ButtonPress:
|
||||
prevx = event.xbutton.x;
|
||||
prevy = event.xbutton.y;
|
||||
|
@@ -131,6 +131,7 @@ MakePbuffer( Display *dpy, int screen, int width, int height )
|
||||
fbConfigs = ChooseFBConfig(dpy, screen, fbAttribs[attempt], &nConfigs);
|
||||
if (nConfigs==0 || !fbConfigs) {
|
||||
printf("Note: glXChooseFBConfig(%s) failed\n", fbString[attempt]);
|
||||
XFree(fbConfigs);
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -143,7 +144,7 @@ MakePbuffer( Display *dpy, int screen, int width, int height )
|
||||
|
||||
/* Create the pbuffer using first fbConfig in the list that works. */
|
||||
for (i=0;i<nConfigs;i++) {
|
||||
pBuffer = CreatePbuffer(dpy, screen, fbConfigs[i], width, height, preserve, largest);
|
||||
pBuffer = CreatePbuffer(dpy, screen, fbConfigs[i], width, height, largest, preserve);
|
||||
if (pBuffer) {
|
||||
gFBconfig = fbConfigs[i];
|
||||
gWidth = width;
|
||||
@@ -210,6 +211,21 @@ Setup(int width, int height)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Test drawable queries */
|
||||
{
|
||||
unsigned int v;
|
||||
glXQueryDrawable( gDpy, gPBuffer, GLX_WIDTH, &v);
|
||||
printf("GLX_WIDTH = %u\n", v);
|
||||
glXQueryDrawable( gDpy, gPBuffer, GLX_HEIGHT, &v);
|
||||
printf("GLX_HEIGHT = %u\n", v);
|
||||
glXQueryDrawable( gDpy, gPBuffer, GLX_PRESERVED_CONTENTS, &v);
|
||||
printf("GLX_PRESERVED_CONTENTS = %u\n", v);
|
||||
glXQueryDrawable( gDpy, gPBuffer, GLX_LARGEST_PBUFFER, &v);
|
||||
printf("GLX_LARGEST_PBUFFER = %u\n", v);
|
||||
glXQueryDrawable( gDpy, gPBuffer, GLX_FBCONFIG_ID, &v);
|
||||
printf("GLX_FBCONFIG_ID = %u\n", v);
|
||||
}
|
||||
|
||||
/* Get corresponding XVisualInfo */
|
||||
visInfo = GetVisualFromFBConfig(gDpy, gScreen, gFBconfig);
|
||||
if (!visInfo) {
|
||||
|
@@ -447,7 +447,7 @@ main(int argc, char *argv[])
|
||||
const char *dpyName = XDisplayName(NULL);
|
||||
pthread_t t0, t1, t2, t3;
|
||||
struct thread_init_arg tia0, tia1, tia2, tia3;
|
||||
struct window *h0, *h1, *h2, *h3;
|
||||
struct window *h0;
|
||||
|
||||
XInitThreads();
|
||||
|
||||
@@ -462,9 +462,9 @@ main(int argc, char *argv[])
|
||||
|
||||
/* four windows and contexts sharing display lists and texture objects */
|
||||
h0 = AddWindow(gDpy, dpyName, 10, 10, gCtx);
|
||||
h1 = AddWindow(gDpy, dpyName, 330, 10, gCtx);
|
||||
h2 = AddWindow(gDpy, dpyName, 10, 350, gCtx);
|
||||
h3 = AddWindow(gDpy, dpyName, 330, 350, gCtx);
|
||||
(void) AddWindow(gDpy, dpyName, 330, 10, gCtx);
|
||||
(void) AddWindow(gDpy, dpyName, 10, 350, gCtx);
|
||||
(void) AddWindow(gDpy, dpyName, 330, 350, gCtx);
|
||||
|
||||
if (!glXMakeCurrent(gDpy, h0->Win, gCtx)) {
|
||||
Error(dpyName, "glXMakeCurrent failed for init thread.");
|
||||
|
@@ -268,7 +268,7 @@ void cso_release_all( struct cso_context *ctx )
|
||||
void cso_destroy_context( struct cso_context *ctx )
|
||||
{
|
||||
if (ctx) {
|
||||
//cso_release_all( ctx );
|
||||
/*cso_release_all( ctx );*/
|
||||
FREE( ctx );
|
||||
}
|
||||
}
|
||||
|
@@ -192,7 +192,8 @@ draw_print_arrays(struct draw_context *draw, uint prim, int start, uint count)
|
||||
prim, start, count);
|
||||
|
||||
for (i = 0; i < count; i++) {
|
||||
uint ii, j;
|
||||
uint ii = 0;
|
||||
uint j;
|
||||
|
||||
if (draw->pt.user.elts) {
|
||||
/* indexed arrays */
|
||||
|
@@ -212,17 +212,10 @@ static void fse_prepare( struct draw_pt_middle_end *middle,
|
||||
struct draw_vertex_shader *vs = draw->vs.vertex_shader;
|
||||
vs->prepare(vs, draw);
|
||||
}
|
||||
|
||||
|
||||
//return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
static void fse_run_linear( struct draw_pt_middle_end *middle,
|
||||
unsigned start,
|
||||
unsigned count )
|
||||
|
@@ -210,7 +210,7 @@ void draw_pt_post_vs_prepare( struct pt_post_vs *pvs,
|
||||
pvs->run = post_vs_viewport;
|
||||
}
|
||||
else {
|
||||
//if (opengl)
|
||||
/* if (opengl) */
|
||||
pvs->run = post_vs_cliptest_viewport_gl;
|
||||
}
|
||||
}
|
||||
|
@@ -394,6 +394,7 @@ vcache_check_run( struct draw_pt_front_end *frontend,
|
||||
|
||||
default:
|
||||
assert(0);
|
||||
FREE(storage);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -422,6 +423,7 @@ vcache_check_run( struct draw_pt_front_end *frontend,
|
||||
|
||||
default:
|
||||
assert(0);
|
||||
FREE(storage);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@@ -891,7 +891,7 @@ static void x87_emit_ex2( struct aos_compilation *cp )
|
||||
struct x86_reg st1 = x86_make_reg(file_x87, 1);
|
||||
int stack = cp->func->x87_stack;
|
||||
|
||||
// set_fpu_round_neg_inf( cp );
|
||||
/* set_fpu_round_neg_inf( cp ); */
|
||||
|
||||
x87_fld(cp->func, st0); /* a a */
|
||||
x87_fprndint( cp->func ); /* int(a) a*/
|
||||
@@ -1759,14 +1759,14 @@ emit_instruction( struct aos_compilation *cp,
|
||||
return emit_SUB(cp, inst);
|
||||
|
||||
case TGSI_OPCODE_LRP:
|
||||
// return emit_LERP(cp, inst);
|
||||
/*return emit_LERP(cp, inst);*/
|
||||
return FALSE;
|
||||
|
||||
case TGSI_OPCODE_FRC:
|
||||
return emit_FRC(cp, inst);
|
||||
|
||||
case TGSI_OPCODE_CLAMP:
|
||||
// return emit_CLAMP(cp, inst);
|
||||
/*return emit_CLAMP(cp, inst);*/
|
||||
return FALSE;
|
||||
|
||||
case TGSI_OPCODE_FLR:
|
||||
|
@@ -584,7 +584,7 @@ fenced_buffer_list_destroy(struct fenced_buffer_list *fenced_list)
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
//assert(!fenced_list->numUnfenced);
|
||||
/*assert(!fenced_list->numUnfenced);*/
|
||||
#endif
|
||||
|
||||
pipe_mutex_unlock(fenced_list->mutex);
|
||||
|
@@ -87,6 +87,7 @@ rbug_get_message(struct rbug_connection *c, uint32_t *serial)
|
||||
if (!data) {
|
||||
return NULL;
|
||||
}
|
||||
data->opcode = 0;
|
||||
|
||||
do {
|
||||
uint8_t *ptr = ((uint8_t*)data) + read;
|
||||
|
@@ -217,7 +217,7 @@ ATTRIB( R8G8_SNORM, 2, char, FROM_8_SNORM, TO_8_SNORM )
|
||||
ATTRIB( R8_SNORM, 1, char, FROM_8_SNORM, TO_8_SNORM )
|
||||
|
||||
ATTRIB( A8R8G8B8_UNORM, 4, ubyte, FROM_8_UNORM, TO_8_UNORM )
|
||||
//ATTRIB( R8G8B8A8_UNORM, 4, ubyte, FROM_8_UNORM, TO_8_UNORM )
|
||||
/*ATTRIB( R8G8B8A8_UNORM, 4, ubyte, FROM_8_UNORM, TO_8_UNORM )*/
|
||||
|
||||
ATTRIB( R32G32B32A32_FIXED, 4, int, FROM_32_FIXED, TO_32_FIXED )
|
||||
ATTRIB( R32G32B32_FIXED, 3, int, FROM_32_FIXED, TO_32_FIXED )
|
||||
|
@@ -268,7 +268,7 @@ static void check_os_katmai_support(void)
|
||||
* and therefore to be safe I'm going to leave this test in here.
|
||||
*/
|
||||
if (__cpu_detect_caps.hasSSE) {
|
||||
// test_os_katmai_exception_support();
|
||||
/* test_os_katmai_exception_support(); */
|
||||
}
|
||||
|
||||
/* Restore the original signal handlers.
|
||||
|
@@ -254,7 +254,7 @@ debug_profile_start(void)
|
||||
{
|
||||
WCHAR *p;
|
||||
|
||||
// increment starting from the less significant digit
|
||||
/* increment starting from the less significant digit */
|
||||
p = &wFileName[14];
|
||||
while(1) {
|
||||
if(*p == '9') {
|
||||
|
@@ -214,7 +214,7 @@ debug_symbol_print_imagehlp(const void *addr)
|
||||
HANDLE hProcess;
|
||||
BYTE symbolBuffer[1024];
|
||||
PIMAGEHLP_SYMBOL pSymbol = (PIMAGEHLP_SYMBOL) symbolBuffer;
|
||||
DWORD dwDisplacement = 0; // Displacement of the input address, relative to the start of the symbol
|
||||
DWORD dwDisplacement = 0; /* Displacement of the input address, relative to the start of the symbol */
|
||||
|
||||
hProcess = GetCurrentProcess();
|
||||
|
||||
|
@@ -1427,6 +1427,7 @@ set_vertex_data(struct gen_mipmap_state *ctx,
|
||||
rz = -1.0f;
|
||||
break;
|
||||
default:
|
||||
rx = ry = rz = 0.0f;
|
||||
assert(0);
|
||||
}
|
||||
|
||||
|
@@ -302,7 +302,10 @@ util_unpack_color_ub(enum pipe_format format, const void *src,
|
||||
static INLINE void
|
||||
util_pack_color(const float rgba[4], enum pipe_format format, void *dest)
|
||||
{
|
||||
ubyte r, g, b, a;
|
||||
ubyte r = 0;
|
||||
ubyte g = 0;
|
||||
ubyte b = 0;
|
||||
ubyte a = 0;
|
||||
|
||||
if (pf_size_x(format) <= 8) {
|
||||
/* format uses 8-bit components or less */
|
||||
|
@@ -674,7 +674,7 @@ emit_MAD(struct codegen *gen, const struct tgsi_full_instruction *inst)
|
||||
* Emit linear interpolate. See emit_ADD for comments.
|
||||
*/
|
||||
static boolean
|
||||
emit_LERP(struct codegen *gen, const struct tgsi_full_instruction *inst)
|
||||
emit_LRP(struct codegen *gen, const struct tgsi_full_instruction *inst)
|
||||
{
|
||||
int ch, s1_reg[4], s2_reg[4], s3_reg[4], d_reg[4], tmp_reg[4];
|
||||
|
||||
@@ -1766,7 +1766,7 @@ emit_instruction(struct codegen *gen,
|
||||
return emit_binop(gen, inst);
|
||||
case TGSI_OPCODE_MAD:
|
||||
return emit_MAD(gen, inst);
|
||||
case TGSI_OPCODE_LERP:
|
||||
case TGSI_OPCODE_LRP:
|
||||
return emit_LRP(gen, inst);
|
||||
case TGSI_OPCODE_DP3:
|
||||
return emit_DP3(gen, inst);
|
||||
|
@@ -851,6 +851,7 @@ static boolean i915_debug_packet( struct debug_stream *stream )
|
||||
default:
|
||||
return debug(stream, "", 0);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
return 0;
|
||||
|
@@ -273,6 +273,7 @@ i915_create_screen(struct intel_winsys *iws, uint pci_id)
|
||||
default:
|
||||
debug_printf("%s: unknown pci id 0x%x, cannot create screen\n",
|
||||
__FUNCTION__, pci_id);
|
||||
FREE(is);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@@ -496,9 +496,9 @@ emit_instruction(
|
||||
if (IS_DST0_CHANNEL_ENABLED( inst, CHAN_X ) ||
|
||||
IS_DST0_CHANNEL_ENABLED( inst, CHAN_Y ) ||
|
||||
IS_DST0_CHANNEL_ENABLED( inst, CHAN_Z )) {
|
||||
LLVMValueRef *p_floor_log2;
|
||||
LLVMValueRef *p_exp;
|
||||
LLVMValueRef *p_log2;
|
||||
LLVMValueRef *p_floor_log2 = NULL;
|
||||
LLVMValueRef *p_exp = NULL;
|
||||
LLVMValueRef *p_log2 = NULL;
|
||||
|
||||
src0 = emit_fetch( bld, inst, 0, CHAN_X );
|
||||
src0 = lp_build_abs( &bld->base, src0 );
|
||||
|
@@ -38,4 +38,4 @@ include ../../Makefile.template
|
||||
.PHONY : $(COMPILER_ARCHIVE)
|
||||
|
||||
$(COMPILER_ARCHIVE):
|
||||
cd $(TOP)/src/mesa/drivers/dri/r300/compiler; make
|
||||
$(MAKE) -C $(TOP)/src/mesa/drivers/dri/r300/compiler
|
||||
|
@@ -105,12 +105,17 @@ static void softpipe_destroy( struct pipe_context *pipe )
|
||||
softpipe->quad[i].output->destroy( softpipe->quad[i].output );
|
||||
}
|
||||
|
||||
for (i = 0; i < PIPE_MAX_COLOR_BUFS; i++)
|
||||
for (i = 0; i < PIPE_MAX_COLOR_BUFS; i++) {
|
||||
sp_destroy_tile_cache(softpipe->cbuf_cache[i]);
|
||||
pipe_surface_reference(&softpipe->framebuffer.cbufs[i], NULL);
|
||||
}
|
||||
sp_destroy_tile_cache(softpipe->zsbuf_cache);
|
||||
pipe_surface_reference(&softpipe->framebuffer.zsbuf, NULL);
|
||||
|
||||
for (i = 0; i < PIPE_MAX_SAMPLERS; i++)
|
||||
for (i = 0; i < PIPE_MAX_SAMPLERS; i++) {
|
||||
sp_destroy_tile_cache(softpipe->tex_cache[i]);
|
||||
pipe_texture_reference(&softpipe->texture[i], NULL);
|
||||
}
|
||||
|
||||
for (i = 0; i < Elements(softpipe->constants); i++) {
|
||||
if (softpipe->constants[i].buffer) {
|
||||
|
@@ -101,7 +101,7 @@ fs_sse_run( const struct sp_fragment_shader *base,
|
||||
machine->Consts,
|
||||
(const float (*)[4])shader->immediates,
|
||||
machine->InterpCoefs
|
||||
// , &machine->QuadPos
|
||||
/*, &machine->QuadPos*/
|
||||
);
|
||||
|
||||
return ~(machine->Temps[TGSI_EXEC_TEMP_KILMASK_I].xyzw[TGSI_EXEC_TEMP_KILMASK_C].u[0]);
|
||||
|
@@ -56,7 +56,7 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
|
||||
sp_flush_tile_cache(sp, sp->cbuf_cache[i]);
|
||||
|
||||
/* assign new */
|
||||
sp->framebuffer.cbufs[i] = fb->cbufs[i];
|
||||
pipe_surface_reference(&sp->framebuffer.cbufs[i], fb->cbufs[i]);
|
||||
|
||||
/* update cache */
|
||||
sp_tile_cache_set_surface(sp->cbuf_cache[i], fb->cbufs[i]);
|
||||
@@ -71,7 +71,7 @@ softpipe_set_framebuffer_state(struct pipe_context *pipe,
|
||||
sp_flush_tile_cache(sp, sp->zsbuf_cache);
|
||||
|
||||
/* assign new */
|
||||
sp->framebuffer.zsbuf = fb->zsbuf;
|
||||
pipe_surface_reference(&sp->framebuffer.zsbuf, fb->zsbuf);
|
||||
|
||||
/* update cache */
|
||||
sp_tile_cache_set_surface(sp->zsbuf_cache, fb->zsbuf);
|
||||
|
@@ -130,6 +130,16 @@ sp_create_tile_cache( struct pipe_screen *screen )
|
||||
tc->entries[pos].x =
|
||||
tc->entries[pos].y = -1;
|
||||
}
|
||||
|
||||
/* XXX this code prevents valgrind warnings about use of uninitialized
|
||||
* memory in programs that don't clear the surface before rendering.
|
||||
* However, it breaks clearing in other situations (such as in
|
||||
* progs/tests/drawbuffers, see bug 24402).
|
||||
*/
|
||||
#if 0 && TILE_CLEAR_OPTIMIZATION
|
||||
/* set flags to indicate all the tiles are cleared */
|
||||
memset(tc->clear_flags, 255, sizeof(tc->clear_flags));
|
||||
#endif
|
||||
}
|
||||
return tc;
|
||||
}
|
||||
|
@@ -85,11 +85,11 @@ drm_get_device_id(struct drm_device *device)
|
||||
}
|
||||
|
||||
ret = fgets(path, sizeof( path ), file);
|
||||
fclose(file);
|
||||
if (!ret)
|
||||
return;
|
||||
|
||||
sscanf(path, "%x", &device->deviceID);
|
||||
fclose(file);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@@ -850,10 +850,10 @@ choose_visual( Display *dpy, int screen, const int *list, GLboolean fbConfig )
|
||||
if (!fbConfig)
|
||||
return NULL;
|
||||
parselist++;
|
||||
if (*parselist == GLX_RGBA_BIT) {
|
||||
if (*parselist & GLX_RGBA_BIT) {
|
||||
rgb_flag = GL_TRUE;
|
||||
}
|
||||
else if (*parselist == GLX_COLOR_INDEX_BIT) {
|
||||
else if (*parselist & GLX_COLOR_INDEX_BIT) {
|
||||
rgb_flag = GL_FALSE;
|
||||
}
|
||||
else if (*parselist == 0) {
|
||||
@@ -1309,13 +1309,17 @@ glXCopyContext( Display *dpy, GLXContext src, GLXContext dst,
|
||||
|
||||
|
||||
Bool
|
||||
glXQueryExtension( Display *dpy, int *errorb, int *event )
|
||||
glXQueryExtension( Display *dpy, int *errorBase, int *eventBase )
|
||||
{
|
||||
int op, ev, err;
|
||||
/* Mesa's GLX isn't really an X extension but we try to act like one. */
|
||||
(void) dpy;
|
||||
(void) errorb;
|
||||
(void) event;
|
||||
return True;
|
||||
if (!XQueryExtension(dpy, GLX_EXTENSION_NAME, &op, &ev, &err))
|
||||
ev = err = 0;
|
||||
if (errorBase)
|
||||
*errorBase = err;
|
||||
if (eventBase)
|
||||
*eventBase = ev;
|
||||
return True; /* we're faking GLX so always return success */
|
||||
}
|
||||
|
||||
|
||||
@@ -1990,32 +1994,42 @@ glXCreatePbuffer( Display *dpy, GLXFBConfig config,
|
||||
break;
|
||||
case GLX_PRESERVED_CONTENTS:
|
||||
attrib++;
|
||||
preserveContents = *attrib; /* ignored */
|
||||
preserveContents = *attrib;
|
||||
break;
|
||||
case GLX_LARGEST_PBUFFER:
|
||||
attrib++;
|
||||
useLargest = *attrib; /* ignored */
|
||||
useLargest = *attrib;
|
||||
break;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* not used at this time */
|
||||
(void) useLargest;
|
||||
(void) preserveContents;
|
||||
|
||||
if (width == 0 || height == 0)
|
||||
return 0;
|
||||
|
||||
if (width > MAX_WIDTH || height > MAX_HEIGHT) {
|
||||
/* If allocation would have failed and GLX_LARGEST_PBUFFER is set,
|
||||
* allocate the largest possible buffer.
|
||||
*/
|
||||
if (useLargest) {
|
||||
width = MAX_WIDTH;
|
||||
height = MAX_HEIGHT;
|
||||
}
|
||||
}
|
||||
|
||||
xmbuf = XMesaCreatePBuffer( xmvis, 0, width, height);
|
||||
/* A GLXPbuffer handle must be an X Drawable because that's what
|
||||
* glXMakeCurrent takes.
|
||||
*/
|
||||
if (xmbuf)
|
||||
if (xmbuf) {
|
||||
xmbuf->largestPbuffer = useLargest;
|
||||
xmbuf->preservedContents = preserveContents;
|
||||
return (GLXPbuffer) xmbuf->drawable;
|
||||
else
|
||||
}
|
||||
else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2033,22 +2047,26 @@ void
|
||||
glXQueryDrawable( Display *dpy, GLXDrawable draw, int attribute,
|
||||
unsigned int *value )
|
||||
{
|
||||
GLuint width, height;
|
||||
XMesaBuffer xmbuf = XMesaFindBuffer(dpy, draw);
|
||||
if (!xmbuf)
|
||||
return;
|
||||
|
||||
/* make sure buffer's dimensions are up to date */
|
||||
xmesa_get_window_size(dpy, xmbuf, &width, &height);
|
||||
|
||||
switch (attribute) {
|
||||
case GLX_WIDTH:
|
||||
*value = xmesa_buffer_width(xmbuf);
|
||||
*value = width;
|
||||
break;
|
||||
case GLX_HEIGHT:
|
||||
*value = xmesa_buffer_width(xmbuf);
|
||||
*value = height;
|
||||
break;
|
||||
case GLX_PRESERVED_CONTENTS:
|
||||
*value = True;
|
||||
*value = xmbuf->preservedContents;
|
||||
break;
|
||||
case GLX_LARGEST_PBUFFER:
|
||||
*value = xmesa_buffer_width(xmbuf) * xmesa_buffer_height(xmbuf);
|
||||
*value = xmbuf->largestPbuffer;
|
||||
break;
|
||||
case GLX_FBCONFIG_ID:
|
||||
*value = xmbuf->xm_visual->visinfo->visualid;
|
||||
@@ -2120,9 +2138,9 @@ glXQueryContext( Display *dpy, GLXContext ctx, int attribute, int *value )
|
||||
break;
|
||||
case GLX_RENDER_TYPE:
|
||||
if (xmctx->xm_visual->mesa_visual.rgbMode)
|
||||
*value = GLX_RGBA_BIT;
|
||||
*value = GLX_RGBA_TYPE;
|
||||
else
|
||||
*value = GLX_COLOR_INDEX_BIT;
|
||||
*value = GLX_COLOR_INDEX_TYPE;
|
||||
break;
|
||||
case GLX_SCREEN:
|
||||
*value = 0;
|
||||
|
@@ -228,7 +228,7 @@ get_drawable_size( Display *dpy, Drawable d, uint *width, uint *height )
|
||||
* \param width returns width in pixels
|
||||
* \param height returns height in pixels
|
||||
*/
|
||||
static void
|
||||
void
|
||||
xmesa_get_window_size(Display *dpy, XMesaBuffer b,
|
||||
GLuint *width, GLuint *height)
|
||||
{
|
||||
|
@@ -323,6 +323,9 @@ struct xmesa_buffer {
|
||||
Colormap cmap; /* the X colormap */
|
||||
BufferType type; /* window, pixmap, pbuffer or glxwindow */
|
||||
|
||||
GLboolean largestPbuffer; /**< for pbuffers */
|
||||
GLboolean preservedContents; /**< for pbuffers */
|
||||
|
||||
XImage *tempImage;
|
||||
unsigned long selectedEvents;/* for pbuffers only */
|
||||
|
||||
@@ -369,6 +372,10 @@ xmesa_delete_framebuffer(struct gl_framebuffer *fb);
|
||||
extern XMesaBuffer
|
||||
xmesa_find_buffer(Display *dpy, Colormap cmap, XMesaBuffer notThis);
|
||||
|
||||
extern void
|
||||
xmesa_get_window_size(Display *dpy, XMesaBuffer b,
|
||||
GLuint *width, GLuint *height);
|
||||
|
||||
extern void
|
||||
xmesa_check_and_update_buffer_size(XMesaContext xmctx, XMesaBuffer drawBuffer);
|
||||
|
||||
|
@@ -42,8 +42,12 @@
|
||||
#include "xorg_tracker.h"
|
||||
#include "xf86Modes.h"
|
||||
|
||||
#ifdef HAVE_XEXTPROTO_71
|
||||
#include <X11/extensions/dpmsconst.h>
|
||||
#else
|
||||
#define DPMS_SERVER
|
||||
#include <X11/extensions/dpms.h>
|
||||
#endif
|
||||
|
||||
#include "pipe/p_inlines.h"
|
||||
#include "util/u_rect.h"
|
||||
|
@@ -42,8 +42,12 @@
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#ifdef HAVE_XEXTPROTO_71
|
||||
#include <X11/extensions/dpmsconst.h>
|
||||
#else
|
||||
#define DPMS_SERVER
|
||||
#include <X11/extensions/dpms.h>
|
||||
#endif
|
||||
|
||||
#include "X11/Xatom.h"
|
||||
|
||||
|
@@ -291,6 +291,7 @@ xm_surface_buffer_create(struct pipe_winsys *winsys,
|
||||
unsigned width, unsigned height,
|
||||
enum pipe_format format,
|
||||
unsigned usage,
|
||||
unsigned tex_usage,
|
||||
unsigned *stride)
|
||||
{
|
||||
const unsigned alignment = 64;
|
||||
|
@@ -284,7 +284,12 @@ GLUhalfEdge *__gl_meshMakeEdge( GLUmesh *mesh )
|
||||
}
|
||||
|
||||
e = MakeEdge( &mesh->eHead );
|
||||
if (e == NULL) return NULL;
|
||||
if (e == NULL) {
|
||||
memFree(newVertex1);
|
||||
memFree(newVertex2);
|
||||
memFree(newFace);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
MakeVertex( newVertex1, e, &mesh->vHead );
|
||||
MakeVertex( newVertex2, e->Sym, &mesh->vHead );
|
||||
|
@@ -3526,6 +3526,8 @@ gluScaleImage(GLenum format, GLsizei widthin, GLsizei heightin,
|
||||
afterImage =
|
||||
malloc(image_size(widthout, heightout, format, GL_UNSIGNED_SHORT));
|
||||
if (beforeImage == NULL || afterImage == NULL) {
|
||||
free(beforeImage);
|
||||
free(afterImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
@@ -3606,6 +3608,7 @@ int gluBuild1DMipmapLevelsCore(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SKIP_PIXELS,psm.unpack_skip_pixels);
|
||||
glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length);
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
free(newImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
}
|
||||
@@ -3760,6 +3763,7 @@ static int bitmapBuild2DMipmaps(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SKIP_PIXELS,psm.unpack_skip_pixels);
|
||||
glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length);
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
free(newImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
}
|
||||
@@ -4104,6 +4108,7 @@ static int gluBuild2DMipmapLevelsCore(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SKIP_PIXELS, psm.unpack_skip_pixels);
|
||||
glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length);
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
free(srcImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
/* level userLevel+1 is in srcImage; level userLevel already saved */
|
||||
@@ -4346,6 +4351,7 @@ static int gluBuild2DMipmapLevelsCore(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SKIP_PIXELS, psm.unpack_skip_pixels);
|
||||
glPixelStorei(GL_UNPACK_ROW_LENGTH, psm.unpack_row_length);
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
free(srcImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
}
|
||||
@@ -7382,6 +7388,8 @@ int gluScaleImage3D(GLenum format,
|
||||
afterImage = malloc(imageSize3D(widthOut, heightOut, depthOut, format,
|
||||
GL_UNSIGNED_SHORT));
|
||||
if (beforeImage == NULL || afterImage == NULL) {
|
||||
free(beforeImage);
|
||||
free(afterImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
retrieveStoreModes3D(&psm);
|
||||
@@ -8093,6 +8101,7 @@ static int gluBuild3DMipmapLevelsCore(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
glPixelStorei(GL_UNPACK_SKIP_IMAGES, psm.unpack_skip_images);
|
||||
glPixelStorei(GL_UNPACK_IMAGE_HEIGHT, psm.unpack_image_height);
|
||||
free(srcImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
/* level userLevel+1 is in srcImage; level userLevel already saved */
|
||||
@@ -8227,6 +8236,7 @@ static int gluBuild3DMipmapLevelsCore(GLenum target, GLint internalFormat,
|
||||
glPixelStorei(GL_UNPACK_SWAP_BYTES, psm.unpack_swap_bytes);
|
||||
glPixelStorei(GL_UNPACK_SKIP_IMAGES, psm.unpack_skip_images);
|
||||
glPixelStorei(GL_UNPACK_IMAGE_HEIGHT, psm.unpack_image_height);
|
||||
free(srcImage);
|
||||
return GLU_OUT_OF_MEMORY;
|
||||
}
|
||||
}
|
||||
|
@@ -596,8 +596,10 @@ driCreateDrawable(__GLXscreenConfigs * psc,
|
||||
pdraw->drawable = drawable;
|
||||
pdraw->psc = psc;
|
||||
|
||||
if (!XF86DRICreateDrawable(psc->dpy, psc->scr, drawable, &hwDrawable))
|
||||
if (!XF86DRICreateDrawable(psc->dpy, psc->scr, drawable, &hwDrawable)) {
|
||||
Xfree(pdraw);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Create a new drawable */
|
||||
pdraw->driDrawable =
|
||||
|
@@ -250,12 +250,14 @@ driCreateContext(__GLXscreenConfigs * psc,
|
||||
{
|
||||
__GLXDRIcontextPrivate *pcp, *pcp_shared;
|
||||
__GLXDRIconfigPrivate *config = (__GLXDRIconfigPrivate *) mode;
|
||||
const __DRIcoreExtension *core = psc->core;
|
||||
const __DRIcoreExtension *core;
|
||||
__DRIcontext *shared = NULL;
|
||||
|
||||
if (!psc || !psc->driScreen)
|
||||
return NULL;
|
||||
|
||||
core = psc->core;
|
||||
|
||||
if (shareList) {
|
||||
pcp_shared = (__GLXDRIcontextPrivate *) shareList->driContext;
|
||||
shared = pcp_shared->driContext;
|
||||
|
@@ -50,7 +50,7 @@
|
||||
#include <xcb/glx.h>
|
||||
#endif
|
||||
|
||||
static const char __glXGLXClientVendorName[] = "SGI";
|
||||
static const char __glXGLXClientVendorName[] = "Mesa Project and SGI";
|
||||
static const char __glXGLXClientVersion[] = "1.4";
|
||||
|
||||
|
||||
@@ -398,6 +398,10 @@ CreateContext(Display * dpy, XVisualInfo * vis,
|
||||
_XError(dpy, &error);
|
||||
return None;
|
||||
}
|
||||
if (renderType == 0) {
|
||||
/* Initialize renderType now */
|
||||
renderType = mode->rgbMode ? GLX_RGBA_TYPE : GLX_COLOR_INDEX_TYPE;
|
||||
}
|
||||
}
|
||||
else {
|
||||
mode = fbconfig;
|
||||
@@ -484,6 +488,8 @@ CreateContext(Display * dpy, XVisualInfo * vis,
|
||||
gc->imported = GL_TRUE;
|
||||
}
|
||||
|
||||
gc->renderType = renderType;
|
||||
|
||||
return gc;
|
||||
}
|
||||
|
||||
@@ -534,6 +540,16 @@ DestroyContext(Display * dpy, GLXContext gc)
|
||||
imported = gc->imported;
|
||||
gc->xid = None;
|
||||
|
||||
if (gc->currentDpy) {
|
||||
/* This context is bound to some thread. According to the man page,
|
||||
* we should not actually delete the context until it's unbound.
|
||||
* Note that we set gc->xid = None above. In MakeContextCurrent()
|
||||
* we check for that and delete the context there.
|
||||
*/
|
||||
__glXUnlock();
|
||||
return;
|
||||
}
|
||||
|
||||
#ifdef GLX_DIRECT_RENDERING
|
||||
/* Destroy the direct rendering context */
|
||||
if (gc->driContext) {
|
||||
@@ -1575,7 +1591,7 @@ GLX_ALIAS(Display *, glXGetCurrentDisplayEXT, (void), (),
|
||||
* This function dynamically determines whether to use the EXT_import_context
|
||||
* version of the protocol or the GLX 1.3 version of the protocol.
|
||||
*/
|
||||
static int __glXQueryContextInfo(Display * dpy, GLXContext ctx)
|
||||
static int __glXQueryContextInfo(Display * dpy, GLXContext ctx)
|
||||
{
|
||||
__GLXdisplayPrivate *priv = __glXInitialize(dpy);
|
||||
xGLXQueryContextReply reply;
|
||||
@@ -1713,7 +1729,7 @@ GLX_ALIAS(int, glXQueryContextInfoEXT,
|
||||
(Display * dpy, GLXContext ctx, int attribute, int *value),
|
||||
(dpy, ctx, attribute, value), glXQueryContext)
|
||||
|
||||
PUBLIC GLXContextID glXGetContextIDEXT(const GLXContext ctx)
|
||||
PUBLIC GLXContextID glXGetContextIDEXT(const GLXContext ctx)
|
||||
{
|
||||
return ctx->xid;
|
||||
}
|
||||
@@ -2159,18 +2175,19 @@ GLX_ALIAS(int, glXGetFBConfigAttribSGIX,
|
||||
(Display * dpy, GLXFBConfigSGIX config, int attribute, int *value),
|
||||
(dpy, config, attribute, value), glXGetFBConfigAttrib)
|
||||
|
||||
PUBLIC GLX_ALIAS(GLXFBConfigSGIX *, glXChooseFBConfigSGIX,
|
||||
(Display * dpy, int screen, int *attrib_list,
|
||||
int *nelements), (dpy, screen, attrib_list, nelements),
|
||||
glXChooseFBConfig)
|
||||
PUBLIC GLX_ALIAS(GLXFBConfigSGIX *, glXChooseFBConfigSGIX,
|
||||
(Display * dpy, int screen, int *attrib_list,
|
||||
int *nelements), (dpy, screen, attrib_list, nelements),
|
||||
glXChooseFBConfig)
|
||||
|
||||
PUBLIC GLX_ALIAS(XVisualInfo *, glXGetVisualFromFBConfigSGIX,
|
||||
(Display * dpy, GLXFBConfigSGIX config),
|
||||
(dpy, config), glXGetVisualFromFBConfig)
|
||||
PUBLIC GLX_ALIAS(XVisualInfo *, glXGetVisualFromFBConfigSGIX,
|
||||
(Display * dpy, GLXFBConfigSGIX config),
|
||||
(dpy, config), glXGetVisualFromFBConfig)
|
||||
|
||||
PUBLIC GLXPixmap glXCreateGLXPixmapWithConfigSGIX(Display * dpy,
|
||||
GLXFBConfigSGIX config,
|
||||
Pixmap pixmap)
|
||||
PUBLIC GLXPixmap
|
||||
glXCreateGLXPixmapWithConfigSGIX(Display * dpy,
|
||||
GLXFBConfigSGIX config,
|
||||
Pixmap pixmap)
|
||||
{
|
||||
xGLXVendorPrivateWithReplyReq *vpreq;
|
||||
xGLXCreateGLXPixmapWithConfigSGIXReq *req;
|
||||
|
@@ -238,34 +238,10 @@ _mesa_meta_init(GLcontext *ctx)
|
||||
void
|
||||
_mesa_meta_free(GLcontext *ctx)
|
||||
{
|
||||
struct gl_meta_state *meta = ctx->Meta;
|
||||
|
||||
if (_mesa_get_current_context()) {
|
||||
/* if there's no current context, these textures, buffers, etc should
|
||||
* still get freed by _mesa_free_context_data().
|
||||
*/
|
||||
|
||||
_mesa_DeleteTextures(1, &meta->TempTex.TexObj);
|
||||
|
||||
/* glBlitFramebuffer */
|
||||
_mesa_DeleteBuffersARB(1, & meta->Blit.VBO);
|
||||
_mesa_DeleteVertexArraysAPPLE(1, &meta->Blit.ArrayObj);
|
||||
_mesa_DeletePrograms(1, &meta->Blit.DepthFP);
|
||||
|
||||
/* glClear */
|
||||
_mesa_DeleteBuffersARB(1, & meta->Clear.VBO);
|
||||
_mesa_DeleteVertexArraysAPPLE(1, &meta->Clear.ArrayObj);
|
||||
|
||||
/* glCopyPixels */
|
||||
_mesa_DeleteBuffersARB(1, & meta->CopyPix.VBO);
|
||||
_mesa_DeleteVertexArraysAPPLE(1, &meta->CopyPix.ArrayObj);
|
||||
|
||||
/* glDrawPixels */
|
||||
_mesa_DeleteVertexArraysAPPLE(1, &meta->DrawPix.ArrayObj);
|
||||
_mesa_DeletePrograms(1, &meta->DrawPix.DepthFP);
|
||||
_mesa_DeletePrograms(1, &meta->DrawPix.StencilFP);
|
||||
}
|
||||
|
||||
/* Note: Any textures, VBOs, etc, that we allocate should get
|
||||
* freed by the normal context destruction code. But this would be
|
||||
* the place to free other meta data someday.
|
||||
*/
|
||||
_mesa_free(ctx->Meta);
|
||||
ctx->Meta = NULL;
|
||||
}
|
||||
|
@@ -25,7 +25,7 @@ pcedit = sed \
|
||||
-e 's,@INSTALL_LIB_DIR@,$(INSTALL_LIB_DIR),' \
|
||||
-e 's,@INSTALL_INC_DIR@,$(INSTALL_INC_DIR),' \
|
||||
-e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),' \
|
||||
-e 's,@DRI_DRIVER_DIR@,$(DRI_DRIVER_SEARCH_DIR),' \
|
||||
-e 's,@DRI_DRIVER_DIR@,$(DRI_DRIVER_INSTALL_DIR),' \
|
||||
-e 's,@DRI_PC_REQ_PRIV@,$(DRI_PC_REQ_PRIV),'
|
||||
|
||||
dri.pc: dri.pc.in
|
||||
|
@@ -167,11 +167,12 @@ static int driBindContext(__DRIcontext *pcp,
|
||||
__DRIdrawable *pdp,
|
||||
__DRIdrawable *prp)
|
||||
{
|
||||
__DRIscreenPrivate *psp = pcp->driScreenPriv;
|
||||
__DRIscreenPrivate *psp;
|
||||
|
||||
/* Bind the drawable to the context */
|
||||
|
||||
if (pcp) {
|
||||
psp = pcp->driScreenPriv;
|
||||
pcp->driDrawablePriv = pdp;
|
||||
pcp->driReadablePriv = prp;
|
||||
if (pdp) {
|
||||
@@ -498,11 +499,11 @@ static void dri_put_drawable(__DRIdrawable *pdp)
|
||||
{
|
||||
__DRIscreenPrivate *psp;
|
||||
|
||||
pdp->refcount--;
|
||||
if (pdp->refcount)
|
||||
return;
|
||||
|
||||
if (pdp) {
|
||||
pdp->refcount--;
|
||||
if (pdp->refcount)
|
||||
return;
|
||||
|
||||
psp = pdp->driScreenPriv;
|
||||
(*psp->DriverAPI.DestroyBuffer)(pdp);
|
||||
if (pdp->pClipRects) {
|
||||
|
@@ -160,11 +160,18 @@ i830_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3)
|
||||
|
||||
pitch = intelObj->pitchOverride;
|
||||
} else {
|
||||
GLuint dst_x, dst_y;
|
||||
|
||||
intel_miptree_get_image_offset(intelObj->mt, intelObj->firstLevel, 0, 0,
|
||||
&dst_x, &dst_y);
|
||||
|
||||
dri_bo_reference(intelObj->mt->region->buffer);
|
||||
i830->state.tex_buffer[unit] = intelObj->mt->region->buffer;
|
||||
i830->state.tex_offset[unit] = intel_miptree_image_offset(intelObj->mt,
|
||||
0, intelObj->
|
||||
firstLevel);
|
||||
/* XXX: This calculation is probably broken for tiled images with
|
||||
* a non-page-aligned offset.
|
||||
*/
|
||||
i830->state.tex_offset[unit] = (dst_x + dst_y * intelObj->mt->pitch) *
|
||||
intelObj->mt->cpp;
|
||||
|
||||
format = translate_texture_format(firstImage->TexFormat->MesaFormat,
|
||||
firstImage->InternalFormat);
|
||||
|
@@ -39,6 +39,7 @@
|
||||
#define I915_FALLBACK_LOGICOP 0x20000
|
||||
#define I915_FALLBACK_POLYGON_SMOOTH 0x40000
|
||||
#define I915_FALLBACK_POINT_SMOOTH 0x80000
|
||||
#define I915_FALLBACK_POINT_SPRITE_COORD_ORIGIN 0x100000
|
||||
|
||||
#define I915_UPLOAD_CTX 0x1
|
||||
#define I915_UPLOAD_BUFFERS 0x2
|
||||
|
@@ -806,6 +806,7 @@ static GLboolean i915_debug_packet( struct debug_stream *stream )
|
||||
default:
|
||||
return debug(stream, "", 0);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
assert(0);
|
||||
return 0;
|
||||
|
@@ -585,7 +585,7 @@ i915PointSize(GLcontext * ctx, GLfloat size)
|
||||
{
|
||||
struct i915_context *i915 = I915_CONTEXT(ctx);
|
||||
int lis4 = i915->state.Ctx[I915_CTXREG_LIS4] & ~S4_POINT_WIDTH_MASK;
|
||||
GLint point_size = (int) size;
|
||||
GLint point_size = (int) round(size);
|
||||
|
||||
DBG("%s\n", __FUNCTION__);
|
||||
|
||||
@@ -599,6 +599,24 @@ i915PointSize(GLcontext * ctx, GLfloat size)
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
i915PointParameterfv(GLcontext * ctx, GLenum pname, const GLfloat *params)
|
||||
{
|
||||
struct i915_context *i915 = I915_CONTEXT(ctx);
|
||||
|
||||
switch (pname) {
|
||||
case GL_POINT_SPRITE_COORD_ORIGIN:
|
||||
/* This could be supported, but it would require modifying the fragment
|
||||
* program to invert the y component of the texture coordinate by
|
||||
* inserting a 'SUB tc.y, {1.0}.xxxx, tc' instruction.
|
||||
*/
|
||||
FALLBACK(&i915->intel, I915_FALLBACK_POINT_SPRITE_COORD_ORIGIN,
|
||||
(params[0] != GL_UPPER_LEFT));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* =============================================================
|
||||
* Color masks
|
||||
*/
|
||||
@@ -939,6 +957,17 @@ i915Enable(GLcontext * ctx, GLenum cap, GLboolean state)
|
||||
case GL_POLYGON_SMOOTH:
|
||||
break;
|
||||
|
||||
case GL_POINT_SPRITE:
|
||||
/* This state change is handled in i915_reduced_primitive_state because
|
||||
* the hardware bit should only be set when rendering points.
|
||||
*/
|
||||
I915_STATECHANGE(i915, I915_UPLOAD_CTX);
|
||||
if (state)
|
||||
i915->state.Ctx[I915_CTXREG_LIS4] |= S4_SPRITE_POINT_ENABLE;
|
||||
else
|
||||
i915->state.Ctx[I915_CTXREG_LIS4] &= ~S4_SPRITE_POINT_ENABLE;
|
||||
break;
|
||||
|
||||
case GL_POINT_SMOOTH:
|
||||
break;
|
||||
|
||||
@@ -1108,6 +1137,7 @@ i915InitStateFunctions(struct dd_function_table *functions)
|
||||
functions->LineWidth = i915LineWidth;
|
||||
functions->LogicOpcode = i915LogicOp;
|
||||
functions->PointSize = i915PointSize;
|
||||
functions->PointParameterfv = i915PointParameterfv;
|
||||
functions->PolygonStipple = i915PolygonStipple;
|
||||
functions->Scissor = i915Scissor;
|
||||
functions->ShadeModel = i915ShadeModel;
|
||||
|
@@ -171,11 +171,18 @@ i915_update_tex_unit(struct intel_context *intel, GLuint unit, GLuint ss3)
|
||||
|
||||
pitch = intelObj->pitchOverride;
|
||||
} else {
|
||||
GLuint dst_x, dst_y;
|
||||
|
||||
intel_miptree_get_image_offset(intelObj->mt, intelObj->firstLevel, 0, 0,
|
||||
&dst_x, &dst_y);
|
||||
|
||||
dri_bo_reference(intelObj->mt->region->buffer);
|
||||
i915->state.tex_buffer[unit] = intelObj->mt->region->buffer;
|
||||
i915->state.tex_offset[unit] = intel_miptree_image_offset(intelObj->mt,
|
||||
0, intelObj->
|
||||
firstLevel);
|
||||
/* XXX: This calculation is probably broken for tiled images with
|
||||
* a non-page-aligned offset.
|
||||
*/
|
||||
i915->state.tex_offset[unit] = (dst_x + dst_y * intelObj->mt->pitch) *
|
||||
intelObj->mt->cpp;
|
||||
|
||||
format = translate_texture_format(firstImage->TexFormat->MesaFormat,
|
||||
firstImage->InternalFormat,
|
||||
|
@@ -1194,12 +1194,16 @@ getFallbackString(GLuint bit)
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Enable/disable a fallback flag.
|
||||
* \param bit one of INTEL_FALLBACK_x flags.
|
||||
*/
|
||||
void
|
||||
intelFallback(struct intel_context *intel, GLuint bit, GLboolean mode)
|
||||
intelFallback(struct intel_context *intel, GLbitfield bit, GLboolean mode)
|
||||
{
|
||||
GLcontext *ctx = &intel->ctx;
|
||||
TNLcontext *tnl = TNL_CONTEXT(ctx);
|
||||
GLuint oldfallback = intel->Fallback;
|
||||
const GLbitfield oldfallback = intel->Fallback;
|
||||
|
||||
if (mode) {
|
||||
intel->Fallback |= bit;
|
||||
|
@@ -156,6 +156,7 @@ static void upload_clip_prog(struct brw_context *brw)
|
||||
key.attrs = brw->vs.prog_data->outputs_written;
|
||||
/* _NEW_LIGHT */
|
||||
key.do_flat_shading = (ctx->Light.ShadeModel == GL_FLAT);
|
||||
key.pv_first = (ctx->Light.ProvokingVertex == GL_FIRST_VERTEX_CONVENTION);
|
||||
/* _NEW_TRANSFORM */
|
||||
key.nr_userclip = brw_count_bits(ctx->Transform.ClipPlanesEnabled);
|
||||
|
||||
|
@@ -46,18 +46,17 @@ struct brw_clip_prog_key {
|
||||
GLuint primitive:4;
|
||||
GLuint nr_userclip:3;
|
||||
GLuint do_flat_shading:1;
|
||||
GLuint pv_first:1;
|
||||
GLuint do_unfilled:1;
|
||||
GLuint fill_cw:2; /* includes cull information */
|
||||
GLuint fill_ccw:2; /* includes cull information */
|
||||
GLuint offset_cw:1;
|
||||
GLuint offset_ccw:1;
|
||||
GLuint pad0:17;
|
||||
|
||||
GLuint copy_bfc_cw:1;
|
||||
GLuint copy_bfc_ccw:1;
|
||||
GLuint clip_mode:3;
|
||||
GLuint pad1:27;
|
||||
|
||||
GLuint pad0:11;
|
||||
|
||||
GLfloat offset_factor;
|
||||
GLfloat offset_units;
|
||||
};
|
||||
|
@@ -269,8 +269,12 @@ void brw_emit_line_clip( struct brw_clip_compile *c )
|
||||
brw_clip_line_alloc_regs(c);
|
||||
brw_clip_init_ff_sync(c);
|
||||
|
||||
if (c->key.do_flat_shading)
|
||||
brw_clip_copy_colors(c, 0, 1);
|
||||
if (c->key.do_flat_shading) {
|
||||
if (c->key.pv_first)
|
||||
brw_clip_copy_colors(c, 1, 0);
|
||||
else
|
||||
brw_clip_copy_colors(c, 0, 1);
|
||||
}
|
||||
|
||||
clip_and_emit_line(c);
|
||||
}
|
||||
|
@@ -188,14 +188,20 @@ void brw_clip_tri_flat_shade( struct brw_clip_compile *c )
|
||||
brw_imm_ud(_3DPRIM_POLYGON));
|
||||
|
||||
is_poly = brw_IF(p, BRW_EXECUTE_1);
|
||||
{
|
||||
{
|
||||
brw_clip_copy_colors(c, 1, 0);
|
||||
brw_clip_copy_colors(c, 2, 0);
|
||||
}
|
||||
is_poly = brw_ELSE(p, is_poly);
|
||||
{
|
||||
brw_clip_copy_colors(c, 0, 2);
|
||||
brw_clip_copy_colors(c, 1, 2);
|
||||
if (c->key.pv_first) {
|
||||
brw_clip_copy_colors(c, 1, 0);
|
||||
brw_clip_copy_colors(c, 2, 0);
|
||||
}
|
||||
else {
|
||||
brw_clip_copy_colors(c, 0, 2);
|
||||
brw_clip_copy_colors(c, 1, 2);
|
||||
}
|
||||
}
|
||||
brw_ENDIF(p, is_poly);
|
||||
}
|
||||
|
@@ -115,7 +115,7 @@
|
||||
* Handles blending and (presumably) depth and stencil testing.
|
||||
*/
|
||||
|
||||
#define BRW_FALLBACK_TEXTURE 0x1
|
||||
|
||||
#define BRW_MAX_CURBE (32*16)
|
||||
|
||||
struct brw_context;
|
||||
@@ -454,7 +454,6 @@ struct brw_context
|
||||
GLuint primitive;
|
||||
|
||||
GLboolean emit_state_always;
|
||||
GLboolean tmp_fallback;
|
||||
GLboolean no_batch_wrap;
|
||||
|
||||
struct {
|
||||
|
@@ -375,7 +375,7 @@ static void brw_prepare_vertices(struct brw_context *brw)
|
||||
* isn't an issue at this point.
|
||||
*/
|
||||
if (brw->vb.nr_enabled >= BRW_VEP_MAX) {
|
||||
intel->Fallback = 1;
|
||||
intel->Fallback = GL_TRUE; /* boolean, not bitfield */
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -427,7 +427,7 @@ static void brw_prepare_vertices(struct brw_context *brw)
|
||||
/* Position array not properly enabled:
|
||||
*/
|
||||
if (input->glarray->StrideB == 0) {
|
||||
intel->Fallback = 1;
|
||||
intel->Fallback = GL_TRUE; /* boolean, not bitfield */
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -536,16 +536,9 @@ static void brw_emit_vertices(struct brw_context *brw)
|
||||
I915_GEM_DOMAIN_VERTEX, 0,
|
||||
input->offset);
|
||||
if (BRW_IS_IGDNG(brw)) {
|
||||
if (input->stride) {
|
||||
OUT_RELOC(input->bo,
|
||||
I915_GEM_DOMAIN_VERTEX, 0,
|
||||
input->offset + input->stride * input->count);
|
||||
} else {
|
||||
assert(input->count == 1);
|
||||
OUT_RELOC(input->bo,
|
||||
I915_GEM_DOMAIN_VERTEX, 0,
|
||||
input->offset + input->element_size);
|
||||
}
|
||||
OUT_RELOC(input->bo,
|
||||
I915_GEM_DOMAIN_VERTEX, 0,
|
||||
input->bo->size - 1);
|
||||
} else
|
||||
OUT_BATCH(input->stride ? input->count : 0);
|
||||
OUT_BATCH(0); /* Instance data step rate */
|
||||
@@ -726,7 +719,7 @@ static void brw_emit_index_buffer(struct brw_context *brw)
|
||||
brw->ib.offset);
|
||||
OUT_RELOC(brw->ib.bo,
|
||||
I915_GEM_DOMAIN_VERTEX, 0,
|
||||
brw->ib.offset + brw->ib.size);
|
||||
brw->ib.offset + brw->ib.size - 1);
|
||||
OUT_BATCH( 0 );
|
||||
ADVANCE_BATCH();
|
||||
}
|
||||
|
@@ -133,7 +133,11 @@ const struct brw_tracked_state brw_check_fallback = {
|
||||
|
||||
|
||||
|
||||
/* Not used:
|
||||
/**
|
||||
* Called by the INTEL_FALLBACK() macro.
|
||||
* NOTE: this is a no-op for the i965 driver. The brw->intel.Fallback
|
||||
* field is treated as a boolean, not a bitmask. It's only set in a
|
||||
* couple of places.
|
||||
*/
|
||||
void intelFallback( struct intel_context *intel, GLuint bit, GLboolean mode )
|
||||
{
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user