blob: 30e4c8cc9c5f3cbeee3bc5bb4479a757fe696dde [file] [log] [blame]
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
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.