Compare commits
126 Commits
mesa-9.2-r
...
mesa-9.0
Author | SHA1 | Date | |
---|---|---|---|
|
e5fdeef1e0 | ||
|
a8d0652c04 | ||
|
ad4b3b93de | ||
|
7851d398de | ||
|
19a15cd5ba | ||
|
c566267f5c | ||
|
8491e03b2b | ||
|
78c9adb17e | ||
|
e1cb50b15d | ||
|
c8fda5f44a | ||
|
542f6feda9 | ||
|
71b5503164 | ||
|
b2048c5e90 | ||
|
ddb9ecca3b | ||
|
76732c9ca5 | ||
|
c8669c7ba7 | ||
|
f9a8673a7a | ||
|
f88046a1f0 | ||
|
8ebcf34d87 | ||
|
3b794e4a56 | ||
|
0470fa395f | ||
|
6512610f9a | ||
|
03cfc8d660 | ||
|
a1f1add42d | ||
|
a2f28ceea2 | ||
|
421dda800d | ||
|
89e76252ca | ||
|
f2b4f588f5 | ||
|
dbe13c105f | ||
|
9fc4a39dbf | ||
|
604cd6b966 | ||
|
e642d61d13 | ||
|
d9197f9037 | ||
|
fc62ee7e0d | ||
|
50ba62e231 | ||
|
549129838c | ||
|
0586a94929 | ||
|
fdabc7d9f6 | ||
|
cb84fe5e10 | ||
|
cc18cc282f | ||
|
5ef472dd83 | ||
|
7c60a95a0e | ||
|
8aaef12a59 | ||
|
a87b0110b9 | ||
|
5174eed793 | ||
|
8c1c18769e | ||
|
849a3d243d | ||
|
36bc0fe4f2 | ||
|
76c1c34c4a | ||
|
21e9850d53 | ||
|
62bc4af0e1 | ||
|
68da5dfc2c | ||
|
96fd94ba94 | ||
|
239e9bef92 | ||
|
e87174cf4b | ||
|
127dc6d136 | ||
|
602e9a0f37 | ||
|
5c66640ac7 | ||
|
cb9765ca94 | ||
|
5db1deab51 | ||
|
4cdbf27fac | ||
|
0fb12a40e4 | ||
|
f16031513f | ||
|
0dc989ea5b | ||
|
c01f896062 | ||
|
b56c93dfff | ||
|
90ec1db9f4 | ||
|
dd0dd9aa52 | ||
|
7dc8dc0f7c | ||
|
961567d0fe | ||
|
de4e222794 | ||
|
f57bc97c7a | ||
|
bb16b471d2 | ||
|
d87c319390 | ||
|
cf81335712 | ||
|
8d06574d2b | ||
|
4eecc8d007 | ||
|
b1ce5749b9 | ||
|
82a08e2f46 | ||
|
3dd84a58bb | ||
|
0231c54ebb | ||
|
2fe673fec3 | ||
|
f6a66a33f7 | ||
|
38d1191f41 | ||
|
a940c74bc3 | ||
|
c3454d95af | ||
|
27e056ff15 | ||
|
e81717e9e7 | ||
|
86735d78e6 | ||
|
890b405232 | ||
|
1e314197dd | ||
|
437c40eee4 | ||
|
7cfd42cefe | ||
|
8f7990c5f2 | ||
|
a834381506 | ||
|
fafaf56479 | ||
|
f94b6d706f | ||
|
a5a86652f1 | ||
|
66e8f863d3 | ||
|
c586fce4fb | ||
|
405d47bbe7 | ||
|
04f902b472 | ||
|
f9bb66b1ce | ||
|
10b9a02952 | ||
|
1f4d074f75 | ||
|
42ef3f68c9 | ||
|
e2b4f9aac3 | ||
|
8b8416676e | ||
|
6e9baa85a9 | ||
|
3f6ce3454f | ||
|
7f011e2075 | ||
|
41d14eaf19 | ||
|
13b8eb6452 | ||
|
c7775e842b | ||
|
2a69de60bf | ||
|
8cffec495c | ||
|
284fe97515 | ||
|
6886da783a | ||
|
b982fa8e8f | ||
|
d240dcee6d | ||
|
0097809879 | ||
|
ef557eacff | ||
|
de92b7adca | ||
|
3ffd5dfbce | ||
|
03785fe360 | ||
|
7b676fd738 |
7
.gitignore
vendored
7
.gitignore
vendored
@@ -4,7 +4,6 @@
|
||||
*.ilk
|
||||
*.la
|
||||
*.lo
|
||||
*.log
|
||||
*.o
|
||||
*.obj
|
||||
*.os
|
||||
@@ -18,7 +17,6 @@
|
||||
*.tar
|
||||
*.tar.bz2
|
||||
*.tar.gz
|
||||
*.trs
|
||||
*.zip
|
||||
*~
|
||||
depend
|
||||
@@ -38,9 +36,8 @@ config.py
|
||||
build
|
||||
libtool
|
||||
manifest.txt
|
||||
Makefile.in
|
||||
.dir-locals.el
|
||||
.deps/
|
||||
.dirstamp
|
||||
.libs/
|
||||
Makefile
|
||||
Makefile.in
|
||||
/Makefile
|
||||
|
@@ -34,10 +34,10 @@ LOCAL_C_INCLUDES += \
|
||||
$(MESA_TOP)/include
|
||||
|
||||
# define ANDROID_VERSION (e.g., 4.0.x => 0x0400)
|
||||
major := $(word 1, $(subst ., , $(PLATFORM_VERSION)))
|
||||
minor := $(word 2, $(subst ., , $(PLATFORM_VERSION)))
|
||||
LOCAL_CFLAGS += \
|
||||
-DPACKAGE_VERSION=\"9.2.0-rc2\" \
|
||||
-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\" \
|
||||
-DANDROID_VERSION=0x0$(MESA_ANDROID_MAJOR_VERSION)0$(MESA_ANDROID_MINOR_VERSION)
|
||||
-DANDROID_VERSION=0x0$(major)0$(minor)
|
||||
|
||||
LOCAL_CFLAGS += \
|
||||
-DHAVE_PTHREAD=1 \
|
||||
|
@@ -24,17 +24,12 @@
|
||||
# BOARD_GPU_DRIVERS should be defined. The valid values are
|
||||
#
|
||||
# classic drivers: i915 i965
|
||||
# gallium drivers: swrast i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
# gallium drivers: swrast i915g nouveau r300g r600g radeonsi vmwgfx
|
||||
#
|
||||
# The main target is libGLES_mesa. For each classic driver enabled, a DRI
|
||||
# module will also be built. DRI modules will be loaded by libGLES_mesa.
|
||||
|
||||
MESA_TOP := $(call my-dir)
|
||||
|
||||
MESA_ANDROID_MAJOR_VERSION := $(word 1, $(subst ., , $(PLATFORM_VERSION)))
|
||||
MESA_ANDROID_MINOR_VERSION := $(word 2, $(subst ., , $(PLATFORM_VERSION)))
|
||||
MESA_ANDROID_VERSION := $(MESA_ANDROID_MAJOR_VERSION).$(MESA_ANDROID_MINOR_VERSION)
|
||||
|
||||
MESA_COMMON_MK := $(MESA_TOP)/Android.common.mk
|
||||
MESA_PYTHON2 := python
|
||||
|
||||
@@ -42,7 +37,7 @@ DRM_TOP := external/drm
|
||||
DRM_GRALLOC_TOP := hardware/drm_gralloc
|
||||
|
||||
classic_drivers := i915 i965
|
||||
gallium_drivers := swrast i915g ilo nouveau r300g r600g radeonsi vmwgfx
|
||||
gallium_drivers := swrast i915g nouveau r300g r600g radeonsi vmwgfx
|
||||
|
||||
MESA_GPU_DRIVERS := $(strip $(BOARD_GPU_DRIVERS))
|
||||
|
||||
|
48
Makefile.am
48
Makefile.am
@@ -30,46 +30,62 @@ check-local:
|
||||
$(MAKE) -C src/mapi/glapi/tests check
|
||||
$(MAKE) -C src/mapi/shared-glapi/tests check
|
||||
$(MAKE) -C src/mesa/main/tests check
|
||||
$(MAKE) -C src/glsl/tests check
|
||||
$(MAKE) -C src/glx/tests check
|
||||
|
||||
clean-local:
|
||||
-@touch $(top_builddir)/configs/current
|
||||
-@for dir in $(SUBDIRS) ; do \
|
||||
if [ -d $$dir ] ; then \
|
||||
(cd $$dir && $(MAKE) clean) ; \
|
||||
fi \
|
||||
done
|
||||
-@test -s $(top_builddir)/configs/current || rm -f $(top_builddir)/configs/current
|
||||
|
||||
|
||||
|
||||
distclean-local:
|
||||
-rm -rf lib*
|
||||
-rm -f $(top_builddir)/configs/current
|
||||
-find . '(' -name '*.o' -o -name '*.a' -o -name '*.so' -o \
|
||||
-name depend -o -name depend.bak ')' -exec rm -f '{}' ';'
|
||||
|
||||
.PHONY: doxygen
|
||||
|
||||
# Rules for making release tarballs
|
||||
|
||||
PACKAGE_VERSION=9.0
|
||||
PACKAGE_DIR = Mesa-$(PACKAGE_VERSION)
|
||||
PACKAGE_NAME = MesaLib-$(PACKAGE_VERSION)
|
||||
|
||||
EXTRA_FILES = \
|
||||
aclocal.m4 \
|
||||
configure \
|
||||
bin/ar-lib \
|
||||
bin/compile \
|
||||
bin/config.sub \
|
||||
bin/config.guess \
|
||||
bin/depcomp \
|
||||
bin/install-sh \
|
||||
bin/ltmain.sh \
|
||||
bin/missing \
|
||||
bin/ylwrap \
|
||||
src/glsl/glsl_parser.cpp \
|
||||
src/glsl/glsl_parser.cc \
|
||||
src/glsl/glsl_parser.h \
|
||||
src/glsl/glsl_lexer.cpp \
|
||||
src/glsl/glsl_lexer.cc \
|
||||
src/glsl/glcpp/glcpp-lex.c \
|
||||
src/glsl/glcpp/glcpp-parse.c \
|
||||
src/glsl/glcpp/glcpp-parse.h \
|
||||
src/mesa/main/api_exec_es1.c \
|
||||
src/mesa/main/api_exec_es1_dispatch.h \
|
||||
src/mesa/main/api_exec_es1_remap_helper.h \
|
||||
src/mesa/main/api_exec_es2.c \
|
||||
src/mesa/main/api_exec_es2_dispatch.h \
|
||||
src/mesa/main/api_exec_es2_remap_helper.h \
|
||||
src/mesa/program/lex.yy.c \
|
||||
src/mesa/program/program_parse.tab.c \
|
||||
src/mesa/program/program_parse.tab.h \
|
||||
`git ls-files | grep "Makefile.am" | sed -e "s/Makefile.am/Makefile.in/"`
|
||||
|
||||
src/mesa/program/program_parse.tab.h
|
||||
|
||||
IGNORE_FILES = \
|
||||
-x autogen.sh
|
||||
|
||||
|
||||
parsers: configure
|
||||
$(MAKE) -C src/glsl glsl_parser.cpp glsl_parser.h glsl_lexer.cpp glcpp/glcpp-lex.c glcpp/glcpp-parse.c glcpp/glcpp-parse.h
|
||||
$(MAKE) -C src/mesa/program lex.yy.c program_parse.tab.c program_parse.tab.h
|
||||
-@touch $(top_builddir)/configs/current
|
||||
$(MAKE) -C src/glsl glsl_parser.cc glsl_parser.h glsl_lexer.cc
|
||||
$(MAKE) -C src/glsl/glcpp glcpp-lex.c glcpp-parse.c glcpp-parse.h
|
||||
$(MAKE) -C src/mesa program/lex.yy.c program/program_parse.tab.c program/program_parse.tab.h
|
||||
|
||||
# Everything for new a Mesa release:
|
||||
ARCHIVES = $(PACKAGE_NAME).tar.gz \
|
||||
|
@@ -69,11 +69,6 @@ if env['gles']:
|
||||
#######################################################################
|
||||
# Environment setup
|
||||
|
||||
env.Append(CPPDEFINES = [
|
||||
('PACKAGE_VERSION', '\\"9.2.0-rc2\\"'),
|
||||
('PACKAGE_BUGREPORT', '\\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\\"'),
|
||||
])
|
||||
|
||||
# Includes
|
||||
env.Prepend(CPPPATH = [
|
||||
'#/include',
|
||||
|
119
acinclude.m4
Normal file
119
acinclude.m4
Normal file
@@ -0,0 +1,119 @@
|
||||
# A few convenience macros for Mesa, mostly to keep all the platform
|
||||
# specifics out of configure.ac.
|
||||
|
||||
# MESA_PIC_FLAGS()
|
||||
#
|
||||
# Find out whether to build PIC code using the option --enable-pic and
|
||||
# the configure enable_static/enable_shared settings. If PIC is needed,
|
||||
# figure out the necessary flags for the platform and compiler.
|
||||
#
|
||||
# The platform checks have been shamelessly taken from libtool and
|
||||
# stripped down to just what's needed for Mesa. See _LT_COMPILER_PIC in
|
||||
# /usr/share/aclocal/libtool.m4 or
|
||||
# http://git.savannah.gnu.org/gitweb/?p=libtool.git;a=blob;f=libltdl/m4/libtool.m4;hb=HEAD
|
||||
#
|
||||
AC_DEFUN([MESA_PIC_FLAGS],
|
||||
[AC_REQUIRE([AC_PROG_CC])dnl
|
||||
AC_ARG_VAR([PIC_FLAGS], [compiler flags for PIC code])
|
||||
AC_ARG_ENABLE([pic],
|
||||
[AS_HELP_STRING([--disable-pic],
|
||||
[compile PIC objects @<:@default=enabled for shared builds
|
||||
on supported platforms@:>@])],
|
||||
[enable_pic="$enableval"
|
||||
test "x$enable_pic" = x && enable_pic=auto],
|
||||
[enable_pic=auto])
|
||||
# disable PIC by default for static builds
|
||||
if test "$enable_pic" = auto && test "$enable_static" = yes; then
|
||||
enable_pic=no
|
||||
fi
|
||||
# if PIC hasn't been explicitly disabled, try to figure out the flags
|
||||
if test "$enable_pic" != no; then
|
||||
AC_MSG_CHECKING([for $CC option to produce PIC])
|
||||
# allow the user's flags to override
|
||||
if test "x$PIC_FLAGS" = x; then
|
||||
# see if we're using GCC
|
||||
if test "x$GCC" = xyes; then
|
||||
case "$host_os" in
|
||||
aix*|beos*|cygwin*|irix5*|irix6*|osf3*|osf4*|osf5*)
|
||||
# PIC is the default for these OSes.
|
||||
;;
|
||||
mingw*|os2*|pw32*)
|
||||
# This hack is so that the source file can tell whether
|
||||
# it is being built for inclusion in a dll (and should
|
||||
# export symbols for example).
|
||||
PIC_FLAGS="-DDLL_EXPORT"
|
||||
;;
|
||||
darwin*|rhapsody*)
|
||||
# PIC is the default on this platform
|
||||
# Common symbols not allowed in MH_DYLIB files
|
||||
PIC_FLAGS="-fno-common"
|
||||
;;
|
||||
hpux*)
|
||||
# PIC is the default for IA64 HP-UX and 64-bit HP-UX,
|
||||
# but not for PA HP-UX.
|
||||
case $host_cpu in
|
||||
hppa*64*|ia64*)
|
||||
;;
|
||||
*)
|
||||
PIC_FLAGS="-fPIC"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Everyone else on GCC uses -fPIC
|
||||
PIC_FLAGS="-fPIC"
|
||||
;;
|
||||
esac
|
||||
else # !GCC
|
||||
case "$host_os" in
|
||||
hpux9*|hpux10*|hpux11*)
|
||||
# PIC is the default for IA64 HP-UX and 64-bit HP-UX,
|
||||
# but not for PA HP-UX.
|
||||
case "$host_cpu" in
|
||||
hppa*64*|ia64*)
|
||||
# +Z the default
|
||||
;;
|
||||
*)
|
||||
PIC_FLAGS="+Z"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
linux*|k*bsd*-gnu)
|
||||
case `basename "$CC"` in
|
||||
icc*|ecc*|ifort*)
|
||||
PIC_FLAGS="-KPIC"
|
||||
;;
|
||||
pgcc*|pgf77*|pgf90*|pgf95*)
|
||||
# Portland Group compilers (*not* the Pentium gcc
|
||||
# compiler, which looks to be a dead project)
|
||||
PIC_FLAGS="-fpic"
|
||||
;;
|
||||
ccc*)
|
||||
# All Alpha code is PIC.
|
||||
;;
|
||||
xl*)
|
||||
# IBM XL C 8.0/Fortran 10.1 on PPC
|
||||
PIC_FLAGS="-qpic"
|
||||
;;
|
||||
*)
|
||||
case `$CC -V 2>&1 | sed 5q` in
|
||||
*Sun\ C*|*Sun\ F*)
|
||||
# Sun C 5.9 or Sun Fortran
|
||||
PIC_FLAGS="-KPIC"
|
||||
;;
|
||||
esac
|
||||
esac
|
||||
;;
|
||||
solaris*)
|
||||
PIC_FLAGS="-KPIC"
|
||||
;;
|
||||
sunos4*)
|
||||
PIC_FLAGS="-PIC"
|
||||
;;
|
||||
esac
|
||||
fi # GCC
|
||||
fi # PIC_FLAGS
|
||||
AC_MSG_RESULT([$PIC_FLAGS])
|
||||
fi
|
||||
AC_SUBST([PIC_FLAGS])
|
||||
])# MESA_PIC_FLAGS
|
1
bin/.gitignore
vendored
1
bin/.gitignore
vendored
@@ -6,4 +6,3 @@ install-sh
|
||||
ylwrap
|
||||
compile
|
||||
ar-lib
|
||||
/test-driver
|
||||
|
@@ -1,52 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This script is used to generate the list of fixed bugs that
|
||||
# appears in the release notes files, with HTML formatting.
|
||||
#
|
||||
# Note: This script could take a while until all details have
|
||||
# been fetched from bugzilla.
|
||||
#
|
||||
# Usage examples:
|
||||
#
|
||||
# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3
|
||||
# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 > bugfixes
|
||||
# $ bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | tee bugfixes
|
||||
# $ DRYRUN=yes bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3
|
||||
# $ DRYRUN=yes bin/bugzilla_mesa.sh mesa-9.0.2..mesa-9.0.3 | wc -l
|
||||
|
||||
|
||||
# regex pattern: trim before url
|
||||
trim_before='s/.*\(http\)/\1/'
|
||||
|
||||
# regex pattern: trim after url
|
||||
trim_after='s/\(show_bug.cgi?id=[0-9]*\).*/\1/'
|
||||
|
||||
# regex pattern: always use https
|
||||
use_https='s/http:/https:/'
|
||||
|
||||
# extract fdo urls from commit log
|
||||
urls=$(git log $* | grep 'bugs.freedesktop.org/show_bug' | sed -e $trim_before -e $trim_after -e $use_https | sort | uniq)
|
||||
|
||||
# if DRYRUN is set to "yes", simply print the URLs and don't fetch the
|
||||
# details from fdo bugzilla.
|
||||
#DRYRUN=yes
|
||||
|
||||
if [ "x$DRYRUN" = xyes ]; then
|
||||
for i in $urls
|
||||
do
|
||||
echo $i
|
||||
done
|
||||
else
|
||||
echo "<ul>"
|
||||
echo ""
|
||||
|
||||
for i in $urls
|
||||
do
|
||||
id=$(echo $i | cut -d'=' -f2)
|
||||
summary=$(wget --quiet -O - $i | grep -e '<title>.*</title>' | sed -e 's/ *<title>Bug [0-9]\+ – \(.*\)<\/title>/\1/')
|
||||
echo "<li><a href=\"$i\">Bug $id</a> - $summary</li>"
|
||||
echo ""
|
||||
done
|
||||
|
||||
echo "</ul>"
|
||||
fi
|
@@ -1,35 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Script for generating a list of candidates for cherry-picking to a stable branch
|
||||
#
|
||||
# Usage examples:
|
||||
#
|
||||
# $ bin/get-pick-list.sh
|
||||
# $ bin/get-pick-list.sh > picklist
|
||||
# $ bin/get-pick-list.sh | tee picklist
|
||||
|
||||
# Grep for commits with "cherry picked from commit" in the commit message.
|
||||
git log --reverse --grep="cherry picked from commit" origin/master..HEAD |\
|
||||
grep "cherry picked from commit" |\
|
||||
sed -e 's/^[[:space:]]*(cherry picked from commit[[:space:]]*//' -e 's/)//' > already_picked
|
||||
|
||||
# Grep for commits that were marked as a candidate for the stable tree.
|
||||
git log --reverse --pretty=%H -i --grep='^\([[:space:]]*NOTE: .*[Cc]andidate\|CC:.*mesa-stable\)' HEAD..origin/master |\
|
||||
while read sha
|
||||
do
|
||||
# Check to see whether the patch is on the ignore list.
|
||||
if [ -f bin/.cherry-ignore ] ; then
|
||||
if grep -q ^$sha bin/.cherry-ignore ; then
|
||||
continue
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check to see if it has already been picked over.
|
||||
if grep -q ^$sha already_picked ; then
|
||||
continue
|
||||
fi
|
||||
|
||||
git log -n1 --pretty=oneline $sha | cat
|
||||
done
|
||||
|
||||
rm -f already_picked
|
74
bin/installmesa
Executable file
74
bin/installmesa
Executable file
@@ -0,0 +1,74 @@
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Simple shell script for installing Mesa's header and library files.
|
||||
# If the copy commands below don't work on a particular system (i.e. the
|
||||
# -f or -d flags), we may need to branch on `uname` to do the right thing.
|
||||
#
|
||||
|
||||
|
||||
TOP=.
|
||||
|
||||
INCLUDE_DIR="/usr/local/include"
|
||||
LIB_DIR="/usr/local/lib"
|
||||
|
||||
if [ "x$#" = "x0" ] ; then
|
||||
echo
|
||||
echo "***** Mesa installation - You may need root privileges to do this *****"
|
||||
echo
|
||||
echo "Default directory for header files is:" ${INCLUDE_DIR}
|
||||
echo "Enter new directory or press <Enter> to accept this default."
|
||||
|
||||
read INPUT
|
||||
if [ "x${INPUT}" != "x" ] ; then
|
||||
INCLUDE_DIR=${INPUT}
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "Default directory for library files is:" ${LIB_DIR}
|
||||
echo "Enter new directory or press <Enter> to accept this default."
|
||||
|
||||
read INPUT
|
||||
if [ "x${INPUT}" != "x" ] ; then
|
||||
LIB_DIR=${INPUT}
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "About to install Mesa header files (GL/*.h) in: " ${INCLUDE_DIR}/GL
|
||||
echo "and Mesa library files (libGL.*, etc) in: " ${LIB_DIR}
|
||||
echo "Press <Enter> to continue, or <ctrl>-C to abort."
|
||||
|
||||
read INPUT
|
||||
|
||||
else
|
||||
INCLUDE_DIR=$1/include
|
||||
LIB_DIR=$1/lib
|
||||
fi
|
||||
|
||||
# flags:
|
||||
# -f = force
|
||||
# -d = preserve symlinks (does not work on BSD)
|
||||
|
||||
if [ `uname` = "FreeBSD" ] ; then
|
||||
CP_FLAGS="-f"
|
||||
elif [ `uname` = "Darwin" ] ; then
|
||||
CP_FLAGS="-f"
|
||||
elif [ `uname` = "AIX" ] ; then
|
||||
CP_FLAGS="-fh"
|
||||
else
|
||||
CP_FLAGS="-fd"
|
||||
fi
|
||||
|
||||
|
||||
set -v
|
||||
|
||||
mkdir -p ${INCLUDE_DIR}
|
||||
mkdir -p ${INCLUDE_DIR}/GL
|
||||
# NOT YET: mkdir -p ${INCLUDE_DIR}/GLES
|
||||
mkdir -p ${LIB_DIR}
|
||||
cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL
|
||||
cp -f ${TOP}/src/glw/*.h ${INCLUDE_DIR}/GL
|
||||
# NOT YET: cp -f ${TOP}/include/GLES/*.h ${INCLUDE_DIR}/GLES
|
||||
cp ${CP_FLAGS} ${TOP}/lib*/lib* ${LIB_DIR}
|
||||
|
||||
echo "Done."
|
112
bin/minstall
Executable file
112
bin/minstall
Executable file
@@ -0,0 +1,112 @@
|
||||
#!/bin/sh
|
||||
|
||||
|
||||
# A minimal replacement for 'install' that supports installing symbolic links.
|
||||
# Only a limited number of options are supported:
|
||||
# -d dir Create a directory
|
||||
# -m mode Sets a file's mode when installing
|
||||
|
||||
|
||||
# If these commands aren't portable, we'll need some "if (arch)" type stuff
|
||||
SYMLINK="ln -s"
|
||||
MKDIR="mkdir -p"
|
||||
RM="rm -f"
|
||||
|
||||
MODE=""
|
||||
|
||||
if [ "$1" = "-d" ] ; then
|
||||
# make a directory path
|
||||
$MKDIR "$2"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$1" = "-m" ] ; then
|
||||
# set file mode
|
||||
MODE=$2
|
||||
shift 2
|
||||
fi
|
||||
|
||||
# install file(s) into destination
|
||||
if [ $# -ge 2 ] ; then
|
||||
|
||||
# Last cmd line arg is the dest dir
|
||||
for FILE in $@ ; do
|
||||
DESTDIR="$FILE"
|
||||
done
|
||||
|
||||
# Loop over args, moving them to DEST directory
|
||||
I=1
|
||||
for FILE in $@ ; do
|
||||
if [ $I = $# ] ; then
|
||||
# stop, don't want to install $DEST into $DEST
|
||||
exit 0
|
||||
fi
|
||||
|
||||
DEST=$DESTDIR
|
||||
|
||||
# On CYGWIN, because DLLs are loaded by the native Win32 loader,
|
||||
# they are installed in the executable path. Stub libraries used
|
||||
# only for linking are installed in the library path
|
||||
case `uname` in
|
||||
CYGWIN*)
|
||||
case $FILE in
|
||||
*.dll)
|
||||
DEST="$DEST/../bin"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
PWDSAVE=`pwd`
|
||||
|
||||
# determine file's type
|
||||
if [ -h "$FILE" ] ; then
|
||||
#echo $FILE is a symlink
|
||||
# Unfortunately, cp -d isn't universal so we have to
|
||||
# use a work-around.
|
||||
|
||||
# Use ls -l to find the target that the link points to
|
||||
LL=`ls -l "$FILE"`
|
||||
for L in $LL ; do
|
||||
TARGET=$L
|
||||
done
|
||||
#echo $FILE is a symlink pointing to $TARGET
|
||||
|
||||
FILE=`basename "$FILE"`
|
||||
# Go to $DEST and make the link
|
||||
cd "$DEST" # pushd
|
||||
$RM "$FILE"
|
||||
$SYMLINK "$TARGET" "$FILE"
|
||||
cd "$PWDSAVE" # popd
|
||||
|
||||
elif [ -f "$FILE" ] ; then
|
||||
#echo "$FILE" is a regular file
|
||||
# Only copy if the files differ
|
||||
if ! cmp -s $FILE $DEST/`basename $FILE`; then
|
||||
$RM "$DEST/`basename $FILE`"
|
||||
cp "$FILE" "$DEST"
|
||||
fi
|
||||
if [ $MODE ] ; then
|
||||
FILE=`basename "$FILE"`
|
||||
chmod $MODE "$DEST/$FILE"
|
||||
fi
|
||||
else
|
||||
echo "Unknown type of argument: " "$FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
I=`expr $I + 1`
|
||||
done
|
||||
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# If we get here, we didn't find anything to do
|
||||
echo "Usage:"
|
||||
echo " install -d dir Create named directory"
|
||||
echo " install [-m mode] file [...] dest Install files in destination"
|
||||
|
@@ -1,251 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
#
|
||||
# Copyright 2012 VMware Inc
|
||||
# Copyright 2008-2009 Jose Fonseca
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
#
|
||||
|
||||
"""Perf annotate for JIT code.
|
||||
|
||||
Linux `perf annotate` does not work with JIT code. This script takes the data
|
||||
produced by `perf script` command, plus the diassemblies outputed by gallivm
|
||||
into /tmp/perf-XXXXX.map.asm and produces output similar to `perf annotate`.
|
||||
|
||||
See docs/llvmpipe.html for usage instructions.
|
||||
|
||||
The `perf script` output parser was derived from the gprof2dot.py script.
|
||||
"""
|
||||
|
||||
|
||||
import sys
|
||||
import os.path
|
||||
import re
|
||||
import optparse
|
||||
import subprocess
|
||||
|
||||
|
||||
class Parser:
|
||||
"""Parser interface."""
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def parse(self):
|
||||
raise NotImplementedError
|
||||
|
||||
|
||||
class LineParser(Parser):
|
||||
"""Base class for parsers that read line-based formats."""
|
||||
|
||||
def __init__(self, file):
|
||||
Parser.__init__(self)
|
||||
self._file = file
|
||||
self.__line = None
|
||||
self.__eof = False
|
||||
self.line_no = 0
|
||||
|
||||
def readline(self):
|
||||
line = self._file.readline()
|
||||
if not line:
|
||||
self.__line = ''
|
||||
self.__eof = True
|
||||
else:
|
||||
self.line_no += 1
|
||||
self.__line = line.rstrip('\r\n')
|
||||
|
||||
def lookahead(self):
|
||||
assert self.__line is not None
|
||||
return self.__line
|
||||
|
||||
def consume(self):
|
||||
assert self.__line is not None
|
||||
line = self.__line
|
||||
self.readline()
|
||||
return line
|
||||
|
||||
def eof(self):
|
||||
assert self.__line is not None
|
||||
return self.__eof
|
||||
|
||||
|
||||
mapFile = None
|
||||
|
||||
def lookupMap(filename, matchSymbol):
|
||||
global mapFile
|
||||
mapFile = filename
|
||||
stream = open(filename, 'rt')
|
||||
for line in stream:
|
||||
start, length, symbol = line.split()
|
||||
|
||||
start = int(start, 16)
|
||||
length = int(length,16)
|
||||
|
||||
if symbol == matchSymbol:
|
||||
return start
|
||||
|
||||
return None
|
||||
|
||||
def lookupAsm(filename, desiredFunction):
|
||||
stream = open(filename + '.asm', 'rt')
|
||||
while stream.readline() != desiredFunction + ':\n':
|
||||
pass
|
||||
|
||||
asm = []
|
||||
line = stream.readline().strip()
|
||||
while line:
|
||||
addr, instr = line.split(':', 1)
|
||||
addr = int(addr)
|
||||
asm.append((addr, instr))
|
||||
line = stream.readline().strip()
|
||||
|
||||
return asm
|
||||
|
||||
|
||||
|
||||
samples = {}
|
||||
|
||||
|
||||
class PerfParser(LineParser):
|
||||
"""Parser for linux perf callgraph output.
|
||||
|
||||
It expects output generated with
|
||||
|
||||
perf record -g
|
||||
perf script
|
||||
"""
|
||||
|
||||
def __init__(self, infile, symbol):
|
||||
LineParser.__init__(self, infile)
|
||||
self.symbol = symbol
|
||||
|
||||
def readline(self):
|
||||
# Override LineParser.readline to ignore comment lines
|
||||
while True:
|
||||
LineParser.readline(self)
|
||||
if self.eof() or not self.lookahead().startswith('#'):
|
||||
break
|
||||
|
||||
def parse(self):
|
||||
# read lookahead
|
||||
self.readline()
|
||||
|
||||
while not self.eof():
|
||||
self.parse_event()
|
||||
|
||||
asm = lookupAsm(mapFile, self.symbol)
|
||||
|
||||
addresses = samples.keys()
|
||||
addresses.sort()
|
||||
total_samples = 0
|
||||
|
||||
sys.stdout.write('%s:\n' % self.symbol)
|
||||
for address, instr in asm:
|
||||
try:
|
||||
sample = samples.pop(address)
|
||||
except KeyError:
|
||||
sys.stdout.write(6*' ')
|
||||
else:
|
||||
sys.stdout.write('%6u' % (sample))
|
||||
total_samples += sample
|
||||
sys.stdout.write('%6u: %s\n' % (address, instr))
|
||||
print 'total:', total_samples
|
||||
assert len(samples) == 0
|
||||
|
||||
sys.exit(0)
|
||||
|
||||
def parse_event(self):
|
||||
if self.eof():
|
||||
return
|
||||
|
||||
line = self.consume()
|
||||
assert line
|
||||
|
||||
callchain = self.parse_callchain()
|
||||
if not callchain:
|
||||
return
|
||||
|
||||
def parse_callchain(self):
|
||||
callchain = []
|
||||
while self.lookahead():
|
||||
function = self.parse_call(len(callchain) == 0)
|
||||
if function is None:
|
||||
break
|
||||
callchain.append(function)
|
||||
if self.lookahead() == '':
|
||||
self.consume()
|
||||
return callchain
|
||||
|
||||
call_re = re.compile(r'^\s+(?P<address>[0-9a-fA-F]+)\s+(?P<symbol>.*)\s+\((?P<module>[^)]*)\)$')
|
||||
|
||||
def parse_call(self, first):
|
||||
line = self.consume()
|
||||
mo = self.call_re.match(line)
|
||||
assert mo
|
||||
if not mo:
|
||||
return None
|
||||
|
||||
if not first:
|
||||
return None
|
||||
|
||||
function_name = mo.group('symbol')
|
||||
if not function_name:
|
||||
function_name = mo.group('address')
|
||||
|
||||
module = mo.group('module')
|
||||
|
||||
function_id = function_name + ':' + module
|
||||
|
||||
address = mo.group('address')
|
||||
address = int(address, 16)
|
||||
|
||||
if function_name != self.symbol:
|
||||
return None
|
||||
|
||||
start_address = lookupMap(module, function_name)
|
||||
address -= start_address
|
||||
|
||||
#print function_name, module, address
|
||||
|
||||
samples[address] = samples.get(address, 0) + 1
|
||||
|
||||
return True
|
||||
|
||||
|
||||
def main():
|
||||
"""Main program."""
|
||||
|
||||
optparser = optparse.OptionParser(
|
||||
usage="\n\t%prog [options] symbol_name")
|
||||
(options, args) = optparser.parse_args(sys.argv[1:])
|
||||
if len(args) != 1:
|
||||
optparser.error('wrong number of arguments')
|
||||
|
||||
symbol = args[0]
|
||||
|
||||
p = subprocess.Popen(['perf', 'script'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
parser = PerfParser(p.stdout, symbol)
|
||||
parser.parse()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
|
||||
# vim: set sw=4 et:
|
@@ -2,12 +2,6 @@
|
||||
|
||||
# This script is used to generate the list of changes that
|
||||
# appears in the release notes files, with HTML formatting.
|
||||
#
|
||||
# Usage examples:
|
||||
#
|
||||
# $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3
|
||||
# $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3 > changes
|
||||
# $ bin/shortlog_mesa.sh mesa-9.0.2..mesa-9.0.3 | tee changes
|
||||
|
||||
|
||||
typeset -i in_log=0
|
||||
|
@@ -100,4 +100,4 @@ def AddOptions(opts):
|
||||
opts.Add(BoolOption('quiet', 'DEPRECATED: profile build', 'yes'))
|
||||
opts.Add(BoolOption('texture_float', 'enable floating-point textures and renderbuffers', 'no'))
|
||||
if host_platform == 'windows':
|
||||
opts.Add(EnumOption('MSVC_VERSION', 'MS Visual C++ version', None, allowed_values=('7.1', '8.0', '9.0', '10.0', '11.0')))
|
||||
opts.Add(EnumOption('MSVS_VERSION', 'MS Visual C++ version', None, allowed_values=('7.1', '8.0', '9.0')))
|
||||
|
2
configs/.gitignore
vendored
Normal file
2
configs/.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
current
|
||||
autoconf
|
221
configs/current.in
Normal file
221
configs/current.in
Normal file
@@ -0,0 +1,221 @@
|
||||
# Autoconf configuration
|
||||
|
||||
# Pull in the defaults
|
||||
include $(TOP)/configs/default
|
||||
|
||||
# This is generated by configure
|
||||
CONFIG_NAME = autoconf
|
||||
|
||||
# Compiler and flags
|
||||
CC = @CC@
|
||||
CXX = @CXX@
|
||||
PIC_FLAGS = @PIC_FLAGS@
|
||||
DEFINES = @DEFINES@
|
||||
API_DEFINES = @API_DEFINES@
|
||||
SHARED_GLAPI = @SHARED_GLAPI@
|
||||
CFLAGS_NOVISIBILITY = @CPPFLAGS@ @CFLAGS@ \
|
||||
$(PIC_FLAGS) $(DEFINES)
|
||||
CXXFLAGS_NOVISIBILITY = @CPPFLAGS@ @CXXFLAGS@ \
|
||||
$(PIC_FLAGS) $(DEFINES)
|
||||
CFLAGS = $(CFLAGS_NOVISIBILITY) @VISIBILITY_CFLAGS@
|
||||
CXXFLAGS = $(CXXFLAGS_NOVISIBILITY) @VISIBILITY_CXXFLAGS@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
RADEON_CFLAGS = @RADEON_CFLAGS@
|
||||
RADEON_LIBS = @RADEON_LIBS@
|
||||
NOUVEAU_CFLAGS = @NOUVEAU_CFLAGS@
|
||||
NOUVEAU_LIBS = @NOUVEAU_LIBS@
|
||||
INTEL_LIBS = @INTEL_LIBS@
|
||||
INTEL_CFLAGS = @INTEL_CFLAGS@
|
||||
X11_LIBS = @X11_LIBS@
|
||||
X11_CFLAGS = @X11_CFLAGS@
|
||||
LLVM_BINDIR = @LLVM_BINDIR@
|
||||
LLVM_CFLAGS = @LLVM_CFLAGS@
|
||||
LLVM_CPPFLAGS = @LLVM_CPPFLAGS@
|
||||
LLVM_CXXFLAGS = @LLVM_CXXFLAGS@
|
||||
LLVM_LDFLAGS = @LLVM_LDFLAGS@
|
||||
LLVM_LIBDIR = @LLVM_LIBDIR@
|
||||
LLVM_LIBS = @LLVM_LIBS@
|
||||
LLVM_INCLUDEDIR = @LLVM_INCLUDEDIR@
|
||||
GLW_CFLAGS = @GLW_CFLAGS@
|
||||
GLX_TLS = @GLX_TLS@
|
||||
|
||||
# dlopen
|
||||
DLOPEN_LIBS = @DLOPEN_LIBS@
|
||||
|
||||
# Source selection
|
||||
MESA_ASM_FILES = @MESA_ASM_FILES@
|
||||
|
||||
# Misc tools and flags
|
||||
MAKE = @MAKE@
|
||||
SHELL = @SHELL@
|
||||
MKLIB_OPTIONS = @MKLIB_OPTIONS@
|
||||
MKDEP = @MKDEP@
|
||||
MKDEP_OPTIONS = @MKDEP_OPTIONS@
|
||||
INSTALL = @INSTALL@
|
||||
AWK = @AWK@
|
||||
GREP = @GREP@
|
||||
NM = @NM@
|
||||
|
||||
# Perl
|
||||
PERL = @PERL@
|
||||
|
||||
# Indent (used for generating dispatch tables)
|
||||
INDENT = @INDENT@
|
||||
INDENT_FLAGS = @INDENT_FLAGS@
|
||||
|
||||
# Python and flags (generally only needed by the developers)
|
||||
PYTHON2 = @PYTHON2@
|
||||
PYTHON_FLAGS = -t -O -O
|
||||
|
||||
# Flex and Bison for GLSL compiler
|
||||
FLEX = @LEX@
|
||||
BISON = @YACC@
|
||||
|
||||
# Library names (base name)
|
||||
GL_LIB = @GL_LIB@
|
||||
GLU_LIB = @GLU_LIB@
|
||||
GLW_LIB = GLw
|
||||
OSMESA_LIB = @OSMESA_LIB@
|
||||
GLESv1_CM_LIB = GLESv1_CM
|
||||
GLESv2_LIB = GLESv2
|
||||
VG_LIB = OpenVG
|
||||
GLAPI_LIB = glapi
|
||||
|
||||
# Library names (actual file names)
|
||||
GL_LIB_NAME = @GL_LIB_NAME@
|
||||
GLU_LIB_NAME = @GLU_LIB_NAME@
|
||||
GLW_LIB_NAME = @GLW_LIB_NAME@
|
||||
OSMESA_LIB_NAME = @OSMESA_LIB_NAME@
|
||||
EGL_LIB_NAME = @EGL_LIB_NAME@
|
||||
GLESv1_CM_LIB_NAME = @GLESv1_CM_LIB_NAME@
|
||||
GLESv2_LIB_NAME = @GLESv2_LIB_NAME@
|
||||
VG_LIB_NAME = @VG_LIB_NAME@
|
||||
GLAPI_LIB_NAME = @GLAPI_LIB_NAME@
|
||||
|
||||
# Globs used to install the lib and all symlinks
|
||||
GL_LIB_GLOB = @GL_LIB_GLOB@
|
||||
GLU_LIB_GLOB = @GLU_LIB_GLOB@
|
||||
GLW_LIB_GLOB = @GLW_LIB_GLOB@
|
||||
EGL_LIB_GLOB = @EGL_LIB_GLOB@
|
||||
GLESv1_CM_LIB_GLOB = @GLESv1_CM_LIB_GLOB@
|
||||
GLESv2_LIB_GLOB = @GLESv2_LIB_GLOB@
|
||||
VG_LIB_GLOB = @VG_LIB_GLOB@
|
||||
GLAPI_LIB_GLOB = @GLAPI_LIB_GLOB@
|
||||
|
||||
# Directories to build
|
||||
LIB_DIR = @LIB_DIR@
|
||||
SRC_DIRS = @SRC_DIRS@
|
||||
DRIVER_DIRS = @DRIVER_DIRS@
|
||||
GALLIUM_DIRS = @GALLIUM_DIRS@
|
||||
GALLIUM_DRIVERS_DIRS = @GALLIUM_DRIVERS_DIRS@
|
||||
GALLIUM_WINSYS_DIRS = @GALLIUM_WINSYS_DIRS@
|
||||
GALLIUM_TARGET_DIRS = @GALLIUM_TARGET_DIRS@
|
||||
GALLIUM_STATE_TRACKERS_DIRS = @GALLIUM_STATE_TRACKERS_DIRS@
|
||||
GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
|
||||
GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
|
||||
|
||||
# Driver specific build vars
|
||||
DRI_DIRS = @DRI_DIRS@
|
||||
EGL_PLATFORMS = @EGL_PLATFORMS@
|
||||
EGL_CLIENT_APIS = @EGL_CLIENT_APIS@
|
||||
|
||||
# Dependencies
|
||||
X11_INCLUDES = @X11_INCLUDES@
|
||||
|
||||
# GLw motif setup
|
||||
GLW_SOURCES = @GLW_SOURCES@
|
||||
MOTIF_CFLAGS = @MOTIF_CFLAGS@
|
||||
|
||||
# Library/program dependencies
|
||||
GL_LIB_DEPS = @GL_LIB_DEPS@
|
||||
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @OSMESA_MESA_DEPS@ \
|
||||
@OSMESA_LIB_DEPS@
|
||||
EGL_LIB_DEPS = @EGL_LIB_DEPS@
|
||||
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLU_MESA_DEPS@ \
|
||||
@GLU_LIB_DEPS@
|
||||
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) @GLW_MESA_DEPS@ \
|
||||
@GLW_LIB_DEPS@
|
||||
GLESv1_CM_LIB_DEPS = @GLESv1_CM_LIB_DEPS@
|
||||
GLESv2_LIB_DEPS = @GLESv2_LIB_DEPS@
|
||||
VG_LIB_DEPS = @VG_LIB_DEPS@
|
||||
GLAPI_LIB_DEPS = @GLAPI_LIB_DEPS@
|
||||
|
||||
# DRI dependencies
|
||||
DRI_LIB_DEPS = @DRI_LIB_DEPS@
|
||||
GALLIUM_DRI_LIB_DEPS = @GALLIUM_DRI_LIB_DEPS@
|
||||
LIBDRM_CFLAGS = @LIBDRM_CFLAGS@
|
||||
LIBDRM_LIB = @LIBDRM_LIBS@
|
||||
DRI2PROTO_CFLAGS = @DRI2PROTO_CFLAGS@
|
||||
GLPROTO_CFLAGS = @GLPROTO_CFLAGS@
|
||||
EXPAT_INCLUDES = @EXPAT_INCLUDES@
|
||||
|
||||
# Autoconf directories
|
||||
prefix = @prefix@
|
||||
exec_prefix = @exec_prefix@
|
||||
libdir = @libdir@
|
||||
includedir = @includedir@
|
||||
|
||||
# Installation directories (for make install)
|
||||
INSTALL_DIR = $(prefix)
|
||||
INSTALL_LIB_DIR = $(libdir)
|
||||
INSTALL_INC_DIR = $(includedir)
|
||||
|
||||
# DRI installation directories
|
||||
DRI_DRIVER_INSTALL_DIR = @DRI_DRIVER_INSTALL_DIR@
|
||||
|
||||
# Where libGL will look for DRI hardware drivers
|
||||
DRI_DRIVER_SEARCH_DIR = @DRI_DRIVER_SEARCH_DIR@
|
||||
|
||||
# EGL driver install directory
|
||||
EGL_DRIVER_INSTALL_DIR = @EGL_DRIVER_INSTALL_DIR@
|
||||
|
||||
# XVMC library install directory
|
||||
XVMC_LIB_INSTALL_DIR=@XVMC_LIB_INSTALL_DIR@
|
||||
|
||||
# VDPAU library install directory
|
||||
VDPAU_LIB_INSTALL_DIR=@VDPAU_LIB_INSTALL_DIR@
|
||||
|
||||
# VA library install directory
|
||||
VA_LIB_INSTALL_DIR=@VA_LIB_INSTALL_DIR@
|
||||
|
||||
# Xorg driver install directory (for xorg state-tracker)
|
||||
XORG_DRIVER_INSTALL_DIR = @XORG_DRIVER_INSTALL_DIR@
|
||||
|
||||
# Path to OpenCL C library libclc
|
||||
LIBCLC_PATH = @LIBCLC_PATH@
|
||||
|
||||
# pkg-config substitutions
|
||||
GL_PC_REQ_PRIV = @GL_PC_REQ_PRIV@
|
||||
GL_PC_LIB_PRIV = @GL_PC_LIB_PRIV@
|
||||
GL_PC_CFLAGS = @GL_PC_CFLAGS@
|
||||
DRI_PC_REQ_PRIV = @DRI_PC_REQ_PRIV@
|
||||
GLU_PC_REQ = @GLU_PC_REQ@
|
||||
GLU_PC_REQ_PRIV = @GLU_PC_REQ_PRIV@
|
||||
GLU_PC_LIB_PRIV = @GLU_PC_LIB_PRIV@
|
||||
GLU_PC_CFLAGS = @GLU_PC_CFLAGS@
|
||||
GLW_PC_REQ_PRIV = @GLW_PC_REQ_PRIV@
|
||||
GLW_PC_LIB_PRIV = @GLW_PC_LIB_PRIV@
|
||||
GLW_PC_CFLAGS = @GLW_PC_CFLAGS@
|
||||
OSMESA_PC_REQ = @OSMESA_PC_REQ@
|
||||
OSMESA_PC_LIB_PRIV = @OSMESA_PC_LIB_PRIV@
|
||||
GLESv1_CM_PC_LIB_PRIV = @GLESv1_CM_PC_LIB_PRIV@
|
||||
GLESv2_PC_LIB_PRIV = @GLESv2_PC_LIB_PRIV@
|
||||
EGL_PC_REQ_PRIV = @GL_PC_REQ_PRIV@
|
||||
EGL_PC_LIB_PRIV = @GL_PC_LIB_PRIV@
|
||||
EGL_PC_CFLAGS = @GL_PC_CFLAGS@
|
||||
|
||||
XCB_DRI2_CFLAGS = @XCB_DRI2_CFLAGS@
|
||||
XCB_DRI2_LIBS = @XCB_DRI2_LIBS@
|
||||
LIBUDEV_CFLAGS = @LIBUDEV_CFLAGS@
|
||||
LIBUDEV_LIBS = @LIBUDEV_LIBS@
|
||||
WAYLAND_CFLAGS = @WAYLAND_CFLAGS@
|
||||
WAYLAND_LIBS = @WAYLAND_LIBS@
|
||||
|
||||
MESA_LLVM = @MESA_LLVM@
|
||||
|
||||
LLVM_VERSION = @LLVM_VERSION@
|
||||
|
||||
HAVE_XF86VIDMODE = @HAVE_XF86VIDMODE@
|
||||
|
||||
GALLIUM_PIPE_LOADER_DEFINES = @GALLIUM_PIPE_LOADER_DEFINES@
|
||||
GALLIUM_PIPE_LOADER_LIBS = @GALLIUM_PIPE_LOADER_LIBS@
|
180
configs/default
Normal file
180
configs/default
Normal file
@@ -0,0 +1,180 @@
|
||||
# Default/template configuration
|
||||
|
||||
# This is included by other config files which may override some
|
||||
# of these variables.
|
||||
# Think of this as a base class from which configs are derived.
|
||||
|
||||
|
||||
CONFIG_NAME = default
|
||||
|
||||
# Version info
|
||||
MESA_MAJOR=9
|
||||
MESA_MINOR=0
|
||||
MESA_TINY=0
|
||||
MESA_VERSION = $(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY)
|
||||
|
||||
# external projects. This should be useless now that we use libdrm.
|
||||
DRM_SOURCE_PATH=$(TOP)/../drm
|
||||
|
||||
# Compiler and flags
|
||||
CC = cc
|
||||
CXX = CC
|
||||
CFLAGS = -O
|
||||
CXXFLAGS = -O
|
||||
LDFLAGS =
|
||||
GLU_CFLAGS =
|
||||
GLX_TLS = no
|
||||
|
||||
# Compiler for building demos/tests/etc
|
||||
APP_CC = $(CC)
|
||||
APP_CXX = $(CXX)
|
||||
|
||||
# Misc tools and flags
|
||||
SHELL = /bin/sh
|
||||
MKLIB = $(SHELL) $(TOP)/bin/mklib
|
||||
MKLIB_OPTIONS =
|
||||
MKDEP = makedepend
|
||||
MKDEP_OPTIONS = -fdepend
|
||||
MAKE = make
|
||||
FLEX = flex
|
||||
BISON = bison
|
||||
PKG_CONFIG = pkg-config
|
||||
|
||||
# Use MINSTALL for installing libraries, INSTALL for everything else
|
||||
MINSTALL = $(SHELL) $(TOP)/bin/minstall
|
||||
INSTALL = $(MINSTALL)
|
||||
|
||||
# Tools for regenerating glapi (generally only needed by the developers)
|
||||
PYTHON2 = python
|
||||
PYTHON_FLAGS = -t -O -O
|
||||
INDENT = indent
|
||||
INDENT_FLAGS = -i4 -nut -br -brs -npcs -ce -T GLubyte -T GLbyte -T Bool
|
||||
|
||||
# Library names (base name)
|
||||
GL_LIB = GL
|
||||
GLU_LIB = GLU
|
||||
GLW_LIB = GLw
|
||||
OSMESA_LIB = OSMesa
|
||||
EGL_LIB = EGL
|
||||
GLESv1_CM_LIB = GLESv1_CM
|
||||
GLESv2_LIB = GLESv2
|
||||
VG_LIB = OpenVG
|
||||
GLAPI_LIB = glapi
|
||||
|
||||
# Library names (actual file names)
|
||||
GL_LIB_NAME = lib$(GL_LIB).so
|
||||
GLU_LIB_NAME = lib$(GLU_LIB).so
|
||||
GLW_LIB_NAME = lib$(GLW_LIB).so
|
||||
OSMESA_LIB_NAME = lib$(OSMESA_LIB).so
|
||||
EGL_LIB_NAME = lib$(EGL_LIB).so
|
||||
GLESv1_CM_LIB_NAME = lib$(GLESv1_CM_LIB).so
|
||||
GLESv2_LIB_NAME = lib$(GLESv2_LIB).so
|
||||
VG_LIB_NAME = lib$(VG_LIB).so
|
||||
GLAPI_LIB_NAME = lib$(GLAPI_LIB).so
|
||||
|
||||
# globs used to install the lib and all symlinks
|
||||
GL_LIB_GLOB = $(GL_LIB_NAME)*
|
||||
GLU_LIB_GLOB = $(GLU_LIB_NAME)*
|
||||
GLW_LIB_GLOB = $(GLW_LIB_NAME)*
|
||||
EGL_LIB_GLOB = $(EGL_LIB_NAME)*
|
||||
GLESv1_CM_LIB_GLOB = $(GLESv1_CM_LIB_NAME)*
|
||||
GLESv2_LIB_GLOB = $(GLESv2_LIB_NAME)*
|
||||
VG_LIB_GLOB = $(VG_LIB_NAME)*
|
||||
GLAPI_LIB_GLOB = $(GLAPI_LIB_NAME)*
|
||||
|
||||
# Optional assembly language optimization files for libGL
|
||||
MESA_ASM_FILES =
|
||||
|
||||
# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
|
||||
# order to build the Motif widget too)
|
||||
GLW_SOURCES = GLwDrawA.c
|
||||
MOTIF_CFLAGS = -I/usr/include/Motif1.2
|
||||
|
||||
|
||||
# Directories to build
|
||||
LIB_DIR = lib
|
||||
SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
|
||||
gallium egl gallium/winsys gallium/targets
|
||||
DRIVER_DIRS = x11 osmesa
|
||||
|
||||
# Gallium directories and
|
||||
GALLIUM_DIRS = auxiliary drivers state_trackers
|
||||
GALLIUM_AUXILIARIES = $(TOP)/src/gallium/auxiliary/libgallium.a
|
||||
GALLIUM_DRIVERS_DIRS = softpipe trace rbug noop identity galahad i915 svga r300 nvfx nv50
|
||||
GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drivers/$(DIR)/lib$(DIR).a)
|
||||
GALLIUM_WINSYS_DIRS = sw sw/xlib
|
||||
GALLIUM_TARGET_DIRS = libgl-xlib
|
||||
GALLIUM_STATE_TRACKERS_DIRS = glx vega
|
||||
|
||||
# native platforms EGL should support
|
||||
EGL_PLATFORMS = x11
|
||||
EGL_CLIENT_APIS = $(GL_LIB)
|
||||
|
||||
# Library dependencies
|
||||
#EXTRA_LIB_PATH ?=
|
||||
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
|
||||
EGL_LIB_DEPS = -ldl -lpthread
|
||||
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
|
||||
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
|
||||
GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
|
||||
GLESv1_CM_LIB_DEPS = -lpthread
|
||||
GLESv2_LIB_DEPS = -lpthread
|
||||
VG_LIB_DEPS = -lpthread
|
||||
GLAPI_LIB_DEPS = -lpthread
|
||||
|
||||
# Program dependencies - specific GL libraries added in Makefiles
|
||||
X11_LIBS = -lX11
|
||||
|
||||
DLOPEN_LIBS = -ldl
|
||||
|
||||
# Installation directories (for make install)
|
||||
INSTALL_DIR = /usr/local
|
||||
INSTALL_LIB_DIR = $(INSTALL_DIR)/$(LIB_DIR)
|
||||
INSTALL_INC_DIR = $(INSTALL_DIR)/include
|
||||
DRI_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/dri
|
||||
|
||||
# Where libGL will look for DRI hardware drivers
|
||||
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
|
||||
|
||||
# EGL driver install directory
|
||||
EGL_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/egl
|
||||
|
||||
# Xorg driver install directory (for xorg state-tracker)
|
||||
XORG_DRIVER_INSTALL_DIR = $(INSTALL_LIB_DIR)/xorg/modules/drivers
|
||||
|
||||
# pkg-config substitutions
|
||||
GL_PC_REQ_PRIV =
|
||||
GL_PC_LIB_PRIV =
|
||||
GL_PC_CFLAGS =
|
||||
DRI_PC_REQ_PRIV =
|
||||
GLU_PC_REQ = gl
|
||||
GLU_PC_REQ_PRIV =
|
||||
GLU_PC_LIB_PRIV =
|
||||
GLU_PC_CFLAGS =
|
||||
GLW_PC_REQ_PRIV =
|
||||
GLW_PC_LIB_PRIV =
|
||||
GLW_PC_CFLAGS =
|
||||
OSMESA_PC_REQ =
|
||||
OSMESA_PC_LIB_PRIV =
|
||||
GLESv1_CM_PC_REQ_PRIV =
|
||||
GLESv1_CM_PC_LIB_PRIV =
|
||||
GLESv1_CM_PC_CFLAGS =
|
||||
GLESv2_PC_REQ_PRIV =
|
||||
GLESv2_PC_LIB_PRIV =
|
||||
GLESv2_PC_CFLAGS =
|
||||
VG_PC_REQ_PRIV =
|
||||
VG_PC_LIB_PRIV =
|
||||
VG_PC_CFLAGS =
|
||||
|
||||
# default targets
|
||||
# this helps reduce the mismatch between our automake Makefiles and the old
|
||||
# custom Makefiles while we transition.
|
||||
|
||||
all: default
|
||||
|
||||
am--refresh:
|
||||
|
||||
distclean: clean
|
||||
|
||||
check:
|
||||
test:
|
959
configure.ac
959
configure.ac
File diff suppressed because it is too large
Load Diff
60
docs/GL3.txt
60
docs/GL3.txt
@@ -23,47 +23,48 @@ GL_EXT_texture_shared_exponent DONE (i965, r600, swrast)
|
||||
Float depth buffers (GL_ARB_depth_buffer_float) DONE (i965, r600)
|
||||
Framebuffer objects (GL_ARB_framebuffer_object) DONE (i965, r300, r600, swrast)
|
||||
Half-float DONE
|
||||
Non-normalized Integer texture/framebuffer formats DONE (i965, r600)
|
||||
Non-normalized Integer texture/framebuffer formats DONE (i965)
|
||||
1D/2D Texture arrays DONE
|
||||
Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE (i965, r600, swrast)
|
||||
GL_EXT_texture_compression_rgtc DONE (i965, r300, r600, swrast)
|
||||
Red and red/green texture formats DONE (i965, swrast, gallium)
|
||||
Transform feedback (GL_EXT_transform_feedback) DONE (i965, r600)
|
||||
Transform feedback (GL_EXT_transform_feedback) DONE (i965)
|
||||
Vertex array objects (GL_APPLE_vertex_array_object) DONE (i965, r300, r600, swrast)
|
||||
sRGB framebuffer format (GL_EXT_framebuffer_sRGB) DONE (i965, r600)
|
||||
glClearBuffer commands DONE
|
||||
glGetStringi command DONE
|
||||
glTexParameterI, glGetTexParameterI commands DONE
|
||||
glVertexAttribI commands DONE
|
||||
glVertexAttribI commands ~50% done (converts int
|
||||
values to floats)
|
||||
Depth format cube textures DONE
|
||||
GLX_ARB_create_context (GLX 1.4 is required) DONE
|
||||
|
||||
|
||||
GL 3.1:
|
||||
|
||||
GLSL 1.40 DONE (i965, r600)
|
||||
Forward compatibile context support/deprecations DONE (i965, r600)
|
||||
GLSL 1.40 DONE (i965)
|
||||
Forward compatibile context support/deprecations DONE (i965)
|
||||
Instanced drawing (GL_ARB_draw_instanced) DONE (i965, gallium, swrast)
|
||||
Buffer copying (GL_ARB_copy_buffer) DONE (i965, r300, r600, swrast)
|
||||
Primitive restart (GL_NV_primitive_restart) DONE (i965, r600)
|
||||
16 vertex texture image units DONE
|
||||
Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts (i965, r600)
|
||||
Texture buffer objs (GL_ARB_texture_buffer_object) DONE for OpenGL 3.1 contexts (i965)
|
||||
Rectangular textures (GL_ARB_texture_rectangle) DONE (i965, r300, r600, swrast)
|
||||
Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE (i965, r600, swrast)
|
||||
Uniform buffer objs (GL_ARB_uniform_buffer_object) DONE (i965)
|
||||
Signed normalized textures (GL_EXT_texture_snorm) DONE (i965, r300, r600)
|
||||
|
||||
|
||||
GL 3.2:
|
||||
|
||||
Core/compatibility profiles DONE
|
||||
GLSL 1.50 in progress
|
||||
Geometry shaders (GL_ARB_geometry_shader4) partially done
|
||||
GLSL 1.50 not started
|
||||
Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack)
|
||||
BGRA vertex order (GL_ARB_vertex_array_bgra) DONE (i965, r300, r600, swrast)
|
||||
Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE (i965, r300, r600, swrast)
|
||||
Frag shader coord (GL_ARB_fragment_coord_conventions) DONE (i965, r300, r600, swrast)
|
||||
Provoking vertex (GL_ARB_provoking_vertex) DONE (i965, r300, r600, swrast)
|
||||
Seamless cubemaps (GL_ARB_seamless_cube_map) DONE (i965, r600)
|
||||
Multisample textures (GL_ARB_texture_multisample) DONE (i965)
|
||||
Multisample textures (GL_ARB_texture_multisample) not started
|
||||
Frag depth clamp (GL_ARB_depth_clamp) DONE (i965, r600, swrast)
|
||||
Fence objects (GL_ARB_sync) DONE (i965, r300, r600, swrast)
|
||||
GLX_ARB_create_context_profile DONE
|
||||
@@ -79,25 +80,25 @@ GL_ARB_sampler_objects DONE (i965, r300, r600)
|
||||
GL_ARB_shader_bit_encoding DONE
|
||||
GL_ARB_texture_rgb10_a2ui DONE (i965, r600)
|
||||
GL_ARB_texture_swizzle DONE (same as EXT version) (i965, r300, r600, swrast)
|
||||
GL_ARB_timer_query DONE (i965, r600)
|
||||
GL_ARB_timer_query DONE (i965)
|
||||
GL_ARB_instanced_arrays DONE (i965, r300, r600)
|
||||
GL_ARB_vertex_type_2_10_10_10_rev DONE (i965, r600)
|
||||
GL_ARB_vertex_type_2_10_10_10_rev DONE (r600)
|
||||
|
||||
|
||||
GL 4.0:
|
||||
|
||||
GLSL 4.0 not started
|
||||
GL_ARB_texture_query_lod DONE (i965)
|
||||
GL_ARB_texture_query_lod not started
|
||||
GL_ARB_draw_buffers_blend DONE (i965, r600, softpipe)
|
||||
GL_ARB_draw_indirect started (Christoph)
|
||||
GL_ARB_gpu_shader5 started
|
||||
GL_ARB_draw_indirect not started
|
||||
GL_ARB_gpu_shader5 not started
|
||||
GL_ARB_gpu_shader_fp64 not started
|
||||
GL_ARB_sample_shading not started
|
||||
GL_ARB_shader_subroutine not started
|
||||
GL_ARB_tessellation_shader not started
|
||||
GL_ARB_texture_buffer_object_rgb32 DONE (i965, softpipe)
|
||||
GL_ARB_texture_cube_map_array DONE (i965, softpipe)
|
||||
GL_ARB_texture_gather started (Maxence, Chris)
|
||||
GL_ARB_texture_buffer_object_rgb32 not started
|
||||
GL_ARB_texture_cube_map_array not started
|
||||
GL_ARB_texture_gather not started
|
||||
GL_ARB_transform_feedback2 DONE
|
||||
GL_ARB_transform_feedback3 DONE
|
||||
|
||||
@@ -106,7 +107,7 @@ GL 4.1:
|
||||
|
||||
GLSL 4.1 not started
|
||||
GL_ARB_ES2_compatibility DONE (i965, r300, r600)
|
||||
GL_ARB_get_program_binary DONE (0 binary formats)
|
||||
GL_ARB_get_program_binary not started
|
||||
GL_ARB_separate_shader_objects some infrastructure done
|
||||
GL_ARB_shader_precision not started
|
||||
GL_ARB_vertex_attrib_64bit not started
|
||||
@@ -119,25 +120,28 @@ GLSL 4.2 not started
|
||||
GL_ARB_texture_compression_bptc not started
|
||||
GL_ARB_compressed_texture_pixel_storage not started
|
||||
GL_ARB_shader_atomic_counters not started
|
||||
GL_ARB_texture_storage DONE (i965, r300, r600, swrast, gallium)
|
||||
GL_ARB_texture_storage DONE (r300, r600, swrast)
|
||||
GL_ARB_transform_feedback_instanced DONE
|
||||
GL_ARB_base_instance DONE (i965, nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_base_instance DONE (nv50, nvc0, r600, radeonsi)
|
||||
GL_ARB_shader_image_load_store not started
|
||||
GL_ARB_conservative_depth DONE (softpipe)
|
||||
GL_ARB_shading_language_420pack started (Todd)
|
||||
GL_ARB_internalformat_query DONE (i965, gallium)
|
||||
GL_ARB_map_buffer_alignment DONE (r300, r600, radeonsi)
|
||||
GL_ARB_shading_language_420pack not started
|
||||
GL_ARB_internalformat_query not started
|
||||
GL_ARB_map_buffer_alignment not started
|
||||
|
||||
|
||||
GL 4.3:
|
||||
|
||||
GLSL 4.3 not started
|
||||
ARB_arrays_of_arrays not started
|
||||
ARB_ES3_compatibility DONE (i965)
|
||||
ARB_ES3_compatibility not started
|
||||
ARB_clear_buffer_object not started
|
||||
ARB_compute_shader started (gallium)
|
||||
ARB_copy_image not started
|
||||
KHR_debug some work done (ARB_debug_output)
|
||||
ARB_debug_group not started
|
||||
ARB_debug_label not started
|
||||
ARB_debug_output DONE
|
||||
ARB_debug_output2 not started
|
||||
ARB_explicit_uniform_location not started
|
||||
ARB_fragment_layer_viewport not started
|
||||
ARB_framebuffer_no_attachments not started
|
||||
@@ -149,9 +153,9 @@ ARB_robust_buffer_access_behavior not started
|
||||
ARB_shader_image_size not started
|
||||
ARB_shader_storage_buffer_object not started
|
||||
ARB_stencil_texturing not started
|
||||
ARB_texture_buffer_range DONE (nv50, nvc0)
|
||||
ARB_texture_buffer_range not started
|
||||
ARB_texture_query_levels not started
|
||||
ARB_texture_storage_multisample DONE (i965)
|
||||
ARB_texture_storage_multisample not started
|
||||
ARB_texture_view not started
|
||||
ARB_vertex_attrib_binding not started
|
||||
|
||||
|
@@ -12,7 +12,7 @@ Contact
|
||||
|
||||
Status
|
||||
|
||||
Obsolete.
|
||||
Shipping (since Mesa version 2.2)
|
||||
|
||||
Version
|
||||
|
@@ -1,13 +0,0 @@
|
||||
The software may implement third party technologies (e.g. third party
|
||||
libraries) that are not licensed to you by AMD and for which you may need
|
||||
to obtain licenses from other parties. Unless explicitly stated otherwise,
|
||||
these third party technologies are not licensed hereunder. Such third
|
||||
party technologies include, but are not limited, to H.264, MPEG-2, MPEG-4,
|
||||
AVC, and VC-1.
|
||||
|
||||
For MPEG-2 Encoding Products ANY USE OF THIS PRODUCT IN ANY MANNER OTHER
|
||||
THAN PERSONAL USE THAT COMPLIES WITH THE MPEG-2 STANDARD FOR ENCODING VIDEO
|
||||
INFORMATION FOR PACKAGED MEDIA IS EXPRESSLY PROHIBITED WITHOUT A LICENSE
|
||||
UNDER APPLICABLE PATENTS IN THE MPEG-2 PATENT PORTFOLIO, WHICH LICENSES IS
|
||||
AVAILABLE FROM MPEG LA, LLC, 6312 S. Fiddlers Green Circle, Suite 400E,
|
||||
Greenwood Village, Colorado 80111 U.S.A.
|
38
docs/README.VMS
Normal file
38
docs/README.VMS
Normal file
@@ -0,0 +1,38 @@
|
||||
|
||||
VMS support contributed by Jouk Jansen (joukj@hrem.stm.tudelft.nl)
|
||||
|
||||
|
||||
The latest version was tested on a VMSAlpha7.2 system using DECC6.0, but
|
||||
probably also works for other versions.
|
||||
|
||||
At the moment only the libraries LIBMESGL.EXE/LIBMESGL.OLB,
|
||||
LIBMESAGLU.EXE/LIBMESAGLU.OLB and LIBGLUT.EXE/LIBGLUT.OLB and the demos of the
|
||||
directory [.DEMOS] can be build.
|
||||
However, feel free to create the missing "decrip.mms-files" in the other
|
||||
directories.
|
||||
|
||||
The make files were tested
|
||||
using the DIGITAL make utility called MMS. There is also a public domain
|
||||
clone available (MMK) and I think, but it is not tested, that this
|
||||
utility will give (hardly) any problem.
|
||||
|
||||
To make everything just type MMS (or MMK) in the main directory of
|
||||
mesagl. For MMS the deafult makefile is called descrip.mms, and
|
||||
that is what I have called it. I included alse some config files,
|
||||
all having mms somewhere in the name which all the makefiles need
|
||||
(just as your unix makefiles).
|
||||
|
||||
On Alpha platforms at default a sharable images for the libraries are created.
|
||||
To get a static library make it by typing MMS/MACRO=(NOSHARE=1).
|
||||
On VAX platforms only static libraries can be build.
|
||||
|
||||
23-sep-2005
|
||||
changed default compilation to use /float=ieee/ieee=denorm. The reason for
|
||||
this is that it makes Mesa on OpenVMS better compatible with other platforms
|
||||
and other packages for VMS that I maintain.
|
||||
For more information see
|
||||
http://nchrem.tnw.tudelft.nl/openvms
|
||||
https://bugs.freedesktop.org/show_bug.cgi?id=4270
|
||||
You may want to compile Mesa to use VAX-floating point arithmetic, instead
|
||||
of IEEE floating point by removing the /float=IEEE/denorm flag from the
|
||||
compiler options in the descrip.mms files.
|
@@ -1,6 +1,6 @@
|
||||
File: docs/README.WIN32
|
||||
|
||||
Last updated: 21 June 2013
|
||||
Last updated: 23 April 2011
|
||||
|
||||
|
||||
Quick Start
|
||||
@@ -30,23 +30,6 @@ At this time, only the gallium GDI driver is known to work.
|
||||
Source code also exists in the tree for other drivers in
|
||||
src/mesa/drivers/windows, but the status of this code is unknown.
|
||||
|
||||
Recipe
|
||||
------
|
||||
|
||||
Building on windows requires several open-source packages. These are
|
||||
steps that work as of this writing.
|
||||
|
||||
1) install python 2.7
|
||||
2) install scons (latest)
|
||||
3) install mingw, flex, and bison
|
||||
4) install libxml2 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
|
||||
get libxml2-python-2.9.1.win-amd64-py2.7.exe
|
||||
5) install pywin32 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
|
||||
get pywin32-218.4.win-amd64-py2.7.exe
|
||||
6) install git
|
||||
7) download mesa from git
|
||||
see http://www.mesa3d.org/repository.html
|
||||
8) run scons
|
||||
|
||||
General
|
||||
-------
|
||||
|
@@ -106,7 +106,7 @@ Vertex/Fragment program debugger
|
||||
|
||||
GL_MESA_program_debug is an experimental extension to support
|
||||
interactive debugging of vertex and fragment programs. See the
|
||||
docs/specs/OLD/MESA_program_debug.spec file for details.
|
||||
docs/MESA_program_debug.spec file for details.
|
||||
|
||||
The bulk of the vertex/fragment program debugger is implemented
|
||||
outside of Mesa. The GL_MESA_program_debug extension just has minimal
|
@@ -1,83 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Application Issues</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Application Issues</h1>
|
||||
|
||||
<p>
|
||||
This page documents known issues with some OpenGL applications.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>Topogun</h2>
|
||||
|
||||
<p>
|
||||
<a href="http://www.topogun.com/">Topogun</a> for Linux (version 2, at least)
|
||||
creates a GLX visual without requesting a depth buffer.
|
||||
This causes bad rendering if the OpenGL driver happens to choose a visual
|
||||
without a depth buffer.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Mesa 9.1.2 and later (will) support a DRI configuration option to work around
|
||||
this issue.
|
||||
Using the <a href="http://dri.freedesktop.org/wiki/DriConf">driconf</a> tool,
|
||||
set the "Create all visuals with a depth buffer" option before running Topogun.
|
||||
Then, all GLX visuals will be created with a depth buffer.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>Old OpenGL games</h2>
|
||||
|
||||
<p>
|
||||
Some old OpenGL games (approx. ten years or older) may crash during
|
||||
start-up because of an extension string buffer-overflow problem.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The problem is a modern OpenGL driver will return a very long string
|
||||
for the glGetString(GL_EXTENSIONS) query and if the application
|
||||
naively copies the string into a fixed-size buffer it can overflow the
|
||||
buffer and crash the application.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The work-around is to set the MESA_EXTENSION_MAX_YEAR environment variable
|
||||
to the approximate release year of the game.
|
||||
This will cause the glGetString(GL_EXTENSIONS) query to only report extensions
|
||||
older than the given year.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For example, if the game was released in 2001, do
|
||||
<pre>
|
||||
export MESA_EXTENSION_MAX_YEAR=2001
|
||||
</pre>
|
||||
before running the game.
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
<h2>Viewperf</h2>
|
||||
|
||||
<p>
|
||||
See the <a href="viewperf.html">Viewperf issues</a> page for a detailed list
|
||||
of Viewperf issues.
|
||||
</p>
|
||||
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Compilation and Installation using Autoconf</h1>
|
||||
|
||||
<ol>
|
||||
@@ -24,6 +17,7 @@
|
||||
<li><a href="#dri">DRI Driver Options</a></li>
|
||||
<li><a href="#osmesa">OSMesa Driver Options</a></li>
|
||||
</ul>
|
||||
<li><p><a href="#demos">Demo Program Options</a>
|
||||
</ol>
|
||||
|
||||
|
||||
@@ -62,107 +56,83 @@ configuration run <code>make realclean</code> before rebuilding.
|
||||
|
||||
<p>
|
||||
Some of the generic autoconf options are used with Mesa:
|
||||
</p>
|
||||
<dl>
|
||||
<dt><code>--prefix=PREFIX</code></dt>
|
||||
<dd><p>This is the root directory where
|
||||
files will be installed by <code>make install</code>. The default is
|
||||
<code>/usr/local</code>.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--exec-prefix=EPREFIX</code></dt>
|
||||
<dd><p>This is the root directory
|
||||
<ul>
|
||||
<li><code>--prefix=PREFIX</code> - This is the root directory where
|
||||
files will be installed by <code>make install</code>. The default is
|
||||
<code>/usr/local</code>.
|
||||
</li>
|
||||
<li><code>--exec-prefix=EPREFIX</code> - This is the root directory
|
||||
where architecture-dependent files will be installed. In Mesa, this is
|
||||
only used to derive the directory for the libraries. The default is
|
||||
<code>${prefix}</code>.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--libdir=LIBDIR</code></dt>
|
||||
<dd><p>This option specifies the directory
|
||||
<code>${prefix}</code>.
|
||||
</li>
|
||||
<li><code>--libdir=LIBDIR</code> - This option specifies the directory
|
||||
where the GL libraries will be installed. The default is
|
||||
<code>${exec_prefix}/lib</code>. It also serves as the name of the
|
||||
library staging area in the source tree. For instance, if the option
|
||||
<code>--libdir=/usr/local/lib64</code> is used, the libraries will be
|
||||
created in a <code>lib64</code> directory at the top of the Mesa source
|
||||
tree.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-static, --disable-shared</code></dt>
|
||||
<dd><p>By default, Mesa
|
||||
tree.
|
||||
</li>
|
||||
<li><code>--enable-static, --disable-shared</code> - By default, Mesa
|
||||
will build shared libraries. Either of these options will force static
|
||||
libraries to be built. It is not currently possible to build static and
|
||||
shared libraries in a single pass.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>CC, CFLAGS, CXX, CXXFLAGS</code></dt>
|
||||
<dd><p>These environment variables
|
||||
shared libraries in a single pass.
|
||||
</li>
|
||||
<li><code>CC, CFLAGS, CXX, CXXFLAGS</code> - These environment variables
|
||||
control the C and C++ compilers used during the build. By default,
|
||||
<code>gcc</code> and <code>g++</code> are used with the options
|
||||
<code>"-g -O2"</code>.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>LDFLAGS</code></dt>
|
||||
<dd><p>An environment variable specifying flags to
|
||||
<code>"-g -O2"</code>.
|
||||
</li>
|
||||
<li><code>LDFLAGS</code> - An environment variable specifying flags to
|
||||
pass when linking programs. These are normally empty, but can be used
|
||||
to direct the linker to use libraries in nonstandard directories. For
|
||||
example, <code>LDFLAGS="-L/usr/X11R6/lib"</code>.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>PKG_CONFIG_PATH</code></dt>
|
||||
<dd><p>When available, the
|
||||
example, <code>LDFLAGS="-L/usr/X11R6/lib"</code>.
|
||||
</li>
|
||||
<li><code>PKG_CONFIG_PATH</code> - When available, the
|
||||
<code>pkg-config</code> utility is used to search for external libraries
|
||||
on the system. This environment variable is used to control the search
|
||||
path for <code>pkg-config</code>. For instance, setting
|
||||
<code>PKG_CONFIG_PATH=/usr/X11R6/lib/pkgconfig</code> will search for
|
||||
package metadata in <code>/usr/X11R6</code> before the standard
|
||||
directories.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
directories.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
There are also a few general options for altering the Mesa build:
|
||||
</p>
|
||||
<dl>
|
||||
<dt><code>--with-x</code></dt>
|
||||
<dd><p>When the X11 development libraries are
|
||||
<ul>
|
||||
<li><code>--with-x</code> - When the X11 development libraries are
|
||||
needed, the <code>pkg-config</code> utility <a href="#pkg-config">will
|
||||
be used</a> for locating them. If they cannot be found through
|
||||
<code>pkg-config</code> a fallback routing using <code>imake</code> will
|
||||
be used. In this case, the <code>--with-x</code>,
|
||||
<code>--x-includes</code> and <code>--x-libraries</code> options can
|
||||
control the use of X for Mesa.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-gl-osmesa</code></dt>
|
||||
<dd><p>The <a href="osmesa.html">OSMesa
|
||||
control the use of X for Mesa.
|
||||
</li>
|
||||
<li><code>--enable-gl-osmesa</code> - The <a href="osmesa.html">OSMesa
|
||||
library</a> can be built on top of libGL for drivers that provide it.
|
||||
This option controls whether to build libOSMesa. By default, this is
|
||||
enabled for the Xlib driver and disabled otherwise. Note that this
|
||||
option is different than using OSMesa as the driver.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-debug</code></dt>
|
||||
<dd><p>This option will enable compiler
|
||||
options and macros to aid in debugging the Mesa libraries.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--disable-asm</code></dt>
|
||||
<dd><p>There are assembly routines
|
||||
option is different than using OSMesa as the driver.
|
||||
</li>
|
||||
<li><code>--enable-debug</code> - This option will enable compiler
|
||||
options and macros to aid in debugging the Mesa libraries.
|
||||
</li>
|
||||
<li><code>--disable-asm</code> - There are assembly routines
|
||||
available for a few architectures. These will be used by default if
|
||||
one of these architectures is detected. This option ensures that
|
||||
assembly will not be used.</p>
|
||||
</dd>
|
||||
|
||||
<dt><code>--enable-32-bit</code></dt>
|
||||
<dt><code>--enable-64-bit</code></dt>
|
||||
<dd><p>By default, the
|
||||
assembly will not be used.
|
||||
</li>
|
||||
<li><code>--enable-32-bit, --enable-64-bit</code> - By default, the
|
||||
build will compile code as directed by the environment variables
|
||||
<code>CC</code>, <code>CFLAGS</code>, etc. If the compiler is
|
||||
<code>gcc</code>, these options offer a helper to add the compiler flags
|
||||
to force 32- or 64-bit code generation as used on the x86 and x86_64
|
||||
architectures.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
architectures.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2 id="driver">2. Driver Options</h2>
|
||||
@@ -245,6 +215,25 @@ libraries that will be built. More details on the specific GL libraries
|
||||
can be found in the <a href="install.html">basic installation
|
||||
instructions</a>.
|
||||
|
||||
</div>
|
||||
|
||||
<h2 id="demos">4. Demo Program Options</h2>
|
||||
|
||||
<p>
|
||||
There are many demonstration programs in the MesaDemos tarball. If the
|
||||
programs are available when <code>./configure</code> is run, a subset of
|
||||
the programs will be built depending on the driver and library options
|
||||
chosen. See the directory <code>progs</code> for the full set of demos.
|
||||
|
||||
<dl>
|
||||
<dt><code>--with-demos=DEMOS,DEMOS,...</code>
|
||||
<dd><p> This option allows a
|
||||
specific set of demo programs to be built. For example,
|
||||
<code>--with-demos="xdemos,slang"</code>. Beware that if this option is
|
||||
used, it will not be ensured that the necessary GL libraries will be
|
||||
available.
|
||||
<dt><code>--without-demos</code> <dd><p> This completely disables building the
|
||||
demo programs. It is equivalent to <code>--with-demos=no</code>.
|
||||
</dl>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
33
docs/banner.html
Normal file
33
docs/banner.html
Normal file
@@ -0,0 +1,33 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Banner</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
body { background: black; color: white }
|
||||
h1 {
|
||||
font: x-large sans-serif; text-align: center;
|
||||
height: 75px; margin-left: 100px; margin-right: 100px }
|
||||
.gears { width: 100px; height: 73px; float: left; background: url('gears.png') right no-repeat }
|
||||
div + .gears { float: right; background-position: left }
|
||||
/*
|
||||
This should happen in the future instead:
|
||||
h1 {
|
||||
border-left: 71px solid #c11800; border-right: 71px solid #00c130;
|
||||
border-top: 0px; border-bottom: 0px;
|
||||
border-image: url(gears.png) 100%; -webkit-border-image: url(gears.png) 100%;
|
||||
}
|
||||
*/
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<div class="gears"></div>
|
||||
<div class="gears"></div>
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
|
||||
</body>
|
||||
</html>
|
@@ -7,24 +7,18 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Bug Database</h1>
|
||||
|
||||
<p>
|
||||
The Mesa bug database is hosted on
|
||||
<a href="http://freedesktop.org">freedesktop.org</a>.
|
||||
<a href="http://freedesktop.org" target="_parent">freedesktop.org</a>.
|
||||
The old bug database on SourceForge is no longer used.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
To file a Mesa bug, go to
|
||||
<a href="https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa">
|
||||
<a href="https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa"
|
||||
target="_parent">
|
||||
Bugzilla on freedesktop.org</a>
|
||||
</p>
|
||||
|
||||
@@ -56,6 +50,5 @@ If your bug report is vague or your test program doesn't compile
|
||||
easily, the problem may not be fixed very quickly.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Conformance</h1>
|
||||
|
||||
<p>
|
||||
@@ -698,6 +691,6 @@ Conformx passed.
|
||||
|
||||
NOTE: conformx passes for all machine path levels (-p option).
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -25,65 +25,61 @@
|
||||
|
||||
<b>Documentation</b>
|
||||
<ul>
|
||||
<li><a href="intro.html" target="_parent">Introduction</a>
|
||||
<li><a href="index.html" target="_parent">News</a>
|
||||
<li><a href="developers.html" target="_parent">Developers</a>
|
||||
<li><a href="systems.html" target="_parent">Platforms and Drivers</a>
|
||||
<li><a href="license.html" target="_parent">License & Copyright</a>
|
||||
<li><a href="faq.html" target="_parent">FAQ</a>
|
||||
<li><a href="relnotes.html" target="_parent">Release Notes</a>
|
||||
<li><a href="thanks.html" target="_parent">Acknowledgements</a>
|
||||
<li><a href="conform.html" target="_parent">Conformance Testing</a>
|
||||
<li><a href="intro.html" target="MainFrame">Introduction</a>
|
||||
<li><a href="news.html" target="MainFrame">News</a>
|
||||
<li><a href="developers.html" target="MainFrame">Developers</a>
|
||||
<li><a href="systems.html" target="MainFrame">Platforms and Drivers</a>
|
||||
<li><a href="license.html" target="MainFrame">License & Copyright</a>
|
||||
<li><a href="faq.html" target="MainFrame">FAQ</a>
|
||||
<li><a href="relnotes.html" target="MainFrame">Release Notes</a>
|
||||
<li><a href="thanks.html" target="MainFrame">Acknowledgements</a>
|
||||
<li><a href="conform.html" target="MainFrame">Conformance Testing</a>
|
||||
<li>more docs below...
|
||||
</ul>
|
||||
|
||||
<b>Download / Install</b>
|
||||
<ul>
|
||||
<li><a href="download.html" target="_parent">Downloading / Unpacking</a>
|
||||
<li><a href="install.html" target="_parent">Compiling / Installing</a>
|
||||
<ul>
|
||||
<li><a href="autoconf.html" target="_parent">Autoconf</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="precompiled.html" target="_parent">Precompiled Libraries</a>
|
||||
<li><a href="download.html" target="MainFrame">Downloading / Unpacking</a>
|
||||
<li><a href="install.html" target="MainFrame">Compiling / Installing</a>
|
||||
<li><a href="precompiled.html" target="MainFrame">Precompiled Libraries</a>
|
||||
</ul>
|
||||
|
||||
<b>Resources</b>
|
||||
<ul>
|
||||
<li><a href="lists.html" target="_parent">Mailing Lists</a>
|
||||
<li><a href="bugs.html" target="_parent">Bug Database</a>
|
||||
<li><a href="webmaster.html" target="_parent">Webmaster</a>
|
||||
<li><a href="lists.html" target="MainFrame">Mailing Lists</a>
|
||||
<li><a href="bugs.html" target="MainFrame">Bug Database</a>
|
||||
<li><a href="webmaster.html" target="MainFrame">Webmaster</a>
|
||||
<li><a href="http://dri.freedesktop.org/" target="_parent">Mesa/DRI Wiki</a>
|
||||
</ul>
|
||||
|
||||
<b>User Topics</b>
|
||||
<ul>
|
||||
<li><a href="shading.html" target="_parent">Shading Language</a>
|
||||
<li><a href="egl.html" target="_parent">EGL</a>
|
||||
<li><a href="opengles.html" target="_parent">OpenGL ES</a>
|
||||
<li><a href="openvg.html" target="_parent">OpenVG / Vega</a>
|
||||
<li><a href="envvars.html" target="_parent">Environment Variables</a>
|
||||
<li><a href="osmesa.html" target="_parent">Off-Screen Rendering</a>
|
||||
<li><a href="debugging.html" target="_parent">Debugging Tips</a>
|
||||
<li><a href="perf.html" target="_parent">Performance Tips</a>
|
||||
<li><a href="extensions.html" target="_parent">Mesa Extensions</a>
|
||||
<li><a href="mangling.html" target="_parent">Function Name Mangling</a>
|
||||
<li><a href="llvmpipe.html" target="_parent">Gallium llvmpipe driver</a>
|
||||
<li><a href="vmware-guest.html" target="_parent">VMware SVGA3D guest driver</a>
|
||||
<li><a href="postprocess.html" target="_parent">Gallium post-processing</a>
|
||||
<li><a href="application-issues.html" target="_parent">Application Issues</a>
|
||||
<li><a href="viewperf.html" target="_parent">Viewperf Issues</a>
|
||||
<li><a href="egl.html" target="MainFrame">EGL</a>
|
||||
<li><a href="opengles.html" target="MainFrame">OpenGL ES</a>
|
||||
<li><a href="openvg.html" target="MainFrame">OpenVG / Vega</a>
|
||||
<li><a href="envvars.html" target="MainFrame">Environment Variables</a>
|
||||
<li><a href="osmesa.html" target="MainFrame">Off-Screen Rendering</a>
|
||||
<li><a href="debugging.html" target="MainFrame">Debugging Tips</a>
|
||||
<li><a href="perf.html" target="MainFrame">Performance Tips</a>
|
||||
<li><a href="extensions.html" target="MainFrame">Mesa Extensions</a>
|
||||
<li><a href="mangling.html" target="MainFrame">Function Name Mangling</a>
|
||||
<li><a href="llvmpipe.html" target="MainFrame">Gallium llvmpipe driver</a>
|
||||
<li><a href="vmware-guest.html" target="MainFrame">VMware SVGA3D guest driver</a>
|
||||
<li><a href="postprocess.html" target="MainFrame">Gallium post-processing</a>
|
||||
<li><a href="viewperf.html" target="MainFrame">Viewperf Issues</a>
|
||||
</ul>
|
||||
|
||||
<b>Developer Topics</b>
|
||||
<ul>
|
||||
<li><a href="repository.html" target="_parent">Source Code Repository</a>
|
||||
<li><a href="sourcetree.html" target="_parent">Source Code Tree</a>
|
||||
<li><a href="utilities.html" target="_parent">Utilities</a>
|
||||
<li><a href="helpwanted.html" target="_parent">Help Wanted</a>
|
||||
<li><a href="devinfo.html" target="_parent">Development Notes</a>
|
||||
<li><a href="sourcedocs.html" target="_parent">Source Documentation</a>
|
||||
<li><a href="dispatch.html" target="_parent">GL Dispatch</a>
|
||||
<li><a href="http://sourceforge.net/projects/mesa3d" target="_parent">SourceForge homepage</a>
|
||||
<li><a href="repository.html" target="MainFrame">Source Code Repository</a>
|
||||
<li><a href="sourcetree.html" target="MainFrame">Source Code Tree</a>
|
||||
<li><a href="utilities.html" target="MainFrame">Utilities</a>
|
||||
<li><a href="helpwanted.html" target="MainFrame">Help Wanted</a>
|
||||
<li><a href="devinfo.html" target="MainFrame">Development Notes</a>
|
||||
<li><a href="sourcedocs.html" target="MainFrame">Source Documentation</a>
|
||||
<li><a href="subset.html" target="MainFrame">Mesa Subset Driver</a>
|
||||
<li><a HREF="dispatch.html" target="MainFrame">GL Dispatch</a>
|
||||
</ul>
|
||||
|
||||
<b>Links</b>
|
||||
@@ -91,6 +87,11 @@
|
||||
<li><a href="http://www.opengl.org" target="_parent">OpenGL website</a>
|
||||
<li><a href="http://dri.freedesktop.org" target="_parent">DRI website</a>
|
||||
<li><a href="http://www.freedesktop.org" target="_parent">freedesktop.org</a>
|
||||
<li><a href="games.html" target="MainFrame">Games and Entertainment</a>
|
||||
<li><a href="libraries.html" target="MainFrame">Libraries and Toolkits</a>
|
||||
<li><a href="modelers.html" target="MainFrame">Modeling and Rendering</a>
|
||||
<li><a href="science.html" target="MainFrame">Science and Technical</a>
|
||||
<li><a href="utility.html" target="MainFrame">Utilities</a>
|
||||
</ul>
|
||||
|
||||
<b>Hosted by:</b>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Debugging Tips</h1>
|
||||
|
||||
<p>
|
||||
@@ -42,6 +35,5 @@
|
||||
src/dlist.c for details.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,20 +7,13 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Developers</h1>
|
||||
|
||||
<p>
|
||||
Both professional and volunteer developers contribute to Mesa.
|
||||
</p>
|
||||
<p>
|
||||
<a href="http://www.vmware.com/">VMware</a>
|
||||
<a href="http://www.vmware.com/" target="_parent">VMware</a>
|
||||
employs several of the main Mesa developers including Brian Paul
|
||||
and Keith Whitwell.
|
||||
</p>
|
||||
@@ -38,13 +31,13 @@ including:
|
||||
|
||||
<p>
|
||||
Other companies including
|
||||
<a href="http://www.intellinuxgraphics.org/index.html">Intel</a>
|
||||
<a href="http://www.intellinuxgraphics.org/index.html" target="_parent">Intel</a>
|
||||
and RedHat also actively contribute to the project.
|
||||
Intel has recently contributed the new GLSL compiler in Mesa 7.9.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://www.lunarg.com/">LunarG</a> can be contacted
|
||||
<a href="http://www.lunarg.com/" target="_parent">LunarG</a> can be contacted
|
||||
for custom Mesa / 3D graphics development.
|
||||
</p>
|
||||
|
||||
@@ -53,6 +46,5 @@ Volunteers have made significant contributions to all parts of Mesa, including
|
||||
complete device drivers.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Development Notes</h1>
|
||||
|
||||
|
||||
@@ -156,30 +149,6 @@ src/mesa/state_tracker/st_glsl_to_tgsi.cpp can serve as examples.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>Marking a commit as a candidate for a stable branch</h2>
|
||||
|
||||
<p>
|
||||
If you want a commit to be applied to a stable branch,
|
||||
you should add an appropriate note to the commit message.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Here are some examples of such a note:
|
||||
</p>
|
||||
<ul>
|
||||
<li>NOTE: This is a candidate for the 9.0 branch.</li>
|
||||
<li>NOTE: This is a candidate for the 8.0 and 9.0 branches.</li>
|
||||
<li>NOTE: This is a candidate for the stable branches.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>Cherry-picking candidates for a stable branch</h2>
|
||||
|
||||
<p>
|
||||
Please use <code>git cherry-pick -x <commit></code> for cherry-picking a commit
|
||||
from master to a stable branch.
|
||||
</p>
|
||||
|
||||
<h2>Making a New Mesa Release</h2>
|
||||
|
||||
<p>
|
||||
@@ -196,27 +165,30 @@ branch is relevant.
|
||||
<h3>Verify and update version info</h3>
|
||||
|
||||
<dl>
|
||||
<dt>SConstruct</dt>
|
||||
<dt>Android.common.mk</dt>
|
||||
<dt>configs/default</dt>
|
||||
<dd>MESA_MAJOR, MESA_MINOR and MESA_TINY</dd>
|
||||
<dt>Makefile.am</dt>
|
||||
<dd>PACKAGE_VERSION</dd>
|
||||
<dt>configure.ac</dt>
|
||||
<dd>AC_INIT</dd>
|
||||
<dt>src/mesa/main/version.h</dt>
|
||||
<dd>MESA_MAJOR, MESA_MINOR, MESA_PATCH and MESA_VERSION_STRING</dd>
|
||||
</dl>
|
||||
|
||||
<p>
|
||||
Create a docs/relnotes/x.y.z.html file.
|
||||
The bin/bugzilla_mesa.sh and bin/shortlog_mesa.sh scripts can be used to
|
||||
create the HTML-formatted lists of bugfixes and changes to include in the file.
|
||||
Link the new docs/relnotes/x.y.z.html file into the main <a href="relnotes.html">relnotes.html</a> file.
|
||||
Create a docs/relnotes-x.y.z.html file.
|
||||
The bin/shortlog_mesa.sh script can be used to create a HTML-formatted list
|
||||
of changes to include in the file.
|
||||
Link the new docs/relnotes-x.y.z.html file into the main <a href="relnotes.html">relnotes.html</a> file.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Update <a href="index.html">docs/index.html</a>.
|
||||
Update <a href="news.html">docs/news.html</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Tag the files with the release name (in the form <b>mesa-x.y</b>)
|
||||
with: <code>git tag -s mesa-x.y -m "Mesa x.y Release"</code>
|
||||
with: <code>git tag -a mesa-x.y</code>
|
||||
Then: <code>git push origin mesa-x.y</code>
|
||||
</p>
|
||||
|
||||
@@ -225,14 +197,13 @@ Then: <code>git push origin mesa-x.y</code>
|
||||
<p>
|
||||
Make the distribution files. From inside the Mesa directory:
|
||||
<pre>
|
||||
./autogen.sh
|
||||
make tarballs
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
After the tarballs are created, the md5 checksums for the files will
|
||||
be computed.
|
||||
Add them to the docs/relnotes/x.y.html file.
|
||||
Add them to the docs/relnotes-x.y.html file.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -242,18 +213,15 @@ compile everything, and run some demos to be sure everything works.
|
||||
|
||||
<h3>Update the website and announce the release</h3>
|
||||
<p>
|
||||
Make a new directory for the release on annarchy.freedesktop.org with:
|
||||
<br>
|
||||
<code>
|
||||
mkdir /srv/ftp.freedesktop.org/pub/mesa/x.y
|
||||
</code>
|
||||
Follow the directions on SourceForge for creating a new "release" and
|
||||
uploading the tarballs.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Basically, to upload the tarball files with:
|
||||
<br>
|
||||
<code>
|
||||
rsync -avP -e ssh MesaLib-x.y.* USERNAME@annarchy.freedesktop.org:/srv/ftp.freedesktop.org/pub/mesa/x.y/
|
||||
rsync -avP ssh Mesa*-X.Y.* USERNAME@frs.sourceforge.net:uploads/
|
||||
</code>
|
||||
</p>
|
||||
|
||||
@@ -275,6 +243,5 @@ and
|
||||
<em>m</em><em>e</em><em>s</em><em>a</em><em>-</em><em>a</em><em>n</em><em>n</em><em>o</em><em>u</em><em>n</em><em>c</em><em>e</em><em>@</em><em>l</em><em>i</em><em>s</em><em>t</em><em>s</em><em>.</em><em>f</em><em>r</em><em>e</em><em>e</em><em>d</em><em>e</em><em>s</em><em>k</em><em>t</em><em>o</em><em>p</em><em>.</em><em>o</em><em>r</em><em>g</em>
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -6,14 +6,6 @@
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>GL Dispatch in Mesa</h1>
|
||||
|
||||
<p>Several factors combine to make efficient dispatch of OpenGL functions
|
||||
@@ -274,6 +266,5 @@ included.</p>
|
||||
|
||||
<h2 id="autogen">4. Automatic Generation of Dispatch Stubs</h2>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,23 +7,17 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Downloading</h1>
|
||||
|
||||
<p>
|
||||
Primary Mesa download site:
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/">freedesktop.org</a> (FTP)
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/"
|
||||
target="_parent">freedesktop.org</a> (FTP)
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When a new release is coming, release candidates (betas) may be found
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/beta/">here</a>.
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/beta/" target="_parent">here</a>.
|
||||
</p>
|
||||
|
||||
|
||||
@@ -89,17 +83,17 @@ instructions</a>.
|
||||
|
||||
<p>
|
||||
A package of SGI's GLU library is available
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/glu/">here</a>
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/glu/" target="_parent">here</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
A package of Mark Kilgard's GLUT library is available
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/glut/">here</a>
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/glut/" target="_parent">here</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The Mesa demos collection is available
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/demos/">here</a>
|
||||
<a href="ftp://ftp.freedesktop.org/pub/mesa/demos/" target="_parent">here</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -112,6 +106,6 @@ were split off into their own git repositories:
|
||||
<a href="http://cgit.freedesktop.org/mesa/demos/">Demos</a>,
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,18 +7,11 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa EGL</h1>
|
||||
|
||||
<p>The current version of EGL in Mesa implements EGL 1.4. More information
|
||||
about EGL can be found at
|
||||
<a href="http://www.khronos.org/egl/">
|
||||
<a href="http://www.khronos.org/egl/" target="_parent">
|
||||
http://www.khronos.org/egl/</a>.</p>
|
||||
|
||||
<p>The Mesa's implementation of EGL uses a driver architecture. The main
|
||||
@@ -60,32 +53,28 @@ or more EGL drivers.</p>
|
||||
<p>There are several options that control the build of EGL at configuration
|
||||
time</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>--enable-egl</code></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li><code>--enable-egl</code>
|
||||
|
||||
<p>By default, EGL is enabled. When disabled, the main library and the drivers
|
||||
will not be built.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--with-egl-driver-dir</code></dt>
|
||||
<dd>
|
||||
<li><code>--with-egl-driver-dir</code>
|
||||
|
||||
<p>The directory EGL drivers should be installed to. If not specified, EGL
|
||||
drivers will be installed to <code>${libdir}/egl</code>.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--enable-gallium-egl</code></dt>
|
||||
<dd>
|
||||
<li><code>--enable-gallium-egl</code>
|
||||
|
||||
<p>Enable the optional <code>egl_gallium</code> driver.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--with-egl-platforms</code></dt>
|
||||
<dd>
|
||||
<li><code>--with-egl-platforms</code>
|
||||
|
||||
<p>List the platforms (window systems) to support. Its argument is a comma
|
||||
seprated string such as <code>--with-egl-platforms=x11,drm</code>. It decides
|
||||
@@ -99,34 +88,30 @@ types such as <code>EGLNativeDisplayType</code> or
|
||||
only be built with SCons. Unless for special needs, the build system should
|
||||
select the right platforms automatically.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--enable-gles1</code></dt>
|
||||
<dt><code>--enable-gles2</code></dt>
|
||||
<dd>
|
||||
<li><code>--enable-gles1</code> and <code>--enable-gles2</code>
|
||||
|
||||
<p>These options enable OpenGL ES support in OpenGL. The result is one big
|
||||
internal library that supports multiple APIs.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--enable-shared-glapi</code></dt>
|
||||
<dd>
|
||||
<li><code>--enable-shared-glapi</code>
|
||||
|
||||
<p>By default, <code>libGL</code> has its own copy of <code>libglapi</code>.
|
||||
This options makes <code>libGL</code> use the shared <code>libglapi</code>. This
|
||||
is required if applications mix OpenGL and OpenGL ES.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>--enable-openvg</code></dt>
|
||||
<dd>
|
||||
<li><code>--enable-openvg</code>
|
||||
|
||||
<p>OpenVG must be explicitly enabled by this option.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
</dl>
|
||||
</ul>
|
||||
|
||||
<h2>Use EGL</h2>
|
||||
|
||||
@@ -140,9 +125,8 @@ mesa/demos repository.</p>
|
||||
<p>There are several environment variables that control the behavior of EGL at
|
||||
runtime</p>
|
||||
|
||||
<dl>
|
||||
<dt><code>EGL_DRIVERS_PATH</code></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li><code>EGL_DRIVERS_PATH</code>
|
||||
|
||||
<p>By default, the main library will look for drivers in the directory where
|
||||
the drivers are installed to. This variable specifies a list of
|
||||
@@ -160,20 +144,18 @@ may set</p>
|
||||
|
||||
<p>to test a build without installation</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>EGL_DRIVER</code></dt>
|
||||
<dd>
|
||||
<li><code>EGL_DRIVER</code>
|
||||
|
||||
<p>This variable specifies a full path to or the name of an EGL driver. It
|
||||
forces the specified EGL driver to be loaded. It comes in handy when one wants
|
||||
to test a specific driver. This variable is ignored for setuid/setgid
|
||||
binaries.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>EGL_PLATFORM</code></dt>
|
||||
<dd>
|
||||
<li><code>EGL_PLATFORM</code>
|
||||
|
||||
<p>This variable specifies the native platform. The valid values are the same
|
||||
as those for <code>--with-egl-platforms</code>. When the variable is not set,
|
||||
@@ -185,31 +167,28 @@ create displays for non-native platforms. These extensions are usually used by
|
||||
applications that support non-native platforms. Setting this variable is
|
||||
probably required only for some of the demos found in mesa/demo repository.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>EGL_LOG_LEVEL</code></dt>
|
||||
<dd>
|
||||
<li><code>EGL_LOG_LEVEL</code>
|
||||
|
||||
<p>This changes the log level of the main library and the drivers. The valid
|
||||
values are: <code>debug</code>, <code>info</code>, <code>warning</code>, and
|
||||
<code>fatal</code>.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>EGL_SOFTWARE</code></dt>
|
||||
<dd>
|
||||
<li><code>EGL_SOFTWARE</code>
|
||||
|
||||
<p>For drivers that support both hardware and software rendering, setting this
|
||||
variable to true forces the use of software rendering.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>EGL Drivers</h2>
|
||||
|
||||
<dl>
|
||||
<dt><code>egl_dri2</code></dt>
|
||||
<dd>
|
||||
<ul>
|
||||
<li><code>egl_dri2</code>
|
||||
|
||||
<p>This driver supports both <code>x11</code> and <code>drm</code> platforms.
|
||||
It functions as a DRI driver loader. For <code>x11</code> support, it talks to
|
||||
@@ -217,10 +196,9 @@ the X server directly using (XCB-)DRI2 protocol.</p>
|
||||
|
||||
<p>This driver can share DRI drivers with <code>libGL</code>.</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>egl_gallium</code></dt>
|
||||
<dd>
|
||||
<li><code>egl_gallium</code>
|
||||
|
||||
<p>This driver is based on Gallium3D. It supports all rendering APIs and
|
||||
hardwares supported by Gallium3D. It is the only driver that supports OpenVG.
|
||||
@@ -230,17 +208,16 @@ The supported platforms are X11, DRM, FBDEV, and GDI.</p>
|
||||
(<code>pipe_<hw></code>) and client API modules
|
||||
(<code>st_<api></code>).</p>
|
||||
|
||||
</dd>
|
||||
</li>
|
||||
|
||||
<dt><code>egl_glx</code></dt>
|
||||
<dd>
|
||||
<li><code>egl_glx</code>
|
||||
|
||||
<p>This driver provides a wrapper to GLX. It uses exclusively GLX to implement
|
||||
the EGL API. It supports both direct and indirect rendering when the GLX does.
|
||||
It is accelerated when the GLX is. As such, it cannot provide functions that
|
||||
is not available in GLX or GLX extensions.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>Packaging</h2>
|
||||
|
||||
@@ -340,6 +317,5 @@ not be called with the sample display at the same time. If a driver has access
|
||||
to an <code>EGLDisplay</code> without going through the EGL APIs, the driver
|
||||
should as well lock the display before using it.
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Environment Variables</h1>
|
||||
|
||||
<p>
|
||||
@@ -32,8 +25,6 @@ sometimes be useful for debugging end-user issues.
|
||||
<li>LIBGL_ALWAYS_INDIRECT - forces an indirect rendering context/connection.
|
||||
<li>LIBGL_ALWAYS_SOFTWARE - if set, always use software rendering
|
||||
<li>LIBGL_NO_DRAWARRAYS - if set do not use DrawArrays GLX protocol (for debugging)
|
||||
<li>LIBGL_SHOW_FPS - print framerate to stdout based on the number of glXSwapBuffers
|
||||
calls per second.
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -71,25 +62,9 @@ If the extension string is too long, the buffer overrun can cause the game
|
||||
to crash.
|
||||
This is a work-around for that.
|
||||
<li>MESA_GL_VERSION_OVERRIDE - changes the value returned by
|
||||
glGetString(GL_VERSION) and possibly the GL API type.
|
||||
<ul>
|
||||
<li> The format should be MAJOR.MINOR[FC]
|
||||
<li> FC is an optional suffix that indicates a forward compatible context.
|
||||
This is only valid for versions >= 3.0.
|
||||
<li> GL versions < 3.0 are set to a compatibility (non-Core) profile
|
||||
<li> GL versions = 3.0, see below
|
||||
<li> GL versions > 3.0 are set to a Core profile
|
||||
<li> Examples: 2.1, 3.0, 3.0FC, 3.1, 3.1FC
|
||||
<ul>
|
||||
<li> 2.1 - select a compatibility (non-Core) profile with GL version 2.1
|
||||
<li> 3.0 - select a compatibility (non-Core) profile with GL version 3.0
|
||||
<li> 3.0FC - select a Core+Forward Compatible profile with GL version 3.0
|
||||
<li> 3.1 - select a Core profile with GL version 3.1
|
||||
<li> 3.1FC - select a Core+Forward Compatible profile with GL version 3.1
|
||||
</ul>
|
||||
<li> Mesa may not really implement all the features of the given version.
|
||||
(for developers only)
|
||||
</ul>
|
||||
glGetString(GL_VERSION). Valid values are point-separated version numbers,
|
||||
such as "3.0". Mesa will not really implement all the features of the given
|
||||
version if it's higher than what's normally reported.
|
||||
<li>MESA_GLSL_VERSION_OVERRIDE - changes the value returned by
|
||||
glGetString(GL_SHADING_LANGUAGE_VERSION). Valid values are integers, such as
|
||||
"130". Mesa will not really implement all the features of the given language version
|
||||
@@ -146,13 +121,14 @@ Mesa EGL supports different sets of environment variables. See the
|
||||
<h2>Gallium environment variables</h2>
|
||||
|
||||
<ul>
|
||||
<li>GALLIUM_HUD - draws various information on the screen, like framerate,
|
||||
cpu load, driver statistics, performance counters, etc.
|
||||
Set GALLIUM_HUD=help and run e.g. glxgears for more info.
|
||||
<li>GALLIUM_LOG_FILE - specifies a file for logging all errors, warnings, etc.
|
||||
rather than stderr.
|
||||
<li>GALLIUM_PRINT_OPTIONS - if non-zero, print all the Gallium environment
|
||||
variables which are used, and their current values.
|
||||
<li>GALLIUM_NOSSE - if non-zero, do not use SSE runtime code generation for
|
||||
shader execution
|
||||
<li>GALLIUM_NOPPC - if non-zero, do not use PPC runtime code generation for
|
||||
shader execution
|
||||
<li>GALLIUM_DUMP_CPU - if non-zero, print information about the CPU on start-up
|
||||
<li>TGSI_PRINT_SANITY - if set, do extra sanity checking on TGSI shaders and
|
||||
print any errors to stderr.
|
||||
@@ -160,9 +136,6 @@ Mesa EGL supports different sets of environment variables. See the
|
||||
<LI>DRAW_NO_FSE - ???
|
||||
<li>DRAW_USE_LLVM - if set to zero, the draw module will not use LLVM to execute
|
||||
shaders, vertex fetch, etc.
|
||||
<li>ST_DEBUG - controls debug output from the Mesa/Gallium state tracker.
|
||||
Setting to "tgsi", for example, will print all the TGSI shaders.
|
||||
See src/mesa/state_tracker/st_debug.c for other options.
|
||||
</ul>
|
||||
|
||||
<h3>Softpipe driver environment variables</h3>
|
||||
@@ -189,22 +162,11 @@ See src/mesa/state_tracker/st_debug.c for other options.
|
||||
cores present.
|
||||
</ul>
|
||||
|
||||
<h3>VMware SVGA driver environment variables</h3>
|
||||
<ul>
|
||||
<li>SVGA_FORCE_SWTNL - force use of software vertex transformation
|
||||
<li>SVGA_NO_SWTNL - don't allow software vertex transformation fallbacks
|
||||
(will often result in incorrect rendering).
|
||||
<li>SVGA_DEBUG - for dumping shaders, constant buffers, etc. See the code
|
||||
for details.
|
||||
<li>See the driver code for other, lesser-used variables.
|
||||
</ul>
|
||||
|
||||
|
||||
<p>
|
||||
Other Gallium drivers have their own environment variables. These may change
|
||||
frequently so the source code should be consulted for details.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mesa Extensions</h1>
|
||||
|
||||
<p>
|
||||
@@ -23,29 +16,20 @@ The specifications follow.
|
||||
|
||||
|
||||
<ul>
|
||||
<li><a href="specs/MESA_agp_offset.spec">MESA_agp_offset.spec</a>
|
||||
<li><a href="specs/MESA_copy_sub_buffer.spec">MESA_copy_sub_buffer.spec</a>
|
||||
<li><a href="specs/MESA_drm_image.spec">MESA_drm_image.spec</a>
|
||||
<li><a href="specs/MESA_multithread_makecurrent.spec">MESA_multithread_makecurrent.spec</a>
|
||||
<li><a href="specs/OLD/MESA_packed_depth_stencil.spec">MESA_packed_depth_stencil.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_pack_invert.spec">MESA_pack_invert.spec</a>
|
||||
<li><a href="specs/MESA_pixmap_colormap.spec">MESA_pixmap_colormap.spec</a>
|
||||
<li><a href="specs/OLD/MESA_program_debug.spec">MESA_program_debug.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_release_buffers.spec">MESA_release_buffers.spec</a>
|
||||
<li><a href="specs/OLD/MESA_resize_buffers.spec">MESA_resize_buffers.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</a>
|
||||
<li><a href="specs/MESA_shader_debug.spec">MESA_shader_debug.spec</a>
|
||||
<li><a href="specs/OLD/MESA_sprite_point.spec">MESA_sprite_point.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_swap_control.spec">MESA_swap_control.spec</a>
|
||||
<li><a href="specs/MESA_swap_frame_usage.spec">MESA_swap_frame_usage.spec</a>
|
||||
<li><a href="specs/MESA_texture_array.spec">MESA_texture_array.spec</a>
|
||||
<li><a href="specs/MESA_texture_signed_rgba.spec">MESA_texture_signed_rgba.spec</a>
|
||||
<li><a href="specs/OLD/MESA_trace.spec">MESA_trace.spec</a> (obsolete)
|
||||
<li><a href="specs/MESA_window_pos.spec">MESA_window_pos.spec</a>
|
||||
<li><a href="specs/MESA_ycbcr_texture.spec">MESA_ycbcr_texture.spec</a>
|
||||
<li><a href="specs/WL_bind_wayland_display.spec">WL_bind_wayland_display.spec</a>
|
||||
<li><a href="MESA_agp_offset.spec">MESA_agp_offset.spec</a>
|
||||
<li><a href="MESA_copy_sub_buffer.spec">MESA_copy_sub_buffer.spec</a>
|
||||
<li><a href="MESA_packed_depth_stencil.spec">MESA_packed_depth_stencil.spec</a>
|
||||
<li><a href="MESA_pack_invert.spec">MESA_pack_invert.spec</a>
|
||||
<li><a href="MESA_pixmap_colormap.spec">MESA_pixmap_colormap.spec</a>
|
||||
<li><a href="MESA_release_buffers.spec">MESA_release_buffers.spec</a>
|
||||
<li><a href="MESA_resize_buffers.spec">MESA_resize_buffers.spec</a>
|
||||
<li><a href="MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</a>
|
||||
<li><a href="MESA_sprite_point.spec">MESA_sprite_point.spec</a> (obsolete)
|
||||
<li><a href="MESA_texture_signed_rgba.spec">MESA_texture_signed_rgba.spec</a>
|
||||
<li><a href="MESA_trace.spec">MESA_trace.spec</a> (obsolete)
|
||||
<li><a href="MESA_window_pos.spec">MESA_window_pos.spec</a>
|
||||
<li><a href="MESA_ycbcr_texture.spec">MESA_ycbcr_texture.spec</a>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
116
docs/faq.html
116
docs/faq.html
@@ -7,16 +7,9 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<center>
|
||||
<h1>Mesa Frequently Asked Questions</h1>
|
||||
Last updated: 9 October 2012
|
||||
Last updated: 21 August 2006
|
||||
</center>
|
||||
|
||||
<br>
|
||||
@@ -45,25 +38,21 @@ See the <a href="http://www.opengl.org/">OpenGL website</a> for more
|
||||
information.
|
||||
</p>
|
||||
<p>
|
||||
Mesa 9.x supports the OpenGL 3.1 specification.
|
||||
Mesa 6.x supports the OpenGL 1.5 specification.
|
||||
</p>
|
||||
|
||||
|
||||
<h2>1.2 Does Mesa support/use graphics hardware?</h2>
|
||||
<p>
|
||||
Yes. Specifically, Mesa serves as the OpenGL core for the open-source DRI
|
||||
drivers for X.org.
|
||||
drivers for XFree86/X.org. See the <a href="http://dri.freedesktop.org/">DRI
|
||||
website</a> for more information.
|
||||
</p>
|
||||
<p>
|
||||
There have been other hardware drivers for Mesa over the years (such as
|
||||
the 3Dfx Glide/Voodoo driver, an old S3 driver, etc) but the DRI drivers
|
||||
are the modern ones.
|
||||
</p>
|
||||
<ul>
|
||||
<li>See the <a href="http://dri.freedesktop.org/">DRI website</a>
|
||||
for more information.</li>
|
||||
<li>See <a href="http://intellinuxgraphics.org">intellinuxgraphics.org</a>
|
||||
for more information about Intel drivers.</li>
|
||||
<li>See <a href="http://nouveau.freedesktop.org">nouveau.freedesktop.org</a>
|
||||
for more information about Nouveau drivers.</li>
|
||||
<li>See <a href="http://www.x.org/wiki/RadeonFeature">www.x.org/wiki/RadeonFeature</a>
|
||||
for more information about Radeon drivers.</li>
|
||||
</ul>
|
||||
|
||||
<h2>1.3 What purpose does Mesa serve today?</h2>
|
||||
<p>
|
||||
@@ -72,7 +61,7 @@ operating systems today.
|
||||
Still, Mesa serves at least these purposes:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Mesa is used as the core of the open-source X.org DRI
|
||||
<li>Mesa is used as the core of the open-source XFree86/X.org DRI
|
||||
hardware drivers.
|
||||
</li>
|
||||
<li>Mesa is quite portable and allows OpenGL to be used on systems
|
||||
@@ -94,7 +83,7 @@ Still, Mesa serves at least these purposes:
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>1.4 What's the difference between "Stand-Alone" Mesa and the DRI drivers?</h2>
|
||||
<h2>1.4 What's the difference between"Stand-Alone" Mesa and the DRI drivers?</h2>
|
||||
<p>
|
||||
<em>Stand-alone Mesa</em> is the original incarnation of Mesa.
|
||||
On systems running the X Window System it does all its rendering through
|
||||
@@ -136,7 +125,8 @@ Just follow the Mesa <a href="install.html">compilation instructions</a>.
|
||||
|
||||
<h2>1.6 Are there other open-source implementations of OpenGL?</h2>
|
||||
<p>
|
||||
Yes, SGI's <a href="http://oss.sgi.com/projects/ogl-sample/index.html">
|
||||
Yes, SGI's <a href="http://oss.sgi.com/projects/ogl-sample/index.html"
|
||||
target="_parent">
|
||||
OpenGL Sample Implemenation (SI)</a> is available.
|
||||
The SI was written during the time that OpenGL was originally designed.
|
||||
Unfortunately, development of the SI has stagnated.
|
||||
@@ -144,33 +134,34 @@ Mesa is much more up to date with modern features and extensions.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://sourceforge.net/projects/ogl-es/">Vincent</a> is
|
||||
<a href="http://ogl-es.sourceforge.net" target="_parent">Vincent</a> is
|
||||
an open-source implementation of OpenGL ES for mobile devices.
|
||||
|
||||
<p>
|
||||
<a href="http://www.dsbox.com/minigl.html">miniGL</a>
|
||||
<a href="http://www.dsbox.com/minigl.html" target="_parent">miniGL</a>
|
||||
is a subset of OpenGL for PalmOS devices.
|
||||
|
||||
<p>
|
||||
<a href="http://bellard.org/TinyGL/">TinyGL</a>
|
||||
is a subset of OpenGL.
|
||||
<a href="http://fabrice.bellard.free.fr/TinyGL/"
|
||||
target="_parent">TinyGL</a> is a subset of OpenGL.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://sourceforge.net/projects/softgl/">SoftGL</a>
|
||||
<a href="http://softgl.studierstube.org/" target="_parent">SoftGL</a>
|
||||
is an OpenGL subset for mobile devices.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://chromium.sourceforge.net/">Chromium</a>
|
||||
<a href="http://chromium.sourceforge.net/" target="_parent">Chromium</a>
|
||||
isn't a conventional OpenGL implementation (it's layered upon OpenGL),
|
||||
but it does export the OpenGL API. It allows tiled rendering, sort-last
|
||||
rendering, etc.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://www.ticalc.org/archives/files/fileinfo/361/36173.html">ClosedGL</a>
|
||||
is an OpenGL subset library for TI graphing calculators.
|
||||
<a href="http://www.ticalc.org/archives/files/fileinfo/361/36173.html"
|
||||
target="_parent">ClosedGL</a> is an OpenGL subset library for TI
|
||||
graphing calculators.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -220,7 +211,8 @@ GLw (OpenGL widget library) is now available from a separate <a href="http://cgi
|
||||
<h2>2.5 What's the proper place for the libraries and headers?</h2>
|
||||
<p>
|
||||
On Linux-based systems you'll want to follow the
|
||||
<a href="http://oss.sgi.com/projects/ogl-sample/ABI/index.html">Linux ABI</a> standard.
|
||||
<a href="http://oss.sgi.com/projects/ogl-sample/ABI/index.html"
|
||||
target="_parent">Linux ABI</a> standard.
|
||||
Basically you'll want the following:
|
||||
</p>
|
||||
<ul>
|
||||
@@ -236,22 +228,15 @@ Basically you'll want the following:
|
||||
Mesa version number.
|
||||
</li></ul>
|
||||
<p>
|
||||
When configuring Mesa, there are three autoconf options that affect the install
|
||||
location that you should take care with: <code>--prefix</code>,
|
||||
<code>--libdir</code>, and <code>--with-dri-driverdir</code>. To install Mesa
|
||||
into the system location where it will be available for all programs to use, set
|
||||
<code>--prefix=/usr</code>. Set <code>--libdir</code> to where your Linux
|
||||
distribution installs system libraries, usually either <code>/usr/lib</code> or
|
||||
<code>/usr/lib64</code>. Set <code>--with-dri-driverdir</code> to the directory
|
||||
where your Linux distribution installs DRI drivers. To find your system's DRI
|
||||
driver directory, try executing <code>find /usr -type d -name dri</code>. For
|
||||
example, if the <code>find</code> command listed <code>/usr/lib64/dri</code>,
|
||||
then set <code>--with-dri-driverdir=/usr/lib64/dri</code>.
|
||||
After installing XFree86/X.org and the DRI drivers, some of these files
|
||||
may be symlinks into the /usr/X11R6/ tree.
|
||||
</p>
|
||||
<p>
|
||||
After determining the correct values for the install location, configure Mesa
|
||||
with <code>./configure --prefix=/usr --libdir=xxx --with-dri-driverdir=xxx</code>
|
||||
and then install with <code>sudo make install</code>.
|
||||
The old-style Makefile system doesn't install the Mesa libraries; it's
|
||||
up to you to copy them (and the headers) to the right place.
|
||||
</p>
|
||||
<p>
|
||||
The GLUT header and library should go in the same directories.
|
||||
</p>
|
||||
<br>
|
||||
<br>
|
||||
@@ -261,22 +246,24 @@ and then install with <code>sudo make install</code>.
|
||||
|
||||
<h2>3.1 Rendering is slow / why isn't my graphics hardware being used?</h2>
|
||||
<p>
|
||||
If Mesa can't use its hardware accelerated drivers it falls back on one of its software renderers.
|
||||
(eg. classic swrast, softpipe or llvmpipe)
|
||||
Stand-alone Mesa (downloaded as MesaLib-x.y.z.tar.gz) doesn't have any
|
||||
support for hardware acceleration (with the exception of the 3DFX Voodoo
|
||||
driver).
|
||||
</p>
|
||||
<p>
|
||||
What you really want is a DRI or NVIDIA (or another vendor's OpenGL) driver
|
||||
for your particular hardware.
|
||||
</p>
|
||||
<p>
|
||||
You can run the <code>glxinfo</code> program to learn about your OpenGL
|
||||
library.
|
||||
Look for the <code>OpenGL vendor</code> and <code>OpenGL renderer</code> values.
|
||||
That will identify who's OpenGL library with which driver you're using and what sort of
|
||||
Look for the GL_VENDOR and GL_RENDERER values.
|
||||
That will identify who's OpenGL library you're using and what sort of
|
||||
hardware it has detected.
|
||||
</p>
|
||||
<p>
|
||||
If you're using a hardware accelerated driver you want <code>direct rendering: Yes</code>.
|
||||
</p>
|
||||
<p>
|
||||
If your DRI-based driver isn't working, go to the
|
||||
<a href="http://dri.freedesktop.org/">DRI website</a> for trouble-shooting information.
|
||||
<a href="http://dri.sf.net/" target="_parent">DRI website</a> for trouble-shooting information.
|
||||
</p>
|
||||
|
||||
|
||||
@@ -284,8 +271,8 @@ If your DRI-based driver isn't working, go to the
|
||||
<p>
|
||||
Make sure the ratio of the far to near clipping planes isn't too great.
|
||||
Look
|
||||
<a href="http://www.opengl.org/resources/faq/technical/depthbuffer.htm#0040">here</a>
|
||||
for details.
|
||||
<a href="http://www.opengl.org/resources/faq/technical/depthbuffer.htm#0040"
|
||||
target="_parent"> here</a> for details.
|
||||
</p>
|
||||
<p>
|
||||
Mesa uses a 16-bit depth buffer by default which is smaller and faster
|
||||
@@ -348,11 +335,12 @@ may introduce rasterization artifacts; see the leading comments in
|
||||
|
||||
<h2>4.1 How can I contribute?</h2>
|
||||
<p>
|
||||
First, join the <a href="lists.html">mesa-dev mailing list</a>.
|
||||
First, join the <a href="http://www.mesa3d.org/lists.html">Mesa3d-dev
|
||||
mailing list</a>.
|
||||
That's where Mesa development is discussed.
|
||||
</p>
|
||||
<p>
|
||||
The <a href="http://www.opengl.org/documentation">
|
||||
The <a href="http://www.opengl.org/documentation" target="_parent">
|
||||
OpenGL Specification</a> is the bible for OpenGL implemention work.
|
||||
You should read it.
|
||||
</p>
|
||||
@@ -370,8 +358,8 @@ target hardware/operating system.
|
||||
<p>
|
||||
The best way to get started is to use an existing driver as your starting
|
||||
point.
|
||||
For a classic hardware driver, the i965 driver is a good example.
|
||||
For a Gallium3D hardware driver, the r300g, r600g and the i915g are good examples.
|
||||
For a software driver, the X11 and OSMesa drivers are good examples.
|
||||
For a hardware driver, the Radeon and R200 DRI drivers are good examples.
|
||||
</p>
|
||||
<p>The DRI website has more information about writing hardware drivers.
|
||||
The process isn't well document because the Mesa driver interface changes
|
||||
@@ -386,7 +374,7 @@ the archives) is a good way to get information.
|
||||
|
||||
<h2>4.3 Why isn't GL_EXT_texture_compression_s3tc implemented in Mesa?</h2>
|
||||
<p>
|
||||
The <a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_compression_s3tc.txt">specification for the extension</a>
|
||||
The <a href="http://oss.sgi.com/projects/ogl-sample/registry/EXT/texture_compression_s3tc.txt" target="_parent">specification for the extension</a>
|
||||
indicates that there are intellectual property (IP) and/or patent issues
|
||||
to be dealt with.
|
||||
</p>
|
||||
@@ -396,10 +384,10 @@ implement the extension (specifically the compression/decompression
|
||||
algorithms).
|
||||
</p>
|
||||
<p>
|
||||
In the mean time, a 3rd party <a href="http://dri.freedesktop.org/wiki/S3TC">
|
||||
plug-in library</a> is available.
|
||||
In the mean time, a 3rd party <a href=
|
||||
"http://dri.freedesktop.org/wiki/S3TC"
|
||||
target="_parent">plug-in library</a> is available.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
64
docs/games.html
Normal file
64
docs/games.html
Normal file
@@ -0,0 +1,64 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Games</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>Games</h1>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://www.psc.edu/%7Esmp/a3d/">Asteroids3D</a> - 3D asteroids game
|
||||
</li><li><a href="http://evlweb.eecs.uic.edu/aej/AndyBattalion.html" target="_parent">Battalion</a>
|
||||
- battle game
|
||||
</li><li><a href="http://bzflag.sourceforge.net/" target="_parent">BZFLAG</a> - 3-D tank
|
||||
battle game
|
||||
</li><li><a href="http://www.speakeasy.org/%7Emorse/copter-commander" target="_parent">Copter Commander</a> - 2d multiplayer side scroller
|
||||
</li><li><a href="http://www.crystalspace.org/" target="_parent">CrystalSpace</a> - Free
|
||||
3d game engine
|
||||
</li><li><a href="http://www.afn.org/%7Ecthugha/" target="_parent">Cthugha</a> - music-sync'ed
|
||||
graphical effects
|
||||
</li><li><a href="http://www.sics.se/dive/" target="_parent">DIVE</a> - Distributed Interactive
|
||||
Virtual Environment
|
||||
</li><li><a href="http://www.newdoom.com/doomlegacy/" target="_parent">Doom Legacy</a>
|
||||
- an OpenGL port of id software's popular game, Doom
|
||||
</li><li><a href="http://www.asimov.de/intern_dropit.html" target="_parent">DropIt</a> - 3-D tetris game
|
||||
</li><li><a href="http://www.flightgear.org/" target="_parent">Flight Gear</a> - Flight
|
||||
simulator
|
||||
</li><li><a href="http://freetrek.linuxgames.com/" target="_parent">Free Trek</a> - Star
|
||||
Trek battle simulator
|
||||
</li><li><a href="http://glchess.sourceforge.net/" target="_parent">GLChess</a> - chess game
|
||||
</li><li><a href="http://heretic.linuxgames.com/" target="_parent">GLHeretic</a> - Heretic
|
||||
for Linux
|
||||
</li><li><a href="http://glider3d.free.fr/" target="_parent">Glider3D</a> - flight simulator
|
||||
</li><li><a href="http://www.gltron.org/" target="_parent">glTron</a> - Tron lightcycles
|
||||
game
|
||||
</li><li><a href="http://gracer.sourceforge.net/" target="_parent">GRacer</a> - 3D Motor
|
||||
Sports Simulator
|
||||
</li><li><a href="http://jongl.home.pages.de/" target="_parent">JONGL</a> - Juggling simulator
|
||||
</li><li><a href="http://samba.anu.edu.au/KnightCap/" target="_parent">KnightCap</a> -
|
||||
chess game
|
||||
</li><li><a href="http://www.hackcraft.de/games/linwarrior_3d/" target="_parent">LinWarrior 3D</a> - A Battle Mech Simulator
|
||||
</li><li><a href="http://www.nada.kth.se/%7Ef96-lfo/lunar/" target="_parent">Lunar Lander
|
||||
2000</a> - 3D version of the classis lunar lander game
|
||||
</li><li><a href="http://www.majik3d.org/" target="_parent">Majik 3D</a> - an online role-playing
|
||||
world
|
||||
</li><li><a href="http://www.pobox.com/%7Eshankel/opentrek.html" target="_parent">OpenTrek</a>
|
||||
- Super Star Trek
|
||||
</li><li><a href="http://www.idsoftware.com/" target="_parent">Quake(2,3)</a> - the popular
|
||||
games from id software
|
||||
</li><li><a href="http://torcs.free.fr/indexm.html" target="_parent">TORCS</a> - car racing
|
||||
simulator
|
||||
</li><li><a href="http://www.woodsoup.org/projs/tux_aqfh" target="_parent">TUX-AQFH</a>
|
||||
- Tux the Penguin - a Quest for Herring
|
||||
</li><li><a href="http://mordred.8m.com/voidrunner/" target="_parent">Void Runner</a>
|
||||
- freeware arcade style game
|
||||
</li><li><a href="http://xracer.annexia.org/" target="_parent">XRacer</a> - Free spaceship
|
||||
racing game, similar to Wipeout
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
</html>
|
BIN
docs/gears.png
BIN
docs/gears.png
Binary file not shown.
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 1.6 KiB |
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Help Wanted / To-Do List</h1>
|
||||
|
||||
<p>
|
||||
@@ -24,12 +17,12 @@ Here are some specific ideas and areas where help would be appreciated:
|
||||
<ol>
|
||||
<li>
|
||||
<b>Driver patching and testing.</b>
|
||||
Patches are often posted to the <a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev">mesa-dev mailing list</a>, but aren't
|
||||
Patches are often posted to the <a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev" target="_parent">mesa-dev mailing list</a>, but aren't
|
||||
immediately checked into git because not enough people are testing them.
|
||||
Just applying patches, testing and reporting back is helpful.
|
||||
<li>
|
||||
<b>Driver debugging.</b>
|
||||
There are plenty of open bugs in the <a href="https://bugs.freedesktop.org/describecomponents.cgi?product=Mesa">bug database</a>.
|
||||
There are plenty of open bugs in the <a href="https://bugs.freedesktop.org/describecomponents.cgi?product=Mesa" target="_parent">bug database</a>.
|
||||
<li>
|
||||
<b>Remove aliasing warnings.</b>
|
||||
Enable gcc -Wstrict-aliasing=2 -fstrict-aliasing and track down aliasing
|
||||
@@ -39,7 +32,7 @@ issues in the code.
|
||||
Fixing MSVC builds.
|
||||
<li>
|
||||
<b>Contribute more tests to
|
||||
<a href="http://piglit.freedesktop.org/">Piglit</a>.</b>
|
||||
<a href="http://piglit.freedesktop.org/" target="_parent">Piglit</a>.</b>
|
||||
<li>
|
||||
<b>Automatic testing.
|
||||
</b>
|
||||
@@ -51,31 +44,21 @@ the mailing list.
|
||||
<p>
|
||||
You can find some further To-do lists here:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Common To-Do lists:</b>
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/docs/GL3.txt">
|
||||
<b>GL3.txt</b></a> - Status of OpenGL 3.x / 4.x features in Mesa.</li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/MissingFunctionality">
|
||||
<b>MissingFunctionality</b></a> - Detailed information about missing OpenGL features.</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
<b>Driver specific To-Do lists:</b>
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/docs/llvm-todo.txt">
|
||||
<b>LLVMpipe</b></a> - Software driver using LLVM for runtime code generation.</li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/RadeonsiToDo">
|
||||
<b>radeonsi</b></a> - Driver for AMD Southern Island.</li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/R600ToDo">
|
||||
<b>r600g</b></a> - Driver for ATI/AMD R600 - Northern Island.</li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/R300ToDo">
|
||||
<b>r300g</b></a> - Driver for ATI R300 - R500.</li>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/i915/TODO">
|
||||
<b>i915g</b></a> - Driver for Intel i915/i945.</li>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/docs/GL3.txt"
|
||||
target="_parent"><b>GL3.txt</b></a></li>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/docs/llvm-todo.txt"
|
||||
target="_parent"><b>LLVMpipe - todo</b></a></li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/MissingFunctionality"
|
||||
target="_parent"><b>MissingFunctionality</b></a></li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/RadeonsiToDo"
|
||||
target="_parent"><b>RadeonsiToDo</b></a></li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/R600ToDo"
|
||||
target="_parent"><b>R600ToDo</b></a></li>
|
||||
<li><a href="http://dri.freedesktop.org/wiki/R300ToDo"
|
||||
target="_parent"><b>R300ToDo</b></a></li>
|
||||
<li><a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/i915/TODO"
|
||||
target="_parent"><b>i915g TODO</b></a></li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
@@ -100,6 +83,6 @@ Finally:
|
||||
<li>Test your code thoroughly. Include test programs if appropriate.
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
1477
docs/index.html
1477
docs/index.html
File diff suppressed because it is too large
Load Diff
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Compiling and Installing</h1>
|
||||
|
||||
<ol>
|
||||
@@ -59,9 +52,9 @@ The following are required for DRI-based hardware acceleration with Mesa:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://xorg.freedesktop.org/releases/individual/proto/">
|
||||
dri2proto</a> version 2.6 or later
|
||||
<li><a href="http://dri.freedesktop.org/libdrm/">libDRM</a>
|
||||
<li><a href="http://xorg.freedesktop.org/releases/individual/proto/"
|
||||
target="_parent">dri2proto</a> version 2.6 or later
|
||||
<li><a href="http://dri.freedesktop.org/libdrm/" target="_parent">libDRM</a>
|
||||
version 2.4.33 or later
|
||||
<li>Xorg server version 1.5 or later
|
||||
<li>Linux 2.6.28 or later
|
||||
@@ -176,6 +169,7 @@ If you built the DRI hardware drivers, you'll also see the DRI drivers:
|
||||
-rwxr-xr-x 1 brian users 16895413 Jul 21 12:11 i915_dri.so
|
||||
-rwxr-xr-x 1 brian users 16895413 Jul 21 12:11 i965_dri.so
|
||||
-rwxr-xr-x 1 brian users 11849858 Jul 21 12:12 r200_dri.so
|
||||
-rwxr-xr-x 1 brian users 16050488 Jul 21 12:11 r300_dri.so
|
||||
-rwxr-xr-x 1 brian users 11757388 Jul 21 12:12 radeon_dri.so
|
||||
</pre>
|
||||
|
||||
@@ -206,6 +200,6 @@ For example, compiling and linking a GLUT application can be done with:
|
||||
|
||||
<br>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,18 +7,11 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Introduction</h1>
|
||||
|
||||
<p>
|
||||
Mesa is an open-source implementation of the
|
||||
<a href="http://www.opengl.org/">OpenGL</a> specification -
|
||||
<a href="http://www.opengl.org/" target="_parent">OpenGL</a> specification -
|
||||
a system for rendering interactive 3D graphics.
|
||||
</p>
|
||||
|
||||
@@ -30,8 +23,8 @@ for modern GPUs.
|
||||
|
||||
<p>
|
||||
Mesa ties into several other open-source projects: the
|
||||
<a href="http://dri.freedesktop.org/">Direct Rendering
|
||||
Infrastructure</a> and <a href="http://x.org">X.org</a> to
|
||||
<a href="http://dri.freedesktop.org/" target="_parent">Direct Rendering
|
||||
Infrastructure</a> and <a href="http://x.org" target="_parent">X.org</a> to
|
||||
provide OpenGL support to users of X on Linux, FreeBSD and other operating
|
||||
systems.
|
||||
</p>
|
||||
@@ -85,7 +78,7 @@ the OpenGL API, so they didn't feel threatened by the project.
|
||||
1995-1996: I continue working on Mesa both during my spare time and during
|
||||
my work hours at the Space Science and Engineering Center at the University
|
||||
of Wisconsin in Madison. My supervisor, Bill Hibbard, lets me do this because
|
||||
Mesa is now being using for the <a href="http://www.ssec.wisc.edu/%7Ebillh/vis.html">Vis5D</a> project.
|
||||
Mesa is now being using for the <a href="http://www.ssec.wisc.edu/%7Ebillh/vis.html" target="_parent">Vis5D</a> project.
|
||||
</p><p>
|
||||
October 1996: Mesa 2.0 is released. It implements the OpenGL 1.1 specification.
|
||||
</p>
|
||||
@@ -142,7 +135,7 @@ and OpenGL Shading Language.
|
||||
|
||||
<p>
|
||||
2008: Keith Whitwell and other Tungsten Graphics employees develop
|
||||
<a href="http://en.wikipedia.org/wiki/Gallium3D">Gallium</a>
|
||||
<a href="http://en.wikipedia.org/wiki/Gallium3D" target="_parent">Gallium</a>
|
||||
- a new GPU abstraction layer. The latest Mesa drivers are based on
|
||||
Gallium and other APIs such as OpenVG are implemented on top of Gallium.
|
||||
</p>
|
||||
@@ -234,7 +227,7 @@ GL_SRC2_ALPHA GL_SOURCE2_ALPHA
|
||||
</pre>
|
||||
<p>
|
||||
See the
|
||||
<a href="http://www.opengl.org/documentation/spec.html">
|
||||
<a href="http://www.opengl.org/documentation/spec.html" target="_parent">
|
||||
OpenGL specification</a> for more details.
|
||||
</p>
|
||||
|
||||
@@ -350,6 +343,6 @@ features.
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
58
docs/libraries.html
Normal file
58
docs/libraries.html
Normal file
@@ -0,0 +1,58 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Libraries and Toolkits</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>Libraries and Toolkits</h1>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://mrpowers.com/Apprentice/" target="_parent">Apprentice</a> - free OpenInventor work-alike
|
||||
<li><a href="http://www.coin3d.org/coin.html" target="_parent">Coin</a> - OSS Open Inventor clone
|
||||
<li><a href="http://www.softintegration.com/products/toolkit/opengl/" target="_parent">Ch</a> - OpenGL bindings for the Ch C/C++ interpreter
|
||||
<li><a href="http://www.cfdrc.com/FOX/fox.html" target="_parent">FOX</a> - GUI Library
|
||||
<li><a href="http://www.jausoft.com/gl4java.html" target="_parent">GL4Java</a> - a Java wrapper for OpenGL
|
||||
<li><a href="http://www.student.oulu.fi/%7Ejlof/gtkglarea/" target="_parent">GtkGLArea</a> - OpenGL Gtk widget
|
||||
<li><a href="http://www.ece.ucdavis.edu/%7Ekenelson/gtk-glarea/" target="_parent">GtkGLArea--</a> - OpenGL Gtk-- widget for C++
|
||||
<li><a href="http://gtkpas.sourceforge.net/" target="_parent">GTKpas</a> - OpenGL Gtk widget for <a href="http://www.freepascal.org/" target="_parent">FreePascal</a>
|
||||
<li><a href="http://freeglut.sourceforge.net/" target="_parent">FreeGLUT</a> - a GLUT work-alike
|
||||
<li><a href="http://math.nist.gov/f90gl" target="_parent">Fortran77/90 bindings for OpenGL and Mesa</a> - by William Mitchell
|
||||
<li><a href="http://glow.sourceforge.net/" target="_parent">GLOW</a> - a GUI toolkit for GLUT and OpenGL
|
||||
<li><a href="http://www.nigels.com/glt/">Glt</a> - an OpenGL C++ toolkit
|
||||
<li><a href="http://www.opengl.org/resources/libraries/glut.html" target="_parent">GLUT (GL Utility Toolkit)</a> - by Mark Kilgard
|
||||
<li><a href="http://atrey.karlin.mff.cuni.cz/%7E0rfelyus/guileGL/" target="_parent">GuileGL</a> - OpenGL and GtkGLArea language bindings for Guile
|
||||
<li><a href="http://www.rsinc.com/" target="_parent">IDL</a> - Interactive Data Language
|
||||
<li><a href="http://www.newplanetsoftware.com/jx/" target="_parent">JX</a> - C++ application framework and GUI library
|
||||
<li><a href="http://www.vrs3d.org/" target="_parent">MAM/VRS</a> - object-oriented toolkit for 3D graphics
|
||||
<li><a href="http://www.jwdt.com/%7Epaysan/bigforth.html" target="_parent">MINOS</a> - GUI library
|
||||
<li><a href="http://sourceforge.net/project/?group_id=2795" target="_parent">OglCLib</a> - C++ wrapper for OpenGL
|
||||
<li><a href="http://oss.sgi.com/projects/inventor" target="_parent"> Open Inventor</a> - the Open Inventor toolkit from SGI
|
||||
<li><a href="http://www.tgs.com/" target="_parent">Open Inventor</a> - the Open Inventor toolkit from Template Graphics Software, Inc.
|
||||
<li><a href="http://openrm.sourceforge.net/" target="_parent">OpenRM</a>
|
||||
- Open Source, multithreaded, parallel scene graph API
|
||||
<li><a href="http://www.opensg.org/OpenSGPLUS/index.EN.html" target="_parent">
|
||||
Open SG PLUS</a> - a scene-graph library
|
||||
<li><a href="http://www.openscenegraph.org/" target="_parent">Open Scene Graph
|
||||
</a> - a scene-graph library
|
||||
<li><a href="http://www.openvrml.org/" target="_parent">OpenVRML</a>
|
||||
- a VRML parsing/display library with "lookat" - an example VRML browser
|
||||
<li><a href="http://plib.sourceforge.net/" target="_parent">PLIB</a> - A collection of portable games libraries, including an OpenGL GUI and a simple Scene Graph API
|
||||
<li><a href="ftp://ftp.troll.no/contest/Pryan-1.2.tar.gz" target="_parent">Pryan</a> - an OpenInventor-like toolkit
|
||||
<li><a href="http://starship.python.net:9673/crew/da/Code/PyOpenGL" target="_parent">PyOpenGL</a> - OpenGL interface for Python
|
||||
<li><a href="http://www.quesa.org/" target="_parent">Quesa</a> - QuickDraw3D-compatible library based on OpenGL, Mesa or Direct3D
|
||||
<li><a href="http://www.mesa3d.org/brianp/repgl.txt" target="_parent">repGL</a> - IRIS GL emulated with OpenGL
|
||||
<li><a href="http://www.scitechsoft.com/dp_mgl.html" target="_parent">SciTech MGL</a> - A multiplatform (Windows, Linux, OS/2, DOS, QNX, SMX, RT-Target & more) graphics library
|
||||
<li><a href="http://sgl.sourceforge.net/" target="_parent">SGL</a> - a 3D Scene Graph Library
|
||||
<li><a href="http://www.lal.in2p3.fr/SI/SoFree/" target="_parent">SoFree</a> - a free implementation of Open Inventor
|
||||
<li><a href="http://togl.sourceforge.net/" target="_parent">Togl</a> - Tcl/Tk widget for OpenGL
|
||||
<li><a href="http://www.int.com/" target="_parent">View3D Widget</a> - 3-D GUI widget
|
||||
<li><a href="http://www.vtk.org/" target="_parent">VTK</a> - Visualization Toolkit
|
||||
<li><a href="http://home.earthlink.net/%7Erzeh/YAJOGLB/doc/YAJOGLB.html" target="_parent">YAJOGL</a> - Yet Another Java GL Binding.
|
||||
</ul>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
@@ -2,26 +2,19 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>License / Copyright Information</title>
|
||||
<title>License / Cppyright Information</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Disclaimer</h1>
|
||||
|
||||
<p>
|
||||
Mesa is a 3-D graphics library with an API which is very similar to
|
||||
that of <a href="http://www.opengl.org/">OpenGL</a>.*
|
||||
that of <a href="http://www.opengl.org/" target="_parent">OpenGL</a>.*
|
||||
To the extent that Mesa utilizes the OpenGL command syntax or state
|
||||
machine, it is being used with authorization from <a
|
||||
href="http://www.sgi.com/">Silicon Graphics,
|
||||
href="http://www.sgi.com/" target="_parent">Silicon Graphics,
|
||||
Inc.</a>(SGI). However, the author does not possess an OpenGL license
|
||||
from SGI, and makes no claim that Mesa is in any way a compatible
|
||||
replacement for OpenGL or associated with SGI. Those who want a
|
||||
@@ -37,7 +30,7 @@ library</em>. <br>
|
||||
|
||||
<p>
|
||||
* OpenGL is a trademark of <a href="http://www.sgi.com/"
|
||||
>Silicon Graphics Incorporated</a>.
|
||||
target="_parent">Silicon Graphics Incorporated</a>.
|
||||
</p>
|
||||
|
||||
|
||||
@@ -75,10 +68,9 @@ in all copies or substantial portions of the Software.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
</pre>
|
||||
|
||||
|
||||
@@ -109,6 +101,6 @@ Ext headers include/GL/glext.h Khronos
|
||||
In general, consult the source files for license terms.
|
||||
</p>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Mailing Lists</h1>
|
||||
|
||||
|
||||
@@ -21,24 +14,26 @@
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-users">mesa-users</a>
|
||||
- intended for end-users of Mesa and DRI drivers. Newbie questions are OK,
|
||||
but please try the general OpenGL resources and Mesa/DRI documentation first.</p>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-users"
|
||||
target="_parent">mesa-users</a> - intended for end-users of Mesa and DRI
|
||||
drivers. Newbie questions are OK, but please try the general OpenGL
|
||||
resources and Mesa/DRI documentation first.</p>
|
||||
</li>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev">mesa-dev</a>
|
||||
- for Mesa, Gallium and DRI development
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev"
|
||||
target="_parent">mesa-dev</a> - for Mesa, Gallium and DRI development
|
||||
discussion. Not for beginners.</p>
|
||||
</li>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-commit">mesa-commit</a>
|
||||
- relays git check-in messages (for developers).
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-commit"
|
||||
target="_parent">mesa-commit</a> - relays git check-in messages
|
||||
(for developers).
|
||||
In general, people should not post to this list.</p>
|
||||
</li>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-announce">mesa-announce</a>
|
||||
- announcements of new Mesa
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-announce"
|
||||
target="_parent">mesa-announce</a> - announcements of new Mesa
|
||||
versions are sent to this list. Very low traffic.</p>
|
||||
</li>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/piglit">piglit</a>
|
||||
- for Piglit (OpenGL driver testing framework) discussion.</p>
|
||||
<li><p><a href="http://lists.freedesktop.org/mailman/listinfo/piglit"
|
||||
target="_parent">piglit</a> - for Piglit (OpenGL driver testing framework) discussion.</p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -56,24 +51,20 @@ Follow the links above for list archives.
|
||||
<p>
|
||||
The old Mesa lists hosted at SourceForge are no longer in use.
|
||||
The archives are still available, however:
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-announce">mesa3d-announce</a>,
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-users">mesa3d-users</a>,
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-dev">mesa3d-dev</a>.
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-announce" target="_parent">mesa3d-announce</a>,
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-users" target="_parent">mesa3d-users</a>,
|
||||
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-dev" target="_parent">mesa3d-dev</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<p>For mailing lists about Direct Rendering Modules (drm) in Linux/BSD
|
||||
kernels, see the
|
||||
<a href="http://dri.freedesktop.org/wiki/MailingLists">DRI wiki</a>.
|
||||
<a href="http://dri.freedesktop.org/wiki/MailingLists" target="_parent">
|
||||
DRI wiki</a>.
|
||||
</p>
|
||||
|
||||
|
||||
<h1>IRC</h1>
|
||||
|
||||
<p>join <a href="irc://chat.freenode.net#dri-devel">#dri-devel channel</a>
|
||||
on <a href="http://webchat.freenode.net/">irc.freenode.net</a>
|
||||
</p>
|
||||
|
||||
<br>
|
||||
|
||||
<h1>OpenGL Forums</h1>
|
||||
|
||||
@@ -82,8 +73,8 @@ Here are some other OpenGL-related forums you might find useful:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://www.opengl.org/cgi-bin/ubb/ultimatebb.cgi">OpenGL discussion forums</a>
|
||||
at www.opengl.org</li>
|
||||
<li><a href="http://www.opengl.org/cgi-bin/ubb/ultimatebb.cgi"
|
||||
target="_parent">OpenGL discussion forums</A> at www.opengl.org</li>
|
||||
<li>Usenet newsgroups:
|
||||
<ul>
|
||||
<li>comp.graphics.algorithms</li>
|
||||
@@ -92,6 +83,5 @@ at www.opengl.org</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Introduction</h1>
|
||||
|
||||
<p>
|
||||
@@ -130,38 +123,38 @@ need to ask, don't even try it.
|
||||
|
||||
<h1>Profiling</h1>
|
||||
|
||||
<p>
|
||||
To profile llvmpipe you should build as
|
||||
</p>
|
||||
To profile llvmpipe you should pass the options
|
||||
|
||||
<pre>
|
||||
scons build=profile <same-as-before>
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
This will ensure that frame pointers are used both in C and JIT functions, and
|
||||
that no tail call optimizations are done by gcc.
|
||||
</p>
|
||||
|
||||
<h2>Linux perf integration</h2>
|
||||
|
||||
<p>
|
||||
On Linux, it is possible to have symbol resolution of JIT code with <a href="http://perf.wiki.kernel.org/">Linux perf</a>:
|
||||
</p>
|
||||
To better profile JIT code you'll need to build LLVM with oprofile integration.
|
||||
|
||||
<pre>
|
||||
perf record -g /my/application
|
||||
perf report
|
||||
./configure \
|
||||
--prefix=$install_dir \
|
||||
--enable-optimized \
|
||||
--disable-profiling \
|
||||
--enable-targets=host-only \
|
||||
--with-oprofile
|
||||
|
||||
make -C "$build_dir"
|
||||
make -C "$build_dir" install
|
||||
|
||||
find "$install_dir/lib" -iname '*.a' -print0 | xargs -0 strip --strip-debug
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
When run inside Linux perf, llvmpipe will create a /tmp/perf-XXXXX.map file with
|
||||
symbol address table. It also dumps assembly code to /tmp/perf-XXXXX.map.asm,
|
||||
which can be used by the bin/perf-annotate-jit script to produce disassembly of
|
||||
the generated code annotated with the samples.
|
||||
</p>
|
||||
The you should define
|
||||
|
||||
<p>You can obtain a call graph via
|
||||
<a href="http://code.google.com/p/jrfonseca/wiki/Gprof2Dot#linux_perf">Gprof2Dot</a>.</p>
|
||||
<pre>
|
||||
export LLVM=/path/to/llvm-2.6-profile
|
||||
</pre>
|
||||
|
||||
and rebuild.
|
||||
|
||||
|
||||
<h1>Unit testing</h1>
|
||||
@@ -208,6 +201,5 @@ for posterior analysis, e.g.:
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -7,13 +7,6 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="header">
|
||||
<h1>The Mesa 3D Graphics Library</h1>
|
||||
</div>
|
||||
|
||||
<iframe src="contents.html"></iframe>
|
||||
<div class="content">
|
||||
|
||||
<h1>Function Name Mangling</h1>
|
||||
|
||||
<p>
|
||||
@@ -33,6 +26,6 @@ For example:
|
||||
CFLAGS += -DUSE_MGL_NAMESPACE
|
||||
</pre>
|
||||
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -31,33 +31,3 @@ pre {
|
||||
/*color: black;*/
|
||||
}
|
||||
|
||||
iframe {
|
||||
width: 19em;
|
||||
height: 80em;
|
||||
border: none;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.content {
|
||||
position: absolute;
|
||||
left: 20em;
|
||||
right: 10px;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
.header {
|
||||
background: black url('gears.png') 15px no-repeat;
|
||||
margin:0;
|
||||
padding: 5px;
|
||||
clear:both;
|
||||
}
|
||||
|
||||
.header h1 {
|
||||
background: url('gears.png') right no-repeat;
|
||||
color: white;
|
||||
font: x-large sans-serif;
|
||||
text-align: center;
|
||||
height: 50px;
|
||||
margin: 0;
|
||||
padding-top: 30px;
|
||||
}
|
||||
|
65
docs/modelers.html
Normal file
65
docs/modelers.html
Normal file
@@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>Modelers, Renderers and Viewers</title>
|
||||
<link rel="stylesheet" type="text/css" href="mesa.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>Modelers, Renderers and Viewers</h1>
|
||||
|
||||
<ul>
|
||||
<li><a href="http://www.aqsis.org/" target="_parent">Aqsis</a> - a RenderMan compatible renderer</li>
|
||||
<li><a href="http://www.ac3d.org/" target="_parent">AC3D</a> - 3-D modeler
|
||||
</li><li><a href="http://www.mediascape.com/" target="_parent">Artstream</a> - provides
|
||||
functionality like Corel Draw and Illustrator
|
||||
</li><li><a href="http://www.blender.org/" target="_parent">Blender</a> - 3-D animation
|
||||
software
|
||||
</li><li><a href="http://www.arq.net/%7Ekasten/demtools/" target="_parent">Demtools</a>
|
||||
- Map viewer
|
||||
</li><li><a href="http://www.holometric.de/dimension/" target="_parent">DIMENSION</a>
|
||||
- freeform surface reconstruction
|
||||
</li><li><a href="http://www.vectaport.com/vhclmaps/demviewer.html" target="_parent">demviewer</a>
|
||||
- interactive terrain viewer
|
||||
</li><li><a href="http://www.crc.ca/FreeWRL" target="_parent">FreeWRL</a> - VRML browser
|
||||
</li><li><a href="http://www.geomview.org/" target="_parent">Geomview</a> - 3-D geometry
|
||||
exploration
|
||||
</li><li><a href="http://innovation3d.sourceforge.net/" target="_parent">Innovation3D</a>
|
||||
- 3D modeling program
|
||||
</li><li><a href="http://www.openvrml.org/" target="_parent">LibVRML97/Lookat</a>
|
||||
- VRML viewer
|
||||
</li><li><a href="http://aig.cs.man.ac.uk/systems/Maverik/" target="_parent">Maverik</a>
|
||||
- VR graphics and interaction system
|
||||
</li><li><a href="http://www.swissquake.ch/chumbalum-soft/md2v" target="_parent">MD2 Viewer</a>
|
||||
- View .MD2 files
|
||||
</li><li><a href="http://www.megacads.dlr.de/" target="_parent">MegaCads</a>
|
||||
- Multiblock-Elliptic-Grid-Generation-And-CAD-System
|
||||
</li><li><a href="http://www.swissquake.ch/chumbalum-soft/" target="_parent">MilkShape
|
||||
3D</a> - 3D modeler/animator
|
||||
</li><li><a href="http://mindseye.sourceforge.net/" target="_parent">Mindseye</a> - Rendering/Modeling
|
||||
Package
|
||||
</li><li><a href="http://www.neuralvr.com/" target="_parent">Pansophica</a> - Virtual Reality web organizer
|
||||
</li><li><a href="http://www.sim.no/reducer.html" target="_parent">Rational Reducer</a>
|
||||
- polygon reduction tool
|
||||
</li><li><a href="http://www.cs.kuleuven.ac.be/cwis/research/graphics/RENDERPARK/" target="_parent">RenderPark</a>
|
||||
- photorealistic rendering
|
||||
</li><li><a href="http://www.hardgeus.com/revolution" target="_parent">Revolution 3D Engine</a>
|
||||
- .3ds rendering engine
|
||||
</li><li><a href="http://www.dgp.toronto.edu/%7Emjmcguff/eversion/" target="_parent">sphereEversion</a>
|
||||
- inside-out sphere visualization
|
||||
</li><li><a href="http://www.cs.kuleuven.ac.be/cwis/research/graphics/3DOM/" target="_parent">3Dom</a>
|
||||
- 3-D modeler
|
||||
</li><li><a href="http://www.microform.se/" target="_parent">VARKON</a> - product engineering,
|
||||
design, modeling
|
||||
</li><li><a href="http://www.sim.no/vrmlview.html" target="_parent">VRMLview</a> - VRML
|
||||
model viewer
|
||||
</li><li><a href="http://www.iicm.edu/vrwave/" target="_parent">VRWave</a> - a VRML 2.0
|
||||
browser
|
||||
</li><li><a href="http://www.csv.ica.uni-stuttgart.de/vrml/dune/" target="_parent">white_dune</a>
|
||||
- graphical VRML97 Editor and animation tool
|
||||
</li></ul>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
1377
docs/news.html
Normal file
1377
docs/news.html
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user