OSDN Git Service

docs: updated environment variable list
[android-x86/external-mesa.git] / docs / envvars.html
1 <HTML>
2
3 <TITLE>Environment Variables</TITLE>
4
5 <link rel="stylesheet" type="text/css" href="mesa.css"></head>
6
7 <BODY>
8
9 <H1>Environment Variables</H1>
10
11 <p>
12 Normally, no environment variables need to be set.  Most of the environment
13 variables used by Mesa/Gallium are for debugging purposes, but they can
14 sometimes be useful for debugging end-user issues.
15 </p>
16
17
18 <H2>LibGL environment variables</H2>
19
20 <ul>
21 <li>LIBGL_DEBUG - If defined debug information will be printed to stderr.
22    If set to 'verbose' additional information will be printed.
23 <li>LIBGL_DRIVERS_PATH - colon-separated list of paths to search for DRI drivers
24 <li>LIBGL_ALWAYS_INDIRECT - forces an indirect rendering context/connection.
25 <li>LIBGL_ALWAYS_SOFTWARE - if set, always use software rendering
26 <li>LIBGL_NO_DRAWARRAYS - if set do not use DrawArrays GLX protocol (for debugging)
27 </ul>
28
29
30
31 <H2>Core Mesa environment variables</H2>
32
33 <ul>
34 <li>MESA_NO_ASM - if set, disables all assembly language optimizations
35 <li>MESA_NO_MMX - if set, disables Intel MMX optimizations
36 <li>MESA_NO_3DNOW - if set, disables AMD 3DNow! optimizations
37 <li>MESA_NO_SSE - if set, disables Intel SSE optimizations
38 <li>MESA_DEBUG - if set, error messages are printed to stderr.  For example,
39    if the application generates a GL_INVALID_ENUM error, a corresponding error
40    message indicating where the error occured, and possibly why, will be
41    printed to stderr.<br>
42    If the value of MESA_DEBUG is 'FP' floating point arithmetic errors will
43    generate exceptions.
44 <li>MESA_TEX_PROG - if set, implement conventional texture env modes with
45 fragment programs (intended for developers only)
46 <li>MESA_TNL_PROG - if set, implement conventional vertex transformation
47 operations with vertex programs (intended for developers only).
48 Setting this variable automatically sets the MESA_TEX_PROG variable as well.
49 <li>MESA_EXTENSION_OVERRIDE - can be used to enable/disable extensions.
50 A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension
51 and disable the GL_EXT_bar extension.
52 <li>MESA_GLSL - <a href="shading.html#envvars">shading language compiler options</a>
53 </ul>
54
55
56 <H2>Mesa Xlib driver environment variables</H2>
57
58 <p>
59 The following are only applicable to the Mesa Xlib software driver.
60 See the <A HREF="xlibdriver.html">Xlib software driver page</A> for details.
61 </p>
62 <ul>
63 <li>MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode
64 <li>MESA_CI_VISUAL - specifies the X visual and depth for CI mode
65 <li>MESA_BACK_BUFFER - specifies how to implement the back color buffer,
66     either "pixmap" or "ximage"
67 <li>MESA_GAMMA - gamma correction coefficients for red, green, blue channels
68 <li>MESA_XSYNC - enable synchronous X behavior (for debugging only)
69 <li>MESA_GLX_FORCE_CI - if set, force GLX to treat 8bpp visuals as CI visuals
70 <li>MESA_GLX_FX - set to either "fullscreen" for full-screen rendering,
71   "window" to render into a window, or "disable" to disable the Glide driver.
72 <li>MESA_GLX_FORCE_ALPHA - if set, forces RGB windows to have an alpha channel.
73 <li>MESA_GLX_DEPTH_BITS - specifies default number of bits for depth buffer.
74 <li>MESA_GLX_ALPHA_BITS - specifies default number of bits for alpha channel.
75 </ul>
76
77
78 <h2>i945/i965 driver environment variables (non-Gallium)</h2>
79
80 <ul>
81 <li>INTEL_STRICT_CONFORMANCE - if set to 1, enable sw fallbacks to improve
82     OpenGL conformance.  If set to 2, always use software rendering.
83 <li>INTEL_NO_BLIT - if set, disable hardware-accelerated glBitmap,
84     glCopyPixels, glDrawPixels.
85 </ul>
86
87
88 <h2>Radeon R300 driver environment variables (non-Gallium)</h2>
89
90 <ul>
91 <li>R300_NO_TCL - if set, disable hardware-accelerated Transform/Clip/Lighting.
92 </ul>
93
94
95 <h2>EGL environment variables</h2>
96
97 <p>
98 Mesa EGL supports different sets of environment variables.  See the
99 <a href="egl.html">Mesa EGL</a> page for the details.
100 </p>
101
102
103 <h2>Gallium environment variables</h2>
104
105 <ul>
106 <li>GALLIUM_PRINT_OPTIONS - if non-zero, print all the Gallium environment
107     variables which are used, and their current values.
108 <li>GALLIUM_NOSSE - if non-zero, do not use SSE runtime code generation for
109     shader execution
110 <li>GALLIUM_NOPPC - if non-zero, do not use PPC runtime code generation for
111     shader execution
112 <li>GALLIUM_DUMP_CPU - if non-zero, print information about the CPU on start-up
113 <li>TGSI_PRINT_SANITY - if set, do extra sanity checking on TGSI shaders and
114     print any errors to stderr.
115 <LI>DRAW_FSE - ???
116 <LI>DRAW_NO_FSE - ???
117 <li>DRAW_USE_LLVM - if set to zero, the draw module will not use LLVM to execute
118     shaders, vertex fetch, etc.
119 </ul>
120
121 <h3>Softpipe driver environment variables</h3>
122 <ul>
123 <li>SOFTPIPE_DUMP_FS - if set, the softpipe driver will print fragment shaders
124     to stderr
125 <li>SOFTPIPE_DUMP_GS - if set, the softpipe driver will print geometry shaders
126     to stderr
127 <li>SOFTPIPE_NO_RAST - if set, rasterization is no-op'd.  For profiling purposes.
128 </ul>
129
130
131 <h3>LLVMpipe driver environment variables</h3>
132 <ul>
133 <li>LP_NO_RAST - if set LLVMpipe will no-op rasterization
134 <li>LP_DEBUG - a comma-separated list of debug options is acceptec.  See the
135     source code for details.
136 <li>LP_PERF - a comma-separated list of options to selectively no-op various
137     parts of the driver.  See the source code for details.
138 <li>LP_NUM_THREADS - an integer indicating how many threads to use for rendering.
139     Zero turns of threading completely.  The default value is the number of CPU
140     cores present.
141 </ul>
142
143
144 <p>
145 Other Gallium drivers have their own environment variables.  These may change
146 frequently so the source code should be consulted for details.
147 </p>
148
149
150 <br>
151 <br>
152
153
154 </BODY>
155 </HTML>