summaryrefslogtreecommitdiffstats
path: root/third_party/mesa/README.txt
blob: c55181ed2eaa5da047aa0f2ace93ae097b3970cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Compilation has a few phases:

1. Generate the header and dispatch source files that have to match the GL api.
   These read in a description of the GL api in the form of XML files. In
   addition, generate the GLSL parser and lexer using flex and bison. These
   sources are needed for step 2. Generated mesa sources can be generated by
   including 'mesa_gensrc.gypi' in mesa.gyp, running 'gclient runhooks' and
   running the gyp target 'generate_mesa_sources'. The mesa.gyp file should
   not be checked in to include mesa_gensrc.gypi so we do not generate these
   files during a regular build. The generated files should be checked in.
2. Compile everything in src/glsl into a library. This step uses the parser and
   lexer output.
3. Compile the compiler (executable) that can create the builtin functions'
   source file.  Note that this step uses builtin_stubs.cpp because we haven't
   generated the actual builtin functions' source file yet.
4. Invoke the compiler that we just built to create
   gen/mesa/builtin_function.cpp
5. Compile the rest of mesa, using the builtins that we created in step 4. In
   addition, link in all the files that we've previously compiled in step 2.